Patchwork c++0x tests fixes

login
register
mail settings
Submitter François Dumont
Date Dec. 3, 2010, 8:38 p.m.
Message ID <4CF9553E.5010706@free.fr>
Download mbox | patch
Permalink /patch/74209/
State New
Headers show

Comments

François Dumont - Dec. 3, 2010, 8:38 p.m.
Attached patch applied (yesterday)

Regards
2010-12-02  François Dumont  <francois.cppdevs@free.fr>

	* testsuite/23_containers/vector/requirements/explicit_instantiation/
	2.cc: Hide explicit instantiation with non default constructible type
	in C++0x mode.
	* testsuite/23_containers/deque/requirements/explicit_instantiation/
	2.cc: Likewise
	* testsuite/23_containers/list/requirements/explicit_instantiation/
	2.cc: Likewise.

Patch

Index: testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc
===================================================================
--- testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc	(revision 167353)
+++ testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc	(working copy)
@@ -19,9 +19,12 @@ 
 // This file tests explicit instantiation of library containers
 
 #include <vector>
-#include <testsuite_hooks.h>
 #include <testsuite_api.h>
 
 // { dg-do compile }
 
+// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
+// because of 23.4.1.1.4
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
 template class std::vector<__gnu_test::NonDefaultConstructible>;
+#endif
Index: testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc
===================================================================
--- testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc	(revision 167353)
+++ testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc	(working copy)
@@ -19,9 +19,12 @@ 
 // This file tests explicit instantiation of library containers
 
 #include <deque>
-#include <testsuite_hooks.h>
 #include <testsuite_api.h>
 
 // { dg-do compile }
 
+// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
+// because of 23.3.2.1.4
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
 template class std::deque<__gnu_test::NonDefaultConstructible>;
+#endif
Index: testsuite/23_containers/list/requirements/explicit_instantiation/2.cc
===================================================================
--- testsuite/23_containers/list/requirements/explicit_instantiation/2.cc	(revision 167353)
+++ testsuite/23_containers/list/requirements/explicit_instantiation/2.cc	(working copy)
@@ -19,9 +19,12 @@ 
 // This file tests explicit instantiation of library containers
 
 #include <list>
-#include <testsuite_hooks.h>
 #include <testsuite_api.h>
 
 // { dg-do compile }
 
+// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
+// because of 23.3.4.1.4
+#ifndef __GXX_EXPERIMENTAL_CXX0X__
 template class std::list<__gnu_test::NonDefaultConstructible>;
+#endif