> On Thu, 15 Oct 2020, Jan Hubicka wrote: > > > Hi, > > this patch fixes some confussion I managed to introduce into the > > toplevel comment. > > > > OK? > > > > Honza > > * attr-fnspec.h: Fix toplevel comment. > > diff --git a/gcc/attr-fnspec.h b/gcc/attr-fnspec.h > > index 921bb48ae6a..30c0becfdf2 100644 > > --- a/gcc/attr-fnspec.h > > +++ b/gcc/attr-fnspec.h > > @@ -30,12 +30,11 @@ > > > > character 2+2i specifies properties of argument number i as follows: > > 'x' or 'X' specifies that parameter is unused. > > - 'r' or 'R' specifies that parameter is only read and memory pointed > > to is > > - never dereferenced. > > - 'w' or 'W' specifies that parameter is only written to. > > + 'r' or 'R' specifies that parameter is only read and it does not > > escape > > 'specifies that the memory pointed to by the parameter is only read and > does not escape' > > > + 'w' or 'W' specifies that parameter does not escape > > 'specifies that the memory pointed to by the parameter does not escape' > > > '.' specifies that nothing is known. > > - The uppercase letter in addition specifies that parameter > > - is non-escaping. > > + The uppercase letter in addition specifies that parameter is > > read/written > > + only dirrectly (i.e. *param is ok, but **param is not) > > The uppercase letter in addition specifies that the memory pointed to > by the parameter is not dereferenced. For 'r' only read applies > transitively to pointers read from the pointed-to memory.
Thanks a lot! This is what I comitted. gcc/ChangeLog: 2020-10-15 Jan Hubicka <hubi...@ucw.cz> Richard Biener <rguent...@suse.de> * attr-fnspec.h: Fix toplevel comment. diff --git a/gcc/attr-fnspec.h b/gcc/attr-fnspec.h index 921bb48ae6a..d38b84a969e 100644 --- a/gcc/attr-fnspec.h +++ b/gcc/attr-fnspec.h @@ -30,12 +30,14 @@ character 2+2i specifies properties of argument number i as follows: 'x' or 'X' specifies that parameter is unused. - 'r' or 'R' specifies that parameter is only read and memory pointed to is - never dereferenced. - 'w' or 'W' specifies that parameter is only written to. + 'r' or 'R' specifies that the memory pointed to by the parameter is only + read and does not escape + 'w' or 'W' specifies that the memory pointed to by the parameter does not + escape '.' specifies that nothing is known. - The uppercase letter in addition specifies that parameter - is non-escaping. + The uppercase letter in addition specifies that the memory pointed to + by the parameter is not dereferenced. For 'r' only read applies + transitively to pointers read from the pointed-to memory. character 3+2i specifies additional properties of argument number i as follows: