diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-12-16 20:30:08 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-12-16 20:30:08 +0000 |
commit | 6a8dc922b39962b12c1eb5dc558204a795185778 (patch) | |
tree | 45bb246765e1a08aa913e246ec09a792c09822db /clang/test/SemaCXX/enum.cpp | |
parent | 15cef0ed42bbf8d0a0ef9e1a3f0291c1f5da734a (diff) | |
download | bcm5719-llvm-6a8dc922b39962b12c1eb5dc558204a795185778.tar.gz bcm5719-llvm-6a8dc922b39962b12c1eb5dc558204a795185778.zip |
Make sure C-specific enum warning doesn't trigger in C++.
llvm-svn: 91563
Diffstat (limited to 'clang/test/SemaCXX/enum.cpp')
-rw-r--r-- | clang/test/SemaCXX/enum.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/clang/test/SemaCXX/enum.cpp b/clang/test/SemaCXX/enum.cpp index f1bc2b2b604..0e4162e0d51 100644 --- a/clang/test/SemaCXX/enum.cpp +++ b/clang/test/SemaCXX/enum.cpp @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify %s +// RUN: %clang_cc1 -fsyntax-only -pedantic -std=c++98 -verify %s enum E { Val1, @@ -42,26 +42,26 @@ namespace test1 { template <class A> struct is_same<A,A> { static const int value = 1; }; enum enum0 { v0 }; - int test0[is_same<typeof(+v0), int>::value]; + int test0[is_same<__typeof(+v0), int>::value]; enum enum1 { v1 = __INT_MAX__ }; - int test1[is_same<typeof(+v1), int>::value]; + int test1[is_same<__typeof(+v1), int>::value]; enum enum2 { v2 = __INT_MAX__ * 2U }; - int test2[is_same<typeof(+v2), unsigned int>::value]; + int test2[is_same<__typeof(+v2), unsigned int>::value]; // This kindof assumes that 'int' is smaller than 'long long'. #if defined(__LP64__) - enum enum3 { v3 = __LONG_LONG_MAX__ }; - int test3[is_same<typeof(+v3), long>::value]; + enum enum3 { v3 = __LONG_MAX__ }; + int test3[is_same<__typeof(+v3), long>::value]; - enum enum4 { v4 = __LONG_LONG_MAX__ * 2ULL }; - int test4[is_same<typeof(+v4), unsigned long>::value]; + enum enum4 { v4 = __LONG_MAX__ * 2UL }; + int test4[is_same<__typeof(+v4), unsigned long>::value]; #else enum enum3 { v3 = __LONG_LONG_MAX__ }; - int test3[is_same<typeof(+v3), long long>::value]; + int test3[is_same<__typeof(+v3), long long>::value]; // expected-warning {{'long long' is an extension}} - enum enum4 { v4 = __LONG_LONG_MAX__ * 2ULL }; - int test4[is_same<typeof(+v4), unsigned long long>::value]; + enum enum4 { v4 = __LONG_LONG_MAX__ * 2ULL }; // expected-warning {{'long long' is an extension}} + int test4[is_same<__typeof(+v4), unsigned long long>::value]; // expected-warning {{'long long' is an extension}} #endif } |