-Waddress | ENABLED TODAY | -- |
-Waggregate-return | (might be a good idea, but triggers today.) | |
-Wall | ENABLED TODAY | |
-Warray-bounds | ENABLED TODAY | |
-Warray-bounds=n | (XXXX writeme) | |
-Wbad-function-cast | ENABLED TODAY | |
-Wbool-compare | ENABLED TODAY (by -Wall) | |
-Wc++-compat | (I don't consider this a bug, or it would trigger way too often) | |
-Wc++11-compat | ENABLED TODAY (by -Wall) | |
-Wc++14-compat | ENABLED TODAY (by -Wall) | |
-Wc90-c99-compat | (I don't consider this a bug, or it would trigger way too often) | |
-Wc99-c11-compat | (could add trivially) | |
-Wcast-align | (triggers today) | GCC 3 |
-Wcast-qual | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wchar-subscripts | ENABLED TODAY | |
-Wclobbered | ENABLED TODAY (by -Wextra) | |
-Wcomment | ENABLED TODAY | |
-Wconditionally-supported | (C++ only, irrelevant to tor.) | |
-Wconversion | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wcoverage-mismatch | ENABLED TODAY (by default) | |
-Wdate-time | (could add trivially) | |
-Wdeclaration-after-statement | (I don't consider this a bug, or it would trigger way too often) | |
-Wdelete-incomplete | (C++ only, irrelevant to tor.) | |
-Wdisabled-optimization | (I don't consider this a bug, or it would trigger way too often) | |
-Wdouble-promotion | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wduplicated-cond | (might be a good idea, but triggers today.) | GCC 6.1 |
-Wempty-body | ENABLED TODAY (by -Wextra) | |
-Wenum-compare | ENABLED TODAY (by -Wall) | |
-Werror | ENABLED TODAY | |
-Wextra | ENABLED TODAY | |
-Wfloat-conversion | (might be a good idea, but triggers today.) | GCC 4.9 |
-Wfloat-equal | ENABLED TODAY | |
-Wformat | ENABLED TODAY (by -Wall) | |
-Wformat-nonliteral | ENABLED TODAY (by -Wformat=2) | |
-Wformat-security | ENABLED TODAY (by -Wformat=2) | |
-Wformat-signedness | ENABLED TODAY (by -Wformat=2) | |
-Wformat-y2k | ENABLED TODAY (by -Wformat=2) | |
-Wformat=2 | ENABLED TODAY | |
-Wframe-address | ENABLED TODAY (by -Wall) | |
-Wframe-larger-than=len | (I don't consider this a bug, or it would trigger way too often) | |
-Whsa | (irrelevant to Tor?) | |
-Wignored-attributes | (could add trivially) | |
-Wignored-qualifiers | ENABLED TODAY (by -Wextra) | |
-Wimplicit | ENABLED TODAY (by -Wall) | |
-Wimplicit-function-declaration | ENABLED TODAY (by -Wall) | |
-Wimplicit-int | ENABLED TODAY (by -Wall) | |
-Wincompatible-pointer-types | Actually, this is on by default FWICT. |
GCC 5.1 |
-Winit-self | ENABLED TODAY | |
-Winline | (I don't consider this a bug, or it would trigger way too often) | |
-Winvalid-memory-model | ENABLED TODAY (by default) | |
-Winvalid-pch | (I don't consider this a bug, or it would trigger way too often) | |
-Wjump-misses-init | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wlarger-than=len | (I don't consider this a bug, or it would trigger way too often) | |
-Wlogical-not-parentheses | ENABLED TODAY (by -Wall) | |
-Wlogical-op | ENABLED TODAY | |
-Wlong-long | (I don't consider this a bug, or it would trigger way too often) | |
-Wmain | ENABLED TODAY (by -Wall) | |
-Wmaybe-uninitialized | ENABLED TODAY (by -Wall) | |
-Wmemset-transposed-args | ENABLED TODAY (by -Wall) | |
-Wmisleading-indentation | ENABLED TODAY (by -Wall) | |
-Wmissing-braces | ENABLED TODAY (by -Wall) | |
-Wmissing-declarations | ENABLED TODAY | |
-Wmissing-field-initializers | ENABLED TODAY | |
-Wmissing-format-attribute | (could add trivially) | |
-Wmissing-include-dirs | (I don't consider this a bug, or it would trigger way too often) | |
-Wmissing-parameter-type | ENABLED TODAY (by -Wextra) | |
-Wmissing-prototypes | ENABLED TODAY | |
-Wnested-externs | ENABLED TODAY | |
-Wnonnull | ENABLED TODAY (by -Wall) | |
-Wnonnull-compare | ENABLED TODAY (by -Wall) | |
-Wnormalized=[none|id|nfc|nfkc] | We use -Wnormalized=id now; should we switch? | |
-Wnull-dereference | (might be a good idea, but triggers today.) | GCC 6.1 |
-Wodr | (irrelevant to Tor?) | |
-Wold-style-declaration | ENABLED TODAY (by -Wextra) | |
-Wold-style-definition | ENABLED TODAY | |
-Wopenmp-simd | ENABLED TODAY (by -Wall) | |
-Woverlength-strings | (might be a good idea, but triggers today.) | GCC 4.6 |
-Woverride-init-side-effects | ENABLED TODAY (by default) | |
-Wpacked | (could add trivially) | |
-Wpacked-bitfield-compat | (I don't consider this a bug, or it would trigger way too often) | |
-Wpadded | (might be a good idea, but triggers today.) | GCC 3 |
-Wparentheses | ENABLED TODAY (by -Wall) | |
-Wpedantic | (I don't consider this a bug, or it would trigger way too often) | |
-Wplacement-new | (C++ only, irrelevant to tor.) | |
-Wplacement-new=n | (C++ only, irrelevant to tor.) | |
-Wpointer-arith | ENABLED TODAY | |
-Wpointer-sign | ENABLED TODAY (by -Wall) | |
-Wredundant-decls | ENABLED TODAY | |
-Wreturn-type | ENABLED TODAY (by -Wall) | |
-Wsequence-point | ENABLED TODAY (by -Wall) | |
-Wshadow | We have a ticket to turn this one on. Good idea? | GCC 3 |
-Wshift-count-negative | (could add trivially) | |
-Wshift-count-overflow | (could add trivially) | |
-Wshift-negative-value | (could add trivially) | |
-Wshift-overflow | ENABLED TODAY (by default) | |
-Wshift-overflow=n | Easy, when n==2. | |
-Wsign-compare | ENABLED TODAY (by -Wextra) | |
-Wsign-conversion | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wsizeof-array-argument | (could add trivially) | |
-Wsizeof-pointer-memaccess | ENABLED TODAY (by -Wall) | |
-Wstack-protector | ENABLED TODAY | |
-Wstack-usage=len | Would trigger way too much. | |
-Wstrict-aliasing | ENABLED TODAY (by -Wall) | |
-Wstrict-aliasing=n | Already on; could raise n to 5? | GCC 3? |
-Wstrict-overflow | (might be a good idea, but triggers today.) | GCC 4.2 |
-Wstrict-overflow=n | (might be a good idea, but triggers today.) | GCC 4.2 |
-Wstrict-prototypes | ENABLED TODAY | |
-Wsubobject-linkage | (C++ only, irrelevant to tor.) | |
-Wsuggest-attribute=pure | Triggers a lot on our current code | GCC 4.6 |
-Wsuggest-attribute=const | Triggers a lot on our current code | GCC 4.6 |
-Wsuggest-attribute=noreturn | (No problem to add) | |
-Wsuggest-attribute=format | (no problem to add) | |
-Wsuggest-final-methods | (C++ only, irrelevant to tor.) | |
-Wsuggest-final-types | (C++ only, irrelevant to tor.) | |
-Wsuggest-override | (C++ only, irrelevant to tor.) | |
-Wswitch | ENABLED TODAY (by -Wall) | |
-Wswitch-bool | (could add trivially) | |
-Wswitch-default | (might be a good idea, but triggers today.) | GCC 3 |
-Wswitch-enum | ENABLED TODAY | |
-Wsync-nand | (could add trivially) | |
-Wsystem-headers | (I don't consider this a bug, or it would trigger way too often) | |
-Wtautological-compare | ENABLED TODAY (by -Wall) | |
-Wtraditional | (I don't consider this a bug, or it would trigger way too often) | |
-Wtraditional-conversion | (I don't consider this a bug, or it would trigger way too often) | |
-Wtrampolines | (could add trivially) | |
-Wtrigraphs | ENABLED TODAY (by -Wall) | |
-Wtype-limits | ENABLED TODAY (by -Wextra) | |
-Wundef | ENABLED TODAY | |
-Wuninitialized | ENABLED TODAY (by -Wall) | |
-Wunknown-pragmas | ENABLED TODAY (by -Wall) | |
-Wunsafe-loop-optimizations | (might be a good idea, but triggers today.) | GCC 4.1 |
-Wunsuffixed-float-constants | (might be a good idea, but triggers today.) | GCC 4.6 |
-Wunused | (could add trivially) | |
-Wunused-but-set-parameter | (could add trivially) | |
-Wunused-but-set-variable | (could add trivially) | |
-Wunused-const-variable | (might be a good idea, but triggers today.) | GCC 6.1 |
-Wunused-const-variable=n | (Triggers on our current code.) | GCC 6.1 |
-Wunused-function | ENABLED TODAY (by -Wall) | |
-Wunused-label | ENABLED TODAY (by -Wall) | |
-Wunused-local-typedefs | (could add trivially) | |
-Wunused-parameter | (could add trivially) | |
-Wunused-value | ENABLED TODAY (by -Wall) | |
-Wunused-variable | ENABLED TODAY (by -Wall) | |
-Wuseless-cast | (C++ only, irrelevant to tor.) | |
-Wvariadic-macros | (could add trivially) | |
-Wvector-operation-performance | (irrelevant to Tor?) | |
-Wvla | (I don't consider this a bug, or it would trigger way too often) | |
-Wvolatile-register-var | ENABLED TODAY (by -Wall) | |
-Wwrite-strings | ENABLED TODAY | |
-Wzero-as-null-pointer-constant | (C++ only, irrelevant to tor.) | |
-pedantic-errors | (I don't consider this a bug, or it would trigger way too often) |