summaryrefslogtreecommitdiff
path: root/libcxx/test/std/strings/basic.string.literals
diff options
context:
space:
mode:
authorLouis Dionne <ldionne.2@gmail.com>2021-09-01 16:52:52 -0400
committerLouis Dionne <ldionne.2@gmail.com>2021-09-03 13:15:10 -0400
commitef2cdfe393d01cd4935c806387ac912b5a2c8ced (patch)
tree58f60d28736684cff1d7edba27e8bf6bd2c94244 /libcxx/test/std/strings/basic.string.literals
parentf37e132263e427860cc89fc167419e8b8a8a17fd (diff)
[libc++][NFC] Remove uses of 'using namespace std;' in the test suite
Differential Revision: https://reviews.llvm.org/D109120
Diffstat (limited to 'libcxx/test/std/strings/basic.string.literals')
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal.pass.cpp80
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal.verify.cpp (renamed from libcxx/test/std/strings/basic.string.literals/literal1.compile.fail.cpp)14
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp24
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal2.compile.fail.cpp20
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp24
-rw-r--r--libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp24
6 files changed, 52 insertions, 134 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 0e3e49ba1dd4..bc21ff1fd2af 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal.pass.cpp
@@ -20,40 +20,50 @@
typedef std::string u8string;
#endif
+int main(int, char**) {
+ {
+ using namespace std::literals::string_literals;
-int main(int, char**)
-{
- using namespace std::literals::string_literals;
-
- static_assert ( std::is_same<decltype( "Hi"s), std::string>::value, "" );
- static_assert ( std::is_same<decltype( u8"Hi"s), u8string>::value, "" );
- static_assert ( std::is_same<decltype( L"Hi"s), std::wstring>::value, "" );
- static_assert ( std::is_same<decltype( u"Hi"s), std::u16string>::value, "" );
- static_assert ( std::is_same<decltype( U"Hi"s), std::u32string>::value, "" );
-
- std::string foo;
- std::wstring Lfoo;
- u8string u8foo;
- std::u16string ufoo;
- std::u32string Ufoo;
-
- foo = ""s; assert( foo.size() == 0);
- u8foo = u8""s; assert(u8foo.size() == 0);
- Lfoo = L""s; assert( Lfoo.size() == 0);
- ufoo = u""s; assert( ufoo.size() == 0);
- Ufoo = U""s; assert( Ufoo.size() == 0);
-
- foo = " "s; assert( foo.size() == 1);
- u8foo = u8" "s; assert(u8foo.size() == 1);
- Lfoo = L" "s; assert( Lfoo.size() == 1);
- ufoo = u" "s; assert( ufoo.size() == 1);
- Ufoo = U" "s; assert( Ufoo.size() == 1);
-
- foo = "ABC"s; assert( foo == "ABC"); assert( foo == std::string ( "ABC"));
- u8foo = u8"ABC"s; assert(u8foo == u8"ABC"); assert(u8foo == u8string (u8"ABC"));
- 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"));
-
- return 0;
+ ASSERT_SAME_TYPE(decltype( "Hi"s), std::string);
+ ASSERT_SAME_TYPE(decltype(u8"Hi"s), u8string);
+ ASSERT_SAME_TYPE(decltype( L"Hi"s), std::wstring);
+ ASSERT_SAME_TYPE(decltype( u"Hi"s), std::u16string);
+ ASSERT_SAME_TYPE(decltype( U"Hi"s), std::u32string);
+
+ std::string foo;
+ std::wstring Lfoo;
+ u8string u8foo;
+ std::u16string ufoo;
+ std::u32string Ufoo;
+
+ foo = ""s; assert( foo.size() == 0);
+ u8foo = u8""s; assert(u8foo.size() == 0);
+ Lfoo = L""s; assert( Lfoo.size() == 0);
+ ufoo = u""s; assert( ufoo.size() == 0);
+ Ufoo = U""s; assert( Ufoo.size() == 0);
+
+ foo = " "s; assert( foo.size() == 1);
+ u8foo = u8" "s; assert(u8foo.size() == 1);
+ Lfoo = L" "s; assert( Lfoo.size() == 1);
+ ufoo = u" "s; assert( ufoo.size() == 1);
+ Ufoo = U" "s; assert( Ufoo.size() == 1);
+
+ foo = "ABC"s; assert( foo == "ABC"); assert( foo == std::string ( "ABC"));
+ u8foo = u8"ABC"s; assert(u8foo == u8"ABC"); assert(u8foo == u8string (u8"ABC"));
+ 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"));
+ }
+ {
+ using namespace std::literals;
+ std::string foo = ""s;
+ assert(foo == std::string());
+ }
+ {
+ using namespace std;
+ std::string foo = ""s;
+ assert(foo == std::string());
+ }
+
+ return 0;
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal1.compile.fail.cpp b/libcxx/test/std/strings/basic.string.literals/literal.verify.cpp
index e51164142866..64dd7d09c049 100644
--- a/libcxx/test/std/strings/basic.string.literals/literal1.compile.fail.cpp
+++ b/libcxx/test/std/strings/basic.string.literals/literal.verify.cpp
@@ -10,13 +10,13 @@
// UNSUPPORTED: c++03, c++11
#include <string>
-#include <cassert>
-int main(int, char**)
-{
+void f() {
+ {
using std::string;
-
- string foo = ""s; // should fail w/conversion operator not found
-
- return 0;
+ string foo = ""s; // expected-error {{no matching literal operator}}
+ }
+ {
+ std::string foo = ""s; // expected-error {{no matching literal operator}}
+ }
}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp
deleted file mode 100644
index 37e8d9d8ff50..000000000000
--- a/libcxx/test/std/strings/basic.string.literals/literal1.pass.cpp
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++03, c++11
-
-#include <string>
-#include <cassert>
-
-#include "test_macros.h"
-
-int main(int, char**)
-{
- using namespace std::literals;
-
- std::string foo = ""s;
-
- return 0;
-}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal2.compile.fail.cpp b/libcxx/test/std/strings/basic.string.literals/literal2.compile.fail.cpp
deleted file mode 100644
index 3ab9696115d8..000000000000
--- a/libcxx/test/std/strings/basic.string.literals/literal2.compile.fail.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-// -*- C++ -*-
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++03, c++11
-
-#include <string>
-#include <cassert>
-
-int main(int, char**)
-{
- std::string foo = ""s; // should fail w/conversion operator not found
-
- return 0;
-}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp
deleted file mode 100644
index 6309d71fe55b..000000000000
--- a/libcxx/test/std/strings/basic.string.literals/literal2.pass.cpp
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++03, c++11
-
-#include <string>
-#include <cassert>
-
-#include "test_macros.h"
-
-int main(int, char**)
-{
- using namespace std::literals::string_literals;
-
- std::string foo = ""s;
-
- return 0;
-}
diff --git a/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp b/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp
deleted file mode 100644
index 614e76afe249..000000000000
--- a/libcxx/test/std/strings/basic.string.literals/literal3.pass.cpp
+++ /dev/null
@@ -1,24 +0,0 @@
-// -*- C++ -*-
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-// UNSUPPORTED: c++03, c++11
-
-#include <string>
-#include <cassert>
-
-#include "test_macros.h"
-
-int main(int, char**)
-{
- using namespace std;
-
- string foo = ""s;
-
- return 0;
-}