[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/function.objects/logical.operations/transparent.pass.cpp b/libcxx/test/std/utilities/function.objects/logical.operations/transparent.pass.cpp
index 6e3b7a2..77177b1 100644
--- a/libcxx/test/std/utilities/function.objects/logical.operations/transparent.pass.cpp
+++ b/libcxx/test/std/utilities/function.objects/logical.operations/transparent.pass.cpp
@@ -7,6 +7,7 @@
//
//===----------------------------------------------------------------------===//
+// UNSUPPORTED: c++98, c++03, c++11
#include <functional>
#include <string>
@@ -22,9 +23,8 @@
};
-int main () {
-#if _LIBCPP_STD_VER > 11
-
+int main ()
+{
static_assert ( !is_transparent<std::logical_and<int>>::value, "" );
static_assert ( !is_transparent<std::logical_and<std::string>>::value, "" );
static_assert ( is_transparent<std::logical_and<void>>::value, "" );
@@ -40,7 +40,5 @@
static_assert ( is_transparent<std::logical_not<void>>::value, "" );
static_assert ( is_transparent<std::logical_not<>>::value, "" );
-#endif
-
return 0;
- }
+}