summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-04-20 09:39:17 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-04-20 09:39:17 +0000
commit935ede5b073f3db249803adb81f26e1f3af82ee0 (patch)
tree59ffd88d26a9d057a12e5f4f3c22e7d5dbaa4a54
parent2e30c82f5769a6ea04df19871700bd3feba9b346 (diff)
downloadgcc-935ede5b073f3db249803adb81f26e1f3af82ee0.tar.gz
2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/53052 * include/std/type_traits (is_explicitly_convertible): Remove. * testsuite/20_util/is_explicitly_convertible: Likewise. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186617 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libstdc++-v3/ChangeLog11
-rw-r--r--libstdc++-v3/include/std/type_traits6
-rw-r--r--libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/explicit_instantiation.cc31
-rw-r--r--libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/typedefs.cc36
-rw-r--r--libstdc++-v3/testsuite/20_util/is_explicitly_convertible/value.cc45
5 files changed, 11 insertions, 118 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 0ef3c815e87..bebc23c0a7c 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,14 @@
+2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/53052
+ * include/std/type_traits (is_explicitly_convertible): Remove.
+ * testsuite/20_util/is_explicitly_convertible: Likewise.
+ * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
+ Adjust dg-error line numbers.
+ * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
+ Likewise.
+ * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
+
2012-04-17 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/20_util/specialized_algorithms/uninitialized_copy/
diff --git a/libstdc++-v3/include/std/type_traits b/libstdc++-v3/include/std/type_traits
index eb8c6a06fe9..c03b7bd64bb 100644
--- a/libstdc++-v3/include/std/type_traits
+++ b/libstdc++-v3/include/std/type_traits
@@ -1281,12 +1281,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__is_convertible_helper<_From, _To>::value>
{ };
- /// is_explicitly_convertible
- template<typename _From, typename _To>
- struct is_explicitly_convertible
- : public is_constructible<_To, _From>
- { };
-
// const-volatile modifications.
diff --git a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/explicit_instantiation.cc b/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/explicit_instantiation.cc
deleted file mode 100644
index 87dd950b27d..00000000000
--- a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/explicit_instantiation.cc
+++ /dev/null
@@ -1,31 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-// { dg-do compile }
-
-// 2009-12-30 Paolo Carlini <paolo.carlini@oracle.com>
-
-// Copyright (C) 2009 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library. This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License along
-// with this library; see the file COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-// NB: This file is for testing type_traits with NO OTHER INCLUDES.
-
-#include <type_traits>
-
-namespace std
-{
- typedef short test_type;
- template struct is_explicitly_convertible<test_type, test_type>;
-}
diff --git a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/typedefs.cc b/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/typedefs.cc
deleted file mode 100644
index 52ba964b1fd..00000000000
--- a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/requirements/typedefs.cc
+++ /dev/null
@@ -1,36 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-// { dg-do compile }
-
-// 2009-12-30 Paolo Carlini <paolo.carlini@oracle.com>
-//
-// Copyright (C) 2009 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library. This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this library; see the file COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-//
-// NB: This file is for testing type_traits with NO OTHER INCLUDES.
-
-#include <type_traits>
-
-void test01()
-{
- // Check for required typedefs
- typedef std::is_explicitly_convertible<int, int> test_type;
- typedef test_type::value_type value_type;
- typedef test_type::type type;
- typedef test_type::type::value_type type_value_type;
- typedef test_type::type::type type_type;
-}
diff --git a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/value.cc b/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/value.cc
deleted file mode 100644
index 7e704873275..00000000000
--- a/libstdc++-v3/testsuite/20_util/is_explicitly_convertible/value.cc
+++ /dev/null
@@ -1,45 +0,0 @@
-// { dg-options "-std=gnu++0x" }
-
-// Copyright (C) 2009 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library. This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option)
-// any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this library; see the file COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-
-#include <type_traits>
-#include <testsuite_hooks.h>
-#include <testsuite_tr1.h>
-
-void test01()
-{
- bool test __attribute__((unused)) = true;
- using std::is_explicitly_convertible;
- using namespace __gnu_test;
-
- // Positive tests.
- VERIFY( (test_relationship<is_explicitly_convertible, double&,
- ExplicitClass>(true)) );
- VERIFY( (test_relationship<is_explicitly_convertible, int&,
- ExplicitClass>(true)) );
-
- // Negative tests.
- VERIFY( (test_relationship<is_explicitly_convertible, void*,
- ExplicitClass>(false)) );
-}
-
-int main()
-{
- test01();
- return 0;
-}