> In Bugzilla PR # 70275, Manuel López-Ibáñez reports that even though > he provides the "-Werror=return-type" option, the compiler doesn't > flag the warning/error about a control reaching the end of a non-void > function, due to the presence of the "-w" option. He points out that > clang++ wtill flags the promoted warning even though warnings are > inhibited.
I think -w is ordered with respect to the other warning obtions, and -w inhibits previously requested warnings, and future -W flags may enable other warnings. With this in mind, I agree that the current GCC behavior is consistent and probably not a bug.