@copying
Copyright @copyright{} 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2 or
@sp 2
@center by Richard M. Stallman and the GCC Developer Community
@sp 3
-@center Last updated 23 May 2004
+@center Last updated 6 February 2005
@sp 1
@center for GCC @value{version-GCC}
Warn if an array subscript has type @code{char}. This is a common cause
of error, as programmers often forget that this type is signed on some
machines.
+This warning is enabled by @option{-Wall}.
@item -Wcomment
@opindex Wcomment
Warn whenever a comment-start sequence @samp{/*} appears in a @samp{/*}
comment, or whenever a Backslash-Newline appears in a @samp{//} comment.
+This warning is enabled by @option{-Wall}.
@item -Wfatal-errors
@opindex Wfatal-errors
@item -Wimplicit-int
@opindex Wimplicit-int
Warn when a declaration does not specify a type.
+This warning is enabled by @option{-Wall}.
@item -Wimplicit-function-declaration
@itemx -Werror-implicit-function-declaration
Give a warning (or error) whenever a function is used before being
declared. The form @option{-Wno-error-implicit-function-declaration}
is not supported.
+This warning is enabled by @option{-Wall} (as a warning, not an error).
@item -Wimplicit
@opindex Wimplicit
Same as @option{-Wimplicit-int} and @option{-Wimplicit-function-declaration}.
+This warning is enabled by @option{-Wall}.
@item -Wmain
@opindex Wmain
Warn if the type of @samp{main} is suspicious. @samp{main} should be a
function with external linkage, returning int, taking either zero
arguments, two, or three arguments of appropriate types.
+This warning is enabled by @option{-Wall}.
@item -Wmissing-braces
@opindex Wmissing-braces
int b[2][2] = @{ @{ 0, 1 @}, @{ 2, 3 @} @};
@end smallexample
+This warning is enabled by @option{-Wall}.
+
@item -Wmissing-include-dirs @r{(C, C++, Objective-C and Objective-C++ only)}
@opindex Wmissing-include-dirs
Warn if a user-supplied include directory does not exist.
@end group
@end smallexample
+This warning is enabled by @option{-Wall}.
+
@item -Wsequence-point
@opindex Wsequence-point
Warn about code that may have undefined semantics because of violations
definitions, may be found on the GCC readings page, at
@w{@uref{http://gcc.gnu.org/readings.html}}.
+This warning is enabled by @option{-Wall}.
+
@item -Wreturn-type
@opindex Wreturn-type
Warn whenever a function is defined with a return-type that defaults to
message, even when @option{-Wno-return-type} is specified. The only
exceptions are @samp{main} and functions defined in system headers.
+This warning is enabled by @option{-Wall}.
+
@item -Wswitch
@opindex Wswitch
Warn whenever a @code{switch} statement has an index of enumerated type
enumeration. (The presence of a @code{default} label prevents this
warning.) @code{case} labels outside the enumeration range also
provoke warnings when this option is used.
+This warning is enabled by @option{-Wall}.
@item -Wswitch-default
@opindex Wswitch-switch
@opindex Wtrigraphs
Warn if any trigraphs are encountered that might change the meaning of
the program (trigraphs within comments are not warned about).
+This warning is enabled by @option{-Wall}.
@item -Wunused-function
@opindex Wunused-function
Warn whenever a static function is declared but not defined or a
non\-inline static function is unused.
+This warning is enabled by @option{-Wall}.
@item -Wunused-label
@opindex Wunused-label
Warn whenever a label is declared but not used.
+This warning is enabled by @option{-Wall}.
To suppress this warning use the @samp{unused} attribute
(@pxref{Variable Attributes}).
@opindex Wunused-variable
Warn whenever a local variable or non-constant static variable is unused
aside from its declaration
+This warning is enabled by @option{-Wall}.
To suppress this warning use the @samp{unused} attribute
(@pxref{Variable Attributes}).
@item -Wunused-value
@opindex Wunused-value
Warn whenever a statement computes a result that is explicitly not used.
+This warning is enabled by @option{-Wall}.
To suppress this warning cast the expression to @samp{void}.
you use that never return as @code{noreturn}. @xref{Function
Attributes}.
+This warning is enabled by @option{-Wall}.
+
@item -Wunknown-pragmas
@opindex Wunknown-pragmas
@cindex warning for unknown pragmas