(Don't) crank up the warnings to 11
I prefer maximum warnings and use of #pragma to disable a warning at a specific point when I know the warning is useless&#x2F;wrong. That way I can get to a totally clean build with zero warnings output. The last significant piece of C I wrote:<p><pre><code>    # Turn on absolutely all warnings and turn them into errors
    
    CFLAGS += -g -Wall -Wextra -Wno-unused-parameter -Werror
</code></pre>
<a href="https:&#x2F;&#x2F;github.com&#x2F;cloudflare&#x2F;keyless&#x2F;blob&#x2F;master&#x2F;Makefile#L44">https:&#x2F;&#x2F;github.com&#x2F;cloudflare&#x2F;keyless&#x2F;blob&#x2F;master&#x2F;Makefile#L...</a><p>The reason I do this is if I leave some warnings in I can get complacent &quot;oh, there&#x27;s always a few warnings&quot; or &quot;that&#x27;s expected&quot; and then miss something. So, I like all the warnings and warnings treated as errors.