[PATCH] D29137: [libcxx] [test] Fix Clang -Wunused-local-typedef, part 3/3.

Stephan T. Lavavej via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jan 25 10:35:10 PST 2017


STL_MSFT created this revision.

[libcxx] [test] Fix Clang -Wunused-local-typedef, part 3/3.

test/std/strings/string.classes/typedefs.pass.cpp
Actually test what basic_string's typedefs stand for.

test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp
NotDerived and ND were completely unused.

test/std/utilities/utility/pairs/pairs.pair/default.pass.cpp
https://reviews.llvm.org/P2 was mistakenly not being used. Yes, that's
right: -Wunused-local-typedef CAUGHT A MISTAKE! AMAZING!


https://reviews.llvm.org/D29137

Files:
  test/std/strings/string.classes/typedefs.pass.cpp
  test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp
  test/std/utilities/utility/pairs/pairs.pair/default.pass.cpp


Index: test/std/utilities/utility/pairs/pairs.pair/default.pass.cpp
===================================================================
--- test/std/utilities/utility/pairs/pairs.pair/default.pass.cpp
+++ test/std/utilities/utility/pairs/pairs.pair/default.pass.cpp
@@ -49,7 +49,7 @@
         using P = std::pair<int, NoDefault>;
         static_assert(!std::is_default_constructible<P>::value, "");
         using P2 = std::pair<NoDefault, int>;
-        static_assert(!std::is_default_constructible<P>::value, "");
+        static_assert(!std::is_default_constructible<P2>::value, "");
     }
 #endif
 }
Index: test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp
===================================================================
--- test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp
+++ test/std/utilities/meta/meta.trans/meta.trans.other/result_of11.pass.cpp
@@ -26,7 +26,6 @@
 
 struct F {};
 struct FD : public F {};
-struct NotDerived {};
 
 template <class T, class U>
 void test_result_of_imp()
@@ -43,7 +42,6 @@
 
 int main()
 {
-    typedef NotDerived ND;
     {
     typedef char F::*PMD;
     test_result_of_imp<PMD(F                &), char                &>();
Index: test/std/strings/string.classes/typedefs.pass.cpp
===================================================================
--- test/std/strings/string.classes/typedefs.pass.cpp
+++ test/std/strings/string.classes/typedefs.pass.cpp
@@ -18,13 +18,14 @@
 // typedef basic_string<wchar_t> wstring;
 
 #include <string>
+#include <type_traits>
 
 int main()
 {
-    typedef std::string test1;
-    typedef std::wstring test2;
+    static_assert((std::is_same<std::string, std::basic_string<char> >::value), "");
+    static_assert((std::is_same<std::wstring, std::basic_string<wchar_t> >::value), "");
 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
-    typedef std::u16string test3;
-    typedef std::u32string test4;
+    static_assert((std::is_same<std::u16string, std::basic_string<char16_t> >::value), "");
+    static_assert((std::is_same<std::u32string, std::basic_string<char32_t> >::value), "");
 #endif  // _LIBCPP_HAS_NO_UNICODE_CHARS
 }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29137.85778.patch
Type: text/x-patch
Size: 2158 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170125/68de34ed/attachment.bin>


More information about the cfe-commits mailing list