GCCのWarning Optionをあるだけ列挙
#ERR = -Werror OPT = -ansi -pedantic-errors $(ERR) -Wall -Wextra -Wformat=2 -Winit-self -Wswitch-default -Wswitch-enum -Wsync-nand -Wstrict-aliasing=1 -Wstrict-overflow=5 -Wsystem-headers -Wfloat-equal -Wtraditional-conversion -Wdeclaration-after-statement -Wshadow -Wunsafe-loop-optimizations -Wpointer-arith -Wbad-function-cast -Wc++-compat -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Wsign-compare -Wsign-conversion -Wlogical-op -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wmissing-declarations -Wmissing-noreturn -Wmissing-format-attribute -Wpacked -Wpadded -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wdisabled-optimization -Wstack-protector -Woverlength-strings # -Wtraditional # -Wundef # -Wunsuffixed-float-constants # -Wlarger-than=*** # -Wframe-larger-than=*** # -Wnormalized=<none|id|nfc|nfkc>
使えなかったり、イラっときたものから少しずつ消すのもアリだと思う。
また最低限、-Wall -Wextra -Wwrite-strings、くらいはあっていいと思う。