public inbox for linux-man@vger.kernel.org
 help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: Alejandro Colomar <alx@kernel.org>
Cc: David Malcolm <dmalcolm@redhat.com>,
	Paul Eggert <eggert@cs.ucla.edu>,
	gcc@gcc.gnu.org, linux-man@vger.kernel.org, xry111@xry111.site,
	uecker@tugraz.at, lh_mouse@126.com, jwakely.gcc@gmail.com,
	Richard.Earnshaw@arm.com, sam@gentoo.org,
	ben.boeckel@kitware.com, heiko.eissfeldt@siemens.com,
	libc-alpha@sourceware.org
Subject: Re: WG14 paper for removing restrict from nptr in strtol(3)
Date: Tue, 9 Jul 2024 11:18:11 +0200	[thread overview]
Message-ID: <Zo0AU/3YFNIeEELE@tucnak> (raw)
In-Reply-To: <rh6sttlv3mpjgiktqcje5we7io5pnd24i7nt5yxi45nxjmcoee@mhuv3rq34mzz>

On Tue, Jul 09, 2024 at 11:07:59AM +0200, Alejandro Colomar wrote:
> > > restrict, as of what -Wrestrict warns about, seems a reasonable
> > > thing.
> > > 
> > > How about a [[gnu::restrict()]] attribute, similar to
> > > [[gnu::access()]],
> > > which is simpler than the qualifier?  Since restrict is only
> > > meaningful
> > > in function boundaries, it would make sense to have a function
> > > attribute.  We don't want a qualifier that must follow discarding
> > > rules.
> > 
> > If it doesn't have the same meaning as "restrict" then perhaps call the
> > proposed attribute something other than "restrict"?
> 
> Yup, I was thinking that maybe noalias is a better name.

Name is one thing, but you'd also need to clearly define what it means.
When restrict is access based, it is clear what it means.

