Kevin Kofler wrote:
Indeed, -Wall is not really all. :-) -Wall -Wextra is closer to all,
but
there are still some things those won't warn about, e.g. -Wwrite-strings
catches places which use a string literal as a potentially writable char *
instead of a const char *.
-O2 is required by -Warray-bounds.
ALL C code should be compiled with -O2 -Wall -W(aka -Wextra). And _maybe_
also with -std=xxxx and -pedantic, + splint + valgrind ...
see:
http://gcc.gnu.org/onlinedocs/gcc-4.6.2/gcc/Warning-Options.html