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

Martin Sebor <msebor at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
                 CC|                            |msebor at gcc dot gnu.org
         Resolution|---                         |FIXED

--- Comment #2 from Martin Sebor <msebor at gcc dot gnu.org> ---
(In reply to Frederic Marchal from comment #1)
> As far as I can tell, the plural is not about "argument %i" but about
> "argument(s) %Z".

That's right.  %Z is a list of 1-based argument numbers.  Below is an example
of the plural form of the message.  I think it's correct as is, so I'm
resolving this report as invalid.  (The message should quote the restrict
keyword and the caret should point at the first aliased argument but those are
separate issues.)

$ cat t.c && gcc -O2 -S -Wall -Wextra -Wpedantic -Wrestrict t.c

int f (char *restrict, const char *restrict, char *restrict,
       char *restrict, char *restrict);

void g (char *s)
{
  f (s, "abc", s, "def", s);
}
t.c: In function ā€˜gā€™:
t.c:6:3: warning: passing argument 1 to restrict-qualified parameter aliases
with arguments 3, 5 [-Wrestrict]
   f (s, "abc", s, "def", s);
   ^

Reply via email to