Estou particularmente interessado em quaisquer avisos adicionais,
Além de -Wall
, a opção -W
ou -Wextra
(-W
funciona com versões mais antigas do gcc e com as mais recentes; versões mais recentes suportam o nome alternativo -Wextra
, o que significa a mesma coisa, mas é mais descritivo) permite vários avisos adicionais.
Também há ainda mais avisos que não são ativados por nenhum deles, geralmente para coisas que são mais questionáveis. O conjunto de opções disponíveis depende de qual versão do gcc você está usando - consulte man gcc
ou info gcc
para obter detalhes, ou consulte a documentação on - line da versão específica do gcc em que está interessado. E -pedantic
emite todos os avisos exigidos pelo padrão em particular (que depende em outras opções como -std=xxx
ou -ansi
) e reclama do uso de extensões gcc.
e / ou transformar avisos em erros em alguns casos para minimizar absolutamente qualquer incompatibilidade acidental de tipo.
-Werror
transforma todos os avisos em erros. Eu não acho que o gcc permita que você faça isso seletivamente para avisos específicos, no entanto.
Você provavelmente descobrirá que precisa ser seletivo sobre quais avisos são ativados por projeto (especialmente se você usar -Werror
), pois os arquivos de cabeçalho de bibliotecas externas podem disparar alguns deles. ( -pedantic
em particular, tende a ser inútil a esse respeito, na minha experiência.)
-save-temps
,-Wshadow
e-fmudflap
foram as melhores descobertas que eu não conhecia, graças a todos.