It is a common misconception that -Wall includes all warnings.
It includes βall design warnings that some users find dubious, which are easy to avoid (or modify to prevent warnings) even when combined with macrosβ (citing the GCC manual).
Even -Wextra only "includes some additional warning flags that are not activated by -Wall" (again from the GCC manual).
There is also -pedantic , which generates warnings in cases where the meaning of the code is clear to the compiler, but the standard requires that the corresponding compiler produce a message. (By default, GCC needs to continue compiling).
Even if all three are turned on, you will not receive every warning that the compiler can provide. See the compiler manual for more details.
source share