]> granicus.if.org Git - clang/commitdiff
Fix warn-enum-compare.cpp on Windows
authorHans Wennborg <hans@hanshq.net>
Mon, 11 Dec 2017 18:58:18 +0000 (18:58 +0000)
committerHans Wennborg <hans@hanshq.net>
Mon, 11 Dec 2017 18:58:18 +0000 (18:58 +0000)
It's been failing since r319875.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@320405 91177308-0d34-0410-b5e6-96231b3b80d8

test/SemaCXX/warn-enum-compare.cpp

index 95107a0146df5eb621c19e35a8b5732818a8f441..21dea5dfcb00c6ae0b4f98b586d45037a4cbfa10 100644 (file)
@@ -1,4 +1,5 @@
-// RUN: %clang_cc1 %s -fsyntax-only -verify
+// RUN: %clang_cc1 %s -fsyntax-only -verify -triple %itanium_abi_triple
+// RUN: %clang_cc1 %s -fsyntax-only -verify -triple %ms_abi_triple -DMSABI
 
 enum Foo { FooA, FooB, FooC };
 enum Bar { BarD, BarE, BarF };
@@ -42,8 +43,10 @@ void test () {
   while (b == c);
   while (B1 == name1::B2);
   while (B2 == name2::B1);
+#ifndef MSABI
   while (x == AnonAA); // expected-warning {{comparison of constant 'AnonAA' (42) with expression of type 'Foo' is always false}}
   while (AnonBB == y); // expected-warning {{comparison of constant 'AnonBB' (45) with expression of type 'Bar' is always false}}
+#endif
   while (AnonAA == AnonAB);
   while (AnonAB == AnonBA);
   while (AnonBB == AnonAA);
@@ -69,7 +72,9 @@ void test () {
   while (B2 == ((((((name2::B1)))))));
 
   while (td == Anon1);
+#ifndef MSABI
   while (td == AnonAA);  // expected-warning {{comparison of constant 'AnonAA' (42) with expression of type 'TD' is always false}}
+#endif
 
   while (B1 == B2); // expected-warning  {{comparison of two values with different enumeration types ('name1::Baz' and 'name2::Baz')}}
   while (name1::B2 == name2::B3); // expected-warning  {{comparison of two values with different enumeration types ('name1::Baz' and 'name2::Baz')}}