Fix testsuite failures in Debug Mode
This fixes the following testsuite failures on ia32 when compiled with -D_GLIBCXX_DEBUG: FAIL: 23_containers/map/modifiers/erase/dr130-linkage-check.cc FAIL: 23_containers/multimap/modifiers/erase/dr130-linkage-check.cc FAIL: 23_containers/multiset/modifiers/erase/dr130-linkage-check.cc FAIL: 23_containers/set/modifiers/erase/dr130-linkage-check.cc The normal mode containers already use the abi-tag to mangle these overloads differently, but the debug mode versions weren't fixed. * include/debug/map.h (map::erase(iterator)): Add abi-tag so that C++11 version mangles differently from incompatible C++98 version. * include/debug/multimap.h (multimap::erase(iterator)): Likewise. * include/debug/multiset.h (multiset::erase(iterator)) (multiset::erase(const_iterator, const_iterator)): Likewise. * include/debug/set.h (set::erase(iterator)) (multiset::erase(const_iterator, const_iterator)): Likewise. From-SVN: r265313
This commit is contained in:
parent
ba52922f6b
commit
7b1e8acfae
|
@ -1,3 +1,13 @@
|
|||
2018-10-19 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
* include/debug/map.h (map::erase(iterator)): Add abi-tag so that
|
||||
C++11 version mangles differently from incompatible C++98 version.
|
||||
* include/debug/multimap.h (multimap::erase(iterator)): Likewise.
|
||||
* include/debug/multiset.h (multiset::erase(iterator))
|
||||
(multiset::erase(const_iterator, const_iterator)): Likewise.
|
||||
* include/debug/set.h (set::erase(iterator))
|
||||
(multiset::erase(const_iterator, const_iterator)): Likewise.
|
||||
|
||||
2018-10-18 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
* testsuite/20_util/duration/cons/2.cc: Add -ffloat-store to fix
|
||||
|
|
|
@ -482,6 +482,7 @@ namespace __debug
|
|||
return { _Base::erase(__position.base()), this };
|
||||
}
|
||||
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(iterator __position)
|
||||
{ return erase(const_iterator(__position)); }
|
||||
|
|
|
@ -361,6 +361,7 @@ namespace __debug
|
|||
return { _Base::erase(__position.base()), this };
|
||||
}
|
||||
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(iterator __position)
|
||||
{ return erase(const_iterator(__position)); }
|
||||
|
|
|
@ -324,6 +324,7 @@ namespace __debug
|
|||
#endif // C++17
|
||||
|
||||
#if __cplusplus >= 201103L
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(const_iterator __position)
|
||||
{
|
||||
|
@ -358,6 +359,7 @@ namespace __debug
|
|||
}
|
||||
|
||||
#if __cplusplus >= 201103L
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(const_iterator __first, const_iterator __last)
|
||||
{
|
||||
|
|
|
@ -338,6 +338,7 @@ namespace __debug
|
|||
#endif // C++17
|
||||
|
||||
#if __cplusplus >= 201103L
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(const_iterator __position)
|
||||
{
|
||||
|
@ -370,6 +371,7 @@ namespace __debug
|
|||
}
|
||||
|
||||
#if __cplusplus >= 201103L
|
||||
_GLIBCXX_ABI_TAG_CXX11
|
||||
iterator
|
||||
erase(const_iterator __first, const_iterator __last)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue