1.4 Warnings options

Warnings are diagnostic messages that report constructions that are not inherently erroneous but that are risky or suggest there is likely to be a bug in the program. Unless -Werror is specified, they do not prevent compilation of the program.

-Wvoiding

Warn on non-void units being voided due to a strong context.

-Wscope

Warn when a potential name scope violation is found.

-Whidden-declarations=level

Warn when a declaration hides another declaration in a larger reach. This includes operators that hide firmly related operators defined in larger reach.

-Whidden-declarations=none

At this level no warning is issued for any hidden declaration on an outer scope.

-Whidden-declarations=prelude

At this level, warnings are issued for hidden declarations defined in the standard prelude. This is the default warning level of -Whidden-declarations.

-Whidden-declarations=all

At this level, warnings are issued for any and all hidden declarations.

-Wextensions

Warn when a non-portable Algol 68 construct is used, like GNU extensions to Algol 68.