| /* { dg-options "-O2" } */ | |
| /* { dg-do run } */ | |
| static const long long int TagTypeNumber = 0xffff000000000000ll; | |
| long long int x; | |
| void foo(void) | |
| { | |
| x = TagTypeNumber + 1; | |
| } | |
| int main(int argc, char **argv) | |
| { | |
| if (argc > 0) | |
| foo (); | |
| if ((x & TagTypeNumber) == TagTypeNumber) | |
| { | |
| unsigned y = (unsigned)x; | |
| __builtin_printf ("v: %u\n", y); | |
| if (y != 1) | |
| __builtin_abort (); | |
| } | |
| return 0; | |
| } |