RAD Studio |  |

Message Options
Examples
Collapse All

Use the -w option to specify message options for the CodeGear C++ compiler:

- To enable a particular warning message, enter the -w option with a one- to three-letter option code.
- To disable the warning message, enter the -w- option with a one- to three- letter option code.

Examples

To display all warning and error messages, include the -w command option in your BCC32 command:

Copy Code

    -w

To enable reporting of the warning "Mixing pointers to different 'char' types" (option code ucp, Default OFF), include the following flag in your BCC32 command:

Copy Code

    -wucp

To disable reporting of the warning "Declaration ignored" (option code dig, Default ON), include the following flag in your BCC32 command:

Copy Code

    -w-dig

To display help on the warning message codes, enter a compiler command that contains only the -h and -w options:

Copy Code

    bcc32 -h -w
    CodeGear C++ 5.92 for Win32 Copyright (c) 1993, 2007 CodeGear
    Available options (* = default setting, xxx = has sub-options: use -h -X):
    (Note: -X- or -w-XXX will usually undo whatever was set or unset by -X)
      -w      Display all warnings
      -w!     Return non-zero from compiler on warnings
      -wamb   8000 Ambiguous operators need parentheses
      -wamp   8001 Superfluous & with function
    * -wasc   8002 Restarting compile using assembly
      -wasm   8003 Unknown assembler instruction
    * -waus   8004 '%s' is assigned a value that is never used
    * -wali   8086 Incorrect use of #pragma alias "aliasName"="substituteName"
    * -watr   8100 '%s' attribute directive ignored
      -wbbf   8005 Bit fields must be signed or unsigned int
    * -wbei   8006 Initializing %s with %s
    * -wbig   8007 Hexadecimal value contains too many digits
    * -wccc   8008 Condition is always %s
      -wcln   8009 Constant is long
    * -wcom   8010 Continuation character \ found in // comment
    * -wcpt   8011 Nonportable pointer comparison
    * -wcsu   8012 Comparing signed and unsigned values
    * -wcod   8093 Incorrect use of #pragma codeseg [seg_name] ["seg_class"] [grou

      -wdef   8013 Possible use of '%s' before definition
    * -wdig   8014 Declaration ignored
    * -wdpu   8015 Declare '%s' prior to use in prototype
    * -wdsz   8016 Array size for 'delete' ignored
    * -wdup   8017 Redefinition of '%s' is not identical
    * -weas   8018 Assigning %s to %s
    * -weff   8019 Code has no effect
    * -wext   8020 '%s' is declared as both external and static
      -wexc   8101 Extern C linkage ignored
    * -whch   8021 Handler for '%s' hidden by previous handler for '%s'
    * -whid   8022 '%s' hides virtual function '%s'
    * -wias   8023 Array variable '%s' is near
    * -wibc   8024 Base class '%s' is also a base class of '%s'
    * -will   8025 Ill-formed pragma
      -winl   8026 Functions %s are not expanded inline
      -winl   8027 Functions containing %s are not expanded inline
    * -wifr   8085 Function '%s' redefined as non-inline
      -wimp   8102 Implicit conversion of '%s' to '%s'
    * -wlin   8028 Temporary used to initialize '%s'
    * -wlvc   8029 Temporary used for parameter '%s'
    * -wlvc   8030 Temporary used for parameter '%s' in call to '%s'
    * -wlvc   8031 Temporary used for parameter %d
    * -wlvc   8032 Temporary used for parameter %d in call to '%s'
    * -wmpc   8033 Conversion to '%s' will fail for members of virtual base '%s'
    * -wmpd   8034 Maximum precision used for member pointer type '%s'
    * -wmsg   8035 %s
    * -wmes   8095 Incorrect use of #pragma message( "string" )
    * -wmcs   8096 Incorrect use of #pragma code_seg(["seg_name"[,"seg_class"]])
    * -wmcc   8098 Multi-character character constant
      -wnak   8036 Non-ANSI keyword used: '%s'
      -wnak   8036 Non-ANSI keyword used: '%s'
    * -wncf   8037 Non-const function %s called for const object
    * -wnci   8038 Constant member '%s' is not initialized
    * -wncl   8039 Constructor initializer list ignored
    * -wnfd   8040 Function body ignored
    * -wngu   8041 Negating unsigned value
    * -wnin   8042 Initializer for object '%s' ignored
    * -wnma   8043 Macro definition ignored
    * -wnmu   8044 #undef directive ignored
      -wnod   8045 No declaration for function '%s'
    * -wnop   8046 Pragma option pop with no matching option push
    * -wnsf   8047 Declaration of static function '%s(...)' ignored
    * -wnst   8048 Use qualified name to access member type '%s'
    * -wntd   8049 Use '< <' for nested templates instead of '<<'
    * -wnto   8050 No type OBJ file present.  Disabling external types option.
    * -wnvf   8051 Non-volatile function %s called for volatile object
    * -wnpp   8083 Pragma pack pop with no matching pack push
    * -wobi   8052 Base initialization without a class name is now obsolete
    * -wobs   8053 '%s' is obsolete
    * -wofp   8054 Style of function definition is now obsolete
    * -wosh   8055 Possible overflow in shift operation
    * -wovf   8056 Integer arithmetic overflow
    * -wonr   8097 Not all options can be restored at this time
    * -wpar   8057 Parameter '%s' is never used
    * -wpch   8058 Cannot create pre-compiled header: %s
    * -wpck   8059 Structure packing size has changed
    * -wpia   8060 Possibly incorrect assignment
      -wpin   8061 Initialization is only partially bracketed
    * -wpow   8062 Previous options and warnings not restored
    * -wpre   8063 Overloaded prefix 'operator %s' used as a postfix operator
    * -wpro   8064 Call to function with no prototype
    * -wpro   8065 Call to function '%s' with no prototype
      -wprc   8084 Suggest parentheses to clarify precedence
    * -wpcm   8094 Incorrect use of #pragma comment( <type> [,"string"] )
    * -wpsb   8099 Static `main' is not treated as an entry point
    * -wrch   8066 Unreachable code
    * -wret   8067 Both return and return with a value used
    * -wrng   8068 Constant out of range in comparison
    * -wrpt   8069 Nonportable pointer conversion
    * -wrvl   8070 Function should return a value
      -wsig   8071 Conversion may lose significant digits
    * -wspa   8072 Suspicious pointer arithmetic
      -wstu   8073 Undefined structure '%s'
      -wstv   8074 Structure passed by value
    * -wsus   8075 Suspicious pointer conversion
      -wstl   8087 '%s::operator==' must be publicly visible to be contained by a '% s'
      -wstl   8089 '%s::operator<' must be publicly visible to be contained by a '%s'
      -wstl   8090 '%s::operator<' must be publicly visible to be used with '%s'
      -wstl   8091 %s argument %s passed to '%s' is a %s iterator: %s iterator required
      -wstl   8092 %s argument %s passed to '%s' is not an iterator: %s iterator required
    * -wtai   8076 Template instance '%s' is already instantiated
    * -wtes   8077 Explicitly specializing an explicitly specialized class member makes no sense
    * -wthr   8078 Throw expression violates exception specification
      -wucp   8079 Mixing pointers to different 'char' types
      -wuse   8080 '%s' is declared but never used
    * -wvoi   8081 void functions may not return a value
    * -wzdi   8082 Division by zero

Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!