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>
|
2018-10-18 Jonathan Wakely <jwakely@redhat.com>
|
||||||
|
|
||||||
* testsuite/20_util/duration/cons/2.cc: Add -ffloat-store to fix
|
* testsuite/20_util/duration/cons/2.cc: Add -ffloat-store to fix
|
||||||
|
|
|
@ -482,6 +482,7 @@ namespace __debug
|
||||||
return { _Base::erase(__position.base()), this };
|
return { _Base::erase(__position.base()), this };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(iterator __position)
|
erase(iterator __position)
|
||||||
{ return erase(const_iterator(__position)); }
|
{ return erase(const_iterator(__position)); }
|
||||||
|
|
|
@ -361,6 +361,7 @@ namespace __debug
|
||||||
return { _Base::erase(__position.base()), this };
|
return { _Base::erase(__position.base()), this };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(iterator __position)
|
erase(iterator __position)
|
||||||
{ return erase(const_iterator(__position)); }
|
{ return erase(const_iterator(__position)); }
|
||||||
|
|
|
@ -324,6 +324,7 @@ namespace __debug
|
||||||
#endif // C++17
|
#endif // C++17
|
||||||
|
|
||||||
#if __cplusplus >= 201103L
|
#if __cplusplus >= 201103L
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(const_iterator __position)
|
erase(const_iterator __position)
|
||||||
{
|
{
|
||||||
|
@ -358,6 +359,7 @@ namespace __debug
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __cplusplus >= 201103L
|
#if __cplusplus >= 201103L
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(const_iterator __first, const_iterator __last)
|
erase(const_iterator __first, const_iterator __last)
|
||||||
{
|
{
|
||||||
|
|
|
@ -338,6 +338,7 @@ namespace __debug
|
||||||
#endif // C++17
|
#endif // C++17
|
||||||
|
|
||||||
#if __cplusplus >= 201103L
|
#if __cplusplus >= 201103L
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(const_iterator __position)
|
erase(const_iterator __position)
|
||||||
{
|
{
|
||||||
|
@ -370,6 +371,7 @@ namespace __debug
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __cplusplus >= 201103L
|
#if __cplusplus >= 201103L
|
||||||
|
_GLIBCXX_ABI_TAG_CXX11
|
||||||
iterator
|
iterator
|
||||||
erase(const_iterator __first, const_iterator __last)
|
erase(const_iterator __first, const_iterator __last)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue