summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/strings
diff options
context:
space:
mode:
authorAsiri Rathnayake <asiri.rathnayake@arm.com>2016-05-28 08:57:35 +0000
committerAsiri Rathnayake <asiri.rathnayake@arm.com>2016-05-28 08:57:35 +0000
commit6edc12c8867fe8d21f9abf97b160d12dc2fa3954 (patch)
treeb05c2b476059d6ecf37ebee52db35c369cd0a74d /libcxx/test/std/strings
parent6abd38bf6efc809654fcdf6c98d4378fcc4a040b (diff)
downloadbcm5719-llvm-6edc12c8867fe8d21f9abf97b160d12dc2fa3954.tar.gz
bcm5719-llvm-6edc12c8867fe8d21f9abf97b160d12dc2fa3954.zip
[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
Diffstat (limited to 'libcxx/test/std/strings')
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal.pass.cpp5
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal1.fail.cpp7
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp5
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal2.fail.cpp7
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp5
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp5
-rw-r--r--libcxx/test/std/strings/basic.string/string.iterators/iterators.pass.cpp4
7 files changed, 20 insertions, 18 deletions
diff --git a/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp
index dbb5f681395..26227661832 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp
@@ -7,12 +7,14 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
using namespace std::literals::string_literals;
static_assert ( std::is_same<decltype( "Hi"s), std::string>::value, "" );
@@ -43,5 +45,4 @@ int main()
Lfoo = L"ABC"s; assert(Lfoo == L"ABC"); assert(Lfoo == std::wstring ( L"ABC"));
ufoo = u"ABC"s; assert(ufoo == u"ABC"); assert(ufoo == std::u16string( u"ABC"));
Ufoo = U"ABC"s; assert(Ufoo == U"ABC"); assert(Ufoo == std::u32string( U"ABC"));
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal1.fail.cpp b/libcxx/test/std/strings/basic.string.literals/literal1.fail.cpp
index 6ba0b30d458..721440d8a3a 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal1.fail.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal1.fail.cpp
@@ -7,16 +7,15 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
using std::string;
string foo = ""s; // should fail w/conversion operator not found
-#else
-#error
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp
index f5143746b0b..f0b7b463f85 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp
@@ -7,14 +7,15 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
using namespace std::literals;
std::string foo = ""s;
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal2.fail.cpp b/libcxx/test/std/strings/basic.string.literals/literal2.fail.cpp
index 68f1d254e32..99f92fde972 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal2.fail.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal2.fail.cpp
@@ -7,14 +7,13 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
std::string foo = ""s; // should fail w/conversion operator not found
-#else
-#error
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp
index 86d28e60e52..3cc2936a115 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp
@@ -7,14 +7,15 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
using namespace std::literals::string_literals;
std::string foo = ""s;
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp
index 98e3e40e058..d6e8c8f88ec 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp
@@ -7,14 +7,15 @@
// Source Licenses. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++98, c++03, c++11
+
#include <string>
#include <cassert>
int main()
{
-#if _LIBCPP_STD_VER > 11
using namespace std;
string foo = ""s;
-#endif
}
diff --git a/libcxx/test/std/strings/basic.string/string.iterators/iterators.pass.cpp b/libcxx/test/std/strings/basic.string/string.iterators/iterators.pass.cpp
index 386cededa53..1d7d7ab70ff 100644
--- a/libcxx/test/std/strings/basic.string/string.iterators/iterators.pass.cpp
+++ b/libcxx/test/std/strings/basic.string/string.iterators/iterators.pass.cpp
@@ -7,6 +7,8 @@
//
//===----------------------------------------------------------------------===//
+// UNSUPPORTED: c++98, c++03, c++11
+
// <string>
// iterator begin();
@@ -21,7 +23,6 @@
int main()
{
-#if _LIBCPP_STD_VER > 11
{ // N3644 testing
typedef std::string C;
C::iterator ii1{}, ii2{};
@@ -69,5 +70,4 @@ int main()
assert ( !(ii1 != ii2 ));
assert ( !(ii1 != cii ));
}
-#endif
}
OpenPOWER on IntegriCloud