diff options
author | Asiri Rathnayake <asiri.rathnayake@arm.com> | 2016-05-28 08:57:35 +0000 |
---|---|---|
committer | Asiri Rathnayake <asiri.rathnayake@arm.com> | 2016-05-28 08:57:35 +0000 |
commit | 6edc12c8867fe8d21f9abf97b160d12dc2fa3954 (patch) | |
tree | b05c2b476059d6ecf37ebee52db35c369cd0a74d /libcxx/test/std/strings | |
parent | 6abd38bf6efc809654fcdf6c98d4378fcc4a040b (diff) | |
download | bcm5719-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')
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 } |