More C type errors by default for GCC 14

Joel Sherrill joel@rtems.org
Wed May 10 15:10:37 GMT 2023


On Tue, May 9, 2023 at 5:46 PM Jonathan Wakely <jwakely.gcc@gmail.com>
wrote:

> On Tue, 9 May 2023 at 23:38, Joel Sherrill wrote:
> > We are currently using gcc 12 and specifying C11.  To experiment with
> > these stricter warnings and slowly address them, would we need to build
> > with a newer C version?
>
> No, the proposed changes are to give errors (instead of warnings) for
> rules introduced in C99. GCC is just two decades late in enforcing the
> C99 rules properly!
>
>
> > What practices might the GCC community recommend to a project
> > wanting to discover the issues uncovered and slowly address them? I
>
> -Werror=implicit-int
> -Werror=implicit-function-declaration
> -Werror=int-conversion
>

Thanks. We already  use -Wall which is documented to turn on the top two
as warnings at least.

Is int-conversion turned on as part of any of the more general -W arguments
(e.g. -Wall, -Wextra, -pedantic)? It's not listed in the manual and I was
wondering
if that was right or an oversight. Given this discussion, I would have
expected it
to be in -Wall.

--joel


> > i am a bit gun shy because I remember the move from GCC 3.3 to 3.4
> > where the improved strict alias checking gave us a LOT of warnings to
> > deal with and it felt overwhelming. I don't want to do that again.
> >
> > But I believe in letting the compiler get stricter and find things.
> Defaulting
> > to stricter checking is a good thing.
>
> The checks are already done, they're just warnings by default, and so
> easily missed/ignored when compiling large code bases.
>


More information about the Gcc mailing list