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 |
---|---|---|
.. | ||
array | Loading commit data... | |
assertions.h | Loading commit data... | |
bitset | Loading commit data... | |
debug.h | Loading commit data... | |
deque | Loading commit data... | |
formatter.h | Loading commit data... | |
forward_list | Loading commit data... | |
functions.h | Loading commit data... | |
helper_functions.h | Loading commit data... | |
list | Loading commit data... | |
macros.h | Loading commit data... | |
map | Loading commit data... | |
map.h | Loading commit data... | |
multimap.h | Loading commit data... | |
multiset.h | Loading commit data... | |
safe_base.h | Loading commit data... | |
safe_container.h | Loading commit data... | |
safe_iterator.h | Loading commit data... | |
safe_iterator.tcc | Loading commit data... | |
safe_local_iterator.h | Loading commit data... | |
safe_local_iterator.tcc | Loading commit data... | |
safe_sequence.h | Loading commit data... | |
safe_sequence.tcc | Loading commit data... | |
safe_unordered_base.h | Loading commit data... | |
safe_unordered_container.h | Loading commit data... | |
safe_unordered_container.tcc | Loading commit data... | |
set | Loading commit data... | |
set.h | Loading commit data... | |
stl_iterator.h | Loading commit data... | |
string | Loading commit data... | |
unordered_map | Loading commit data... | |
unordered_set | Loading commit data... | |
vector | Loading commit data... |