/* PR c/4308 This testcase failed because 0x8000000000000000 >> 0 was incorrectly folded into 0xffffffff00000000. */externvoidabort(void);externvoidexit(int);longlongfoo(void){longlongC=1ULL<<63,X;intY=32;X=C>>(Y&31);returnX;}intmain(void){if(foo()!=1ULL<<63)abort();exit(0);}