]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
PR libstdc++/61532
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 23 Jun 2014 18:17:03 +0000 (18:17 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 23 Jun 2014 18:17:03 +0000 (18:17 +0000)
* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
apply the signed specifier to wchar_t.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
cv-qualifier and size.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211909 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-1.cc
libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc
libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-1.cc
libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc

index 4c67c60d36ffc27fa2aab54246c785c1aa72b3a2..9d344d1bcd51c0dec109a366cd8866ec8846d3df 100644 (file)
@@ -5,6 +5,15 @@
        * testsuite/20_util/duration/literals/values.cc: Test non-positive
        values and digit separators.
 
+       PR libstdc++/61532
+       * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
+       apply the signed specifier to wchar_t.
+       * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
+       * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
+       cv-qualifier and size.
+       * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
+       Likewise.
+
 2014-06-18  Paolo Carlini  <paolo.carlini@oracle.com>
            Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
 
index e3b84d649aa48e5d9b6dbbbc09efdf47f64cb312..5b094d9a4f92c95c527f5c6c219feed551aea7a7 100644 (file)
@@ -29,6 +29,7 @@ void test01()
   using std::make_signed;
   using std::is_same;
   using std::is_signed;
+  using std::is_volatile;
 
   // Positive tests.
   typedef make_signed<const int>::type         test2_type;
@@ -53,7 +54,9 @@ void test01()
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   typedef make_signed<volatile wchar_t>::type          test23_type;
-  static_assert( is_same<test23_type, volatile signed wchar_t>::value,
+  static_assert( is_signed<test23_type>::value
+                 && is_volatile<test23_type>::value
+                 && sizeof(test23_type) == sizeof(volatile wchar_t),
                  "make_signed<volatile wchar_t>" );
 #endif
 
index 654b3759ca00fcd864d12239e4a4c84b14a9c191..3f47dba5bf051ccedd9f106e2e15c932e0906ceb 100644 (file)
@@ -30,6 +30,8 @@ void test01()
 {
   using std::make_signed;
   using std::is_same;
+  using std::is_signed;
+  using std::is_volatile;
 
   // Positive tests.
   typedef make_signed<const int>::type         test2_type;
@@ -50,7 +52,9 @@ void test01()
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   typedef make_signed<volatile wchar_t>::type          test23_type;
-  static_assert(is_same<test23_type, volatile signed wchar_t>::value, "");
+  static_assert(is_signed<test23_type>::value
+                 && is_volatile<test23_type>::value
+                 && sizeof(test23_type) == sizeof(volatile wchar_t), "");
 #endif
 
   typedef make_signed<test_enum>::type         test24_type;
index d9f13aabb80a9164d797c067bfbb0e8d17fe17f5..de655048fdfb391875f388e9294fcfcfb9e34f44 100644 (file)
@@ -29,6 +29,7 @@ void test01()
   using std::make_unsigned;
   using std::is_same;
   using std::is_unsigned;
+  using std::is_volatile;
 
   // Positive tests.
   typedef make_unsigned<const unsigned int>::type      test2_type;
@@ -49,7 +50,9 @@ void test01()
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   typedef make_unsigned<volatile wchar_t>::type        test23_type;
-  static_assert(is_unsigned<test23_type>::value, "");
+  static_assert(is_unsigned<test23_type>::value
+                && is_volatile<test23_type>::value
+                && sizeof(test23_type) == sizeof(volatile wchar_t), "");
 #endif
 
   // Chapter 48, chapter 20. Smallest rank such that new unsigned type
index 807e2bf3f695b509615c8866446af3d6166dd6eb..7801dca94c5cd20b8b57c8e1aac83c92422080dc 100644 (file)
@@ -31,6 +31,7 @@ void test01()
   using std::make_unsigned;
   using std::is_same;
   using std::is_unsigned;
+  using std::is_volatile;
 
   // Positive tests.
   typedef make_unsigned<const unsigned int>::type      test2_type;
@@ -51,7 +52,9 @@ void test01()
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   typedef make_unsigned<volatile wchar_t>::type        test23_type;
-  static_assert(is_unsigned<test23_type>::value, "");
+  static_assert(is_unsigned<test23_type>::value
+                && is_volatile<test23_type>::value
+                && sizeof(test23_type) == sizeof(volatile wchar_t), "");
 #endif
 
   typedef make_unsigned<test_enum>::type         test24_type;