I proposed as below:
-w level | all | param | escape | pedantic | next | constness | funcptr
Warning messages only with a level equal or greater to this value will be output.
Equivalent to specifying a level of zero (0).
Warn when procedure parameters aren't specified with either ByVal or ByRef.
Warn when string literals contain any number of escape characters (\).
Equivalent to specifying the param, Escape and funcptr arguments, plus length checking of parameters passed ByVal and of any CPtr converting to pointer only.
Warn when Next is followed by an identifier.
Warn when CONST (Qualifier) is discarded in an assignment.
Warn on function pointer assignment incompatibilities.
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. A significantly high level value will have the effect of suppressing all warning messages.
Note that the param, Escape, pedantic, Next, constness and funcptr arguments provide additional warnings not ordinarily output, even by default.
If the -w option is not specified, it's as if -w 0 was used. The -w option can be specified multiple times.