1 2 3 4 5 6 7 8 9 10 11 12
int bar(int foo) { return (int)(((unsigned long long)(long long)foo) / 8); } extern void abort (void); int main() { if (sizeof (long long) > sizeof (int) && bar(-1) != -1) abort (); return 0; }