------- Comment #8 from bonzini at gnu dot org  2009-01-22 12:10 -------
Fixing FRE still causes an ICE for this:

/* { dg-do compile } */
/* { dg-options "-O2 --std=gnu99" } */

/* This variable needed only to exercise FRE instead of CCP.  */
unsigned char g;

extern void abort();

void f (long long int p)
{
  g = 255;
  /* { dg-warning "constant is" "" { target *-*-* } 14 } */
  /* { dg-warning "overflow" "" { target *-*-* } 14 } */
  if (p >= -9223372036854775808LL - (signed char) g)
    p = 1;

  if (p)
    abort ();
}

Should I create a separate bug and submit what I have?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38932

Reply via email to