Paolo Carlini
aa863dca8b
basic_string.tcc (basic_string::append(const basic_string&, size_type, size_type), [...]): Fully qualify min() with std::.
...
2002-12-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc
(basic_string::append(const basic_string&, size_type,
size_type), basic_string::compare(size_type, size_type,
const basic_string&), basic_string::compare(size_type,
size_type, const basic_string&, size_type, size_type),
basic_string::compare(const _CharT*), basic_string::
compare(size_type, size_type, const _CharT*),
basic_string::compare(size_type, size_type, const _CharT*,
size_type), _S_string_copy(const basic_string&, _CharT*,
typename _Alloc::size_type)): Fully qualify min() with std::.
2002-12-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc
(basic_string::_S_construct(_InIter, _InIter, const _Alloc&,
forward_iterator_tag)): Delay the declaration of __dnew,
fully qualify distance() with std::.
(basic_string::_M_replace_safe): Fully qualify distance()
with std::.
From-SVN: r59726
2002-12-02 18:53:41 +00:00
Benjamin Kosnik
5112ae3a8f
re PR libstdc++/8318 (Not all wide character based prototypes are included within #ifdef _GLIBCPP_USE_WCHAR_T)
...
2002-11-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/8318
* include/std/std_iostream.h: Tweak.
* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
* include/std/std_iomanip.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/sstream.tcc: Same.
* include/bits/fstream.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/locale_facets.tcc: Same.
From-SVN: r58720
2002-11-01 17:30:36 +00:00
John Carter
c86c54e6d1
re PR libstdc++/7961 (compare( char *) implemented incorrectly.)
...
2002-11-01 John Carter <john.carter@tait.co.nz>
PR libstdc++/7961
* include/bits/basic_string.tcc
(compare(const _CharT* __s)): Don't access __s past its length.
From-SVN: r58717
2002-11-01 15:21:17 +00:00
Paolo Carlini
085825b83b
re PR libstdc++/8347 (empty vector range used in string construction causes core dump.)
...
2002-10-27 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/8347
* include/bits/basic_string.tcc
(string::_S_construct(_InIter, _InIter, const _Alloc&,
forward_iterator_tag)): Do not throw logic error if
__beg == NULL && __end == __beg.
(string::string(const _CharT*, const _Alloc&)): Tweak.
* testsuite/21_strings/ctor_copy_dtor.cc: Add test05 from PR.
From-SVN: r58577
2002-10-27 07:35:06 +00:00
Paolo Carlini
05261e700c
2002-06-04 Paolo Carlini <pcarlini@unitus.it>
...
Gaby Dos Reis <gdr@codesourcery.com>
* include/bits/basic_string.tcc
(basic_string::_S_construct(forward_iterator_tag):
Fix typo in null pointer check.
* testsuite/21_strings/ctor_copy_dtor.cc: Add test04.
Co-Authored-By: Gabriel Dos Reis <gdr@codesourcery.com>
From-SVN: r54255
2002-06-04 18:20:38 +00:00
Benjamin Kosnik
d3a193e36c
re PR libstdc++/4164 (33 Memory Leak when using iostream)
...
2002-04-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/4164
Valgrind fixes.
* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
Call close.
(__basic_file::close): Call fflush. Correct return if fclose ok.
(__basic_file::is_open): Make const.
Change __c_file_type to __c_file.
* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
(__basic_file::is_open): Make const.
* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
(filebuf::_M_unbuf): Add.
(filebuf::_M_file): Change to non-pointer.
(filebuf::_M_allocate_pback_buffer): Remove.
* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
Change initialization list for _M_file change.
(filebuf::_M_allocate_pback_buffer): Remove.
Change _M_file usage to reflect non-pointer data member.
* config/locale/generic/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/generic/collate_members.cc: Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/generic/monetary_members.cc: Changeup data types.
Add dtors.
* config/locale/generic/numeric_members.cc: Add dtors.
* config/locale/generic/time_members.cc: Add dtors.
* config/locale/gnu/c_locale.cc: Add parameter.
* config/locale/gnu/collate_members.cc:Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/gnu/ctype_members.cc: Better error checking.
* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
* config/locale/gnu/messages_members.cc: Tweak comment.
* config/locale/gnu/monetary_members.cc: Change data types.
Add dtors.
* config/locale/gnu/numeric_members.cc: Add dtors, better error
checking.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.cc
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
bogus ctor.
* include/bits/locale_facets.h (moneypunct): Use string literals.
Don't define dtor.
(numpunct): Same.
(__timepunct): Same.
(locale::_Impl::_M_facets): Change from vector to array.
(locale::_Impl::_M_names): Change from array of strings to array
of string literals.
(locale::facet::_S_create_c_locale): Add parameter.
(locale::locale::_S_num_facets): Move to...
(locale::_Impl::_M_facets_size): Here.
* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
changes.
* include/bits/localefwd.h: (locale:🆔 :_M_id): Add member function.
(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
(locale::_Impl::_Impl(string, size_t)): Change to
(locale::_Impl::_Impl(const char*, size_t)): This.
* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
(streambuf::_S_pback_size): This.
* src/globals.cc: Add pre-allocations for "C" facets.
* src/locale-inst.cc: Remove vector instantiations.
* src/locale.cc: Remove vector include. Fixups for _M_names,
_M_facets changes.
* src/localename.cc: Same.
* include/bits/stl_vector.h: Fix odd formatting.
* include/bits/basic_string.tcc: Tweak comment.
* libsupc++/new: Make sure parameters are uglified.
* libsupc++/typeinfo: Same.
* testsuite/22_locale/num_get_members_char.cc: Fixup.
* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
* testsuite/27_io/filebuf_members.cc: Same.
From-SVN: r52345
2002-04-16 00:45:36 +00:00
Paolo Carlini
418bb88063
basic_string.h (replace(i1, i2, _CharT* k1, _CharT* k2), [...]): New specializations to optimize for the common cases of pointers and iterators.
...
2002-04-02 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
Philip Martin <philip@codematters.co.uk>
* include/bits/basic_string.h
(replace(i1, i2, _CharT* k1, _CharT* k2),
replace(i2, i2, const _CharT* k1, const _CharT* k2),
replace(i1, i2, iterator k1, iterator k2,
replace(i1, i2, const_iterator k1, const_iterator k2):
New specializations to optimize for the common cases of
pointers and iterators.
(replace(pos, n1, s, n2)): Tweak.
* include/bits/basic_string.tcc: Tweak comments.
* testsuite/21_strings/replace.cc (test04): New tests.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
Co-Authored-By: Philip Martin <philip@codematters.co.uk>
From-SVN: r51746
2002-04-02 12:07:07 +00:00
Benjamin Kosnik
fcaa810173
basic_string.tcc (string::_S_construct(_InIter, _InIter, const _Alloc&, forward_iterator_tag): Check for null.
...
2002-03-12 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_string.tcc (string::_S_construct(_InIter,
_InIter, const _Alloc&, forward_iterator_tag): Check for null.
(string::basic_string(const _CharT* __s, const _Alloc& __a)): Same.
* testsuite/21_strings/ctor_copy_dtor.cc (test01): Re-enable, now
that memory limits are in place.
(test03): Add tests.
From-SVN: r50683
2002-03-12 22:10:34 +00:00
Benjamin Kosnik
41b4d44bac
stl_alloc.h: Add extern implicit allocator instantiations.
...
2002-03-07 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_alloc.h: Add extern implicit allocator
instantiations.
* include/bits/basic_string.tcc: Tweak.
* include/bits/locale_facets.tcc: Remove default args. Add
has_facet, use_facet extern instantiations.
* src/stl-inst.cc: Add explicit instantiation.
* src/locale-inst.cc: Clean. Remove locale member template
instantiations.
* testsuite/22_locale/operators.cc (test02): Enable.
From-SVN: r50426
2002-03-08 06:05:21 +00:00
Benjamin Kosnik
3b79452813
locale_facets.tcc: Add pragma GCC system_header.
...
2002-02-16 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.tcc: Add pragma GCC system_header.
* include/bits/fstream.tcc: Same.
* include/bits/sstream.tcc: Same.
* include/bits/ostream.tcc: Same.
* include/bits/istream.tcc: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/basic_string.tcc: Same.
From-SVN: r49809
2002-02-16 19:33:43 +00:00
Benjamin Kosnik
a32e3c097e
Tune for size.
...
2002-02-15 Benjamin Kosnik <bkoz@redhat.com>
Tune for size.
* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
explicit instantiation.
(string::_Rep::_S_max_size): Same.
* include/bits/basic_string.tcc: Add extern explicit
instantiations for string, wstring.
* include/bits/basic_ios.tcc: Add extern explicit instantiations
for ios, wios.
* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
* include/bits/istream.tcc: Same, for istream, wistream.
* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
wiostream.
* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
istringstream, wistringstream, ostringstream, wostringstream,
stringstream, wstringstream.
* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
wifstream, ofstream, wofstream, fstream, wfstream.
* src/misc-inst.cc: Correct comments.
Add iomanip instantiations for wide streams.
* include/std/std_iomanip.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/std/std_streambuf.h: Correct
_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
* include/std/std_sstream.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_istream.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_streambuf.h: Add definitions for private copy
ctor and assignment operator.
* include/std/std_istream.h: Remove declared but undefined copy
ctor and assignment operator. This is taken care of in ios_base,
so adding it in the derived class as well is superfluous.
* include/std/std_ostream.h: Same.
* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.
From-SVN: r49798
2002-02-16 00:19:13 +00:00
Benjamin Kosnik
005326029f
stl_algo (__stl_threshold): Declare external.
...
2002-02-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_algo (__stl_threshold): Declare external.
(__stl_chunk_size): Same.
* include/bits/stl_bvector.h (__WORD_BIT): Same.
* include/bits/stl_tree.h (_S_rb_tree_red): Same.
(_S_rb_tree_black): Same.
* src/stl-inst.cc (__stl_threshold): Define.
(__stl_chunk_size): Same.
(__WORD_BIT): Same.
(_S_rb_tree_red): Same.
(_S_rb_tree_black): Same.
* config/io/basic_file_libio.h (__basic_file): Add declarations.
* include/bits/basic_file.h: Remove.
* config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
Declare generic types, specialization.
* config/io/basic_file_stdio.cc: Definitions.
* config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
Declare generic types.
* include/Makefile.am (bits_headers): Remove basic_file.h.
(extra_target_headers): Change basic_file_model.h to basic_file.h.
(stamp-target): Same.
* include/bits/stl_alloc.h: Tweaks.
* include/bits/localefwd.h: Same.
From-SVN: r49697
2002-02-12 04:35:58 +00:00
Paolo Carlini
c68cd521fa
2002-01-14 Paolo Carlini <pcarlini@unitus.it>
...
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.h
(replace(__pos, __n1, __s, __n2)): Optimize by avoiding
temporaries (i.e., call _M_replace_safe) when possible.
(replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2).
(replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2).
(replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n).
(replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n).
(replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2).
* include/bits/basic_string.tcc
(replace(__pos1, __n1, __str, __pos2, __n2)): Call
replace(__pos, __n1, __s, __n2).
* testsuite/21_strings/replace.cc (test03): New testcases.
* include/bits/basic_string.h (insert(__pos, __s, __n)):
Adjust comparison wrt overflow.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r48834
2002-01-14 19:04:15 +00:00
Paolo Carlini
bd1f473825
2001-12-15 Paolo Carlini <pcarlini@unitus.it>
...
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.h
(assign(__str, __pos, __n), assign(__s, __n)): Optimize
by avoiding unnecessary temporaries.
(assign(__s)): Call assign(__s, __n).
* include/bits/basic_string.tcc (_M_replace_safe): Adjust comment.
* include/bits/std_string.h: include stl_function.h.
* testsuite/21_strings/assign.cc (test02, test03): New tests.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r48053
2001-12-16 01:02:17 +00:00
Paolo Carlini
d01f347422
basic_string.tcc (_M_replace_safe): Fix typos.
...
2001-12-10 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc (_M_replace_safe): Fix typos.
* include/bits/basic_string.h: Fix typos.
From-SVN: r47847
2001-12-10 14:32:28 +00:00
Paolo Carlini
78bd50313e
basic_string.tcc (_M_replace_safe): New function.
...
2001-12-10 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.tcc (_M_replace_safe): New function.
(_M_replace(input_iterator_tag), append members): Use it.
(_M_replace(forward_iterator_tag)): Remove.
* include/bits/basic_string.h: Adjust declarations.
* src/string-inst.cc: Adjust declarations.
From-SVN: r47844
2001-12-10 13:42:01 +00:00
Paolo Carlini
cc89439188
basic_string.tcc (_M_mutate): Fix typo in the previous check in.
...
2001-12-07 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc (_M_mutate): Fix typo
in the previous check in.
From-SVN: r47754
2001-12-07 12:25:51 +00:00
Paolo Carlini
79f57f2322
basic_string.tcc (_M_mutate, _M_clone): Implement exponential growth policy to meet linear amortized time requirements...
...
2001-12-06 Paolo Carlini <pcarlini@unitus.it>
Loren J. Rittle <ljrittle@acm.org>
* include/bits/basic_string.tcc (_M_mutate, _M_clone): Implement
exponential growth policy to meet linear amortized time
requirements of the standard.
(_S_create): Adjust comment.
Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>
From-SVN: r47750
2001-12-07 09:07:55 +00:00
Paolo Carlini
6dafbab7e5
2001-11-28 Paolo Carlini <pcarlini@unitus.it>
...
Loren J. Rittle <ljrittle@acm.org>
* include/bits/basic_string.h
(basic_string::_Rep::__default_excess, _S_excess_slop):
Unused, remove.
* include/bits/basic_string.tcc: Remove dead code.
* include/bits/c++config: Remove comment.
Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>
From-SVN: r47425
2001-11-28 18:58:19 +00:00
Loren J. Rittle
2883d58bf5
basic_string.tcc (basic_string::_Rep::_S_create): Enforce allocation size blocking policy to reduce fragmentation and enhance...
...
2001-11-27 Loren J. Rittle <ljrittle@acm.org>
Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.tcc (basic_string::_Rep::_S_create):
Enforce allocation size blocking policy to reduce
fragmentation and enhance performance with common malloc
implementations.
Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>
From-SVN: r47398
2001-11-28 05:17:59 +00:00
Paolo Carlini
dcc61724f1
re PR libstdc++/4548 (When reserving a string to become smaller, program crashes)
...
2001-11-21 Paolo Carlini <pcarlini@unitus.it>
PR libstdc++/4548
* include/bits/basic_string.tcc (basic_string::reserve): Never shrink
below the current size.
* testsuite/21_strings/capacity.cc (test02): Add test.
From-SVN: r47246
2001-11-21 22:04:53 +00:00
Paolo Carlini
9a304d1766
basic_string.h: Tweaks.
...
2001-10-30 Paolo Carlini <pcarlini@unitus.it>
Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_string.h: Tweaks.
* include/bits/basic_string.tcc (string::_M_replace(iterator,
iterator, _ForwardIter, _ForwardIter, forward_iterator_tag): Fix.
* src/string-inst.cc: Tweaks, add instantiation.
* testsuite/21_strings/replace.cc (test02): Add test.
* testsuite/21_strings/assign.cc (test01): New file.
0
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r46674
2001-10-31 08:27:20 +00:00
Brendan Kehoe
ba317c5236
[multiple changes]
...
2001-08-19 Brendan Kehoe <brendan@zen.org>
* include/bits/std_complex.h: Default initialize second argument
of polar to 0, as specified in Library DR #79
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/stl_raw_storage_iter.h (operator=): Fix to call
_Construct instead of construct.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/basic_string.tcc (find_first_not_of): Take out check for
__n being non-zero, since the standard does not mandate that.
e.g., a search for "" in "" should yield position 0, not npos.
(find_last_not_of): Likewise.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/stl_bvector.h (vector<bool>::_M_range_check): Fix
to throw out_of_range, not range_error, thus sayeth $23.1.1.13.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/stl_iterator.h (reverse_iterator::current): Rename
member from _M_current, and change all uses; thus sayeth $24.4.1.1.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/stl_algo.h (partial_sort): Add missing `>' on the
template parameter _ValueType.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/std_limits.h: Clean up extra semicolons.
* include/bits/locale_facets.h: Likewise.
* include/bits/type_traits.h: Likewise.
2001-10-19 Brendan Kehoe <brendan@zen.org>
* include/bits/localefwd.h (locale::combine): Add const for lib DR 14.
* include/bits/locale_facets.tcc (locale::combine): Likewise.
From-SVN: r46353
2001-10-19 18:39:00 +00:00
Phil Edwards
31bfa17776
backport: basic_string.h: Qualify symbols with 'template'.
...
2001-07-19 Phil Edwards <pme@sources.redhat.com>
Mark Mitchell <mark@codesourcery.com>
Merge from cp-parser-branch.
* include/bits/basic_string.h: Qualify symbols with 'template'.
* include/bits/basic_string.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/sstream.tcc: Likewise.
* include/bits/std_istream.h: Likewise.
* include/bits/stl_iterator.h: Likewise.
* include/bits/streambuf.tcc: Likewise.
* src/gen-num-limits.cc: Add 'template<>' to specializations.
* src/locale.cc: Likewise.
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r44167
2001-07-20 00:09:31 +00:00
Benjamin Kosnik
3b0fd4bcdb
basic_string.h (string::compare): Adjust signatures as per DR 5.
...
2001-06-11 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/3126
* include/bits/basic_string.h (string::compare): Adjust signatures
as per DR 5.
* include/bits/basic_string.tcc: And here.
libstdc++/2346
* config/c_io_stdio.h: Remove whitespace.
* testsuite/27_io/istream_seeks.cc (test03): Add regression.
(test02): Add regression.
* testsuite/27_io/istream_seeks-3.tst: New file.
From-SVN: r43240
2001-06-12 02:30:37 +00:00
Gabriel Dos Reis
15f13f01ed
* include/bits/basic_string.tcc (operator+): Fix thinko.
...
From-SVN: r40493
2001-03-15 08:46:23 +00:00
Benjamin Kosnik
e2c094827c
Add support for -fno-exceptions.
...
2001-02-15 Benjamin Kosnik <bkoz@redhat.com>
Add support for -fno-exceptions.
* include/bits/exception_support.h: Remove.
* include/bits/basic_string.h: Remove exception_support.
(string::_M_check): Replace __OUTOFRANGE with __throw_out_of_range.
(string::at): Same.
(string::substr): Same.
* include/bits/basic_string.tcc (string::reserve): Replace
__LENGTHERROR with __throw_length_error.
(string::_S_create): Same.
(string::resize): Same.
(string::_M_replace): Same.
(string::replace): Same.
(string::copy): Replace __OUTOFRANGE with __throw_out_of_range.
(string::compare): Same.
* include/bits/stl_vector.h: Remove exception_support.
* src/Makefile.am (base_headers): Remove here.
* src/Makefile.in: Regenerate.
* include/bits/stl_range_errors.h: Remove.
* include/bits/stl_deque.h: Use __throw_range_error.
* include/bits/std_deque.h: Include functexcept.h.
* include/bits/std_vector.h: Same.
* src/Makefile.am (base_headers): Remove here.
* src/Makefile.in: Regenerate.
* include/ext/stl_bvector.h (class __BVECTOR): Use __throw_range_error.
* include/ext/bvector: Remove stl_range_errors.h
* include/bits/c++config (_GLIBCPP_USE_EXCEPTIONS): Remove.
* include/bits/functexcept.h: New file.
* src/functexcept.cc: New file. Definitions for function-based
exception routines.
* src/Makefile.am (sources): Add functexcept.cc.
* src/Makefile.in: Regenerate.
* include/bits/stl_config.h (__STL_USE_EXCEPTIONS): Wrap with
__EXCEPTIONS.
* include/bits/localefwd.h: Include functexcept.h.
* include/bits/std_iosfwd.h: Same.
* include/bits/basic_ios.h: Use __throw_ios_failure instead of
throw basic_ios::failure.
* include/bits/fstream.tcc (filebuf::_M_allocate_buffers):
Use __throw_exception_again.
(filebuf::_M_filebuf_init): Same.
* include/bits/streambuf.tcc (__copy_streambufs): Same.
* include/bits/ostream.tcc (ostream::operator<<): Same.
* include/bits/istream.tcc (istream::operator>>): Same.
* include/bits/basic_string.tcc (string::_M_mutate): Same.
(string::_S_construct): Same.
(string::_M_clone): Same.
* include/bits/locale_facets.tcc (use_facet(const locale&)): Use
__throw_bad_cast.
(num_put<_CharT, _OutIter>::do_put): Use __throw_exception_again.
* src/localename.cc (locale::_Imp::_Imp(const _Impl&, size_t): Use
__throw_exception_again.
(locale::_Imp::_Imp(string, size_t): Same.
(locale::_Imp::_M_replace_facet): Use __throw_runtime_error.
* src/locale.cc (locale::_M_coalesce): Use __throw_exception_again.
(locale::locale(const char*)): Use __throw_runtime_error.
(locale::classic): Use __throw_exception_again.
(locale::_S_normalize_category): Use __throw_runtime_error.
* src/stdexcept.cc: Remove cruft.
* libsupc++/exception_defines.h: New file.
* libsupc++/new_opnt.cc: Include exception_defines.h.
* libsupc++/vec.cc: Same.
(__cxa_vec_new2): Use __throw_exception_again.
(__cxa_vec_new3): Same.
(__cxa_vec_ctor): Same.
(__cxa_vec_delete3): Same.
(__cxa_vec_cctor): Same.
(__cxa_vec_delete2): Same.
(__cxa_vec_dtor): Same.
* libsupc++/exception_support.cc: Include exception_defines.h. Only
compile exception-handling bits if __EXCEPTIONS is defined.
Remove old ABI support.
* libsupc++/new_op.cc (new): Include exception_defines.h. Use
std::__throw_bad_alloc() instead of throw bad_alloc.
* libsupc++/Makefile.am: Add exception_defines.h.
* libsupc++/Makefile.in: Reformat.
* libsupc++/*: Format.
From-SVN: r39730
2001-02-16 00:44:44 +00:00
Benjamin Kosnik
976448273e
basic_string.h (_S_find(const _CharT* __beg, const _CharT* __end, _CharT __c): Remove.
...
2001-01-12 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/basic_string.h (_S_find(const _CharT* __beg, const
_CharT* __end, _CharT __c): Remove.
* include/bits/basic_string.tcc: Substitute traits::find for _S_find.
* include/bits/char_traits.h: Tweak.
From-SVN: r38961
2001-01-12 21:24:15 +00:00
Benjamin Kosnik
e61c3e8cde
std_cwctype.h: Include std_cwchar.h for wint_t.
...
2001-01-03 Benjamin Kosnik <bkoz@redhat.com>
* include/c_std/bits/std_cwctype.h: Include std_cwchar.h for wint_t.
* testsuite/17_intro/header_cwctype.cc (main): New file.
* src/Makefile.am (base_headers): Change.
* include/bits/std_string.h: And here.
* include/bits/string.tcc: Tweaks, move to...
* include/bits/basic_string.tcc: ...Here.
* src/string-inst.cc: Simplify, just instantiate the whole class,
not member-by-member.
From-SVN: r38679
2001-01-04 04:21:42 +00:00