https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106572
Bug ID: 106572 Summary: A programmatic list of all possible compiler warnings Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: j.badw...@fz-juelich.de Target Milestone: --- It would be an excellent workflow to run your code with `-Weverything` once in a while just to check which new warnings are triggered by your code. Then, depending on whether they are useful or not, one can incorporate those warnings in their normal workflow. The alternative is to go through the release notes of every GCC release everytime and then try to see if there is a warning which interests you. While this is doable, it requires manual effort, with a possibility that you find no warning which is useful. Also, depending on the code, it might not be possible to play with all compiler warnings as soon as the compiler is released, since you might want to wait for your code to be able to compile with the compiler before you go there. All of this makes for a very clumsy workflow with a lot of manual reminders about what needs to be done. The `-Weverything` allows for someone to schedule say a monthly CI job which automatically runs the build with `-Weverything -Werror`. Any new compilers added and any new warning which affects the current code will automatically be detected. The user can then make a decision on whether the warning makes enough sense for them to be used in their production runs. Currently, the way to get a list of all warning is very cumbersome. One has to do: > g++ -Q --help=warnings | tail -n +2 | awk '{print $1}' | tr '\n' ' ' which blows up the command line for the compilation. The request would be to provide either a `-Weverything` flag like clang does or a `g++ --list-every-warning` to list all warnings in a format which can then be passed to the compiler.