[libcxx] Improve tests to use the UNSUPPORTED lit directive

Quite a few libcxx tests seem to follow the format:
 #if _LIBCPP_STD_VER > X
   // Do test.
 #else
   // Empty test.
 #endif
We should instead use the UNSUPPORTED lit directive to exclude the test on
earlier C++ standards. This gives us a more accurate number of test passes
for those standards and avoids unnecessary conflicts with other lit
directives on the same tests.

Reviewers: bcraig, ericwf, mclow.lists

Differential revision: http://reviews.llvm.org/D20730

llvm-svn: 271108
diff --git a/libcxx/test/std/utilities/utility/exchange/exchange.pass.cpp b/libcxx/test/std/utilities/utility/exchange/exchange.pass.cpp
index 620b414..c4952f7 100644
--- a/libcxx/test/std/utilities/utility/exchange/exchange.pass.cpp
+++ b/libcxx/test/std/utilities/utility/exchange/exchange.pass.cpp
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+// UNSUPPORTED: c++98, c++03, c++11
 // utilities
 
 // exchange
@@ -17,7 +18,6 @@
 
 int main()
 {
-#if _LIBCPP_STD_VER > 11
     {
     int v = 12;
     assert ( std::exchange ( v, 23 ) == 12 );
@@ -53,6 +53,4 @@
     assert ( std::exchange ( s3, "" ) == s2 );
     assert ( s3.size () == 0 );
     }
-
-#endif
 }
diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type1.fail.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type1.fail.cpp
index 27194eff..f0d55a6 100644
--- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type1.fail.cpp
+++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type1.fail.cpp
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+// UNSUPPORTED: c++98, c++03, c++11
 #include <utility>
 #include <complex>
 
@@ -14,11 +15,7 @@
 
 int main()
 {
-#if _LIBCPP_STD_VER > 11
     typedef std::complex<float> cf;
     auto t1 = std::make_pair<int, double> ( 42, 3.4 );
     assert (( std::get<cf>(t1) == cf {1,2} ));  // no such type
-#else
-#error
-#endif
 }
diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type2.fail.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type2.fail.cpp
index f9e3942..72e6375 100644
--- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type2.fail.cpp
+++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type2.fail.cpp
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+// UNSUPPORTED: c++98, c++03, c++11
 #include <utility>
 #include <complex>
 
@@ -14,11 +15,7 @@
 
 int main()
 {
-#if _LIBCPP_STD_VER > 11
     typedef std::complex<float> cf;
     auto t1 = std::make_pair<int, int> ( 42, 43 );
     assert ( std::get<int>(t1) == 42 ); // two ints
-#else
-#error
-#endif
 }
diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type3.fail.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type3.fail.cpp
index 4843473..d5179e4 100644
--- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type3.fail.cpp
+++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/pairs.by.type3.fail.cpp
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+// UNSUPPORTED: c++98, c++03, c++11
 #include <utility>
 #include <complex>
 
@@ -14,11 +15,7 @@
 
 int main()
 {
-#if _LIBCPP_STD_VER > 11
     typedef std::unique_ptr<int> upint;
     std::pair<upint, int> t(upint(new int(4)), 23);
     upint p = std::get<upint>(t);
-#else
-#error
-#endif
 }