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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=21474

--- Comment #2 from Martin Sebor <msebor at gcc dot gnu.org> ---
Whoops, struct B should have a member before the array:

struct B
{
  char c, a[4];
};


void b (struct B *p)
{
  if (p->a == 0)          // can never be true
    __builtin_abort ();   // can be eliminated (as Clang does)
}

Clang does warn for both tests but eliminates only the one in test case above.

This might actually be a duplicate of bug 21474.

Reply via email to