diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2018-10-19 22:49:49 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2018-10-19 22:49:49 +0100 |
commit | f8f39390375ab2e20ba58388f5ab282543ffa428 (patch) | |
tree | 95df0148e0abd67683ae596ad7e8a88abe41d582 | |
parent | 78ed0f80c38b9084794ae4a02e5a5648cbd255ae (diff) | |
download | gcc-f8f39390375ab2e20ba58388f5ab282543ffa428.zip gcc-f8f39390375ab2e20ba58388f5ab282543ffa428.tar.gz gcc-f8f39390375ab2e20ba58388f5ab282543ffa428.tar.bz2 |
Conditionally disable tests of non-standard extensions
These tests include uses of the extension to allow allocators with the
wrong value_type in containers. Skip those parts of the tests when
__STRICT_ANIS__ is defined.
* testsuite/23_containers/forward_list/requirements/
explicit_instantiation/5.cc [__STRICT_ANSI__]: Don't test non-standard
extension.
* testsuite/23_containers/list/requirements/explicit_instantiation/
5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/map/requirements/explicit_instantiation/5.cc
[__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/multimap/requirements/explicit_instantiation/
5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/multiset/requirements/explicit_instantiation/
5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/set/requirements/explicit_instantiation/5.cc
[__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/unordered_map/requirements/debug_container.cc
[__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise.
From-SVN: r265332
12 files changed, 58 insertions, 6 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c7cdc00..b3688f8 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,29 @@ 2018-10-19 Jonathan Wakely <jwakely@redhat.com> + * testsuite/23_containers/forward_list/requirements/ + explicit_instantiation/5.cc [__STRICT_ANSI__]: Don't test non-standard + extension. + * testsuite/23_containers/list/requirements/explicit_instantiation/ + 5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/map/requirements/explicit_instantiation/5.cc + [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/multimap/requirements/explicit_instantiation/ + 5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/multiset/requirements/explicit_instantiation/ + 5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/set/requirements/explicit_instantiation/5.cc + [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/unordered_map/requirements/debug_container.cc + [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/unordered_map/requirements/ + explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/unordered_multimap/requirements/ + explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/unordered_multiset/requirements/ + explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/23_containers/unordered_set/requirements/ + explicit_instantiation/5.cc [__STRICT_ANSI__]: Likewise. + * testsuite/20_util/scoped_allocator/1.cc: Use allocator with correct value type for the container. * testsuite/23_containers/forward_list/cons/14.cc: Likewise. diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/5.cc index 2060ac7..beb2da4 100644 --- a/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/forward_list/requirements/explicit_instantiation/5.cc @@ -25,4 +25,6 @@ // libstdc++/50118 template class std::forward_list<int, __gnu_test::ExplicitConsAlloc<int>>; +#ifndef __STRICT_ANSI__ template class std::forward_list<int, __gnu_test::ExplicitConsAlloc<char>>; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/5.cc index c34afd0..36d0ac3 100644 --- a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/5.cc @@ -24,4 +24,6 @@ // libstdc++/50118 template class std::list<int, __gnu_test::ExplicitConsAlloc<int> >; +#ifndef __STRICT_ANSI__ template class std::list<int, __gnu_test::ExplicitConsAlloc<char> >; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/5.cc index 9dde5bc..2e86fb0 100644 --- a/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/map/requirements/explicit_instantiation/5.cc @@ -22,8 +22,12 @@ // { dg-do compile } +using __gnu_test::ExplicitConsAlloc; + // libstdc++/50118 template class std::map<int, int, std::less<int>, - __gnu_test::ExplicitConsAlloc<int> >; + ExplicitConsAlloc<std::pair<const int, int> > >; +#ifndef __STRICT_ANSI__ template class std::map<int, int, std::less<int>, - __gnu_test::ExplicitConsAlloc<char> >; + ExplicitConsAlloc<char> >; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/5.cc index 00f987d..655d3dc 100644 --- a/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/multimap/requirements/explicit_instantiation/5.cc @@ -22,8 +22,12 @@ // { dg-do compile } +using __gnu_test::ExplicitConsAlloc; + // libstdc++/50118 template class std::multimap<int, int, std::less<int>, - __gnu_test::ExplicitConsAlloc<int> >; + ExplicitConsAlloc<std::pair<const int, int> > >; +#ifndef __STRICT_ANSI__ template class std::multimap<int, int, std::less<int>, - __gnu_test::ExplicitConsAlloc<char> >; + ExplicitConsAlloc<char> >; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/5.cc index 0abadf4..36a1c7e 100644 --- a/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/multiset/requirements/explicit_instantiation/5.cc @@ -25,5 +25,7 @@ // libstdc++/50118 template class std::multiset<int, std::less<int>, __gnu_test::ExplicitConsAlloc<int> >; +#ifndef __STRICT_ANSI__ template class std::multiset<int, std::less<int>, __gnu_test::ExplicitConsAlloc<char> >; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/5.cc index cbbbcc1..f0edffe 100644 --- a/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/set/requirements/explicit_instantiation/5.cc @@ -25,5 +25,7 @@ // libstdc++/50118 template class std::set<int, std::less<int>, __gnu_test::ExplicitConsAlloc<int> >; +#ifndef __STRICT_ANSI__ template class std::set<int, std::less<int>, __gnu_test::ExplicitConsAlloc<char> >; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/debug_container.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/debug_container.cc index 6fe5d6f..1af0f5a 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/debug_container.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/debug_container.cc @@ -30,6 +30,8 @@ template class __gnu_debug::unordered_map<string, float>; template class __gnu_debug::unordered_map<string, int, hash<string>, equal_to<string>, allocator<pair<const string, int>>>; +#ifndef __STRICT_ANSI__ template class __gnu_debug::unordered_map<string, float, hash<string>, equal_to<string>, allocator<char>>; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/5.cc index afe3d64..2bedfc2 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/requirements/explicit_instantiation/5.cc @@ -23,8 +23,12 @@ // { dg-do compile { target c++11 } } +using __gnu_test::ExplicitConsAlloc; + // libstdc++/50118 template class std::unordered_map<int, int, std::hash<int>, std::equal_to<int>, - __gnu_test::ExplicitConsAlloc<int>>; + ExplicitConsAlloc<std::pair<const int, int>>>; +#ifndef __STRICT_ANSI__ template class std::unordered_map<int, int, std::hash<int>, std::equal_to<int>, - __gnu_test::ExplicitConsAlloc<char>>; + ExplicitConsAlloc<char>>; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/5.cc index 6cdf0f3..938cea5 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multimap/requirements/explicit_instantiation/5.cc @@ -28,6 +28,8 @@ using __gnu_test::ExplicitConsAlloc; template class std::unordered_multimap<int, int, std::hash<int>, std::equal_to<int>, ExplicitConsAlloc<std::pair<const int, int>>>; +#ifndef __STRICT_ANSI__ template class std::unordered_multimap<int, int, std::hash<int>, std::equal_to<int>, ExplicitConsAlloc<char>>; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/5.cc index 5645a71..59b509b 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multiset/requirements/explicit_instantiation/5.cc @@ -26,5 +26,7 @@ // libstdc++/50118 template class std::unordered_multiset<int, std::hash<int>, std::equal_to<int>, __gnu_test::ExplicitConsAlloc<int>>; +#ifndef __STRICT_ANSI__ template class std::unordered_multiset<int, std::hash<int>, std::equal_to<int>, __gnu_test::ExplicitConsAlloc<char>>; +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/5.cc b/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/5.cc index ae117ee..b3358c3 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/5.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_set/requirements/explicit_instantiation/5.cc @@ -26,5 +26,7 @@ // libstdc++/50118 template class std::unordered_set<int, std::hash<int>, std::equal_to<int>, __gnu_test::ExplicitConsAlloc<int>>; +#ifndef __STRICT_ANSI__ template class std::unordered_set<int, std::hash<int>, std::equal_to<int>, __gnu_test::ExplicitConsAlloc<char>>; +#endif |