public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Sam James <sam@gentoo.org>
To: Jeff Law <jeffreyalaw@gmail.com>
Cc: Florian Weimer <fweimer@redhat.com>, gcc@gcc.gnu.org
Subject: Re: Report from the additional type errors for GCC 14 BoF at Cauldron
Date: Tue, 26 Sep 2023 19:49:00 +0100	[thread overview]
Message-ID: <87bkdokbrh.fsf@gentoo.org> (raw)
In-Reply-To: <52f4d828-92f3-4930-9992-e5899fc56d84@gmail.com>


Jeff Law via Gcc <gcc@gcc.gnu.org> writes:

> On 9/26/23 02:28, Florian Weimer via Gcc wrote:
>> My understanding of the consensus goes as follows:
>> * We want to make some changes in this area for GCC 14.
>> * We should do the same thing that Clang does: default to the relevant
>>    -Werror= options.
>> * Unlike regular warnings, these warnings-as-errors should also apply
>>    to system headers.
>> * At least implict-int and implicit-function-declaration should be
>>    upgraded to errors in this way.
>> * It's too early to make the () changes and bool-as-keyword from C2X
>>    for GCC 14.
>> * We should fix the missing scope of the int-conversion warnings
>>    (PR109827).  Likweise for incompatible-pointer-types (PR109826).
>> Is this summary accurate?
> I wasn't there, so I can't attest to accuracy.  It does look like a
> reasonable plan for gcc-14 though.
>
>> I think the open issues are:
>> * Do we want to implement something else beside implicit-int and
>>    implicit-function-declaration?  (Candidates are int-conversion and
>>    incompatible-pointer-types, and the void vs non-void part of
>>    return-type, maybe others as previously discussed on the list.)
>> * How do we divide up the test suite cleanup work?
> Not to open a can of worms, but shouldn't these be evaluated along the
> same basic criteria?  ie, what's Clang doing here, are these
> warnings-as-errors and thus apply to system headers, etc.  ANd the
> biggie, do any of these issues tend to mask correctness errors in the
> wild at a level roughly similar to implicit
> int/implicit-function-declaration?

My experience from doing the big rebuilds in Gentoo and working on
patches is that int-conversion often comes up with completely broken code
like wrong strerror_r variant (glibc vs musl) or with structs being
initialised with the wrong members (not using C99 desig. initialisers
and then differences with padding or similar). I don't think I can
recall a harmless hit.

Incompatible pointer types are a mix - sometimes it's harmless, but
a lot of the infringers aren't great (again often indicating wrong
prototypes being used or missing feature test macros). It's helped
to find a lot of typos as well. The only real snag (which isn't
a big deal IMO) is that it'll flag up attribute mismatches for
function pointer types, at least with Clang, but that's not a big
deal.

Clang has done both of these (technically Clang has only done
incompatible *function* pointer types rather than all incompatible
pointer types, at least for now though).

>
> Jeff


  parent reply	other threads:[~2023-09-26 18:52 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-26  8:28 Florian Weimer
2023-09-26  9:22 ` Jakub Jelinek
2023-09-26 12:04   ` Florian Weimer
2023-09-26 12:22 ` Jeff Law
2023-09-26 13:42   ` Florian Weimer
2023-09-26 18:49   ` Sam James [this message]
2023-09-26 18:40 ` Sam James
2023-09-26 22:06   ` Arsen Arsenović
2023-09-27  4:44     ` Florian Weimer
2023-09-27  8:52       ` Anaya Shah

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bkdokbrh.fsf@gentoo.org \
    --to=sam@gentoo.org \
    --cc=fweimer@redhat.com \
    --cc=gcc@gcc.gnu.org \
    --cc=jeffreyalaw@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).