см. Человек gcc.
-Wall включает следующие предупреждения:
-Waddress -Warray-bounds (only with -O2) -Wc++0x-compat -Wchar-subscripts
-Wenum-compare (in C/Objc; this is on by default in C++) -Wimplicit-int (C and
Objective-C only) -Wimplicit-function-declaration (C and Objective-C only)
-Wcomment -Wformat -Wmain (only for C/ObjC and unless -ffreestanding)
-Wmissing-braces -Wnonnull -Wparentheses -Wpointer-sign -Wreorder -Wreturn-type
-Wsequence-point -Wsign-compare (only in C++) -Wstrict-aliasing
-Wstrict-overflow=1 -Wswitch -Wtrigraphs -Wuninitialized -Wunknown-pragmas
-Wunused-function -Wunused-label -Wunused-value -Wunused-variable
-Wvolatile-register-var
-Вэкстра содержит:
-Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers
-Wmissing-parameter-type (C only) -Wold-style-declaration (C only) -Woverride-init
-Wsign-compare -Wtype-limits -Wuninitialized -Wunused-parameter (only with -Wunused
or -Wall) -Wunused-but-set-parameter (only with -Wunused or -Wall)
Есть еще много предупреждений, которые вы должны включить явно.
например. для нашего кода C мы используем:
-Wall -Wextra -Waggregate-return -Wcast-align -Wcast-qual -Wdisabled-оптимизация -Wdiv-by-zero -Wendif-метки -Wformat-extra-args -Wformat-нелитеральный -Wformat-security -Wformat- y2k-Скрытый -Wimport -Winit-self -Winline -Winvalid-pch -Wjump-misses-init -Wlogical-op -Werror = missing-фигурные скобки -Wmissing-декларации -Wno-отсутствующий-формат-атрибут -Wmissing-include-dirs - Wmultichar -Wpacked -Wpointer-arith -Wreturn-type -Wsequence-point -Wsign-compare -Wstrict-aliasing -Wstrict-aliasing = 2 -Wswitch -Wswitch-default -Werror = undef -Wno-unused -Wvariadic-macroros -Wwrite- строки -Wc ++ - compat -Werror = объявление-после-оператора -Werror = неявное-объявление-функции -Wmissing-prototypes -Werror = nested-externs -Werror = старое-определение-стиля -Werror = строгие-прототипы
или просто набор предупреждений с https://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html