public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "fw at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug middle-end/110617] RFE: Add a diagnostic-only variant of nonnull attribute
Date: Tue, 11 Jul 2023 09:10:11 +0000	[thread overview]
Message-ID: <bug-110617-4-YYCc4UsH4S@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-110617-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110617

--- Comment #9 from Florian Weimer <fw at gcc dot gnu.org> ---
(In reply to Xi Ruoyao from comment #6)
> (In reply to Richard Biener from comment #5)
> > I think a -f... option to disable the code generation effects would make
> > more sense than adding another attribute kind.
> 
> Then maybe we'd just add a -D_GLIBC_NONNULL={0,1} (?) into Glibc cdefs.h
> instead.  Anyway I'm already too frustrated about this so I'll not continue
> working on nonnull within Glibc headers.  If you don't like this just close
> it as WONTFIX.

For those who are not following libc-alpha, glibc already disables __nonnull
during its build, so it should be totally fine to use __nonnull in installed
headers to improve diagnostics.

We have this in include/sys/cdefs.h (which augments <sys/cdefs.h>):

/* The compiler will optimize based on the knowledge the parameter is
   not NULL.  This will omit tests.  A robust implementation cannot allow
   this so when compiling glibc itself we ignore this attribute.  */
# undef __nonnull
# define __nonnull(params)

We'd like the diagnostics for building glibc itself, and a new -f option would
help with that.

  parent reply	other threads:[~2023-07-11  9:10 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-10 18:25 [Bug middle-end/110617] New: " xry111 at gcc dot gnu.org
2023-07-10 18:29 ` [Bug middle-end/110617] " xry111 at gcc dot gnu.org
2023-07-10 18:30 ` pinskia at gcc dot gnu.org
2023-07-10 21:27 ` alx at kernel dot org
2023-07-11  0:36 ` sjames at gcc dot gnu.org
2023-07-11  7:46 ` rguenth at gcc dot gnu.org
2023-07-11  8:34 ` xry111 at gcc dot gnu.org
2023-07-11  8:59 ` alx at kernel dot org
2023-07-11  9:05 ` alx at kernel dot org
2023-07-11  9:10 ` fw at gcc dot gnu.org [this message]
2023-07-11 10:01 ` xry111 at gcc dot gnu.org
2023-07-11 10:29 ` fw at gcc dot gnu.org
2023-07-11 10:30 ` xry111 at gcc dot gnu.org

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=bug-110617-4-YYCc4UsH4S@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /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).