Benjamin Kosnik
3d7c150e3f
Move from CPP to CXX.
...
2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
Move from CPP to CXX.
* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
* testsuite/Makefile.am: Same.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.am: Same.
* po/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Same.
* libsupc++/Makefile.in: Regenerate.
* libmath/Makefile.am: Same.
* libmath/Makefile.in: Regenerate.
* include/Makefile.am: Same.
* include/Makefile.in: Regenerate.
* src/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* acconfig.h: Same.
* configure.host: Same.
* configure.in: Same.
* configure: Regenerate.
* acinclude.m4: Same.
* aclocal.m4: Same.
* src: Change all files in this directory.
* testsuite: Same.
* include: Same, standardize include guards.
* config: Same.
* libsupc++: Same.
From-SVN: r68958
2003-07-05 04:05:45 +00:00
Doug Gregor
bdb0f0f5d2
fix basic_string::replace for integral types
...
From-SVN: r68286
2003-06-20 22:12:18 +00:00
Nathan C. Myers
ca566e4c07
Avoid multi-processor bus contention on increment/decrement-and- test of the reference count in the empty-string object...
...
2003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
Avoid multi-processor bus contention on increment/decrement-and-
test of the reference count in the empty-string object, by comparing
addresses first, and never touching the reference count of the empty-
string object.
* include/bits/basic_string.h:
(_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
members.
(_Rep::_S_empty_rep()): New accessor.
(_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
a base class _Rep_base.
(_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
(basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
since no longer must increment its refcount.
* include/bits/basic_string.tcc:
(_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
return immediately. The former might be unnecessary. The latter
prevents begin() and end() from cloning it unnecessarily.
(_S_construct(_InIterator, _InIterator, const _Alloc&,
input_iterator_tag), _S_construct(_InIterator, _InIterator,
const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
(_M_mutate): Check for the empty string and treat it as shared.
This is necessary here because _M_mutate is sometimes called with
all-zero arguments; in all other uses of _M_is_shared, the test comes
out right anyhow.
From-SVN: r67912
2003-06-13 20:59:42 +00:00
Phil Edwards
08addde65f
BUGS: Update from 2.90.8 snapshot.
...
2003-06-10 Phil Edwards <pme@gcc.gnu.org>
* docs/html/17_intro/BUGS: Update from 2.90.8 snapshot.
* docs/html/17_intro/CHECKLIST: Bring up to date with respect to
correctness of container::iterator typedefs. Fix whitespace.
* docs/html/20_util/howto.html, docs/html/ext/howto.html: Add links
to allocator docs.
* docs/html/documentation.html: Regenerate.
* include/bits/basic_string.h, include/bits/basic_string.tcc,
include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
include/bits/stl_algobase.h, include/bits/stl_bvector.h,
include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
include/bits/stl_list.h, include/bits/stl_uninitialized.h,
include/bits/stl_vector.h, include/bits/vector.tcc,
include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
Change _Iter names to _Iterator, and __pos to __position.
* include/bits/stl_relops.h, include/bits/stl_numeric.h,
include/bits/stl_multiset.h, include/bits/stl_set.h:
Remove emacs markers.
* include/bits/stl_threads.h (_STL_auto_lock): Add __unused__.
From-SVN: r67736
2003-06-10 21:52:25 +00:00
Nathan Myers
d56a88114a
2003-06-06 Nathan Myers <ncm-nospam@cantrip.org>
...
* include/bits/stl_iterator.h
(reverse_iterator::reverse_iterator()): Apply DR235: default
constructor default-initializes data member. Instantiated on a
pointer type, the member has to end up equal to zero.
From-SVN: r67559
2003-06-06 17:19:56 +00:00
Paolo Carlini
7778fa6e3b
basic_string.h (_M_fold, [...]): Constify various variables.
...
2003-06-04 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
erase(iterator), erase(iterator, iterator), c_str,
compare(const basic_string&)): Constify various variables.
* include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
_S_create, resize, _M_replace, _M_replace_safe,
append(const basic_string&), append(const basic_string&, size_type,
size_type), append(const _CharT*, size_type), append(size_type,
_CharT), operator+(const _CharT*, const basic_string&),
operator+(_CharT, const basic_string&), replace(iterator, iterator,
size_type, _CharT), find(const _CharT*, size_type, size_type),
find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
rfind(_CharT, size_type), compare(size_type, size_type,
const basic_string&), compare(size_type, size_type,
const basic_string&, size_type, size_type), compare(const _CharT*),
compare(size_type, size_type, const _CharT*), compare(size_type,
size_type, const _CharT*, size_type)): Likewise.
From-SVN: r67468
2003-06-04 22:53:05 +00:00
Jonathan Wakely
8515a6007c
basic_string.h (swap): Remove redundant template parameters from declaration of non-template member...
...
2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
* include/bits/basic_string.h (swap): Remove redundant template
parameters from declaration of non-template member function.
From-SVN: r66389
2003-05-02 16:50:53 +01:00
Phil Edwards
ad41429085
configure.in: Test for libintl.h.
...
2003-04-28 Phil Edwards <pme@gcc.gnu.org>
* configure.in: Test for libintl.h.
* include/bits/c++config: Define __N for everybody.
* include/bits/basic_string.h, include/bits/stl_bvector.h,
include/bits/stl_deque.h, include/bits/stl_vector.h,
include/std/std_bitset.h: Wrap all __throw* text with __N.
* po/Makefile.am (pot): New rule, mostly working.
* src/functexcept.cc: Call gettext on all __throw* arguments when
-fexceptions is in effect.
* po/Makefile.in, config.h.in, configure: Regenerate.
From-SVN: r66185
2003-04-28 21:03:19 +00:00
Nathan Myers
2d9d52359c
Move some basic_string members out of line because they are too big to reasonably be inline.
...
2003-04-27 Nathan Myers <ncm@cantrip.org>
Move some basic_string members out of line because
they are too big to reasonably be inline.
* include/bits/basic_string.h
(assign(const basic_string&, size_type, size_type),
assign(const _CharT*, size_type),
insert(size_type, const basic_string&, size_type, size_type),
insert(size_type, const _CharT*, size_type),
replace(size_type, size_type, const _CharT*, size_type)):
Move from here to...
* include/bits/basic_string.tcc: ...here.
From-SVN: r66132
2003-04-27 17:20:42 +00:00
Paolo Carlini
61b8da3733
basic_string.h (compare(const basic_string&)): Fully qualify min() with std::.
...
2002-12-02 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.h (compare(const basic_string&)):
Fully qualify min() with std::.
From-SVN: r59745
2002-12-02 22:15:54 +00:00
Gabriel Dos Reis
be26865df1
stl_vector.h (vector<>): Don't use a name with different meanings before and after re-evaluation in the...
...
2002-09-10 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
* include/bits/stl_vector.h (vector<>): Don't use a name with
different meanings before and after re-evaluation in the completed
scope.
* include/bits/basic_string.h (basic_string<>): Likewise.
* include/bits/stl_bvector.h (vector<bool>): Likewise.
* include/bits/stl_deque.h (std): Likewise.
* include/bits/stl_list.h (list<>): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>): Likewise.
From-SVN: r57014
2002-09-10 23:19:10 +00:00
Phil Edwards
51122a4242
acinclude.m4: Minor comment tweaks.
...
2002-08-31 Phil Edwards <pme@gcc.gnu.org>
* acinclude.m4: Minor comment tweaks.
* docs/html/makedoc.awk: New file...
* docs/html/Makefile: ...called from here...
* docs/html/documentation.html: ...to help generate this.
* docs/html/21_strings/howto.html: Prepare for new entry.
* include/bits/basic_string.h: Initial basic_stirng hook for
doxygen. Remove trailing whitespace.
* include/bits/char_traits.h: Point to onlinedocs for new entry.
* include/bits/stringfwd.h: Add doxygen hooks for string and
wstring typedefs.
From-SVN: r56711
2002-09-01 00:33:53 +00:00
Paolo Carlini
adf2e3e668
basic_string.h (replace(__pos, __n1, __s, __n2): Fix and tighten __throw_length_error check.
...
2002-04-26 Paolo Carlini <pcarlini@unitus.it>
* include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
Fix and tighten __throw_length_error check.
* testsuite/21_strings/replace.cc (test05): New.
* testsuite/21_strings/replace.cc (test02, test03, test04): Tweak.
From-SVN: r52797
2002-04-26 18:21:32 +00:00
Gabriel Dos Reis
f1e888aea0
[multiple changes]
...
2002-04-16 Paolo Carlini <pcarlini@unitus.it>
* testsuite/24_iterators/rel_ops.cc: New test.
2002-04-16 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
* include/bits/type_traits.h (__normal_iterator): Declare in
__gnu_cxx. Adjust use at global namespace.
* include/bits/stl_iterator.h (__normal_iterator): Move
definition
into __gnu_cxx::. Add more operator overloads. Tidy existing
ones.
* include/bits/basic_string.h (basic_string): Adjust use of
__normal_iterator.
* include/bits/stl_vector.h (_Alloc>): Likewise.
* src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now
here.
* src/string-inst.cc (operator==): Instantiate in __gnu_cxx.
From-SVN: r52348
2002-04-16 02:29:22 +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
663653eb3a
basic_ios.h (basic_ios::_M_exception): Move.
...
2002-04-01 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/3129
* include/bits/basic_ios.h (basic_ios::_M_exception): Move.
(basic_ios::_M_streambuf_state): Move.
* include/bits/ios_base (ios_base): To here.
* include/bits/ios_base.h (ios_base::_S_local_words): To
_S_local_word_size.
(ios_base::_M_word_array): To _M_local_word.
(ios_base::_M_words_limit): To _M_word_size.
(ios_base::_M_words): To _M_word.
Comment.
* include/bits/basic_ios.tcc: Adjust.
* src/ios.cc (ios_base::_M_grow_words): Tweak.
* testsuite/27_io/ios_base_storage.cc: Add tests.
libstdc++/5207
Kenny Simpson <theonetruekenny@yahoo.com>
* include/bits/ios_base.h: Fix.
Richard Henderson <rth@redhat.com>
* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
last change.
* include/bits/basic_string.h: Tweak formatting.
From-SVN: r51695
2002-04-01 18:39:37 +00:00
Phil Edwards
037cfe71e0
user.cfg.in: Also document deprecated entries.
...
2002-03-06 Phil Edwards <pme@gcc.gnu.org>
* docs/doxygen/user.cfg.in: Also document deprecated entries.
* docs/html/Makefile: Example rule to rebuild porting-howto.html.
* docs/html/17_intro/howto.html: "gcc"->"GCC" changes, when
referring to the collection as a whole. New section on which macros
can be redefined by the user.
* docs/html/19_diagnostics/howto.html: Update note for concepts.
* docs/html/20_util/howto.html: Update link to SGI.
* docs/html/faq/index.html: Update snapshot versions. New entry
on why g++ (but not gcc) must currently predefine certain macros.
* docs/html/faq/index.txt: Regenerated.
* include/bits/basic_string.h (basic_string::_S_construct): Fix
names in declaration.
(basic_string::compare): These are no longer optional.
* include/bits/ostream.tcc: Tweak closing brace placement.
* include/bits/stl_algo.h: Lots of initial doxygen comment hooks.
* include/std/std_sstream.h: Fix typo in comment.
* include/bits/locale_facets.tcc: Remove unneeded header inclusion.
* src/locale.cc: Likewise.
From-SVN: r50376
2002-03-06 21:22:56 +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
bf95248579
basic_string.h (insert(__pos, __s, __n)): Optimize by avoiding temporaries and working in-place when possible.
...
2001-12-28 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.h (insert(__pos, __s, __n)):
Optimize by avoiding temporaries and working in-place when possible.
(insert(__pos1, __str)): Call insert(__pos1, __str, __pos2, __n).
(insert(__pos1, __str, __pos2, __n)): Call insert(__pos, __s, __n).
* testsuite/21_strings/insert.cc (test02): New testcases.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r48345
2001-12-28 14:00:18 +00:00
Paolo Carlini
c448ca845c
basic_string.h (assign(__str, __pos, __n)): Call assign(__s, __n).
...
2001-12-18 Paolo Carlini <pcarlini@unitus.it>
Nathan Myers <ncm@cantrip.org>
* include/bits/basic_string.h (assign(__str, __pos, __n)):
Call assign(__s, __n).
(assign(__s, __n)): Terminate the string with _S_terminal.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r48151
2001-12-18 12:06:01 +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
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
Phil Edwards
729e3d3f01
c_io_stdio.h: Correct grammar in comments.
...
2001-11-02 Phil Edwards <pme@gcc.gnu.org>
* config/io/c_io_stdio.h: Correct grammar in comments.
* docs/doxygen/Intro.3: Expand "top-level" man page.
* docs/doxygen/doxygroups.cc: New module definitions (comments).
* docs/doxygen/mainpage.doxy: Tweaks.
* docs/doxygen/run_doxygen: Update Doxygen version, massage man pages.
Add @file hooks so that headers are considered to be documented.
* include/bits/basic_ios.h, include/bits/basic_file.h,
include/bits/basic_string.h, include/bits/boost_concept_check.h,
include/bits/char_traits.h, include/bits/codecvt.h,
include/bits/concept_check.h, include/bits/cpp_type_traits.h,
include/bits/fpos.h, include/bits/gslice.h, include/bits/gslice_array.h,
include/bits/indirect_array.h, include/bits/ios_base.h,
include/bits/locale_facets.h, include/bits/localefwd.h,
include/bits/mask_array.h, include/bits/pthread_allocimpl.h,
include/bits/slice.h, include/bits/slice_array.h,
include/bits/std_algorithm.h, include/bits/std_bitset.h,
include/bits/std_complex.h, include/bits/std_deque.h,
include/bits/std_fstream.h, include/bits/std_functional.h,
include/bits/std_iomanip.h, include/bits/std_ios.h,
include/bits/std_iosfwd.h, include/bits/std_iostream.h,
include/bits/std_istream.h, include/bits/std_iterator.h,
include/bits/std_limits.h, include/bits/std_list.h,
include/bits/std_locale.h, include/bits/std_map.h,
include/bits/std_memory.h, include/bits/std_numeric.h,
include/bits/std_ostream.h, include/bits/std_queue.h,
include/bits/std_set.h, include/bits/std_sstream.h,
include/bits/std_stack.h, include/bits/std_streambuf.h,
include/bits/std_string.h, include/bits/std_utility.h,
include/bits/std_valarray.h, include/bits/std_vector.h,
include/bits/stl_algo.h, include/bits/stl_alloc.h,
include/bits/stl_bvector.h, include/bits/stl_construct.h,
include/bits/stl_deque.h, include/bits/stl_heap.h,
include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
include/bits/stl_iterator_base_types.h, include/bits/stl_list.h,
include/bits/stl_map.h, include/bits/stl_multimap.h,
include/bits/stl_multiset.h, include/bits/stl_numeric.h,
include/bits/stl_pair.h, include/bits/stl_pthread_alloc.h,
include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
include/bits/stl_relops.h, include/bits/stl_set.h,
include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
include/bits/stl_threads.h, include/bits/stl_tree.h,
include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
include/bits/stringfwd.h, include/bits/type_traits.h,
include/bits/valarray_array.h, include/bits/valarray_meta.h:
Add hooks, tweak comments only.
* include/bits/stl_algobase.h (swap, min, iter_swap): Also
document these functions.
* include/bits/stl_function.h: Tweak link comments.
From-SVN: r46717
2001-11-02 17:38:11 +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
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
Phil Edwards
d53d7f6e61
algo.h: Use std not __STD.
...
2001-03-04 Phil Edwards <pme@sources.redhat.com>
http://gcc.gnu.org/ml/libstdc++/2001-03/msg00015.html
* include/backward/algo.h: Use std not __STD. Remove unneeded
macros and "never happens" code. Adjust to C++STYLE guidelines.
* include/backward/algobase.h: Likewise.
* include/backward/alloc.h: Likewise.
* include/backward/bvector.h: Likewise.
* include/backward/deque.h: Likewise.
* include/backward/function.h: Likewise.
* include/backward/hash_map.h: Likewise.
* include/backward/hash_set.h: Likewise.
* include/backward/hashtable.h: Likewise.
* include/backward/heap.h: Likewise.
* include/backward/iterator.h: Likewise.
* include/backward/list.h: Likewise.
* include/backward/map.h: Likewise.
* include/backward/multimap.h: Likewise.
* include/backward/multiset.h: Likewise.
* include/backward/pair.h: Likewise.
* include/backward/rope.h: Likewise.
* include/backward/set.h: Likewise.
* include/backward/slist.h: Likewise.
* include/backward/stack.h: Likewise.
* include/backward/strstream: Likewise.
* include/backward/tempbuf.h: Likewise.
* include/backward/tree.h: Likewise.
* include/backward/vector.h: Likewise.
* include/bits/basic_ios.h: Likewise.
* include/bits/basic_ios.tcc: Likewise.
* include/bits/basic_string.h: Likewise.
* include/bits/c++config: Likewise.
* include/bits/concept_checks.h: Likewise.
* include/bits/fpos.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/functexcept.h: Likewise.
* include/bits/ios_base.h: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/mask_array.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/pthread_allocimpl.h: Likewise.
* include/bits/sbuf_iter.h: Likewise.
* include/bits/slice.h: Likewise.
* include/bits/slice_array.h: Likewise.
* include/bits/sstream.tcc: Likewise.
* include/bits/std_bitset.h: Likewise.
* include/bits/std_fstream.h: Likewise.
* include/bits/std_iomanip.h: Likewise.
* include/bits/std_ios.h: Likewise.
* include/bits/std_istream.h: Likewise.
* include/bits/std_iterator.h: Likewise.
* include/bits/std_memory.h: Likewise.
* include/bits/std_ostream.h: Likewise.
* include/bits/std_sstream.h: Likewise.
* include/bits/std_streambuf.h: Likewise.
* include/bits/std_string.h: Likewise.
* include/bits/std_valarray.h: Likewise.
* include/bits/stl_algo.h: Likewise.
* include/bits/stl_algobase.h: Likewise.
* include/bits/stl_alloc.h: Likewise.
* include/bits/stl_construct.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_function.h: Likewise.
* include/bits/stl_heap.h: Likewise.
* include/bits/stl_iterator.h: Likewise.
* include/bits/stl_iterator_base.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_numeric.h: Likewise.
* include/bits/stl_pair.h: Likewise.
* include/bits/stl_pthread_alloc.h: Likewise.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_raw_storage_iter.h: Likewise.
* include/bits/stl_relops.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/stl_stack.h: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/stl_threads.h: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/streambuf.tcc: Likewise.
* include/bits/type_traits.h: Likewise.
* include/bits/valarray_meta.h: Likewise.
* include/ext/bvector: Likewise.
* include/ext/hash_map: Likewise.
* include/ext/hash_set: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/slist: Likewise.
* include/ext/stl_bvector.h: Likewise.
* include/ext/stl_hash_fun.h: Likewise.
* include/ext/stl_hashtable.h: Likewise.
* include/ext/stl_rope.h: Likewise.
* src/complex_io.cc: Likewise.
* src/ios.cc: Likewise.
* src/locale-inst.cc: Likewise.
* src/locale.cc: Likewise.
* src/localename.cc: Likewise.
* src/misc-inst.cc: Likewise.
* src/stdexcept.cc: Likewise.
* src/stl-inst.cc: Likewise.
* src/strstream.cc: Likewise.
* src/valarray-inst.cc: Likewise.
From-SVN: r40239
2001-03-04 21:34:02 +00:00
Gabriel Dos Reis
b0a85b861e
Add #pragma system_header to header files.
...
From-SVN: r39896
2001-02-19 18:52:25 +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
0c952af328
Clean up stdexcept.
...
2001-02-07 Benjamin Kosnik <bkoz@redhat.com>
Clean up stdexcept.
* include/bits/stringfwd.h: New file.
* include/bits/stl_string_fwd.h: Remove.
* include/bits/localefwd.h: Remove declaration for allocator.
* include/bits/std_iosfwd: Same.
* include/bits/std_string.h: Include it.
* include/bits/std_ios.h: Remove include.
* include/bits/basic_string.h: Tweak.
* libsupc++/new: Format.
* src/Makefile.am (base_headers): Add stringfwd.h, remove
stl_string_fwd.h
* src/Makefile.in: Regenerate.
* include/bits/std_stdexcept.h: Rewrite.
* src/stdexcept.cc: Same.
From-SVN: r39526
2001-02-07 20:26:24 +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
Mark Mitchell
4f12dd3c7d
mkcheckin.in: Move check for bash version 2 later in the file.
...
* mkcheckin.in: Move check for bash version 2 later in the file.
* include/bits/basic_string.h (basic_string::_Rep::_S_max_size):
Make it const.
(basic_string::_Rep::_S_terminal): Likewise.
* include/bits/string.tcc (basic_string::_Rep::_S_max_size):
Likewise.
(basic_string::_Rep::_S_terminal): Likewise.
From-SVN: r37490
2000-11-16 01:03:20 +00:00
Benjamin Kosnik
725dc051ca
include: New directory.
...
2000-10-05 Benjamin Kosnik <bkoz@cygnus.com>
* include: New directory.
* include/backward: New directory.
* include/bits: New directory.
* include/ext: New directory.
* include/std: New directory.
* include/*/*: Populate.
* src/complex.cc: Adjust include of mathconf.
* mkc++config (BASE_H): Add include.
* src/Makefile.am: Support for topleve sources include directory.
(INCLUDES): Add LIBMATH_INCLUDE.
* src/Makefile.in: Regenerate.
* math/Makefile.am (INCLUDES): Append /include.
* math/Makefile.in: Regenerate.
* libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
* libio/Makefile.in: Regenerate.
From-SVN: r36723
2000-10-05 11:27:02 +00:00