Prior to this change, including a <debug/xxx> header when _GLIBCXX_DEBUG is also defined would fail to compile in C++17 or later. The <debug/xxx> header would include the standard <xxx> header which defined std::pmr::xxx as an alias for std::xxx. But in Debug Mode std::xxx refers to std::__debug::xxx which has not been defined yet (because it is in <debug/xxx> after the inclusion of <xxx>). This adds declarations of the debug containers before including the non-Debug Mode <xxx> header, so that the std::pmr::xxx aliases work. * include/debug/deque (std::__debug::deque): Declare. * include/debug/forward_list (std::__debug::forward_list): Declare. * include/debug/list (std::__debug::list): Declare. * include/debug/map (std::__debug::map): Declare. * include/debug/set (std::__debug::set): Declare. * include/debug/unordered_map (std::__debug::unordered_map): Declare. * include/debug/unordered_set (std::__debug::unordered_set): Declare. * include/debug/vector (std::__debug::vector): Declare. * testsuite/23_containers/deque/types/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/forward_list/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/list/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/map/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/multimap/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/multiset/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/set/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/unordered_map/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/unordered_multimap/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/unordered_multiset/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/unordered_set/pmr_typedefs_debug.cc: New test. * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: Adjust dg-error lineno. * testsuite/23_containers/vector/types/pmr_typedefs_debug.cc: New test. From-SVN: r263839
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
allocator | Loading commit data... | |
bool | Loading commit data... | |
capacity | Loading commit data... | |
cons | Loading commit data... | |
data_access | Loading commit data... | |
debug | Loading commit data... | |
element_access | Loading commit data... | |
ext_pointer | Loading commit data... | |
modifiers | Loading commit data... | |
profile | Loading commit data... | |
requirements | Loading commit data... | |
types | Loading commit data... | |
14340.cc | Loading commit data... | |
15523.cc | Loading commit data... | |
18604.cc | Loading commit data... | |
26412-1.cc | Loading commit data... | |
26412-2.cc | Loading commit data... | |
40192.cc | Loading commit data... | |
48101-2_neg.cc | Loading commit data... | |
48101_neg.cc | Loading commit data... | |
52591.cc | Loading commit data... | |
58764.cc | Loading commit data... | |
59829.cc | Loading commit data... | |
63500.cc | Loading commit data... | |
check_construct_destroy.cc | Loading commit data... | |
debug_mode_requires_reallocation-1.cc | Loading commit data... | |
debug_mode_requires_reallocation-2.cc | Loading commit data... | |
init-list.cc | Loading commit data... | |
pmr_typedefs.cc | Loading commit data... | |
range_access.cc | Loading commit data... | |
zero_sized_allocations.cc | Loading commit data... |