blob: 2b729ac0ad31f38317077bc1809ca0967f60cc35 [file] [log] [blame]
Fariborz Jahaniana18e70b2013-01-09 23:04:56 +00001// 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-note {{value 2147483649 is outside the range of representable values of type 'int'}} \
Fariborz Jahanianf6e65cc2013-01-10 20:26:42 +00008 // expected-warning {{overflow in case constant expression results in new value (-2147483647)}}
Fariborz Jahaniana18e70b2013-01-09 23:04:56 +00009 return 1;
10 case 9223372036854775807L * 4 : // expected-note {{value 36893488147419103228 is outside the range of representable values of type 'long'}} \
Fariborz Jahanianf6e65cc2013-01-10 20:26:42 +000011 // expected-warning {{overflow in case constant expression results in new value (-4)}}
Fariborz Jahaniana18e70b2013-01-09 23:04:56 +000012 return 2;
13 case 2147483647:
14 return 0;
15 }
16 return 0;
17}