--help-warnings

C:\QtSDK1.2.1\mingw\bin>g++ --help=warnings
The following options control compiler warning messages:
  -Wabi                       Warn about things that will change when compiling
                              with an ABI-compliant compiler
  -Waddress                   Warn about suspicious uses of memory addresses
  -Waggregate-return          Warn about returning structures, unions or arrays
  -Waliasing                  Warn about possible aliasing of dummy arguments
  -Walign-commons             Warn about alignment of COMMON blocks
  -Wall                       Enable most warning messages
  -Wampersand                 Warn about missing ampersand in continued
                              character constants
  -Warray-bounds              Warn if an array is accessed out of bounds
  -Warray-temporaries         Warn about creation of array temporaries
  -Wassign-intercept          Warn whenever an Objective-C assignment is being
                              intercepted by the garbage collector
  -Wattributes                Warn about inappropriate attribute usage
  -Wbad-function-cast         Warn about casting functions to incompatible types
  -Wbuiltin-macro-redefined   Warn when a built-in preprocessor macro is
                              undefined or redefined
  -Wc++-compat                Warn about C constructs that are not in the
                              common subset of C and C++
  -Wc++0x-compat              Warn about C++ constructs whose meaning differs
                              between ISO C++ 1998 and ISO C++ 200x
  -Wcast-align                Warn about pointer casts which increase alignment
  -Wcast-qual                 Warn about casts which discard qualifiers
  -Wchar-subscripts           Warn about subscripts whose type is "char"
  -Wcharacter-truncation      Warn about truncated character expressions
  -Wclobbered                 Warn about variables that might be changed by
                              "longjmp" or "vfork"
  -Wcomment                   Warn about possibly nested block comments, and
                              C++ comments spanning more than one physical line
  -Wcomments                  Synonym for -Wcomment
  -Wconversion                Warn for implicit type conversions that may
                              change a value
  -Wcoverage-mismatch         Warn instead of error in case profiles in
                              -fprofile-use do not match
  -Wctor-dtor-privacy         Warn when all constructors and destructors are
                              private
  -Wdeclaration-after-statement Warn when a declaration is found after a
                              statement
  -Wdeprecated                Warn if a deprecated compiler feature, class,
                              method, or field is used
  -Wdeprecated-declarations   Warn about uses of __attribute__((deprecated))
                              declarations
  -Wdisabled-optimization     Warn when an optimization pass is disabled
  -Wdiv-by-zero               Warn about compile-time integer division by zero
  -Weffc++                    Warn about violations of Effective C++ style rules
  -Wempty-body                Warn about an empty body in an if or else
                              statement
  -Wendif-labels              Warn about stray tokens after #elif and #endif
  -Wenum-compare              Warn about comparison of different enum types
  -Werror-implicit-function-declaration This switch is deprecated; use
                              -Werror=implicit-function-declaration instead
  -Wextra                     Print extra (possibly unwanted) warnings
  -Wfloat-equal               Warn if testing floating point numbers for
                              equality
  -Wformat                    Warn about printf/scanf/strftime/strfmon format
                              string anomalies
  -Wformat-contains-nul       Warn about format strings that contain NUL bytes
  -Wformat-extra-args         Warn if passing too many arguments to a function
                              for its format string
  -Wformat-nonliteral         Warn about format strings that are not literals
  -Wformat-security           Warn about possible security problems with format
                              functions
  -Wformat-y2k                Warn about strftime formats yielding 2-digit years
  -Wformat-zero-length        Warn about zero-length formats
  -Wformat=
  -Wignored-qualifiers        Warn whenever type qualifiers are ignored.
  -Wimplicit
  -Wimplicit-function-declaration Warn about implicit function declarations
  -Wimplicit-int              Warn when a declaration does not specify a type
  -Wimplicit-interface        Warn about calls with implicit interface
  -Winit-self                 Warn about variables which are initialized to
                              themselves
  -Winline                    Warn when an inlined function cannot be inlined
  -Wint-to-pointer-cast       Warn when there is a cast to a pointer from an
                              integer of a different size
  -Wintrinsic-shadow          Warn if a user-procedure has the same name as an
                              intrinsic
  -Wintrinsics-std            Warn on intrinsics not part of the selected
                              standard
  -Winvalid-offsetof          Warn about invalid uses of the "offsetof" macro
  -Winvalid-pch               Warn about PCH files that are found but not used
  -Wlarger-than-
  -Wlarger-than=<number>      Warn if an object is larger than <number> bytes
  -Wline-truncation           Warn about truncated source lines
  -Wlogical-op                Warn when a logical operator is suspicously
                              always evaluating to true or false
  -Wlong-long                 Do not warn about using "long long" when -pedantic
  -Wmain                      Warn about suspicious declarations of "main"
  -Wmissing-braces            Warn about possibly missing braces around
                              initializers
  -Wmissing-declarations      Warn about global functions without previous
                              declarations
  -Wmissing-field-initializers Warn about missing fields in struct initializers
  -Wmissing-format-attribute  Warn about functions which might be candidates
                              for format attributes
  -Wmissing-include-dirs      Warn about user-specified include directories
                              that do not exist
  -Wmissing-noreturn          Warn about functions which might be candidates
                              for __attribute__((noreturn))
  -Wmissing-parameter-type    Warn about function parameters declared without a
                              type specifier in K&R-style functions
  -Wmissing-prototypes        Warn about global functions without prototypes
  -Wmudflap                   Warn about constructs not instrumented by
                              -fmudflap
  -Wmultichar                 Warn about use of multi-character character
                              constants
  -Wnested-externs            Warn about "extern" declarations not at file scope
  -Wnon-template-friend       Warn when non-templatized friend functions are
                              declared within a template
  -Wnon-virtual-dtor          Warn about non-virtual destructors
  -Wnonnull                   Warn about NULL being passed to argument slots
                              marked as requiring non-NULL
  -Wnormalized=<id|nfc|nfkc>  Warn about non-normalised Unicode strings
  -Wold-style-cast            Warn if a C-style cast is used in a program
  -Wold-style-declaration     Warn for obsolescent usage in a declaration
  -Wold-style-definition      Warn if an old-style parameter definition is used
  -Woverflow                  Warn about overflow in arithmetic expressions
  -Woverlength-strings        Warn if a string is longer than the maximum
                              portable length specified by the standard
  -Woverloaded-virtual        Warn about overloaded virtual function names
  -Woverride-init             Warn about overriding initializers without side
                              effects
  -Wpacked                    Warn when the packed attribute has no effect on
                              struct layout
  -Wpacked-bitfield-compat    Warn about packed bit-fields whose offset changed
                              in GCC 4.4
  -Wpadded                    Warn when padding is required to align structure
                              members
  -Wparentheses               Warn about possibly missing parentheses
  -Wpedantic-ms-format        Warn about none ISO msvcrt scanf/printf width
                              extensions
  -Wpmf-conversions           Warn when converting the type of pointers to
                              member functions
  -Wpointer-arith             Warn about function pointer arithmetic
  -Wpointer-sign              Warn when a pointer differs in signedness in an
                              assignment
  -Wpointer-to-int-cast       Warn when a pointer is cast to an integer of a
                              different size
  -Wpragmas                   Warn about misuses of pragmas
  -Wprotocol                  Warn if inherited methods are unimplemented
  -Wredundant-decls           Warn about multiple declarations of the same
                              object
  -Wreorder                   Warn when the compiler reorders code
  -Wreturn-type               Warn whenever a function's return type defaults
                              to "int" (C), or about inconsistent return types
                              (C++)
  -Wselector                  Warn if a selector has multiple methods
  -Wsequence-point            Warn about possible violations of sequence point
                              rules
  -Wshadow                    Warn when one local variable shadows another
  -Wsign-compare              Warn about signed-unsigned comparisons
  -Wsign-promo                Warn when overload promotes from unsigned to
                              signed
  -Wstack-protector           Warn when not issuing stack smashing protection
                              for some reason
  -Wstrict-aliasing           Warn about code which might break strict aliasing
                              rules
  -Wstrict-aliasing=          Warn about code which might break strict aliasing
                              rules
  -Wstrict-null-sentinel      Warn about uncasted NULL used as sentinel
  -Wstrict-overflow           Warn about optimizations that assume that signed
                              overflow is undefined
  -Wstrict-overflow=          Warn about optimizations that assume that signed
                              overflow is undefined
  -Wstrict-prototypes         Warn about unprototyped function declarations
  -Wstrict-selector-match     Warn if type signatures of candidate methods do
                              not match exactly
  -Wsurprising                Warn about "suspicious" constructs
  -Wswitch                    Warn about enumerated switches, with no default,
                              missing a case
  -Wswitch-default            Warn about enumerated switches missing a
                              "default:" statement
  -Wswitch-enum               Warn about all enumerated switches missing a
                              specific case
  -Wsync-nand                 Warn when __sync_fetch_and_nand and
                              __sync_nand_and_fetch built-in functions are used
  -Wsynth                     Deprecated.  This switch has no effect
  -Wsystem-headers            Do not suppress warnings from system headers
  -Wtabs                      Permit nonconforming uses of the tab character
  -Wtraditional               Warn about features not present in traditional C
  -Wtraditional-conversion    Warn of prototypes causing type conversions
                              different from what would happen in the absence
                              of prototype
  -Wtrigraphs                 Warn if trigraphs are encountered that might
                              affect the meaning of the program
  -Wtype-limits               Warn if a comparison is always true or always
                              false due to the limited range of the data type
  -Wundeclared-selector       Warn about @selector()s without previously
                              declared methods
  -Wundef                     Warn if an undefined macro is used in an #if
                              directive
  -Wunderflow                 Warn about underflow of numerical constant
                              expressions
  -Wuninitialized             Warn about uninitialized automatic variables
  -Wunknown-pragmas           Warn about unrecognized pragmas
  -Wunreachable-code          Warn about code that will never be executed
  -Wunsafe-loop-optimizations Warn if the loop cannot be optimized due to
                              nontrivial assumptions.
  -Wunused                    Enable all -Wunused- warnings
  -Wunused-function           Warn when a function is unused
  -Wunused-label              Warn when a label is unused
  -Wunused-macros             Warn about macros defined in the main file that
                              are not used
  -Wunused-parameter          Warn when a function parameter is unused
  -Wunused-value              Warn when an expression value is unused
  -Wunused-variable           Warn when a variable is unused
  -Wvariadic-macros           Do not warn about using variadic macros when
                              -pedantic
  -Wvla                       Warn if a variable length array is used
  -Wvolatile-register-var     Warn when a register variable is declared volatile
  -Wwrite-strings             In C++, nonzero means warn about deprecated
                              conversion from string literals to `char *'.  In
                              C, similar warning, except that the conversion is
                              of course not deprecated by the ISO C standard.