Compiler Option: -w
Documentation
Set minimum warning level.Syntax
-w level | all | none | param | Escape | pedantic | Next | funcptr | constness | suffix | Error | upcast
Parameters
levelWarning messages only with a level equal or greater to this value will be output.
allEquivalent to specifying a
level of zero (0).noneSuppresses all warnings.
paramEscapeWarn when string literals contain any number of escape characters (
\).pedanticEquivalent to specifying the
param and Escape arguments, plus length checking of parameters passed ByVal and of any CPtr converting to pointer only, plus warning on useless suffixes in '-lang fb'.NextWarn when
Next is followed by an identifier.funcptrWarn on mismatched procedure pointers, including conversions in
Cast and CPtr expressions. Implies '-w all'. Experimental. Behaviour may change in future versions.constnessWarn when
Const (Qualifier) is discarded in an assignment. Implies '-w funcptr' and '-w all'. Behaviour may change in future versions.suffixWarn on useless suffixes in '-lang fb'.
ErrorReport warnings as errors. Warnings cause the error count to increase, warning messages are displayed as "error warning...", compilation / assembly / linking aborts, and fbc exits with an error code.
upcastWarn when up-casting discards initializers.
Description
The
The
The default, if the
-w compiler option determines which compiler warnings, if any, are output. Each possible warning is associated with a warning level, starting from zero (0) and increasing with the potential problems that may occur.The
param, Escape, pedantic, Next, funcptr, constness, suffix, Error, and upcast arguments provide additional warnings not ordinarily output, even by default.The default, if the
-w option is not specified, is as if -w 1 was used. The -w option can be specified multiple times. Warning messages having a level of 0 are not shown by default.-w none, or a significantly high level value will have the effect of suppressing all warning messages.fbc does not issue warning or error if the warning name itself is not valid. For example -w flarg, is not a recognized name for a warning. The compiler silently ignores this to allow command lines with warnings added in new versions of fbc to also be used with older versions of fbc without complaint.Version
- Since fbc 1.10.0: '-w upcast' option
- Since fbc 1.09.0: '-w error' option.
- Before fbc 1.08.0, default warning level was 0 and some warnings had level of -1.
See also