diff options
| -rw-r--r-- | libstdc++-v3/ChangeLog | 8 | ||||
| -rw-r--r-- | libstdc++-v3/include/ext/rc_string_base.h | 2 | ||||
| -rw-r--r-- | libstdc++-v3/include/ext/sso_string_base.h | 11 |
3 files changed, 14 insertions, 7 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index d756a7e..dac9c9f 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,11 @@ +2006-10-02 Paolo Carlini <pcarlini@suse.de> + + * include/ext/rc_string_base.h (_M_compare<wchar_t>): + Protect with _GLIBCXX_USE_WCHAR_T. + * include/ext/sso_string_base.h (_M_compare<wchar_t>): + Likewise. + (__sso_string_base<>::_M_destroy): Inline. + 2006-10-02 Benjamin Kosnik <bkoz@redhat.com> * include/ext/pb_ds/detail/basic_types.hpp (comp_hash_): Remove, diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h index 3d41fe5..081194b 100644 --- a/libstdc++-v3/include/ext/rc_string_base.h +++ b/libstdc++-v3/include/ext/rc_string_base.h @@ -699,6 +699,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) return false; } +#ifdef _GLIBCXX_USE_WCHAR_T template<> inline bool __rc_string_base<wchar_t, std::char_traits<wchar_t>, @@ -709,6 +710,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) return true; return false; } +#endif _GLIBCXX_END_NAMESPACE diff --git a/libstdc++-v3/include/ext/sso_string_base.h b/libstdc++-v3/include/ext/sso_string_base.h index 7f7e2b5..5a13d40 100644 --- a/libstdc++-v3/include/ext/sso_string_base.h +++ b/libstdc++-v3/include/ext/sso_string_base.h @@ -92,7 +92,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) } void - _M_destroy(size_type) throw(); + _M_destroy(size_type __size) throw() + { _M_get_allocator().deallocate(_M_data(), __size + 1); } // _M_construct_aux is used to implement the 21.3.1 para 15 which // requires special behaviour if _InIterator is an integral type @@ -224,12 +225,6 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) template<typename _CharT, typename _Traits, typename _Alloc> void __sso_string_base<_CharT, _Traits, _Alloc>:: - _M_destroy(size_type __size) throw() - { _M_get_allocator().deallocate(_M_data(), __size + 1); } - - template<typename _CharT, typename _Traits, typename _Alloc> - void - __sso_string_base<_CharT, _Traits, _Alloc>:: _M_swap(__sso_string_base& __rcs) { // _GLIBCXX_RESOLVE_LIB_DEFECTS @@ -554,6 +549,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) return false; } +#ifdef _GLIBCXX_USE_WCHAR_T template<> inline bool __sso_string_base<wchar_t, std::char_traits<wchar_t>, @@ -564,6 +560,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx) return true; return false; } +#endif _GLIBCXX_END_NAMESPACE |
