libstdc++: Add inline to maybe-constexpr functions (PR 92927)
Originally these functions were always inline. I changed them in r277342 to be always constexpr, then in r277588 changed them to be constexpr for C++14, but I didn't restore the 'inline' for C++11. That leads to linker errors when libstdc++.so is built unoptimized, because those functions don't get instantiated in src/c++11/string-inst.o PR libstdc++/92927 * include/bits/alloc_traits.h (__alloc_on_copy, __alloc_on_move) (__alloc_on_swap): Add inline specifier. From-SVN: r279656
This commit is contained in:
parent
9260fb066b
commit
7770bd7e9a
2 changed files with 9 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
|||
2019-12-20 Jonathan Wakely <jwakely@redhat.com>
|
||||
|
||||
PR libstdc++/92927
|
||||
* include/bits/alloc_traits.h (__alloc_on_copy, __alloc_on_move)
|
||||
(__alloc_on_swap): Add inline specifier.
|
||||
|
||||
2019-12-20 Jerome Lambourg <lambourg@adacore.com>
|
||||
|
||||
* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Test with AC_LANG_CPLUSPLUS.
|
||||
|
|
|
@ -567,7 +567,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
#endif
|
||||
|
||||
template<typename _Alloc>
|
||||
_GLIBCXX14_CONSTEXPR void
|
||||
_GLIBCXX14_CONSTEXPR inline void
|
||||
__alloc_on_copy(_Alloc& __one, const _Alloc& __two)
|
||||
{
|
||||
typedef allocator_traits<_Alloc> __traits;
|
||||
|
@ -599,7 +599,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
#endif
|
||||
|
||||
template<typename _Alloc>
|
||||
_GLIBCXX14_CONSTEXPR void
|
||||
_GLIBCXX14_CONSTEXPR inline void
|
||||
__alloc_on_move(_Alloc& __one, _Alloc& __two)
|
||||
{
|
||||
typedef allocator_traits<_Alloc> __traits;
|
||||
|
@ -626,7 +626,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
|||
#endif
|
||||
|
||||
template<typename _Alloc>
|
||||
_GLIBCXX14_CONSTEXPR void
|
||||
_GLIBCXX14_CONSTEXPR inline void
|
||||
__alloc_on_swap(_Alloc& __one, _Alloc& __two)
|
||||
{
|
||||
typedef allocator_traits<_Alloc> __traits;
|
||||
|
|
Loading…
Add table
Reference in a new issue