switch-1.c revision 78c28be6873965cce4026bbebef18c6224b5287d
1// RUN: %clang_cc1 -fsyntax-only -verify -triple x86_64-apple-darwin10 %s 2// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -triple x86_64-apple-darwin10 %s 3// rdar://11577384 4 5int f(int i) { 6 switch (i) { 7 case 2147483647 + 2: // expected-warning {{overflow in expression;result is -2147483647 with type 'int'}} 8 return 1; 9 case 9223372036854775807L * 4: // expected-warning {{overflow in expression;result is -4 with type 'long'}} 10 return 2; 11 case (123456 *789012) + 1: // expected-warning {{overflow in expression;result is -1375982336 with type 'int'}} 12 return 3; 13 case 2147483647: 14 return 0; 15 } 16 return (i, 65537) * 65537; // expected-warning {{overflow in expression;result is 131073 with type 'int'}} \ 17 // expected-warning {{expression result unused}} 18} 19