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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |missed-optimization
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2025-01-24
     Ever confirmed|0                           |1

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  We have a pointer compare like

 if (_16 == 1B)
   ...

and constant propagated that into

 _6 = strcmp (1B, &excl_name);

see also

cc1plus: note: source object is likely at address zero

I have no idea why exactly we end up with <>::begin (&attributes) == 1B,
likely this is a case of a failed non-NULL of &x->b (IIRC this came up
repeatedly, a patch from me didn't get enough feedback).

Reply via email to