Fix test errors with _GLIBCXX_DEBUG
defined
#5693
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes part of #5544.
The
is_heap
change is due togreater_equal
not satisfying https://en.cppreference.com/w/cpp/named_req/Compare. With_GLIBCXX_DEBUG
libstdc++ actually gives a surprisingly helpful error message:The change to
is_contiguous_iterator
is because vector iterators are different with_GLIBCXX_DEBUG
(the pointers are wrapped).The last change to
incplace_merge
tests is due to confused use of variables. With_GLIBCXX_DEBUG
libstdc++ reported use of moved-from iterators.There are still a few tests that fail with
_GLIBCXX_DEBUG
, so I'm not enabling it in CI. If anyone feels like looking into them they're at leastuninitialized_copyn
anduninitialized_move
. They both segfault.