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

Sam James <sjames at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #29 from Sam James <sjames at gcc dot gnu.org> ---
(In reply to qinzhao from comment #28)
> (In reply to qinzhao from comment #27)
> 
> > Yes, I agree with Jeff.
> > This looks like a similar issue as PR109071.
> 
> the patch that improve the diagnostic for PR109071 could also improve this
> one.

Indeed:

$ gcc a.c -c -O2 -Wall -Wextra -fdiagnostics-show-context=1
a.c: In function ‘d’:
a.c:11:3: warning: ‘__builtin_strncpy’ specified bound 18446744073709551615
exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   11 |   __builtin_strncpy(c, x, f);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~
  ‘d’: events 1-2
   10 |   char a = f + 1 ?: f;
      |        ^
      |        |
      |        (1) when the condition is evaluated to false
   11 |   __builtin_strncpy(c, x, f);
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~
      |   |
      |   (2) warning happens here
a.c:13:10: warning: ‘e’ may be used uninitialized [-Wmaybe-uninitialized]
   13 |     e->a = 0;
      |     ~~~~~^~~
a.c:9:5: note: ‘e’ was declared here
    9 |   b e;
      |     ^

Reply via email to