Skip tests for GNU extensions when testing with strict mode

Tests for the implicit allocator rebinding extension will fail if the
extension is disabled, so skip them.

	* testsuite/23_containers/array/requirements/explicit_instantiation/
	3.cc: Skip test when compiled with a -std=c++NN strict mode.
	* testsuite/23_containers/deque/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/list/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/map/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/multimap/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/multiset/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/set/requirements/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/3.cc: Likewise.
	* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
	3.cc: Likewise.
	* testsuite/23_containers/vector/requirements/explicit_instantiation/
	3.cc: Likewise.

From-SVN: r265334
This commit is contained in:
Jonathan Wakely 2018-10-19 22:50:15 +01:00 committed by Jonathan Wakely
parent 92bab15297
commit f324588755
15 changed files with 66 additions and 8 deletions

View File

@ -1,5 +1,34 @@
2018-10-19 Jonathan Wakely <jwakely@redhat.com> 2018-10-19 Jonathan Wakely <jwakely@redhat.com>
* testsuite/23_containers/array/requirements/explicit_instantiation/
3.cc: Skip test when compiled with a -std=c++NN strict mode.
* testsuite/23_containers/deque/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/list/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/map/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/multimap/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/multiset/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/set/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/3.cc: Likewise.
* testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/vector/requirements/explicit_instantiation/
3.cc: Likewise.
* testsuite/23_containers/deque/48101_neg.cc: Prune additional errors * testsuite/23_containers/deque/48101_neg.cc: Prune additional errors
printed when __STRICT_ANSI__ is defined. printed when __STRICT_ANSI__ is defined.
* testsuite/23_containers/forward_list/48101_neg.cc: Likewise. * testsuite/23_containers/forward_list/48101_neg.cc: Likewise.

View File

@ -1,4 +1,5 @@
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// 2010-05-20 Paolo Carlini <paolo.carlini@oracle.com> // 2010-05-20 Paolo Carlini <paolo.carlini@oracle.com>
// //
@ -20,6 +21,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <array> #include <array>
#include <testsuite_hooks.h> #include <testsuite_hooks.h>

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <deque> #include <deque>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::deque<int, std::allocator<char> >; template class std::deque<int, std::allocator<char> >;

View File

@ -16,12 +16,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <forward_list> #include <forward_list>
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::forward_list<int, std::allocator<char> >; template class std::forward_list<int, std::allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <list> #include <list>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::list<int, std::allocator<char> >; template class std::list<int, std::allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <map> #include <map>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::map<int, double, std::less<int>, std::allocator<char> >; template class std::map<int, double, std::less<int>, std::allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <map> #include <map>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::multimap<int, double, std::less<int>, std::allocator<char> >; template class std::multimap<int, double, std::less<int>, std::allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <set> #include <set>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::multiset<int, std::less<int>, std::allocator<char> >; template class std::multiset<int, std::less<int>, std::allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <set> #include <set>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::set<int, std::less<int>, std::allocator<char> >; template class std::set<int, std::less<int>, std::allocator<char> >;

View File

@ -1,4 +1,5 @@
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// Copyright (C) 2007-2018 Free Software Foundation, Inc. // Copyright (C) 2007-2018 Free Software Foundation, Inc.
// //
@ -17,6 +18,9 @@
// along with this library; see the file COPYING3. If not see // along with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <unordered_map> #include <unordered_map>
using namespace std; using namespace std;

View File

@ -1,4 +1,5 @@
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// Copyright (C) 2007-2018 Free Software Foundation, Inc. // Copyright (C) 2007-2018 Free Software Foundation, Inc.
// //
@ -17,6 +18,9 @@
// along with this library; see the file COPYING3. If not see // along with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <unordered_map> #include <unordered_map>
using namespace std; using namespace std;

View File

@ -1,4 +1,5 @@
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// Copyright (C) 2007-2018 Free Software Foundation, Inc. // Copyright (C) 2007-2018 Free Software Foundation, Inc.
// //
@ -17,6 +18,9 @@
// along with this library; see the file COPYING3. If not see // along with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <unordered_set> #include <unordered_set>
using namespace std; using namespace std;

View File

@ -1,4 +1,5 @@
// { dg-do compile { target c++11 } } // { dg-do compile { target c++11 } }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// Copyright (C) 2007-2018 Free Software Foundation, Inc. // Copyright (C) 2007-2018 Free Software Foundation, Inc.
// //
@ -17,6 +18,9 @@
// along with this library; see the file COPYING3. If not see // along with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <unordered_set> #include <unordered_set>
using namespace std; using namespace std;

View File

@ -17,11 +17,14 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <vector> #include <vector>
#include <ext/extptr_allocator.h> #include <ext/extptr_allocator.h>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::vector<int, __gnu_cxx::_ExtPtr_allocator<char> >; template class std::vector<int, __gnu_cxx::_ExtPtr_allocator<char> >;

View File

@ -15,12 +15,13 @@
// with this library; see the file COPYING3. If not see // with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// This file tests explicit instantiation of library containers // This file tests explicit instantiation of library containers
// with an allocator for a different value_type (which is a GNU extension).
#include <vector> #include <vector>
// { dg-do compile } // { dg-do compile }
// { dg-skip-if "no extensions in strict dialects" { *-*-* } { "-std=c++*" } }
// libstdc++/21770 // libstdc++/21770
template class std::vector<int, std::allocator<char> >; template class std::vector<int, std::allocator<char> >;