> From: Jonathan Wakely <jwakely....@gmail.com> > Date: Wed, 10 May 2023 12:49:52 +0100 > Cc: David Brown <da...@westcontrol.com>, gcc@gcc.gnu.org > > > If some developers want to ignore warnings, it is not the business of > > GCC to improve them, even if you are right in assuming that they will > > not work around errors like they work around warnings (and I'm not at > > all sure you are right in that assumption). But by _forcing_ these > > errors on _everyone_, GCC will in effect punish those developers who > > have good reasons for not changing the code. > > There will be options you can use to continue compiling the code > without changing it. You haven't given a good reason why it's OK for > one group of developers to have to use options to get their desired > behaviour from GCC, but completely unacceptable for a different group > to have to use options to get their desired behaviour. > > This is just a change in defaults.
A change in defaults that is not backward-compatible should only be done for very good reasons, because it breaks something that was working for years. No such good reasons were provided. And no, educating/forcing GCC users to use more modern dialect of C is not a good reason. > Accepting broken code by default is not a priori a good thing, as > you seem to insist. Rejecting it by default is not a priori a good > thing. There is a pragmatic choice to be made, and your argument is > still no more than "it compiles today, so it should compile > tomorrow". Once again: it isn't "broken code". It is dangerous code, and in some cases unintentionally suspicious code. But it isn't broken, because GCC can compile it into a valid program, which, if the programmer indeed meant that, will work and do its job. > > > Agreed. But if we can make it harder for them to release bad code, > > > that's good overall. > > > > I'm okay with making it harder, but without making it too hard for > > those whose reasons for not changing the code are perfectly valid. > > This proposal crosses that line, IMNSHO. > > Where "too hard" means using a compiler option. Seriously? This seems > farcical. This goes both ways, of course. GCC had -Werror since about forever.