# Table of GCC Warnings Not Enabled by Other Options This table collects all gcc warnings used with C++ not enabled by some other option (e.g. `-Wall`) and indicates the first gcc version the warning appeared in if it's later than gcc 4.6. It was generated from the files `gcc/{common,c-family/c}.opt` in `basepoints/gcc-11-2851-g050fc8b27a8` commit of gcc source tree using [show-gcc-warnings script](https://www.tt-solutions.com/en/portfolio/gcc_warnings). See also the [table of all warnings](https://hackmd.io/@VZ/all-gcc-warnings). | Warning | Version | |---------|:-------:| |`abi`|| |`abi-tag`|4.8| |`abi=`|5.1| |`address`|| |`aggregate-return`|| |`alloc-size-larger-than=`|7.1| |`alloc-zero`|7.1| |`alloca`|7.1| |`alloca-larger-than=`|7.1| |`arith-conversion`|10.1| |`array-bounds`|| |`builtin-macro-redefined`|| |`cast-align`|| |`cast-align=strict`|8.1| |`cast-qual`|| |`char-subscripts`|| |`chkp`|9.1| |`class-memaccess`|8.1| |`clobbered`|| |`comma-subscript`|10.1| |`comment`|| |`conditionally-supported`|4.9| |`conversion`|| |`ctor-dtor-privacy`|| |`date-time`|4.9| |`delete-non-virtual-dtor`|4.7| |`deprecated-copy`|9.1| |`deprecated-copy-dtor`|9.1| |`disabled-optimization`|| |`double-promotion`|| |`duplicated-branches`|7.1| |`duplicated-cond`|6.1| |`empty-body`|| |`endif-labels`|| |`enum-compare`|| |`extra-semi`|8.1| |`float-equal`|| |`format`|| |`format-contains-nul`|| |`format-extra-args`|| |`format-nonliteral`|| |`format-security`|| |`format-signedness`|5.1| |`format-zero-length`|4.7| |`frame-larger-than=`|| |`ignored-qualifiers`|| |`init-self`|| |`inline`|| |`invalid-pch`|| |`larger-than=`|| |`literal-suffix`|4.8| |`logical-op`|6.1| |`long-long`|| |`main`|| |`maybe-uninitialized`|4.7| |`mismatched-tags`|10.1| |`missing-braces`|| |`missing-declarations`|| |`missing-field-initializers`|| |`missing-format-attribute`|| |`missing-include-dirs`|| |`missing-noreturn`|| |`multichar`|| |`multiple-inheritance`|6.1| |`namespaces`|6.1| |`narrowing`|4.7| |`noexcept`|| |`noexcept-type`|7.1| |`non-virtual-dtor`|| |`nonnull`|4.7| |`normalized=`|| |`null-dereference`|6.1| |`old-style-cast`|| |`overlength-strings`|| |`overloaded-virtual`|| |`packed`|| |`packed-bitfield-compat`|| |`padded`|| |`parentheses`|| |`pessimizing-move`|9.1| |`placement-new=`|6.1| |`pointer-arith`|| |`redundant-decls`|| |`redundant-tags`|10.1| |`register`|7.1| |`reorder`|| |`restrict`|7.1| |`return-type`|| |`sequence-point`|| |`shadow`|| |`shift-negative-value`|6.1| |`shift-overflow=`|6.1| |`sign-compare`|| |`sign-conversion`|| |`sign-promo`|| |`stack-protector`|| |`stack-usage=`|4.7| |`strict-aliasing`|| |`strict-aliasing=`|| |`strict-null-sentinel`|| |`strict-overflow`|| |`strict-overflow=`|| |`string-compare`|10.1| |`stringop-overflow=`|7.1| |`stringop-truncation`|8.1| |`suggest-attribute=cold`|8.1| |`suggest-attribute=const`|| |`suggest-attribute=format`|4.8| |`suggest-attribute=malloc`|8.1| |`suggest-attribute=noreturn`|| |`suggest-attribute=pure`|| |`suggest-final-methods`|5.1| |`suggest-final-types`|5.1| |`suggest-override`|5.1| |`switch`|| |`switch-default`|| |`switch-enum`|| |`synth`|| |`system-headers`|| |`templates`|6.1| |`trampolines`|| |`trigraphs`|| |`type-limits`|| |`undef`|| |`uninitialized`|| |`unknown-pragmas`|| |`unreachable-code`|| |`unsafe-loop-optimizations`|| |`unused`|| |`unused-but-set-parameter`|| |`unused-but-set-variable`|| |`unused-function`|| |`unused-label`|| |`unused-local-typedefs`|4.7| |`unused-macros`|| |`unused-parameter`|| |`unused-value`|| |`unused-variable`|| |`useless-cast`|4.8| |`variadic-macros`|| |`vector-operation-performance`|4.7| |`virtual-inheritance`|6.1| |`vla`|| |`vla-larger-than=`|7.1| |`volatile`|10.1| |`volatile-register-var`|| |`write-strings`|| |`zero-as-null-pointer-constant`|4.7|