If you want something else which is not based on accesses and which should
allow warnings in the callers, I suppose you need to specify not just the
pointer but the extent as well (and maybe stride) or that it is an '\0'
terminated string, because if you want to say that for
void foo (char *, const char *, int);
the 2 pointers don't really alias, the size information is missing.  So,
shall the new warning warn on
struct S { char a[1024]; char b[1024]; } s;
foo (s.a, s.b, 512);
or not?  Or foo (s.a, s.a + 512, 512);

	Jakub


  reply	other threads:[~2024-07-09  9:18 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20240705130249.14116-2-alx@kernel.org>
     [not found] ` <38982a470643f766747b0ca06b27ca859a87b101.camel@xry111.site>
2024-07-05 14:37   ` [PATCH v1] Remove 'restrict' from 'nptr' in strtol(3)-like functions Alejandro Colomar
2024-07-05 15:02     ` Martin Uecker
2024-07-05 15:23       ` Alejandro Colomar
2024-07-05 15:34         ` Martin Uecker
2024-07-05 15:53           ` Alejandro Colomar
2024-07-05 16:01             ` Xi Ruoyao
2024-07-05 16:17               ` Xi Ruoyao
2024-07-05 16:24               ` Jonathan Wakely
2024-07-05 16:30                 ` Martin Uecker
2024-07-05 19:28                   ` Alejandro Colomar
2024-07-05 19:38                     ` Jonathan Wakely
2024-07-05 19:47                       ` Alejandro Colomar
2024-07-05 19:52                         ` Jonathan Wakely
2024-07-05 20:11                           ` Alejandro Colomar
2024-07-05 20:15                           ` Emanuele Torre
2024-07-05 20:31                             ` Ben Boeckel
2024-07-05 20:25                     ` Martin Uecker
2024-07-05 20:28                       ` Jonathan Wakely
2024-07-05 20:41                         ` Alejandro Colomar
2024-07-05 20:55                         ` Alejandro Colomar
2024-07-05 21:39                           ` Jonathan Wakely
2024-07-05 22:02                             ` Alejandro Colomar
2024-07-05 22:04                               ` Alejandro Colomar
2024-07-06  2:24                               ` Xi Ruoyao
2024-07-06  2:39                                 ` Xi Ruoyao
2024-07-06  5:51                                   ` [[gnu::null_terminated_string_arg(1)]] on strtol(1) (was: [PATCH v1] Remove 'restrict' from 'nptr' in strtol(3)-like) functions Alejandro Colomar
2024-07-06  6:10                                 ` [PATCH v1] Remove 'restrict' from 'nptr' in strtol(3)-like functions Alejandro Colomar
2024-07-06  6:11                                   ` Alejandro Colomar
2024-07-05 16:32                 ` Sam James
2024-07-05 16:02             ` Martin Uecker
2024-07-05 16:11             ` Jonathan Wakely
2024-07-05 16:21               ` Richard Earnshaw (lists)
2024-07-05 15:54         ` LIU Hao
2024-07-05 15:55         ` Xi Ruoyao
2024-07-05 16:32           ` Alejandro Colomar
2024-07-05 17:32             ` Alejandro Colomar
2024-07-05 19:41 ` [WG14] Request for document number; strtol restrictness Alejandro Colomar
2024-07-07 15:46   ` Daniel Plakosh
2024-07-09 19:00     ` Alejandro Colomar
2024-07-09 20:04       ` Daniel Plakosh
2024-07-07  1:58 ` WG14 paper for removing restrict from nptr in strtol(3) Alejandro Colomar
2024-07-07  7:15   ` Martin Uecker
2024-07-07 11:07     ` Alejandro Colomar
2024-07-07 12:21       ` Martin Uecker
2024-07-07 13:10         ` Alejandro Colomar
2024-07-07 10:42   ` Paul Eggert
2024-07-07 12:42     ` Alejandro Colomar
2024-07-07 17:30       ` Paul Eggert
2024-07-07 22:52         ` Alejandro Colomar
2024-07-09 12:09           ` Paul Eggert
2024-07-09 17:36             ` Alejandro Colomar
2024-07-08 14:30       ` David Malcolm
2024-07-08 15:01         ` Alejandro Colomar
2024-07-08 16:05           ` Martin Uecker
2024-07-08 20:17             ` Alejandro Colomar
2024-07-09  5:58               ` Martin Uecker
2024-07-09  9:26                 ` Alejandro Colomar
2024-07-08 22:48           ` David Malcolm
2024-07-09  9:07             ` Alejandro Colomar
2024-07-09  9:18               ` Jakub Jelinek [this message]
2024-07-09 10:28                 ` Alejandro Colomar
2024-07-09 11:28                   ` Alejandro Colomar
2024-07-09 22:42   ` n3294 - The restrict function attribute as a replacement of the restrict qualifier Alejandro Colomar
2024-07-26 16:24     ` Joseph Myers
2024-07-26 16:35       ` G. Branden Robinson
2024-07-26 19:53         ` Alejandro Colomar
2024-07-26 18:50       ` Paul Eggert
2024-07-26 20:11       ` Alejandro Colomar
2024-07-26 20:30         ` Joseph Myers
2024-07-26 21:14           ` Alejandro Colomar
2024-07-26 21:22             ` Joseph Myers
2024-07-26 21:49               ` Alejandro Colomar
2024-07-26 22:03                 ` Martin Uecker
2024-07-26 22:26                   ` Alejandro Colomar
2024-07-26 22:59                     ` Martin Uecker
2024-07-27  8:44                       ` Alejandro Colomar

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=Zo0AU/3YFNIeEELE@tucnak \
    --to=jakub@redhat.com \
    --cc=Richard.Earnshaw@arm.com \
    --cc=alx@kernel.org \
    --cc=ben.boeckel@kitware.com \
    --cc=dmalcolm@redhat.com \
    --cc=eggert@cs.ucla.edu \
    --cc=gcc@gcc.gnu.org \
    --cc=heiko.eissfeldt@siemens.com \
    --cc=jwakely.gcc@gmail.com \
    --cc=lh_mouse@126.com \
    --cc=libc-alpha@sourceware.org \
    --cc=linux-man@vger.kernel.org \
    --cc=sam@gentoo.org \
    --cc=uecker@tugraz.at \
    --cc=xry111@xry111.site \
    /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