summaryrefslogtreecommitdiffstats
path: root/clang/test/Sema
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Sema')
-rw-r--r--clang/test/Sema/switch-1.c42
-rw-r--r--clang/test/Sema/thread-specifier.c4
2 files changed, 39 insertions, 7 deletions
diff --git a/clang/test/Sema/switch-1.c b/clang/test/Sema/switch-1.c
index 5191c92e714..144c3607f57 100644
--- a/clang/test/Sema/switch-1.c
+++ b/clang/test/Sema/switch-1.c
@@ -1,18 +1,50 @@
// RUN: %clang_cc1 -fsyntax-only -verify -triple x86_64-apple-darwin10 %s
// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -triple x86_64-apple-darwin10 %s
+// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -triple x86_64-apple-darwin10 -std=c++98 %s
+// RUN: %clang_cc1 -x c++ -fsyntax-only -verify -triple x86_64-apple-darwin10 -std=c++11 %s
// rdar://11577384
// rdar://13423975
int f(int i) {
switch (i) {
- case 2147483647 + 2: // expected-warning {{overflow in expression; result is -2147483647 with type 'int'}}
+ case 2147483647 + 2:
+#if (__cplusplus <= 199711L) // C or C++03 or earlier modes
+ // expected-warning@-2 {{overflow in expression; result is -2147483647 with type 'int'}}
+#else
+ // expected-error@-4 {{case value is not a constant expression}} \
+ // expected-note@-4 {{value 2147483649 is outside the range of representable values of type 'int'}}
+#endif
return 1;
- case 9223372036854775807L * 4: // expected-warning {{overflow in expression; result is -4 with type 'long'}}
+ case 9223372036854775807L * 4:
+#if (__cplusplus <= 199711L)
+ // expected-warning@-2 {{overflow in expression; result is -4 with type 'long'}}
+#else
+ // expected-error@-4 {{case value is not a constant expression}} \
+ // expected-note@-4 {{value 36893488147419103228 is outside the range of representable values of type 'long'}}
+#endif
return 2;
- case (123456 *789012) + 1: // expected-warning {{overflow in expression; result is -1375982336 with type 'int'}}
+ case (123456 *789012) + 1:
+#if (__cplusplus <= 199711L)
+ // expected-warning@-2 {{overflow in expression; result is -1375982336 with type 'int'}}
+#else
+ // expected-error@-4 {{case value is not a constant expression}} \
+ // expected-note@-4 {{value 97408265472 is outside the range of representable values of type 'int'}}
+#endif
return 3;
- case (2147483647*4)/4: // expected-warning {{overflow in expression; result is -4 with type 'int'}}
- case (2147483647*4)%4: // expected-warning {{overflow in expression; result is -4 with type 'int'}}
+ case (2147483647*4)/4:
+#if (__cplusplus <= 199711L)
+ // expected-warning@-2 {{overflow in expression; result is -4 with type 'int'}}
+#else
+ // expected-error@-4 {{case value is not a constant expression}} \
+ // expected-note@-4 {{value 8589934588 is outside the range of representable values of type 'int'}}
+#endif
+ case (2147483647*4)%4:
+#if (__cplusplus <= 199711L)
+ // expected-warning@-2 {{overflow in expression; result is -4 with type 'int'}}
+#else
+ // expected-error@-4 {{case value is not a constant expression}} \
+ // expected-note@-4 {{value 8589934588 is outside the range of representable values of type 'int'}}
+#endif
return 4;
case 2147483647:
return 0;
diff --git a/clang/test/Sema/thread-specifier.c b/clang/test/Sema/thread-specifier.c
index 3968ae14cf2..a93850da007 100644
--- a/clang/test/Sema/thread-specifier.c
+++ b/clang/test/Sema/thread-specifier.c
@@ -1,7 +1,7 @@
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic %s -DGNU
-// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DGNU
+// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DGNU -std=c++98
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic %s -DC11 -D__thread=_Thread_local
-// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DC11 -D__thread=_Thread_local
+// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DC11 -D__thread=_Thread_local -std=c++98
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DCXX11 -D__thread=thread_local -std=c++11 -Wno-deprecated
// RUN: %clang_cc1 -triple i686-pc-linux-gnu -fsyntax-only -Wno-private-extern -verify -pedantic -x c++ %s -DC11 -D__thread=_Thread_local -std=c++11 -Wno-deprecated
OpenPOWER on IntegriCloud