aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/ext/rc_string_base.h
diff options
context:
space:
mode:
authorPaolo Carlini <paolo.carlini@oracle.com>2009-12-10 19:17:27 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2009-12-10 19:17:27 +0000
commitdf4d18ad801420200b2698b7d637f4e7d6ba2507 (patch)
tree23c754bd4901ff295a367f479745fd4349f1fd3e /libstdc++-v3/include/ext/rc_string_base.h
parentd435810e760bccf8d45f440d7fe85068fb621a2e (diff)
downloadgcc-df4d18ad801420200b2698b7d637f4e7d6ba2507.zip
gcc-df4d18ad801420200b2698b7d637f4e7d6ba2507.tar.gz
gcc-df4d18ad801420200b2698b7d637f4e7d6ba2507.tar.bz2
PR libstdc++/42261 (take 2)
2009-12-10 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/42261 (take 2) * include/bits/basic_string.h (_S_construct_aux_2(size_type, _CharT, const _Alloc&)): Add. (_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)): Call it. * include/ext/sso_string_base.h (_M_construct_aux_2(size_type, _CharT): Add. (_M_construct_aux(_Integer, _Integer, std::__true_type)): Call it. * include/ext/rc_string_base.h (_S_construct_aux_2(size_type, _CharT, const _Alloc&)): Add. (_S_construct_aux(_Integer, _Integer, const _Alloc&, __true_type)): Call it. * config/abi/pre/gnu.ver: Export basic_string::_S_construct_aux_2. * testsuite/21_strings/basic_string/cons/char/42261.cc: New. * testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise. From-SVN: r155137
Diffstat (limited to 'libstdc++-v3/include/ext/rc_string_base.h')
-rw-r--r--libstdc++-v3/include/ext/rc_string_base.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h
index 6d8c430..d1b5162 100644
--- a/libstdc++-v3/include/ext/rc_string_base.h
+++ b/libstdc++-v3/include/ext/rc_string_base.h
@@ -231,7 +231,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
static _CharT*
_S_construct_aux(_Integer __beg, _Integer __end,
const _Alloc& __a, std::__true_type)
- { return _S_construct(static_cast<size_type>(__beg), __end, __a); }
+ { return _S_construct_aux_2(static_cast<size_type>(__beg),
+ __end, __a); }
+
+ static _CharT*
+ _S_construct_aux_2(size_type __req, _CharT __c, const _Alloc& __a)
+ { return _S_construct(__req, __c, __a); }
template<typename _InIterator>
static _CharT*