diff --git a/libstdc++-v3/include/std/deque b/libstdc++-v3/include/std/deque index 0bf8309c19a763b8b6f7c3fd62851015604b7be6..69f8c0dcdccf3ee4a0351ca0ec85335da6dc39e5 100644 --- a/libstdc++-v3/include/std/deque +++ b/libstdc++-v3/include/std/deque @@ -68,6 +68,7 @@ #include <bits/range_access.h> #include <bits/deque.tcc> +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_nonmember_container_access #include <bits/version.h> diff --git a/libstdc++-v3/include/std/forward_list b/libstdc++-v3/include/std/forward_list index 5ac74360808d81355379ea2c7ee1041146e9aa4c..dfd7d48d1219a7146d76df2a86aeb2fa618a8f37 100644 --- a/libstdc++-v3/include/std/forward_list +++ b/libstdc++-v3/include/std/forward_list @@ -45,6 +45,7 @@ # include <debug/forward_list> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_incomplete_container_elements #define __glibcxx_want_list_remove_return_type diff --git a/libstdc++-v3/include/std/list b/libstdc++-v3/include/std/list index fce4e3d925b17d9e9d4b6248b812e5b645561eaa..ff632fc1ab2f86837844939e30e2de0c12427fe6 100644 --- a/libstdc++-v3/include/std/list +++ b/libstdc++-v3/include/std/list @@ -69,6 +69,7 @@ # include <debug/list> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_incomplete_container_elements #define __glibcxx_want_list_remove_return_type diff --git a/libstdc++-v3/include/std/map b/libstdc++-v3/include/std/map index 4a96e59a5bc18d7e07c3c6269c4848c37d8f24e8..6520d9f744fe261078bdf17cd29d6127f024ef92 100644 --- a/libstdc++-v3/include/std/map +++ b/libstdc++-v3/include/std/map @@ -69,6 +69,7 @@ # include <debug/map> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_generic_associative_lookup #define __glibcxx_want_map_try_emplace diff --git a/libstdc++-v3/include/std/scoped_allocator b/libstdc++-v3/include/std/scoped_allocator index dbe7bf3cbf65fc66f5fec13ca285546e4a3ba29f..532a44691ba0b1a04e50b1c6278cd037a5376201 100644 --- a/libstdc++-v3/include/std/scoped_allocator +++ b/libstdc++-v3/include/std/scoped_allocator @@ -43,6 +43,9 @@ # include <bits/uses_allocator_args.h> #endif +#define __glibcxx_want_allocator_traits_is_always_equal +#include <bits/version.h> + namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION diff --git a/libstdc++-v3/include/std/set b/libstdc++-v3/include/std/set index bf2474c7eb24a8908bbfd3adf4a0b9c8ab70fdc7..95cc8005a1929dc8f86c627e2a016f7020d87f18 100644 --- a/libstdc++-v3/include/std/set +++ b/libstdc++-v3/include/std/set @@ -69,6 +69,7 @@ # include <debug/set> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_generic_associative_lookup #define __glibcxx_want_node_extract diff --git a/libstdc++-v3/include/std/string b/libstdc++-v3/include/std/string index 55144409cca28d99cc6ec6a0aa4967d096ac2dd6..8db0802a2827694ed145789f47633a2420401146 100644 --- a/libstdc++-v3/include/std/string +++ b/libstdc++-v3/include/std/string @@ -54,6 +54,7 @@ #include <bits/basic_string.h> #include <bits/basic_string.tcc> +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_constexpr_char_traits #define __glibcxx_want_constexpr_string #define __glibcxx_want_erase_if diff --git a/libstdc++-v3/include/std/unordered_map b/libstdc++-v3/include/std/unordered_map index ea6129d64946382155e0a1c2ab67a3f07f771a9d..f9a948c3873b1fdfd3c04b6b5cd5fda5abf7f340 100644 --- a/libstdc++-v3/include/std/unordered_map +++ b/libstdc++-v3/include/std/unordered_map @@ -46,6 +46,7 @@ # include <debug/unordered_map> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_generic_unordered_lookup #define __glibcxx_want_node_extract diff --git a/libstdc++-v3/include/std/unordered_set b/libstdc++-v3/include/std/unordered_set index a48fe0cd5635046e950e7dfedb7e66143ac325e5..aa5b702ff4d347a10856f975eabe81357b00ee25 100644 --- a/libstdc++-v3/include/std/unordered_set +++ b/libstdc++-v3/include/std/unordered_set @@ -46,6 +46,7 @@ # include <debug/unordered_set> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_erase_if #define __glibcxx_want_generic_unordered_lookup #define __glibcxx_want_node_extract diff --git a/libstdc++-v3/include/std/vector b/libstdc++-v3/include/std/vector index a1f7ef86824250dfba07c2c72c9d181f5f4fea2c..906c16279359bd105962e2e59d19c2949d3059c8 100644 --- a/libstdc++-v3/include/std/vector +++ b/libstdc++-v3/include/std/vector @@ -76,6 +76,7 @@ # include <debug/vector> #endif +#define __glibcxx_want_allocator_traits_is_always_equal #define __glibcxx_want_constexpr_vector #define __glibcxx_want_erase_if #define __glibcxx_want_incomplete_container_elements diff --git a/libstdc++-v3/testsuite/20_util/headers/memory/version.cc b/libstdc++-v3/testsuite/20_util/headers/memory/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..c82c9a018e0ac6a9ddc5f9c6b50e9765402d0592 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/headers/memory/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <memory> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/20_util/scoped_allocator/version.cc b/libstdc++-v3/testsuite/20_util/scoped_allocator/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..c5a1b11a7390d93427e9290c41d988b929c81a26 --- /dev/null +++ b/libstdc++-v3/testsuite/20_util/scoped_allocator/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <scoped_allocator> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/21_strings/headers/string/version.cc b/libstdc++-v3/testsuite/21_strings/headers/string/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..a546b75b3fee1ce7928d1ba3b3951636df337831 --- /dev/null +++ b/libstdc++-v3/testsuite/21_strings/headers/string/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <string> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/deque/version.cc b/libstdc++-v3/testsuite/23_containers/deque/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..09d71cb935d36a2ca118524ef73f54bf77ef9cca --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/deque/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <deque> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/forward_list/version.cc b/libstdc++-v3/testsuite/23_containers/forward_list/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..7a0203978f0ccec377b680315f8eeafccee88724 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/forward_list/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <forward_list> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/list/version.cc b/libstdc++-v3/testsuite/23_containers/list/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..3ac63e06d90bf19c518e1a57a423f23beb336817 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/list/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <list> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/map/version.cc b/libstdc++-v3/testsuite/23_containers/map/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..31a228d365d00e2b0a21d8ece25554f2e7bacc0c --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/map/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <map> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/set/version.cc b/libstdc++-v3/testsuite/23_containers/set/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..eb49b2353c3fe0a3d7b447595e9999c718bfde4f --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/set/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <set> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_map/version.cc b/libstdc++-v3/testsuite/23_containers/unordered_map/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..946d7c295d5916e6bd568d560b47c871d096b56c --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/unordered_map/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <unordered_map> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/unordered_set/version.cc b/libstdc++-v3/testsuite/23_containers/unordered_set/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..d22adfb420e8d2736379be0a72337134508d936f --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/unordered_set/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <unordered_set> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif diff --git a/libstdc++-v3/testsuite/23_containers/vector/version.cc b/libstdc++-v3/testsuite/23_containers/vector/version.cc new file mode 100644 index 0000000000000000000000000000000000000000..0c8e4150abc700587d042e3dc5ec495f0bd36104 --- /dev/null +++ b/libstdc++-v3/testsuite/23_containers/vector/version.cc @@ -0,0 +1,8 @@ +// { dg-do preprocess { target c++17 } } +// { dg-add-options no_pch } + +#include <vector> + +#if __cpp_lib_allocator_traits_is_always_equal != 201411L +# error "Feature-test macro __cpp_lib_allocator_traits_is_always_equal has wrong value in <version>" +#endif