| /* Signed left-shift is implementation-defined in C89 (and see | |
| DR#081), not undefined. Bug 7284 from Al Grant (AlGrant at | |
| myrealbox.com). */ | |
| /* { dg-require-effective-target int32plus } */ | |
| /* { dg-options "-std=c89" } */ | |
| extern void abort (void); | |
| extern void exit (int); | |
| int | |
| f (int n) | |
| { | |
| return (n << 24) / (1 << 23); | |
| } | |
| volatile int x = 128; | |
| int | |
| main (void) | |
| { | |
| if (f(x) != -256) | |
| abort (); | |
| exit (0); | |
| } |