blob: 3448363ee086587a0823d2e38b0ddf0101e7d95a [file] [log] [blame]
2002-12-30 Loren J. Rittle <>
* src/ Resolve non-portable use of $<.
* src/ Rebuilt.
2002-12-30 Phil Edwards <>
* (GLIBCPP_ENABLE_CXX_FLAGS): Do not pass arguments,
let the defaults work.
* configure: Regenerate.
2002-12-30 Phil Edwards <>
* acinclude.m4: Remove trailing whitespace.
* aclocal.m4, configure: Regenerate.
2002-12-29 Phil Edwards <>
* include/std/std_bitset.h: Better comments.
2002-12-28 Joseph S. Myers <>
* docs/html/17_intro/porting.texi: Use @copying.
* docs/html/17_intro/porting.html: Regenerate.
2002-12-27 Mark Mitchell <>
* config/locale/gnu/
(ctype<wchar_t>::_M_convert_to_wmask): Remove stray semicolon.
* config/locale/gnu/
(moneypunct<wchar_t, true>::_M_initialize_moneypunct): Avoid
defining classes in static_cast.
(moneypunct<wchar_t, false>::_M_initialize_moneypunct): Likewise.
* config/locale/gnu/
(numpunct<wchar_t, false>::_M_initialize_numpunct): Likewise.
* include/bits/stl_deque.h (operator-): Insert typename where
* include/bits/stl_multiset.h (multiset): Remove stray semicolon.
* include/bits/stl_set.h (set): Likewise.
* include/bits/valarray_meta.h (bits/slice_array.h): Include it.
* include/std/std_fstream.h (basic_fstream::open): Use this-> to
avoid Koenig lookup.
(basic_fstream::close): Likewise.
* libsupc++/new (operator delete): Remove stray semicolon.
* libsupc++/new (operator delete[]): Likewise.
* libsupc++/ Likewise.
* src/stdexcept.c (logic_error::~logic_error): Likewise.
(runtime_error::~runtime_error): Likewise.
2002-12-26 Phil Edwards <>
* libsupc++/exception: Add comment (mistakenly skipped).
2002-12-26 Phil Edwards <>
* include/std/std_bitset.h (_Base_bitset::_M_do_left_shift,
_Base_bitset::_M_do_right_shift): Expect a non-zero shift.
(bitset::operator<<=, bitset::operator>>=): When shifting more bits
than are in the bitset, zero memory rather than segfault.
(operator>>(basic_istream,bitset): Only call setstate once, after
all work has been done.
* testsuite/23_containers/ (test03): New test.
* testsuite/23_containers/ (test02): New test.
2002-12-26 Phil Edwards <>
* libsupc++/ (writestr): Use __builtin_strlen.
2002-12-26 Phil Edwards <>
* libsupc++/ Add comment about embedded systems.
* docs/html/debug.html: Cosmetic and HTML changes. Point to
verb-term notes.
* docs/html/documentation.html: Link to the FAQ.
* docs/html/17_intro/howto.html: Mention use of isatty(3).
* docs/html/19_diagnostics/howto.html: Update verb-term description.
2002-12-25 Phil Edwards <>
* src/ Move to...
* libsupc++/ New file. Replace fprintf with
writestr macro. Slight reword to explanatory text.
* libsupc++/ (__cxxabiv1::__terminate_handler,
__cxxabiv1::__unexpected_handler): Break definitions out to...
* libsupc++/ (new file), and...
* libsupc++/ (new file). Initialize
__terminate_handler with __gnu_cxx::__verbose_terminate_handler
instead of std::abort.
* libsupc++/ (sources), src/ (sources): Update.
* libsupc++/, src/ Regenerate.
2002-12-23 Danny Smith <>
* config/io/ (__basic_file::_M_open_mode):
Don't use O_NONBLOCK if it is not defined.
(__basic_file::open): Don't use fcntl either.
2002-12-20 Sylvain Pion <>
* include/bits/stl_deque.h: Fix typo.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_vector.h: Same.
2002-12-18 Benjamin Kosnik <>
* docs/html/documentation.html: Add link for debug.html.
* docs/html/debug.html: New.
2002-12-18 Kaveh R. Ghazi <>
* testsuite/23_containers/ (test03): Move ...
* testsuite/23_containers/ as a new file.
Pass in -lmalloc for irix6.
* testsuite/27_io/ Pass in -lmalloc for irix6.
2002-12-18 Jason Merrill <>
* src/ (__verbose_terminate_handler): Send
diagnostics to stderr.
2002-12-18 Ulrich Weigand <>
* Define with_target_subdir and with_build_subdir
variables in AC_OUTPUT call.
* configure: Regenerate.
2002-12-16 Paolo Carlini <>
PR libstdc++/8949
* include/std/std_limits.h
(struct numeric_limits<short>,
struct numeric_limits<unsigned short>,
struct numeric_limits<int>,
struct numeric_limits<unsigned int>,
struct numeric_limits<long>,
struct numeric_limits<unsigned long>,
struct numeric_limits<long long>,
struct numeric_limits<unsigned long long>): According
to,53 and,1 is_iec559 shall be false.
* testsuite/18_support/ Add test04.
2002-12-16 Benjamin Kosnik <>
* (GLIBCPP_ENABLE_DEBUG): Default to none.
conditional if --enable-debug is yes. Rework.
* aclocal.m4: Regenerate.
* libio/ Remove DEBUG_FLAGS.
* libio/ Regenerate.
* libsupc++/ Remove DEBUG_FLAGS.
* libsupc++/ Regenerate.
* docs/html/configopts.html: Add docs for --enable-debug,
2002-12-16 Benjamin Kosnik <>
Correct dependency tracking, build warts.
* Correct repeated AC_OUTPUT thrashing by
* configure: Regenerate.
* include/ (stamp-target): Stamp in top_builddir.
* include/ Regenerate.
* src/ ( New rule.
( Same.
( Same.
( Same.
( Same.
( Same.
( Same.
( Same.
( Same.
* src/ Regenerate.
* acinclude.m4 (CCTYPE_CHAR_CC): Remove.
(CCTYPE_CC): Same.
(CMONEY_CC): Same.
(CTIME_CC): Same.
* aclocal.m4: Regenerate.
* src/ (libstdc___la_LIBADD): Use top_builddir
for convenience libraries.
(version_arg): Rename to libstdc++.ver.
(libstdc___la_DEPENDENCIES): Remove, add
libstdc++-symbol.ver as a dependency.
(libstdc++-symbol.ver): Add rule.
* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to
* include/ (target_headers_noinst): New.
(stamp-target): Add CLOCALE_INTERNAL_H.
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link
* config/locale/gnu/ Modify c++locale_internal.h
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/locale/generic/ Remove.
2002-12-11 Paolo Carlini <>
PR libstdc++/8887
* config/locale/generic/
(__timepunct<char>::_M_initialize_timepunct): Fix typos
in _M_date_format and _M_date_era_format string literals.
2002-12-10 Mark Mitchell <>
* libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
(__cxa_bad_typeid): Likewise.
(__cxa_atexit): Likewise.
(__cxa_finalize): Likewise.
2002-12-09 Gabriel Dos Reis <>
* include/bits/slice_array.h (slice_array<>::operator=): Fix typo.
2002-12-09 Mark Mitchell <>
* libsupc++/cxxabi.h (__cxa_pure_virtual): Declare it.
2002-12-05 Benjamin Kosnik <>
* testsuite/ Add GLIBCPP_3.2.2.
2002-12-04 Paolo Carlini <>
* config/locale/generic/ (codecvt::do_out
(state_type&, const intern_type*, const intern_type*,
const intern_type*&, extern_type*, extern_type*, extern_type*&),
codecvt::do_in(state_type&, const extern_type*, const extern_type*,
const extern_type*&, intern_type*, intern_type*, intern_type*&)):
Fully qualify min() with std::.
* config/locale/gnu/ Ditto.
* locale/ieee_1003.1-2001/codecvt_specializations.h
(codecvt::do_length(const state_type&, const extern_type*,
const extern_type*, size_t): Ditto.
* include/bits/deque.tcc
(_M_range_initialize(_ForwardIterator, _ForwardIterator,
forward_iterator_tag), deque::_M_range_insert_aux(iterator,
_ForwardIterator, _ForwardIterator, forward_iterator_tag),
deque::_M_reallocate_map(size_type, bool)): Fully qualify
distance() and max() with std::.
* include/bits/fstream.tcc (basic_filebuf::seekoff(off_type,
ios_base::seekdir, ios_base::openmode)): Fully qualify max()
with std::.
* include/bits/istream.tcc (basic_istream::ignore(streamsize,
int_type), basic_istream::readsome(char_type*, streamsize)):
Fully qualify min() with std::.
* include/bits/locale_facets.tcc (time_get::_M_extract_name
(iter_type&, iter_type&, int&, const _CharT**, size_t,
ios_base::iostate&)): Ditto.
* include/bits/sstream.tcc (basic_stringbuf::overflow(int_type)):
Fully qualify max() with std::.
* include/bits/stl_algo.h (__inplace_stable_partition(_ForwardIter
__first, _ForwardIter, _Predicate, _Distance),
__stable_partition_adaptive(_ForwardIter, _ForwardIter, _Predicate,
_Distance, _Pointer, _Distance), __merge_sort_loop(_RandomAccessIter1,
_RandomAccessIter1, _RandomAccessIter2, _Distance),
__merge_sort_loop(_RandomAccessIter1, _RandomAccessIter1,
_RandomAccessIter2, _Distance, _Compare), lower_bound(_ForwardIter,
_ForwardIter, const _Tp&), lower_bound(_ForwardIter, _ForwardIter,
const _Tp&, _Compare), upper_bound(_ForwardIter, _ForwardIter,
const _Tp&), upper_bound(_ForwardIter, _ForwardIter, const _Tp&,
_Compare), equal_range(_ForwardIter, _ForwardIter, const _Tp&),
equal_range(_ForwardIter, _ForwardIter, const _Tp&, _Compare),
__merge_without_buffer(_BidirectionalIter, _BidirectionalIter,
_BidirectionalIter, _Distance, _Distance), __merge_without_buffer
(_BidirectionalIter, _BidirectionalIter, _BidirectionalIter,
_Distance, _Distance, _Compare), __rotate_adaptive(_BidirectionalIter1,
_BidirectionalIter1, _BidirectionalIter1, _Distance, _Distance,
_BidirectionalIter2, _Distance), __merge_adaptive(_BidirectionalIter,
_BidirectionalIter, _BidirectionalIter, _Distance, _Distance,
_Pointer, _Distance), __merge_adaptive(_BidirectionalIter,
_BidirectionalIter, _BidirectionalIter, _Distance, _Distance,
_Pointer, _Distance, _Compare), inplace_merge(_BidirectionalIter,
_BidirectionalIter, _BidirectionalIter), inplace_merge
(_BidirectionalIter, _BidirectionalIter, _BidirectionalIter,
_Compare), __find_end(_BidirectionalIter1, _BidirectionalIter1,
_BidirectionalIter2, _BidirectionalIter2, bidirectional_iterator_tag,
bidirectional_iterator_tag), __find_end(_BidirectionalIter1,
_BidirectionalIter1, _BidirectionalIter2, _BidirectionalIter2,
bidirectional_iterator_tag, bidirectional_iterator_tag,
_BinaryPredicate)): Fully qualify distance() and min() with std::.
* include/bits/stl_algobase.h (lexicographical_compare
(const unsigned char*, const unsigned char*, const unsigned char*,
const unsigned char*)): Fully qualify min() with std::.
* include/bits/stl_bvector.h (_M_insert_range(iterator,
_ForwardIterator, _ForwardIterator, forward_iterator_tag),
_M_assign_aux(_ForwardIterator, _ForwardIterator,
_M_initialize_range(_ForwardIterator, _ForwardIterator,
forward_iterator_tag), _M_fill_insert(iterator, size_type, bool)):
Fully qualify distance() and max() with std::.
* include/bits/stl_deque.h
_M_assign_aux(_ForwardIterator, _ForwardIterator,
Ditto. * include/bits/stl_list.h (size()): Fully qualify
distance() with std::.
* include/bits/stl_tempbuf.h (_Temporary_buffer::_Temporary_buffer
(_ForwardIterator, _ForwardIterator)): Ditto.
* include/bits/stl_tree.h (_Rb_tree::erase(const _Key&),
_Rb_tree::count(const _Key&)): Ditto.
* include/bits/stl_vector.h (_M_range_initialize(_ForwardIterator,
_ForwardIterator, forward_iterator_tag)): Ditto.
* include/bits/streambuf.tcc (basic_streambuf::xsgetn(char_type*,
streamsize), basic_streambuf::xsputn(const char_type*, streamsize)):
Fully qualify min() with std::.
* include/bits/vector.tcc (_M_assign_aux(_ForwardIter, _ForwardIter,
forward_iterator_tag), _M_fill_insert(iterator, size_type,
const value_type&), _M_range_insert(iterator, _ForwardIterator,
_ForwardIterator, forward_iterator_tag)): Fully qualify max() and
distance() with std::.
* include/std/std_bitset.h (bitset::_M_copy_from_string
(const basic_string&, size_t, size_t)): Fully qualify min() with std::.
* include/std/std_streambuf.h (_M_pback_create()): Ditto.
* include/std/std_complex.h (abs(const complex<_Tp>&)):
Fully qualify max() with std::.
* include/std/std_sstream.h (str()): Ditto.
* src/ (codecvt::do_out(state_type&, const intern_type*,
const intern_type*, const intern_type*&, extern_type*, extern_type*,
extern_type*&), codecvt::do_in(state_type&, const extern_type*,
const extern_type*, const extern_type*&, intern_type*, intern_type*,
intern_type*&), codecvt::do_length(const state_type&,
const extern_type*, const extern_type*, size_t), do_length
(const state_type&, const extern_type*, const extern_type*,
size_t)): Fully qualify min() with std::.
* src/ (strstreambuf::strstreambuf(streamsize),
strstreambuf::overflow(int_type)): Fully qualify max() with std::.
2002-12-02 Paolo Carlini <>
* include/bits/basic_string.h (compare(const basic_string&)):
Fully qualify min() with std::.
2002-12-02 Benjamin Kosnik <>
* (libtool_VERSION): Update to 5:2:0.
* configure: Regenerate.
2002-12-02 Paolo Carlini <>
* 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 <>
* 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::.
2002-11-28 Phil Edwards <>
PR libstdc++/8716
* testsuite/21_strings/ (test05): Also test
the NULL-pointer, zero-size case.
2002-11-28 Jonathan Wakely <>
* docs/html/faq/index.html: Add tip about a namespace for extensions.
2002-11-28 Paolo Carlini <>
Nathan Myers <>
* src/
(locale::_Impl::_Impl(const char*, size_t)):
Improve previous fix for the strtok vs MT issue.
2002-11-28 Paolo Carlini <>
* config/locale/gnu/ (locale::_S_categories):
Reorder the categories to match that of glibc's setlocale(LC_ALL, ""))
* config/locale/generic/ (locale::_S_categories): Ditto.
* testsuite/22_locale/ (test04): Tweak.
2002-11-25 Benjamin Kosnik <>
* testsuite/ Add CXXABI_1.2.1 as compatible.
* config/linker-map.gnu: Version __cxa_guard_acquire,
__cxa_guard_release, __cxa_guard_abort in CXXABI_1.2.1.
2002-11-25 Paolo Carlini <>
Nathan Myers <>
* src/
(locale::_Impl::_Impl(const char*, size_t)):
Avoid strtok for thread safety.
2002-11-25 Stephen M. Webb <>
* testsuite/testsuite_allocator.h: New file.
* testsuite/ New file.
* testsuite/ Added testsuite_allocator to test library.
* testsuite/testsuite_hooks.h: Added more detailed tracker objects
gnu_copy_constructor, gnu_assignment_operator, and gnu_destructor.
* testsuite/ Added new static objects definitions.
* testsuite/23_containers/ Added reserve() tests.
* testsuite/23_containers/ Added a plethora of tests.
* testsuite/23_containers/ Added a slew of new tests.
2002-11-25 Mark Mitchell <>
* libsupc++/ (sources): Add
* libsupc++/ Regenerated.
* libsupc++/cxxabi.h (__cxa_guard_acquire): New function.
(__cxa_guard_release): Likewise.
(__cxa_guard_abort): Likewise.
* libsupc++/ New file.
2002-11-25 Wolfgang Bangerth <>
* include/std/std_complex.h
(operator<<(basic_ostream&, const complex&)): Prefer 'x'
to "x" for efficiency sake.
* src/ (locale::locale(const char*)): Ditto.
2002-11-24 Paolo Carlini <>
* src/ (locale::locale(const char*)):
Trivial cosmetic tweaks.
2002-11-22 Laszlo Ersek <>
Paolo Carlini <>
PR libstdc++/8645
* include/bits/stl_tree.h (_Rb_tree_rebalance_for_erase):
Don't check that __w->_M_left != 0 and __w->_M_right != 0
when they can't be otherwise.
2002-11-21 Phil Edwards <>
* docs/html/documentation.html: Fix broken/thinko'd URL.
2002-11-21 Phil Edwards <>
* docs/doxygen/run_doxygen: Tighter search expression for sed.
* docs/doxygen/ Handle the case of good headers.
2002-11-21 Phil Edwards <>
* acinclude.m4: Uniform formatting.
* Warn when generic atomicity.h is used.
* Fix comment.
* aclocal.m4, configure: Regenerate.
2002-11-21 Phil Edwards <>
* include/bits/streambuf.tcc (basic_streambuf::sputbackc): Prefix
"this->" to call to pbackfail.
2002-11-21 Phil Edwards <>
* docs/doxygen/style.css: Update.
* docs/doxygen/ Update.
* docs/html/documentation.html: Regenerate.
* docs/html/17_intro/howto.html: Tweak I/O sentry entry.
* docs/html/27_io/howto.html: New section on headers.
* docs/html/faq/index.html: Add i386 threading entry.
* docs/html/faq/index.txt: Regenerate.
* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
Import R23.
2002-11-21 Phil Edwards <>
* docs/doxygen/TODO: Note change in clause 27 docs.
* include/bits/basic_ios.h, include/bits/fpos.h,
include/bits/ios_base.h, include/bits/stl_deque.h,
include/bits/stl_iterator_base_types.h, include/std/std_fstream.h,
include/std/std_iomanip.h, include/std/std_iosfwd.h,
include/std/std_iostream.h, include/std/std_istream.h,
include/std/std_ostream.h, include/std/std_sstream.h,
include/std/std_streambuf.h: Doxygenate all I/O entities.
2002-11-20 Benjamin Kosnik <>
Jonathan Lennox <>
* include/bits/streambuf.tcc (__copy_streambufs):
Revert previous fix for the interactive half of
libstdc++/6745, use _M_buf_size_opt to set dynamically
the correct buffer size.
2002-11-20 Jonathan Wakely <>
* docs/html/21_strings/howto.html: Fix example code, cite Gaby's
explanation of "<unknown type>" error with toupper/tolower.
* docs/html/22_locale/howto.html: Be more consistent with
example in 21_strings.
2002-11-19 John Gustafsson <>
* docs/html/20_util/howto.html: Fix typo.
2002-11-18 Jonathan Lennox <>
* include/bits/streambuf.tcc (__copy_streambufs): verify
__sbin->gptr() + __bufsize < __sbin->egptr() before using.
* testsuite/27_io/ (test_buffer_4): Add.
(test05): Use test_buffer_4. Delete unused ostringstream
2002-11-18 Paolo Carlini <>
PR libstdc++/6745 (continued)
* include/bits/streambuf.tcc (__copy_streambufs):
Deal with interactive input by using isatty as in the
fix for libstdc++/8399.
2002-11-17 Jakub Jelinek <>
* config/linker-map.gnu: Export _S_construct even if size_t is
unsigned long. Collapse std::codecvt<char>::codecvt(size_t)
and std::codecvt<wchar_t>::codecvt(size_t) into one export pattern.
2002-11-15 Benjamin Kosnik <>
Gabriel Dos Reis <>
PR libstdc++/8230
* include/bits/stl_alloc.h: Use builtin_expect for the most
obvious limit checks.
(__default_alloc_template::allocate): Check for null, throw
* include/bits/vector.tcc: Formatting tweaks.
* include/bits/stl_vector.h: Same.
* testsuite/20_util/ (test02): Add.
* testsuite/23_containers/ (test03): Add.
2002-11-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* src/ [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h.
2002-11-15 Paolo Carlini <>
Loren J. Rittle <>
PR libstdc++/8399
* acinclude.m4
check for unistd.h functions.
(GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty
in unistd.h.
* Call here.
* src/ (ios_base::Init::_S_ios_create(bool)):
Use _GLIBCPP_HAVE_ISATTY: ifdef, in case of interactive
input __in_size = 1 even when sync_with_stdio is false;
otherwise fall back to __in_size = 1.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
2002-11-13 Benjamin Kosnik <>
* acconfig.h (HAVE_DRAND48): Add.
* Regenerate.
* configure: Regenerate.
2002-11-13 John David Anglin <>
* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define
on hppa when there is no weak support.
2002-11-13 Benjamin Kosnik <>
PR libstdc++/8230
* include/bits/vector.tcc (vector::reserve): Throw length_error if
requested size is bigger than max_size().
* include/bits/stl_bvector.h (vector<bool>::reserve): Same.
* testsuite/23_containers/ (test02): Add.
2002-11-13 Benjamin Kosnik <>
* config/linker-map.gnu: Export all _S_construct.
2002-11-13 Loren J. Rittle <>
PR libstdc++/7445
* src/ (std::locale::classic()): Weaken locking protocol.
2002-11-13 Jonathan Wakely <>
* docs/html/install.html, docs/html/22_locale/locale.html: HTML fix.
2002-11-11 Benjamin Kosnik <>
PR libstdc++/6746
* include/bits/fstream.tcc (filebuf::open): Set input pointers.
* config/io/ (__basic_file::_M_open_mode): Set
__p_mode as well.
(__basic_file::open): Set to non-block for input.
* testsuite/27_io/ (test12): Add.
(test13): Same.
2002-11-11 Jonathan Wakely <>
* docs/html/17_intro/howto.html: Make "chapter 22 notes" a link.
* docs/html/faq/index.html: Mention that GCC ships with a newer
version of the library than the last snapshot. Make "see below" a
link. Add missing <html> tag.
* docs/html/faq/index.txt: Regenerate.
* docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
docs/html/27_io/howto.html, docs/html/ext/howto.html,
docs/html/ext/sgiexts.html: Add missing <html> tag.
2002-11-07 Phil Edwards <>
Richard Earnshaw <>
* config/cpu/generic/atomicity.h: Provide atomic __exchange_and_add
and __atomic_add.
2002-11-08 Paolo Carlini <>
* config/locale/gnu/
(moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
const char*),
moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
const char*)): Tweak parameters for glibc2.3 systems, thus
avoiding unused parameter warnings.
2002-11-05 Jonathan Wakely <>
* include/std/std_sstream.h
(basic_stringbuf::str(const __string_type&)):
Prefer data() to c_str(), thus avoiding assigning the
unnecessary NULL-terminator.
2002-11-05 Benjamin Kosnik <>
PR libstdc++/8258
* include/bits/istream.tcc (istream::readsome): Don't set eofbit
for null buffer.
(istream::operator>>(_CharT*)): Use traits_type.
(istream::ws): Same.
(istream::operator>>(string)): Same.
* testsuite/27_io/ (test11): Add.
2002-11-05 Paolo Carlini <>
PR libstdc++/8466
* include/std/std_sstream.h
(basic_stringbuf::str(const __string_type&)):
Cannot use simple assignment since the COW-nature of v3
basic_string is not taken into account in basic_stringbuf.
* testsuite/27_io/ Add test04 from PR.
2002-11-05 John David Anglin <>
* (hppa*): Define cpu_include_dir.
* config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define.
* src/ Instantiate atomicity lock when
* config/cpu/hppa/atomicity.h: New file.
2002-11-05 Benjamin Kosnik <>
PR libstdc++/8463
* include/bits/ios_base.h (~ios_base): Make virtual.
2002-11-04 Benjamin Kosnik <>
* config/linker-map.gnu: Export string operator+.
Export __default_alloc_template::_S_force_new.
* testsuite/ Output tweaks.
2002-11-01 Benjamin Kosnik <>
PR libstdc++/8172
* src/ Add instantiation.
2002-11-01 Benjamin Kosnik <>
PR libstdc++/7926
* Simplify.
* config/cpu/i386/atomicity.h: Remove.
* config/cpu/i386: Remove.
* config/cpu/arm/atomicity.h: Remove.
* config/cpu/arm: Remove.
* config/cpu/x86-64/atomicity.h: Remove.
* config/cpu/x86-64: Remove.
2002-11-01 Christian Ehrhardt <>
PR libstdc++/8197
* config/link-map.gnu: Export math stubbs.
2002-11-01 Benjamin Kosnik <>
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.
2002-11-01 John Carter <>
PR libstdc++/7961
* include/bits/basic_string.tcc
(compare(const _CharT* __s)): Don't access __s past its length.
2002-10-31 Zack Weinberg <>
* libsupc++/ Don't call __gthread_key_dtor.
2002-10-31 Benjamin Kosnik <>
PR libstdc++/8348
* include/bits/istream.tcc (istream::tellg): Remove sentry bits.
(istream::seekg): Same.
* testsuite/27_io/ (test06): New.
2002-10-28 Jason Thorpe <>
* testsuite/thread/ Include <unistd.h>
if _GLIBCPP_HAVE_UNISTD_H is defined.
(main): Only use pthread_attr_setscope if
2002-10-28 Jason Thorpe <>
* testsuite/thread/ Enable on *-*-netbsd*.
* testsuite/thread/ Likewise.
* testsuite/thread/ Likewise.
* testsuite/thread/ Likewise.
* testsuite/thread/ Likewise.
* testsuite/thread/ Likewise.
2002-10-27 Paolo Carlini <>
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/ Add test05 from PR.
2002-10-24 Hans-Peter Nilsson <>
PR other/3337
PR bootstrap/6763
PR bootstrap/8122
* testsuite/ (__set_testsuite_memlimit): Use
__typeof__ (r.rlim_cur), not rlim_t in declaration of limit.
2002-10-23 Jakub Jelinek <>
* testsuite/22_locale/ (test01): Swap size
and decimal_point arguments of find.
* testsuite/22_locale/ (test01): Likewise.
2002-10-22 Jakub Jelinek <>
* (check-abi, new-abi-baseline): Use @glibcpp_srcdir@
instead of ${top_srcdir}.
* Rebuilt.
2002-10-22 Loren J. Rittle <>
* testsuite/18_support/ (test_extrema<long double>):
Remove specialization for FreeBSD systems.
2002-10-18 Loren J. Rittle <>
* (freebsd*): Use abi_baseline_triplet.
* config/abi/i386-unknown-freebsd4/baseline_symbols.txt: New file.
* config/abi/i386-unknown-freebsd4.7/baseline_symbols.txt: Remove.
* testsuite/thread/ Remove needless workaround
for FreeBSD 5.
2002-10-18 Loren J. Rittle <>
Brad Spencer <>
(provided alternate patch and improvements)
* docs/html/23_containers/howto.html (GLIBCPP_FORCE_NEW): Document
new environment variable which replaces all uses of __USE_MALLOC
* docs/html/ext/howto.html (GLIBCPP_FORCE_NEW): Likewise.
(__mem_interface): Remove all references to old internal typedef.
* include/backward/alloc.h (__USE_MALLOC): Remove it and all
guarded code.
* include/bits/c++config (__USE_MALLOC): Update related error
message and comment.
* include/bits/stl_alloc.h (__USE_MALLOC): Remove it and all
guarded code. Update all related comments.
(__mem_interface): Unconditionally replace it with __new_alloc.
However, leave the typedef around in case anyone used it.
(__default_alloc_template<>::_S_force_new): New class static.
(__default_alloc_template<>::allocate, deallocate): Add
run-time controlled feature similar to what __USE_MALLOC code
path had provided.
* src/ (__USE_MALLOC): Remove it and all
guarded code.
* testsuite/21_strings/ Remove reference to __USE_MALLOC.
Add documentation on GLIBCPP_FORCE_NEW environment variable.
* testsuite/ext/ Likewise.
2002-10-18 Phil Edwards <>
* Use target, not target_alias, when matching triplet
* configure: Regenerate.
2002-10-17 Momchil Velikov <>
Loren J. Rittle <>
* Add *-freebsd* to cross list.
* configure: Rebuilt.
2002-10-16 Benjamin Kosnik <>
* include/bits/locale_facets.h (__timepunct::__timepunct): Allocate
(__timepunct::~__timepunct): Deallocate, remove specialization
(messages::messages): Allocate _M_name_messages.
(messages::~messages): Deallocate.
(messages_byname): Same.
* config/locale/gnu/ (__timepunct::~__timepunct):
* config/locale/generic/ (__timepunct::~__timepunct):
* docs/html/install.html: Add es_MX, en_PH to required locales list.
2002-10-16 Benjamin Kosnik <>
* config/linker-map.gnu: Add exports for codecvt constructors
where size_t == unsigned long.
2002-10-14 Benjamin Kosnik <>
* src/ (__gnu_cxx::c_locale_impl_compat): Add, alias to
* testsuite/ (line_to_symbol_info): Collect size info.
* docs/html/abi.txt: Update.
2002-10-14 Benjamin Kosnik <>
* testsuite/22_locale/ (test02): Less provincial.
2002-10-14 Benjamin Kosnik <>
* testsuite/22_locale/ (test02): Disable for
systems without named locale support.
* testsuite/22_locale/ (test04): Don't assume
running the testsuites in "C" environment.
Add new tests.
* docs/html/22_locale/locale.html: Update.
2002-10-13 Danny Smith <>
* include/bits/stl_threads.h (_GLIBCPP_mutex,
_GLIBCPP_mutex_address_init, _GLIBCPP_once):
Declare in namespace __gnu_cxx.
(_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx
Adjust copyright.
2002-10-12 Benjamin Kosnik <>
* testsuite/ (hash<string>): Specialize.
Simplify. Check compatible symbol versions.
* config/linker-map.gnu: Clarify, explicitly export
std::codecvt::c* symbols.
* testsuite/22_locale/ (test02): Avoid null strings.
2002-10-12 Jonathan Wakely <>
Gabriel Dos Reis <>
* docs/html/21_strings/howto.html#5: Correct nasting of XHTML
elements. Correct allocator-related text.
2002-10-11 Benjamin Kosnik <>
* testsuite/22_locale/ (test02): Fix.
2002-10-11 Benjamin Kosnik <>
* acconfig.h (_GLIBCPP_SYMVER): Add.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
* include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient
hack around m4 issues with quoting '@'.
* src/ Same.
* testsuite/22_locale/ (test04): Fix for
non-glibc systems.
2002-10-10 Benjamin Kosnik <>
* config/linker-map.gnu (GLIBCPP_3.2.1): Add.
(GLIBCPP_3.2): Don't export locale::_S_*.
* src/ Move globals into __gnu_cxx. Make old exported
symbols match.
* src/ Same.
* src/ Same.
* src/ Same.
2002-10-10 Phil Edwards <>
* docs/html/21_strings/howto.html: Write #5, char_traits.
* docs/html/17_intro/porting.texi: Expand on os_include_dir.
* docs/html/17_intro/porting.html: Regenerate.
2002-10-09 Benjamin Kosnik <>
* src/ Fix comments, move ctors together.
* testsuite/22_locale/ (test03): Add.
2002-10-08 Jonathan Lennox <>
PR libstdc++/8071, libstdc++/8127, libstdc++/6745
* streambuf.tcc (__copy_streambufs): Handle cases where
__sbin->in_avail() returns 0, or where __sbin doesn't set gptr().
* testsuite/27_io/ (test05): Add.
2002-10-08 Paolo Carlini <>
Benjamin Kosnik <>
* include/bits/localefwd.h (class locale): Add static member
_S_num_extra_categories, encoding the number of additional
Change _S_num_categories to _S_categories_size.
(class locale::_Impl): Add _M_c_cats.
(class locale::_Impl::_M_names): Change to array of chars.
(class locale::_Impl::_M_check_same_name): Use
_S_extra_categories_size, tweak.
(locale::locale(const locale&, _Facet*)): Ditto.
* src/ (locale::locale(const char* )): Rewrite to deal
with the environment in a POSIX-compliant way while being thread
(locale::name()): Update to output POSIX environment strings.
* src/
(locale::_Impl::_Impl(const _Impl&, size_t): Use
_S_categories_size_*, tweak.
(locale::_Impl::_Impl(facet**, size_t, bool)): Ditto.
(locale::_Impl::_Impl(const char*, size_t)): Name each category
(locale::_Impl::_M_replace_categories): Use strcpy.
* include/bits/locale_facets.h (numpunct::_M_initialize_numpunct):
Change default argument to NULL from _S_c_locale.
(timepunct::_M_initialize_timepunct): Same.
_S_c_locale cleanups.
* src/codecvt.c: _S_c_locale simplification.
* src/ctype.c: Same.
* src/ Add fake_name.
* src/ Remove extra includes.
* src/ Remove extra includes.
Add _S_extra_categories_size definition.
Correct "C" initialization.
(locale::facet::facet): Don't initialize _S_c_locale.
(locale::facet::_M_remove_reference): Adjust.
* src/localename: Use facet_vec, facet_name.
(locale::_Impl::_Impl(facet** __f, size_t __refs, bool)): Set
facet ref counts to one. Initialize _S_c_locale.
(locale::_Impl::_M_install_facet(id*, facet*)): Adjust facet ref
counts when installing unilaterally.
* config/locale/generic/ Add _S_categories definition.
* config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
* config/locale/generic/ _S_c_locale cleanup.
* config/locale/gnu/ Add _S_categories definition.
(_S_destroy_c_locale): Move checks against _S_c_locale here.
* config/locale/gnu/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro.
* config/locale/gnu/ Simplify _S_destroy_c_locale
calls, _S_c_locale usage.
* config/locale/gnu/ Same, tweaks.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
* config/os/gnu-linux/ctype_noninline.h: Use locale::classic().
* docs/html/22_locale/locale.html: Add bits about global locales
and "C" setlocale.
* testsuite/22_locale/ (test02): Add.
* testsuite/22_locale/ (test02): Add.
* testsuite/22_locale/ (test04): Add.
2002-10-07 Jonathan Wakely <>
* docs/html/configopts.html, docs/html/documentation.html,
docs/html/explanations.html, docs/html/install.html,
docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
docs/html/17_intro/license.html, docs/html/18_support/howto.html,
docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
docs/html/27_io/howto.html, docs/html/ext/howto.html,
docs/html/ext/sgiexts.html, docs/html/faq/index.html: Add DOCTYPEs.
2002-10-03 Richard Earnshaw <>
PR libstdc++/3584
* config/cpu/arm/atomicity.h (__exchange_and_add): Don't try to use
ASM sequences that don't give us atomic addition operations. Instead
just add a comment explaining why it doesn't work.
(__atomic_add): Just use __exchange_and_add.
(__test_and_set, __always_swap): Delete.
2002-10-02 Andreas Jaeger <>
* config/abi/x86_64-unknown-linux-gnu/baseline_symbols.txt:
New file.
2002-10-01 Phil Edwards <>
* (check-abi): Add @ to rule.
* Regenerated.
2002-09-27 Paolo Carlini <>
* include/bits/locale_facets.tcc (num_put::_M_widen_int):
Deal correctly with grouped, showbased (oct or hex) zero.
* testsuite/22_locale/ Add test05.
* testsuite/22_locale/ Ditto.
2002-09-27 Richard Henderson <>
* config/os/hpux/cpu_limits.h: Remove.
* include/std/std_limits.h (numeric_limits<T>::is_iec559): False
if denormals are not supported.
2002-09-25 Benjamin Kosnik <>
* include/ (target_headers): Remove cpu_limits.h.
* include/ Regenerate.
* configure: Regenerate.
* (CPULIMITS): Remove.
* include/std/std_limits.h: Remove cpu_limits.h include.
* config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
* config/os/irix/irix6.5/os_defines.h
(__glibcpp_long_double_bits): Remove.
(__glibcpp_wchar_t_bits): Remove.
(__glibcpp_long_bits): Remove.
* config/os/irix/irix5.2/os_defines.h
(__glibcpp_long_double_bits): Remove.
(__glibcpp_long_bits): Remove.
* config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
* config/os/bsd/freebsd/os_defines.h:
(__glibcpp_long_double_bits): Remove.
* config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
(__glibcpp_wchar_t_is_signed): Remove.
(__glibcpp_long_bits): Remove.
* config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
(__glibcpp_long_double_bits): Remove.
* config/os/osf/osf5.0/cpu_limits.h: Remove.
* config/cpu/alpha/cpu_limits.h: Remove.
* config/cpu/arm/cpu_limits.h: Remove.
* config/cpu/cris/cpu_limits.h: Remove.
* config/cpu/generic/cpu_limits.h: Remove.
* config/cpu/generic/limits.h: Remove.
* config/cpu/ia64/cpu_limits.h: Remove.
* config/cpu/m68k/cpu_limits.h: Remove.
* config/cpu/mmix/cpu_limits.h: Remove.
* config/cpu/powerpc/cpu_limits.h: Remove.
* config/cpu/S390/cpu_limits.h: Remove.
2002-09-25 Peter Schmid <>
* testsuite/18_support/ Check the maximum and
minimum values of the wchar_t type.
2002-09-25 Mark Mitchell <>
* include/std/std_limits.h (numeric_limits<unsigned char>::digits):
Fix typo.
2002-09-23 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_plain_char_is_signed,
__glibcpp_wchar_t_is_signed, __glibcpp_s8_max, __glibcpp_s8_min,
__glibcpp_s8_digits, __glibcpp_s8_digits10, __glibcpp_u8_min,
__glibcpp_u8_max, __glibcpp_u8_digits, __glibcpp_u8_digits10,
__glibcpp_s16_max, __glibcpp_s16_min, __glibcpp_s16_digits,
__glibcpp_s16_digits10, __glibcpp_u16_min, __glibcpp_u16_max,
__glibcpp_u16_digits, __glibcpp_u16_digits10, __glibcpp_s32_max,
__glibcpp_s32_min, __glibcpp_s32_digits, __glibcpp_s32_digits10,
__glibcpp_u32_min, __glibcpp_u32_max, __glibcpp_u32_digits,
__glibcpp_u32_digits10, __glibcpp_s64_max, __glibcpp_s64_min,
__glibcpp_s64_digits, __glibcpp_s64_digits10, __glibcpp_u64_min,
__glibcpp_u64_max, __glibcpp_u64_digits, __glibcpp_u64_digits10,
__glibcpp_bool_digits, __glibcpp_signed_char_min,
__glibcpp_signed_char_max, __glibcpp_signed_char_digits,
__glibcpp_signed_char_digits10, __glibcpp_unsigned_char_min,
__glibcpp_unsigned_char_max, __glibcpp_unsigned_char_digits,
__glibcpp_unsigned_char_digits10, __glibcpp_char_min,
__glibcpp_char_max, __glibcpp_char_digits, __glibcpp_char_digits10,
__glibcpp_signed_short_min, __glibcpp_signed_short_max,
__glibcpp_signed_short_digits, __glibcpp_signed_short_digits10,
__glibcpp_unsigned_short_min, __glibcpp_unsigned_short_max,
__glibcpp_unsigned_short_digits, __glibcpp_unsigned_short_digits10,
__glibcpp_signed_int_min, __glibcpp_signed_int_max,
__glibcpp_signed_int_digits, __glibcpp_signed_int_digits10,
__glibcpp_unsigned_int_min, __glibcpp_unsigned_int_max,
__glibcpp_unsigned_int_digits, __glibcpp_unsigned_int_digits10,
__glibcpp_signed_long_min, __glibcpp_signed_long_max,
__glibcpp_unsigned_long_digits, __glibcpp_unsigned_long_digits10,
__glibcpp_signed_long_long_min, __glibcpp_signed_long_long_max,
__glibcpp_signed_long_long_digits, __glibcpp_signed_long_long_digits10,
__glibcpp_wchar_t_min, __glibcpp_wchar_t_max, __glibcpp_wchar_t_digits,
__glibcpp_wchar_t_digits10): Remove.
(__glibcpp_byte, __glibcpp_word_bits, __glibcpp_word): Remove.
(__float_storage, __double_storage, __long_double_storage): Remove.
(__glibcpp_signed, __glibcpp_min, __glibcpp_max): New.
(__glibcpp_digits, __glibcpp_digits10): New.
(numeric_limits<T>::min): Use __glibcpp_min or limits.h builtins.
(numeric_limits<T>::max): Use __glibcpp_max or limits.h builtins.
(numeric_limits<T>::is_signed, T=char,wchar_t): Use __glibcpp_signed.
(numeric_limits<T>::digits): Use __glibcpp_digits.
(numeric_limits<T>::digits10): Use __glibcpp_digits10.
* testsuite/18_support/ (test03): Don't use
__glibcpp_s8_digits10 et al; check vs the installed versions
of digits10 for particular sizes.
* include/std/std_limits.h (__glibcpp_float_is_modulo,
__glibcpp_double_is_modulo, __glibcpp_long_double_is_modulo): Kill.
(numeric_limits<T>::is_modulo, T floating): Use false.
2002-09-22 Kaveh R. Ghazi <>
* (all-multi): Fix multilib parallel build.
2002-09-22 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_f32_round_error,
__glibcpp_f64_round_error, __glibcpp_f80_round_error,
__glibcpp_f96_round_error, __glibcpp_f128_round_error,
__glibcpp_float_round_error, __glibcpp_double_round_error,
__glibcpp_long_double_round_error, __glibcpp_float_round_style,
__glibcpp_double_round_style, __glibcpp_long_double_round_style): Kill.
(numeric_limits<char>::epsilon, round_error): Use constant 0.
(numeric_limits<float>::round_error): Use constant 0.5.
(numeric_limits<float>::round_style): Use round_to_nearest.
(numeric_limits<double>, numeric_limits<long double>): Similarly.
* include/std/std_limits.h (__glibcpp_f32_is_iec559,
__glibcpp_f64_is_iec559, __glibcpp_f80_is_iec559,
__glibcpp_f96_is_iec559, __glibcpp_f128_is_iec559,
__glibcpp_float_is_iec559, __glibcpp_double_is_iec559,
__glibcpp_long_double_is_iec559): Remove.
(numeric_limits<float>::is_iec559): Use has_infinity & has_quiet_NaN.
(numeric_limits<double>, numeric_limits<long double>): Similarly.
* include/std/std_limits.h (__glibcpp_integral_traps): New.
(__glibcpp_char_traps, __glibcpp_short_traps, __glibcpp_int_traps,
__glibcpp_long_traps, __glibcpp_wchar_t_traps,
__glibcpp_long_long_traps, __glibcpp_plain_char_traps,
__glibcpp_signed_char_traps, __glibcpp_unsigned_char_traps,
__glibcpp_signed_short_traps, __glibcpp_unsigned_short_traps,
__glibcpp_signed_int_traps, __glibcpp_unsigned_int_traps,
__glibcpp_signed_long_traps, __glibcpp_unsigned_long_traps,
__glibcpp_signed_long_long_traps, __glibcpp_unsigned_long_long_traps,
__glibcpp_char_is_modulo, __glibcpp_signed_char_is_modulo,
__glibcpp_signed_short_is_modulo, __glibcpp_signed_int_is_modulo,
__glibcpp_signed_long_is_modulo, __glibcpp_signed_long_long_is_modulo,
__glibcpp_wchar_t_is_modulo, __glibcpp_float_is_bounded,
__glibcpp_double_is_bounded, __glibcpp_long_double_is_bounded): Kill.
(numeric_limits<T>::traps, T integral): Use __glibcpp_integral_traps.
(numeric_limits<T>::is_modulo, T integral): Use true.
(numeric_limits<T>::is_bounded, T floating): Use true.
2002-09-18 Loren J. Rittle <>
* testsuite/18_support/ (test_epsilon): New.
2002-09-18 Richard Henderson <>
* testsuite/18_support/ Add -mieee for alpha.
2002-09-16 Benjamin Kosnik <>
* include/c_shadow: Remove.
* include/bits/generic_shadow.h: Remove.
* include/ Remove generic_shadow.h.
* acinclude.m4: Remove c_shadow references.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* mkcshadow: Remove.
* mkinclosure: Remove.
2002-09-16 Loren J. Rittle <>
* include/ext/stl_rope.h (rope<>): Qualify dependent names
with `typename'.
2002-09-16 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
__glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
__glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
__glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
__glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
__glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
__glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
__glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
__glibcpp_long_double_has_SNaN): Remove.
(__glibcpp_f128_is_iec559): True if IEEE.
(__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
(std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
(std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
(std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
(std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
(std::numeric_limits<double>): Similarly.
(std::numeric_limits<long double>): Similarly.
* src/ (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
(__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
(__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
* testsuite/18_support/ (test_infinity): New.
(test_denorm_min, test_qnan, test_is_iec559): New.
2002-09-16 Phil Edwards <>
* testsuite/ Pull shell fragments out into...
* config/abi/extract_symvers: New file.
* (check_abi): Change to match.
(new-abi-baseline): New target.
* Regenerated.
2002-09-16 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_f32_denorm_min_bytes,
__glibcpp_f32_has_denorm, __glibcpp_f64_denorm_min_bytes,
__glibcpp_f64_has_denorm, __glibcpp_f80_denorm_min_bytes,
__glibcpp_f80_has_denorm, __glibcpp_f96_denorm_min_bytes,
__glibcpp_f96_has_denorm, __glibcpp_f128_denorm_min_bytes,
__glibcpp_f128_has_denorm, __glibcpp_float_denorm_min_bytes,
__glibcpp_float_has_denorm, __glibcpp_double_denorm_min_bytes,
__glibcpp_double_has_denorm, __glibcpp_long_double_denorm_min_bytes,
__glibcpp_long_double_has_denorm): Remove.
(__glibcpp_float_denorm_min, __glibcpp_double_denorm_min,
__glibcpp_long_double_denorm_min): Remove.
(std::numeric_limits<float>::has_denorm): Use __FLT_DENORM_MIN__.
(std::numeric_limits<float>::denorm_min): Likewise.
(std::numeric_limits<double>): Similarly.
(std::numeric_limits<long double>): Similarly.
* src/ (__glibcpp_float_denorm_min,
__glibcpp_double_denorm_min, __glibcpp_long_double_denorm_min): Remove.
2002-09-13 Andy Felt <>
* docs/html/17_intro/howto.html: Update link.
2002-09-13 Phil Edwards <>
* docs/doxygen/run_doxygen: Massage man page for Iterator_types.3.
* docs/html/faq/index.html: Whitespace fixes.
2002-09-12 Benjamin Kosnik <>
* libmath/ (LIBTOOL): Use --tag CC always for this
* libmath/ Regenerate.
* src/ Tweak comment.
* src/ Regenerate.
* config/locale/gnu/c_locale.h: Remove warnings.
Inject __uselocale into __gnu_cxx.
* config/locale/generic/c_locale.h: Match.
2002-09-11 Benjamin Kosnik <>
* include/bits/locale_facets.tcc (__convert_from_v): Remove.
* config/locale/gnu/c_locale.h (__convert_from_v): Add.
* config/locale/generic/c_locale.h (__convert_from_v): Add.
2002-09-11 Paolo Carlini <>
* include/bits/locale_facets.tcc (__convert_from_v):
Use __uselocale instead of setlocale for glibc 2.3+.
2002-09-10 Benjamin Kosnik <>
* src/ (sources): Edit.
(target_sources): New.
(target_sources_extra): New.
* src/ Regenerate.
* acinclude.m4: Set CCODECVT_CC.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* src/ Move ctype definitions...
* src/ New file.
* src/ Move codecvt definitions...
* src/
* config/generic/ ...and here.
* config/gnu/ ...and here.
* include/bits/codecvt.h: Tweak.
* include/bits/locale_facets: Tweak.
* src/ Correct license text.
* src/ Same.
* src/ Same.
* src/ Same.
2002-09-10 Gabriel Dos Reis <>
* include/bits/stl_vector.h (vector<>): Don't use a name with
different meanings before and after re-evaluation in the completed
* 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.
2002-09-10 Paolo Carlini <>
* include/bits/codecvt.h (class __codecvt_abstract_base):
Add __c_locale type _M_c_locale_codecvt member.
(class codecvt<char, char, mbstate_t>,
class codecvt<wchar_t, char, mbstate_t>): Add new
codecvt(__c_locale, size_t) constructor.
(codecvt_byname::codecvt_byname): Update.
* src/ (class codecvt<char, char, mbstate_t>,
class codecvt<wchar_t, char, mbstate_t>): Update codecvt(size_t)
constructor and ~codecvt() destructor; define
codecvt(__c_locale, size_t) constructor.
(codecvt::do_out): Switch to _M_c_locale_codecvt around wcsrtombs call.
(codecvt::do_in): Ditto for mbsrtowcs call.
* src/ (locale::_Impl::_Impl(const char*, size_t)):
Tweak construction of codecvt facets.
2002-09-10 Danny Smith <>
* include/bits/locale_facets.tcc (__convert_from_v):
Replace strdup with ISO malloc and strcpy.
2002-09-09 Benjamin Kosnik <>
* docs/html/configopts.html: Change grouping. Note ABI impacts.
Update information for locale model defaults.
* docs/html/install.html: Update include directory
Update testing information.
Update linux issues for named locales.
* docs/html/abi.txt: Fix typos.
Add more info.
* src/ Add missing instantiations.
* testsuite/ Make output results more verbose.
* config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.
2002-09-07 Jakub Jelinek <>
* config/locale/generic/ Add specialization for
* config/locale/ieee_1003.1-20021/ Likewise.
2002-09-06 Benjamin Kosnik <>
* include/bits/localefwd.h: Tweak formatting.
* docs/html/abi.txt: Add.
2002-09-06 Jakub Jelinek <>
* Use cpu_include_dir="config/cpu/sparc" for all
sparc targets.
* config/cpu/sparc/atomicity.h: New file.
* config/cpu/sparc/sparc32/atomicity.h: Removed.
* config/cpu/sparc/sparc64/atomicity.h: Removed.
2002-09-06 Jakub Jelinek <>
* config/os/gnu-linux/ctype_noninline.h
[_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
(ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
_S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
and return __ctype_b.
(ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
_GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
initialize using __ctype_{b,tolower,toupper}.
(ctype<char>::ctype(const mask*, bool, size_t)): If
_GLIBCPP_C_LOCALE_GNU, initialize using
_S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
2002-09-05 Paolo Carlini <>
Roland McGrath <>
PR libstdc++/7811
* src/ (locale::locale(__s)): Use getenv instead
of setenv for the environment locale.
* testsuite/22_locale/ (test03): New.
2002-09-05 Jakub Jelinek <>
* config/abi/ia64-unknown-linux-gnu: Add.
* config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
* config/abi/alphaev67-unknown-linux-gnu: Add.
* config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.
2002-09-05 Jonathan Wakely <>
* docs/html/Makefile: Use more portable shell wildcard.
* docs/html/makedoc.awk: Nest elements correctly for XHTML conversion.
* docs/html/configopts.html, docs/html/documentation.html,
docs/html/explanations.html, docs/html/install.html,
docs/html/17_intro/contribute.html, docs/html/17_intro/howto.html,
docs/html/17_intro/license.html, docs/html/18_support/howto.html,
docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
docs/html/21_strings/howto.html, docs/html/22_locale/codecvt.html,
docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
docs/html/22_locale/locale.html, docs/html/22_locale/messages.html,
docs/html/23_containers/howto.html, docs/html/24_iterators/howto.html,
docs/html/25_algorithms/howto.html, docs/html/26_numerics/howto.html,
docs/html/27_io/howto.html, docs/html/ext/howto.html,
docs/html/ext/sgiexts.html, docs/html/faq/index.html: Convert
* docs/html/faq/index.txt: Regenerate.
2002-09-05 Jakub Jelinek <>
* config/locale/gnu/ (ctype<wchar_t>::do_widen(char)):
Switch to _M_c_locale_ctype around btowc call.
(ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
Switch to _M_c_locale_ctype around mbsrtowcs call.
(ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
wctob call.
(ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
Switch to _M_c_locale_ctype around wcsrtombs call.
2002-09-05 Jakub Jelinek <>
* config/locale/gnu/
(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
__uselocale instead of setlocale for glibc 2.3.
2002-09-05 Jakub Jelinek <>
* config/locale/generic/c++locale_internal.h: New header.
* config/locale/gnu/c++locale_internal.h: New header.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
* config/locale/gnu/ Include it.
(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
C locale.
* acinclude.m4: Include string.h when testing strcoll_l.
For glibc 2.3 provide __-prefixed prototypes.
* aclocal.m4, configure: Rebuilt.
2002-09-05 Benjamin Kosnik <>
* include/bits/locale_facets.h: Add declaration of specialization
* config/locale/gnu/ Add specialization for
* config/locale/gnu/messages_members.h: Remove generic definition
of do_get.
2002-09-04 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
__glibcpp_f32_has_infinity, __glibcpp_f64_infinity_bytes,
__glibcpp_f64_has_infinity, __glibcpp_f80_infinity_bytes,
__glibcpp_f80_has_infinity, __glibcpp_f96_infinity_bytes,
__glibcpp_f96_has_infinity, __glibcpp_f128_infinity_bytes,
__glibcpp_f128_has_infinity, __glibcpp_float_infinity_bytes,
__glibcpp_float_has_infinity, __glibcpp_double_infinity_bytes,
__glibcpp_double_has_infinity, __glibcpp_long_double_infinity_bytes,
__glibcpp_long_double_has_infinity): Remove.
(std::numeric_limits<float>, std::numeric_limits<double>,
std::numeric_limits<long double>): Use __builtin_huge_val
to implement has_infinity and infinity().
* src/ (__glibcpp_float_infinity, __glibcpp_double_infinity,
__glibcpp_long_double_infinity): Remove.
2002-09-03 Richard Henderson <>
* include/std/std_limits.h (__glibcpp_f32_min, __glibcpp_f32_max,
__glibcpp_f32_digits, __glibcpp_f32_digits10, __glibcpp_f32_radix,
__glibcpp_f32_epsilon, __glibcpp_f32_min_exponent,
__glibcpp_f32_min_exponent10, __glibcpp_f32_max_exponent,
__glibcpp_f32_max_exponent10, __glibcpp_f64_min, __glibcpp_f64_max,
__glibcpp_f64_digits, __glibcpp_f64_digits10, __glibcpp_f64_radix,
__glibcpp_f64_min_exponent, __glibcpp_f64_min_exponent10,
__glibcpp_f64_max_exponent, __glibcpp_f64_max_exponent10,
__glibcpp_f80_min, __glibcpp_f80_max, __glibcpp_f80_digits,
__glibcpp_f80_digits10, __glibcpp_f80_radix, __glibcpp_f80_epsilon,
__glibcpp_f80_min_exponent, __glibcpp_f80_min_exponent10,
__glibcpp_f80_max_exponent, __glibcpp_f80_max_exponent10,
__glibcpp_f96_min, __glibcpp_f96_max, __glibcpp_f96_digits,
__glibcpp_f96_digits10, __glibcpp_f96_radix, __glibcpp_f96_epsilon,
__glibcpp_f96_min_exponent, __glibcpp_f96_min_exponent10,
__glibcpp_f96_max_exponent, __glibcpp_f96_max_exponent10,
__glibcpp_f128_min, __glibcpp_f128_max, __glibcpp_f128_digits,
__glibcpp_f128_digits10, __glibcpp_f128_radix, __glibcpp_f128_epsilon,
__glibcpp_f128_min_exponent, __glibcpp_f128_min_exponent10,
__glibcpp_f128_max_exponent, __glibcpp_f128_max_exponent10,
__glibcpp_float_min, __glibcpp_float_max, __glibcpp_float_digits,
__glibcpp_float_digits10, __glibcpp_float_radix,
__glibcpp_float_epsilon, __glibcpp_float_min_exponent,
__glibcpp_float_min_exponent10, __glibcpp_float_max_exponent,
__glibcpp_float_max_exponent10, __glibcpp_double_min,
__glibcpp_double_max, __glibcpp_double_digits,
__glibcpp_double_digits10, __glibcpp_double_radix,
__glibcpp_double_epsilon, __glibcpp_double_min_exponent,
__glibcpp_double_min_exponent10, __glibcpp_double_max_exponent,
__glibcpp_double_max_exponent10, __glibcpp_long_double_min,
__glibcpp_long_double_max, __glibcpp_long_double_digits,
__glibcpp_long_double_digits10, __glibcpp_long_double_radix,
__glibcpp_long_double_epsilon, __glibcpp_long_double_min_exponent,
__glibcpp_long_double_max_exponent10): Remove macros.
(std::numeric_limits<float>, std::numeric_limits<double>,
std::numeric_limits<long double>): Use protected float.h macros.
2002-09-01 Phil Edwards <>
* testsuite/ Use LD_RUN_PATH when linking abi_check.
Fix spelling in comment.
* testsuite/ Regenerate.
* testsuite/ Use string literals to build 'cmd' rather
than 'quote' and 'bslash'.
2002-08-31 Phil Edwards <>
* acinclude.m4: Minor comment tweaks.
* docs/html/makedoc.awk: New file...
* docs/html/Makefile: ...called from here...
* docs/html/documentation.html: 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.
2002-08-29 Richard Earnshaw <>
* config/cpu/arm/cpu_limits.h: New file.
* Use config/cpu/arm for XScale and StrongARM
2002-08-28 Gabriel Dos Reis <>
* include/std/std_limits.h (__glibcpp_char_bits,
__glibcpp_short_bits, __glibcpp_int_bits, __glibcpp_long_bits,
__glibcpp_long_long_bits, __glibcpp_float_bits,
__glibcpp_double_bits, __glibcpp_long_double_bits): Remove. Use
compiler predifined macros.
(__glibcpp_wchar_t_is_signed): Define based on compiler predefined
2002-08-27 Gabriel Dos Reis <>
* include/std/std_limits.h (__glibcpp_f32_infinity_bytes,
__glibcpp_f32_has_infinity, __glibcpp_f32_QNaN_bytes,
__glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
__glibcpp_f32_has_SNaN, __glibcpp_f32_denorm_min_bytes,
__glibcpp_f32_has_denorm, __glibcpp_f32_is_iec559,
__glibcpp_f64_has_infinity, __glibcpp_f64_QNaN_bytes,
__glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
__glibcpp_f64_has_SNaN, __glibcpp_f64_denorm_min_bytes,
__glibcpp_f64_has_denorm, __glibcpp_f64_is_iec559,
__glibcpp_f80_has_infinity, __glibcpp_f80_QNaN_bytes,
__glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
__glibcpp_f80_has_SNaN, __glibcpp_f80_denorm_min_bytes,
__glibcpp_f80_has_denorm, __glibcpp_f80_is_iec559,
__glibcpp_f96_has_infinity, __glibcpp_f96_QNaN_bytes,
__glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
__glibcpp_f96_has_SNaN, __glibcpp_f96_denorm_min_bytes,
__glibcpp_f96_has_denorm, __glibcpp_f96_is_iec559,
__glibcpp_f128_has_infinity, __glibcpp_f128_QNaN_bytes,
__glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
__glibcpp_f128_has_SNaN, __glibcpp_f128_denorm_min_bytes,
__glibcpp_f128_has_denorm, __glibcpp_f128_is_iec559,
__glibcpp_float_has_infinity, __glibcpp_float_QNaN_bytes,
__glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
__glibcpp_float_has_SNaN, __glibcpp_float_denorm_min_bytes,
__glibcpp_float_has_denorm, __glibcpp_float_is_iec559,
__glibcpp_double_has_infinity, __glibcpp_double_QNaN_bytes,
__glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
__glibcpp_double_has_SNaN, __glibcpp_double_denorm_min_bytes,
__glibcpp_double_has_denorm, __glibcpp_double_is_iec559,
__glibcpp_long_double_has_infinity, __glibcpp_long_double_QNaN_bytes,
__glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
__glibcpp_long_double_has_SNaN, __glibcpp_long_double_denorm_min_bytes,
__glibcpp_long_double_has_denorm, __glibcpp_long_double_is_iec559:
New macros.
(__glibcpp_word_bits, __glibcpp_word): Likewise.
(__glibcpp_byte): New typedef.
(__float_storage, __double_storage, __long_double_storage): New types.
(__glibcpp_float_infinity, __glibcpp_float_QNaN,
__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Now
objects. Declare.
(__glibcpp_double_infinity, __glibcpp_double_QNaN,
__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
* src/ (__glibcpp_float_infinity, __glibcpp_float_QNaN,
__glibcpp_float_SNaN, __glibcpp_float_denorm_min): Define.
(__glibcpp_double_infinity, __glibcpp_double_QNaN,
__glibcpp_double_SNaN, __glibcpp_double_denorm_min): Likewise.
(__glibcpp_long_double_infinity, __glibcpp_long_double_QNaN,
__glibcpp_long_double_SNaN, __glibcpp_long_double_denorm_min):
2002-08-25 Gabriel Dos Reis <>
* include/std/std_limits.h: Indent conditional macro definitions.
2002-08-23 Phil Edwards <>
* (check-abi): Specify current directory.
* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Fix shell syntax, use
abi_baseline_triplet in baseline_file.
*, aclocal.m4, configure: Regenerate.
* Add abi_baseline_triplet with default.
* testsuite/ More error checking.
2002-08-23 Phil Edwards <>
* config/linker-map.gnu: Verbose comments, clean up spacing.
* include/bits/stl_alloc.h: Fix indentation of 'if' bodies, return
__allocator: Change class declaration to struct.
* docs/html/17_intro/C++STYLE: Fix typo.
* include/bits/stl_deque.h, include/bits/stl_list.h,
include/bits/stl_map.h, include/bits/stl_multimap.h,
include/bits/stl_vector.h: Fix fallout from typo.
2002-08-22 Benjamin Kosnik <>
GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host
* aclocal.m4: Regenerate.
* testsuite/ (noinst_PROGRAMS): Make conditional on
native compiling.
* testsuite/ Regenerate.
2002-08-22 Loren J. Rittle <>
* testsuite/ Enhance shell portability.
Support older binutils/readelf.
* config/abi/i386-unknown-freebsd4.6: Add.
* config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.
2002-08-22 Paolo Carlini <>
* docs/html/faq/index.html: Add Loren James Rittle and
Paolo Carlini to the list of v3 maintainers.
* docs/html/faq/index.txt: Ditto.
* docs/html/17_intro/RELEASE-NOTES: Ditto.
2002-08-22 Benjamin Kosnik <>
Phil Edwards <>
Ulrich Drepper <>
* (check-abi): New rule.
* Regenerate.
* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* testsuite/ (noinst_PROGRAMS): Add abi_check.
(abi_check_SOURCES): Add.
* testsuite/ Regenerate.
* testsuite/ New file.
* config/abi: Add.
* config/abi/i686-pc-linux-gnu: Add.
* config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.
2002-08-19 Benjamin Kosnik <>
* (libtool_VERSION): Update to 5:1:0.
* configure: Regenerate.
2002-08-19 Jonathan Wakely <>
* docs/html/configopts.html, docs/html/documentation.html,
docs/html/install.html, docs/html/22_locale/codecvt.html,
docs/html/22_locale/ctype.html, docs/html/22_locale/howto.html,
docs/html/22_locale/messages.html: Conform to HTML 4.01 standard.
2002-08-15 Benjamin Kosnik <>
* include/ext/stdio_filebuf.h (stdio_filebuf): Explicitly set
_M_buf_size_opt to zero when unbuffering.
* include/bits/fstream.tcc (filebuf::showmanyc): Simplify.
Consistency checks for _M_buf_size_opt.
Revert PR libstdc++/7445
* src/ (locale::classic): Revert.
* docs/html/17_intro/TODO: Add.
2002-08-15 Phil Edwards <>
* docs/html/documentation.html: Update doxygen links for 3.2.
2002-08-15 Steve Ellcey <>
* libsupc++/unwind-cxx.h (__cxa_exception): Change catchTemp
type from void* to _Unwind_Ptr.
Do not cast landing_pad or base_of_encoded_value to (void *).
* libsupc++/ (__gxx_exception_cleanup):
Accept _URC_NO_REASON as a valid reason code.
2002-08-14 Jonathan Wakely <>
* docs/html/22_locale/messages.html: Use HTML entities for
2002-08-13 Jonathan Wakely <>
Phil Edwards <>
* docs/html/documentation.html: Use HTML entities for punctuation.
2002-08-09 Phil Edwards <>
* include/bits/deque.tcc, include/bits/list.tcc,
include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
include/bits/stl_list.h, include/bits/stl_map.h,
include/bits/stl_multimap.h, include/bits/stl_queue.h,
include/bits/stl_stack.h, include/bits/stl_vector.h,
include/bits/vector.tcc: Re-indent contents of namespace std,
re-wrap comment lines as necessary.
2002-08-08 Danny Smith <>
Benjamin Kosnik <>
* include/bits/istream.tcc (basic_istream::ignore): Use sbumpc,
not snextc.
* testsuite/27_io/ (test10): Add.
2002-08-07 John David Anglin <>
* libsupc++/ Regenerate.
2002-08-05 Gabriel Dos Reis <>
* include/bits/slice_array.h(_DEFINE_VALARRAY_OPERATOR):
Instantiate with new function objects.
* include/bits/mask_array.h (_DEFINE_VALARRAY_OPERATOR): Likewise.
Reformat. Uglify.
* include/bits/gslice_array.h: Likewise.
* include/bits/indirect_array.h: Likewise.
2002-08-03 Gabriel Dos Reis <>
* testsuite/26_numerics/ Rename from
* include/bits/valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our
object function surrogates.
* include/bits/valarray_meta.h (__shift_left): Fix typo.
(_BinFunClos<>): Remove.
(_BinFunBase<>): Likewise.
(_BinFunBase2<>): Likewise.
(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
* include/std/std_valarray.h: Dont #include <functional> anymore.
(_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>,
_Shift_right<>): Remove.
(_DEFINE_BINARY_OPERATOR): Tweak definition.
* testsuite/26_numerics/valarray_name_lookup.C (main): Add more tests.
2002-08-02 Gabriel Dos Reis <>
* include/bits/valarray_meta.h (_UnFunBase<>): Remove.
(_UnFunClos<>): Same.
(_UnBase<>): Reformat. Make first template-parameter non
(_UnClos<>): Likewise.
(_Expr<>): Reformate. Adjust unary member operator return types.
(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
* include/std/std_valarray.h (_UnClos<>): Adjust declaration.
(valarray<>::_UnaryOp<>): New nested traits. Adjust unary member
operator return types. Reformat.
(_Bitwise_not): Remove.
* testsuite/26_numerics/valarray_name_lookup.C: New test.
2002-08-02 Danny Smith <>
* config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
(scan_is): Use this->is.
(scan_not): Likewise.
2002-08-02 Benjamin Kosnik <>
Revert PR libstdc++/6594
* src/ (strstreambuf): Revert.
(strstreambuf::overflow): Same.
(strstreambuf::~strstreambuf): Same.
* testsuite/backward/ (test02): Add.
* docs/html/abi.txt: Update. Spell check.
* testsuite/19_diagnostics/ (test04): Add bool test.
* testsuite/ Regenerate.
* testsuite/testsuite_hooks.h: Use __throw_exception_again,
include functexcept.h so that -fno-exceptions will build.
2002-08-02 Gabriel Dos Reis <>
* include/bits/valarray_meta.h (__unary_plus, __negate,
__bitwise_not, __plus, __minus, __multiplies, __divides,
__modulus, __bitwise_xor, __bitwise_or, __bitwise_and,
__shift_left, __shift_right, __logical_and, __logical_or,
__logical_not, __equal_to, __not_equal_to, __less, __less_equal,
__greater_equal, __greater, __atan2, __pow): New function object
(__fun<>): New function traits class.
2002-08-01 Rick Danos <>
PR libstdc++/7461
* config/os/newlib/ctype_noninline.h (classic_table): Add offset.
* config/os/newlib/ctype_inline.h (is): Use static_cast.
2002-08-01 Neil Booth <>
* libsupc++/ (LT_COMPILE): Remove C++ flags.
* libsupc++/ Regenerate.
2002-08-01 Benjamin Kosnik <>
Jakub Jelinek <>
* config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
2002-07-31 Benjamin Kosnik <>
Mark Mitchell <>
PR libstdc++/7442
* libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
Change to __hwm_bit.
(__class_type_info): And here.
2002-07-31 Benjamin Kosnik <>
PR libstdc++/7442
* libsupc++/cxxabi.h
(__base_class_info): Change to __base_class_type_info. 2.9.5p6c
(__base_class_info::__base): Change to __base_type. 2.9.5p6c
(__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
(__vmi_class_type_info::__base_info): Don't make const, of type
__base_class_type_info, as per 2.9.5p6c
(__pbase_type_info::__qualifier_flags): Change to __flags, as per
(__pbase_type_info::__qualifier_masks): Change to __masks, as per
(__pointer_to_member_type_info::__context_class): Change member to
__context, as per 2.9.5p9.
* libsupc++/ (__pointer_catch): Change __context_class to
* libsupc++/ (__do_catch): Change __qualifier_flags to
* libsupc++/ (__do_find_public_src): Change __base to
* libsupc++/ (__do_dyncast): Same.
* libsupc++/ (__do_upcast): Same.
2002-07-31 Benjamin Kosnik <>
* src/ Add _GLIBCPP_USE_WCHAR_T guards.
2002-07-31 Simon Whomsley <>
* docs/html/22_locale/howto.html: Fix.
2002-07-31 Alex Kompel <>
PR libstdc++/7445
* src/ (locale::classic): Move locks inside !_S_classic
2002-07-31 Benjamin Kosnik <>
* docs/html/abi.txt: Update.
2002-07-30 Benjamin Kosnik <>
Gabriel Dos Reis <>
* include/bits/char_traits.h: Remove generic definitions.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Use
eof, not -2.
* include/bits/istream.tcc (istream::readsome): Don't check
against eof, instead use constants.
(istream::sync): Same.
(istream::sentry::sentry): Use eq_int_type.
(istream::get): Same.
* include/bits/ostream.tcc: Change __pad to
__pad<_CharT, _Traits>::_S_pad.
* include/bits/locale_facets.h: Add __pad_traits generic and
ostreambuf_iterator specialization.
* include/bits/locale_facets.tcc: Change __pad into struct __pad
with a _CharT and _Traits template parameter and _S_pad static
member function.
* src/ Update __pad instantiations.
* include/std/std_fstream.h: Declare _M_underflow_common
* src/ New. Add _M_underflow_common specializations.
* include/bits/fstream.tcc (filebuf::close): Use traits_type.
(filebuf::_M_underflow_common(bool)): Remove generic version, as
sys_ungetc and custom int_types don't get along.
* include/std/std_streambuf.h: Add _M_pos.
* src/ (sources): Add
* src/ Regenerate.
* testsuite/21_strings/ Add char_traits specializations.
* testsuite/22_locale/ Same.
* testsuite/22_locale/ Same.
* testsuite/22_locale/ Same.
* testsuite/27_io/ (test07): Move to...
* testsuite/27_io/
* testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits
specialization for both.
* testsuite/27_io/ Add instantiation test,
testsuite_hooks include.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
2002-07-29 Alan Modra <>
* config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
* (cpu_include_dir): Use cpu/powerpc for powerpc64.
* config/cpu/powerpc/atomicity.h (__always_swap): Remove.
(__test_and_set): Remove.
(_STWCX): Define and use.
2002-07-26 Phil Edwards <>
* libsupc++/new (placement delete): Remove unused parameter names.
2002-07-25 Benjamin Kosnik <>
PR libstdc++/7216
* include/std/std_istream.h (basic_iostream): Add typedefs for
char_type, int_type, pos_type, off_type, and traits_type.
* testsuite/27_io/ (test01): Add typedef tests.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Same.
* testsuite/27_io/ Replace content, move to...
* testsuite/27_io/
* testsuite/27_io/ Replace content, move to...
* testsuite/27_io/
* testsuite/27_io/ Replace content, move to...
* testsuite/27_io/
* testsuite/27_io/ New file.
* testsuite/27_io/ New file.
* testsuite/27_io/ New file.
* testsuite/27_io/ New file.
* testsuite/27_io/ New file.
* testsuite/27_io/ New file.
2002-07-25 Benjamin Kosnik <>
PR libstdc++/7220
* include/bits/istream.tcc (istream::ignore): Don't extract on
* testsuite/27_io/ (test10): Add.
2002-07-25 Benjamin Kosnik <>
* testsuite/27_io/ Move to...
* testsuite/27_io/
2002-07-24 Benjamin Kosnik <>
PR libstdc++/7222
* src/ (locale::locale(const char*)): Use setlocale NULL.
* testsuite/22_locale/ (test02): New.
2002-07-24 Benjamin Kosnik <>
PR libstdc++/7230
* config/linker-map.gnu: Revert strstream patch from 2002-07-01.
* include/ (backward_headers): Use strstream, not
* include/ Regenerate.
* include/backward/strstream: Revert.
* include/backward/strstream.h: Remove.
* src/ Revert.
* testsuite/backward/ Change include.
2002-07-24 Benjamin Kosnik <>
PR libstdc++/7219
* include/bits/ios_base.h (ios_base::streampos): Add.
(ios_base::streamoff): Add.
* testsuite/27_io/ New.
2002-07-24 Benjamin Kosnik <>
PR libstdc++/7286
* libsupc++/new: Add placement delete.
* testsuite/18_support/ New.
* docs/html/abi.txt: Fix typos.
2002-07-23 Benjamin Kosnik <>
* docs/html/documentation.html: Remove libstdc++-v3.0.86 links,
confusing usage of "latest."
De-tangle contributor information from introductory notes.
Move abi.txt link placement, activate.
Move chapter info into old FAQ format.
* docs/html/organization.html: Removed, obsoleted by doxygen work.
* docs/html/abi.txt: Add notes on testing ABI changes.
2002-07-20 Phil Edwards <>
* docs/html/abi.txt: New file.
* docs/html/23_containers/howto.html: Tweak vector-overhead text.
* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
Import from upstream, R22.
* include/bits/char_traits.h, include/bits/stl_iterator.h,
include/bits/stl_iterator_base_types.h, libsupc++/exception,
libsupc++/new, libsupc++/typeinfo: Use @brief markup.
* include/bits/deque.tcc, include/bits/stl_alloc.h,
include/bits/stl_deque.h, include/bits/stl_list.h: Postpone removal
of deprecated functions until 3.4. (Same timeframe, different text.)
* include/bits/stl_vector.h: Ditto. Also do the same cleanups that
the other sequence classes received.
2002-07-18 Brendan Kehoe <>
* bits/slice_array.h (_DEFINE_VALARRAY_OPERATOR): Fix typo of
_Nname to _Name.
2002-07-19 Gabriel Dos Reis <>
* include/bits/slice_array.h
(slice_array<T>::operator=(const T&)): Constify.
* include/bits/gslice_array.h
(gslice_array<T>::operator=(const T&)): Likewise.
* include/bits/mask_array.h
(mask_array<T>::operator=(const T&)): Likewise.
* include/bits/indirect_array.h
(indirect_array<T>::operator=(const T&): Likewise.
2002-07-17 Phil Edwards <>
* docs/doxygen/run_doxygen: Remove template parameter names from
"Compound List" summary page. Reformat.
* docs/html/documentation.html: XHTML fixes.
2002-07-16 Andreas Schwab <>
* libsupc++/new (set_new_handler): Declare to not throw any
* libsupc++/ (set_new_handler): Likewise.
2002-07-16 Gabriel Dos Reis <>
* include/ (bits_headers): Remove slice.h
* include/ Regenerate.
* include/bits/slice.h (slice): move to include/bits/slice_array.h
* include/bits/slice.h Remove.
* include/std/std_valarray.h: Don't #include bits/slice.h anymore.
* include/bits/slice_array.h: Comply to official coding styles.
* testsuite/26_numerics/ New test.
2002-07-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
print to match vendor <ctype.h>.
2002-07-15 Phil Edwards <>
* docs/html/faq/index.html: Fix download links.
* docs/html/faq/index.txt: Regenerate.
* docs/html/17_intro/porting.html: Regenerate from earlier changes.
2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* (target_os switch): Allow for irix6*o32
2002-07-10 Gabriel Dos Reis <>
* include/bits/valarray_meta.h (_UnFunBase): Take a second
template parameter. Remove _M_func data member.
(_UnFunClos): Take a third template parameter.
(__abs, __cos, __acos, __cosh, __sin, __asin, __sinh, __tan,
__atan, __tanh, __exp, __log, __log10, __sqrt): New classes.
(_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition.
2002-07-08 Eric Christopher <>
* Fix comment for mips atomicity. Add
mips*-*-linux* target, enable atomic operations there.
* config/cpu/mips/atomicity.h: Fix comments, remove
#ifndef/#endif. Add push/pop mips2.
2002-07-08 Peter Schmid <>
* include/bits/stl_deque.h (_Deque_alloc_base): Change order of
member declarations to avoid compiler warnings and restore 3.1 ABI.
2002-07-08 Phil Edwards <>
* docs/html/23_containers/howto.html: Link to dk_std::vector paper
and homepage.
2002-07-07 Paolo Carlini <>
PR libstdc++/7186
* include/bits/stl_deque.h (_Deque_iterator::operator-):
Make non-member, as already happens for the comparison
operators in accord with DR179 (Ready).
* testsuite/23_containers/ Add test02.
2002-07-04 Benjamin Kosnik <>
Jack Reeves <>
* include/std/std_streambuf.h (basic_streambuf::_M_buf): Change to
size_t, from int_type.
(basic_streambuf::_M_buf_size_opt): Same.
(basic_streambuf::_S_pback_sizex): Same.
* include/bits/streambuf.tcc: Same.
* include/std/std_streambuf.h (basic_streambuf::snextc): Use
(basic_streambuf::uflow): Same.
* include/bits/sstream.tcc (basic_stringbuf::overflow): Use
* include/bits/basic_ios.tcc (basic_ios::init): Use _CharT().
* include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use
(basic_streambuf::xsputn): Same.
(__copy_streambufs): Same.
2002-07-03 Benjamin Kosnik <>
* include/std/std_memory.h: Fix formatting.
* testsuite/20_util/ New.
* testsuite/20_util/ Tweaks.
* testsuite/23_containers/ (test01): Split into..
* testsuite/23_containers/ (test01): ...this. New.
* testsuite/23_containers/ Move to...
* testsuite/23_containers/
* testsuite/README: Add some more naming rules.
2002-07-03 Steev Wilcox <>
PR libstdc++/7057
* include/ext/stl_hashtable.h: Fix.
* testsuite/ext/ New.
2002-07-03 Jack Reeves <>
Kenny Simpson <>
Phil Edwards <>
PR libstdc++/3946
* testsuite/20_util/ (test08): New test.
* include/std/std_memory.h (auto_ref_ptr): Make constructor explicit.
(auto_ptr::operator auto_ptr_ref): Fix typo.
General reformatting and doxygenating of the whole file.
2002-07-03 Benjamin Kosnik <>
PR libstdc++/7097
* include/c/std_cwchar.h: Fix.
2002-07-02 Benjamin Kosnik <>
PR libstdc++/6410
* include/bits/locale_facets.h (moneypunct::moneypunct): Add const
char* name parameter.
* config/locale/gnu/ Use it.
* config/locale/generic/ Same.
* src/ (_Impl::_Impl(const char*, size_t)): Use it.
* include/backward/strstream.h: Update date.
2002-07-02 Paolo Carlini <>
PR libstdc++/6642
* include/bits/stl_iterator.h
(__normal_iterator::operator-(const __normal_iterator&)):
Make non-member, as already happens for the comparison
operators in accord with DR179 (Ready).
* testsuite/24_iterators/ Add test from the PR.
2002-07-02 Phil Edwards <>
PR libstdc++/7173
* acinclude.m4: Simplify determination of gcc_version, and move
* (release_VERSION): Really remove.
* aclocal.m4, configure: Regenerate.
2002-07-02 Phil Edwards <>
* docs/html/configopts.html, docs/html/install.html: Tweaks.
* include/ext/algorithm, include/ext/hash_map, include/ext/hash_set,
include/ext/iterator, include/ext/numeric, include/ext/rb_tree,
include/ext/slist, include/ext/stl_rope.h: Add doxygen hooks.
2002-07-01 Benjamin Kosnik <>
* include/backward/strstream: Remove namespace std. Transfer to...
* include/backward/strstream.h: Qualify std names.
* src/ Remove namespace std.
* include/ (backward_headers): Remove strstream.h.
* include/ Regenerate.
* config/linker-map.gnu: Export strstream bits.
* src/ Tweak.
* src/ Same.
* src/ Same.
* src/ Same.
* src/ Same.
* src/ Same.
* src/ Same.
* src/ Remove unused instantiations.
2002-07-01 Benjamin Kosnik <>
* (libtool_VERSION): Bump to 5:0:0.
* configure: Regenerate.
2002-06-28 Phil Edwards <>
PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161
* include/std/std_queue.h: Include deque.tcc, vector.tcc.
* include/std/std_stack.h: Include deque.tcc.
* testsuite/23_containers/ New file.
2002-06-27 Phil Edwards <>
* include/bits/stl_alloc.h: Deprecate all 'reallocate' memfns.
* docs/html/ext/howto.html: Update allocator notes.
2002-06-26 Benjamin Kosnik <>
* (INTERFACE): Remove.
(release_VERSION): Remove.
* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
(libstdcxx_interface): Change. Use gcc methods to determine version.
* configure: Regenerate.
* aclocal.m4: Regenerate.
2002-06-25 DJ Delorie <>
* acinclude.m4 (GLIBCPP_CONFIGURE): Split out
* aclocal.m4: Likewise.
* Call it before AC_CANONICAL_SYSTEM.
* configure: Regenerate.
2002-06-25 Jessica Han <>
* config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
* libsupc++/ Handle the 8 byte aligned vtable entries when
2002-06-25 Benjamin Kosnik <>
* include/bits/stl_alloc.h: Additional formatting.
2002-06-24 Phil Edwards <>
* include/bits/stl_alloc.h: Reformat as per C++STYLE.
2002-06-24 Phil Edwards <>
* config/cpu/*/bits/*: Move header files up a level. Remove bits.
* config/os/*/bits/*: Likewise.
* Update.
* configure: Regenerate.
* Update.
* docs/html/17_intro/porting.texi: Update.
2002-06-21 Phil Edwards <>
* include/bits/stl_map.h, include/bits/stl_multimap.h,
include/bits/stl_queue.h, include/bits/stl_stack.h: Reformat and
complete doxygenation.
* include/bits/boost_concept_check.h: Minor comment.
2002-06-21 Benjamin Kosnik <>
* include/c_compatibility: New.
* include/c_compatibility/assert.h: New.
* include/c_compatibility/ctype.h: New.
* include/c_compatibility/errno.h: New.
* include/c_compatibility/float.h: New.
* include/c_compatibility/iso646.h: New.
* include/c_compatibility/limits.h: New.
* include/c_compatibility/locale.h: New.
* include/c_compatibility/math.h: New.
* include/c_compatibility/setjmp.h: New.
* include/c_compatibility/signal.h: New.
* include/c_compatibility/stdarg.h: New.
* include/c_compatibility/stddef.h: New.
* include/c_compatibility/stdio.h: New.
* include/c_compatibility/stdlib.h: New.
* include/c_compatibility/string.h: New.
* include/c_compatibility/time.h: New.
* include/c_compatibility/wchar.h: New.
* include/c_compatibility/wctype.h: New.
* include/c/std_cerrno.h: Get out of the way... define errno.
* include/c/std_cmath.h: Add abs, modf overloads.
Undefine C99 isms. Still not sure how to deal with this sanely.
* include/c/std_csetjmp.h: Tweak.
* include/c/std_cwchar.h: Include cstddef for size_t.
* include/c_std/std_cmath.h: Remove extra function.
Pendantic std usage in testsuites.
* testsuite/17_intro/ (test01): Qualify ldiv_t
with std.
* testsuite/17_intro/ Tweak.
* testsuite/22_locale/ (test03): Use
* testsuite/22_locale/ (test05): Same.
* testsuite/22_locale/ (test05): Same.
* testsuite/22_locale/ (test05): Same.
* testsuite/22_locale/ (test05): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ (test08): Same.
* testsuite/22_locale/ (test08): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ Same.
* testsuite/22_locale/ Same.
* testsuite/22_locale/ (test07): Same.
* testsuite/22_locale/ (test07): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ (test08): Same.
* testsuite/22_locale/ (test08): Same.
* testsuite/22_locale/ (test03): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/22_locale/ (test04): Same.
* testsuite/26_numerics/ Use std::printf.
* testsuite/27_io/ (test02): Qualify abort.
* testsuite/27_io/ (test11): Qualify strtol.
2002-06-20 Benjamin Kosnik <>
* libsupc++/ (libsupc__convenience_la_SOURCES): Add
2002-06-20 Benjamin Kosnik <>
* src/ (__gnu_cxx): Use instead of std:: for extensions.
Use size_type instead of unsigned long.
2002-06-20 Steve Ellcey <>
* src/ (_S_fetch): Add explicit templates for char and
wchar types.
(_S_min_len): Ditto.
2002-06-20 Benjamin Kosnik <>
* include/ Add rules.
* include/ Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* (c_model, c_compatibility): Add.
* libsupc++/ (c_sources): New.
(libsupc___la_SOURCES): Add c_sources.
(C_COMPILE): New, like COMPILE but without INCLUDES.
(cxa_demangle.o): Use C_COMPILE.
(dyn-string.o): Use C_COMPILE.
* include/c/std_cstdarg.h: Define __need___va_list.
* include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
need_NULL, need_offsetof.
2002-06-19 Steve Ellcey <>
definitions in hpux11 cross-build because these functions do
not exist on hpux11 (but some exist on hpux10); move defaults out
into existing sections.
* configure: Regenerate.
2002-06-18 Benjamin Kosnik <>
* include/c/std_cwchar.h: Guard. Add mbstate_t bits.
* include/c/std_cwctype.h: Guard.
* libsupc++/ Tweak include order.
* libsupc++/ Use cstdio.
* libsupc++/ Remove malloc forward declaration, as
cstdlib brings it in. Use std::malloc.
* src/ (sources): Remove
* src/ Regenerate.
* src/ Remove.
2002-06-18 Phil Edwards <>
* Force mips to use the generic cpu routines.
2002-06-18 Phil Edwards <>
* Delete file.
* More documentation. Factor out common parts of
script into "intelligent" settings about defaults. Remove redundancy.
* acinclude.m4: Update comments. Do not call
(GLIBCPP_ENABLE_SYMVERS): If disabled, do not bother checking for
* Slight reformatting, more comments. Factor out
"config/" from all the directories.
* docs/html/17_intro/porting.texi: Update and expand.
* testsuite/ (AM_RUNTESTFLAGS): Move empty setting
* aclocal.m4, configure, docs/html/17_intro/porting.html,
testsuite/ Regenerate.
2002-06-16 Phil Edwards <>
* docs/doxygen/TODO: Update.
* docs/doxygen/tables.html: Uncomment magical middle column.
* docs/doxygen/ Kludge to ignore function-like macros.
* include/bits/stl_queue.h: Doxygenate and reformat.
* include/bits/ios_base.h, include/std/std_streambuf.h: Add comment
for deprecated names required by the standard.
2002-06-14 J.T. Conklin <>
* (target_alias): Fix.
* configure: Regenerate.
* aclocal.m4: Regenerate.
2002-06-12 Phil Edwards <>
* include/ Add new files.
* include/ Regenerate.
* include/bits/stl_deque.h, include/bits/stl_list.h,
include/bits/stl_vector.h: Clean up, reformat. Move definitions...
* include/bits/deque.tcc, include/bits/list.tcc,
include/bits/vector.tcc: here. New files.
* include/ext/stl_hashtable.h: Inclide correct full headers.
* include/std/std_deque.h: Include .tcc files for now.
* include/std/std_list.h: Likewise.
* include/std/std_vector.h: Likewise.
2002-06-12 Daniel Jacobowitz <>
* Regenerated.
2002-06-11 J.T. Conklin <>
Benjamin Kosnik <>
* Set os_include_dir to config/os/qnx/qnx6.1
under *-qnx6.[12]*.
* Add support for *-qnx6.[12]*.
* configure: Regenerate.
* config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
New directories.
* config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
ctype_noninline.h, os_defines.h: New files.
2002-06-10 Loren J. Rittle <>
* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT_ancilliary): Reorder and
include all required headers for test against older POSIX standard.
(ac_setrlimit): Likewise.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* testsuite/ Reorder and include all
required headers for use against older POSIX standard.
2002-06-08 Paolo Carlini <>
* testsuite/backwards/ New.
2002-06-08 Benjamin Kosnik <>
* include/backwards/strstream: Format.
* src/ Format.
2002-06-08 Andreas Schwab <>
* src/ (strstreambuf::overflow): Set _M_buf,
_M_buf_size and _M_buf_size_opt to the new buffer and size.
2002-06-08 Benjamin Kosnik <>
* config/os/generic/bits/ctype_noninline.h: Tweak format.
2002-06-07 Steve Ellcey <>
* src/ (__codecvt_abstract_base):
Put inside _GLIBCPP_USE_WCHAR_T ifdef.
* include/bits/istream.tcc (basic_istream): Ditto.
(ws) Ditto.
(operator>>) Ditto.
* include/bits/ostream.tcc (basic_ostream): Ditto.
(endl): Ditto.
(ends): Ditto.
(flush): Ditto.
(operator<<): Ditto.
2002-06-07 Phil Edwards <>
* Link against local testsuite library.
* testsuite/testsuite_hooks.h (__set_testsuite_memlimit): Move null
implementation out...
* testsuite/ here.
2002-06-06 Loren J. Rittle <>
* src/ (AUTOMAKE_OPTIONS): Use cygnus-style generation.
* include/ (AUTOMAKE_OPTIONS): Likewise.
* testsuite/ (AUTOMAKE_OPTIONS): Likewise.
* src/ Regenerate (explicitly with --cygnus option).
* testsuite/ Likewise.
2002-06-05 David Edelsohn <>
* config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
Call external symbol.
2002-06-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
Search correct multilib testsuite dir for libv3test.
2002-06-04 Paolo Carlini <>
Gaby Dos Reis <>
* include/bits/basic_string.tcc
Fix typo in null pointer check.
* testsuite/21_strings/ Add test04.
2002-06-04 Paolo Carlini <>
* testsuite/22_locale/
(test02): Add decimal point to long double constants.
* testsuite/22_locale/
(test02): Likewise.
* testsuite/22_locale/
(test02, test03, test06): Likewise.
* testsuite/22_locale/
(test02, test03, test06): Likewise.
* testsuite/22_locale/
(test02, test01): Likewise; suffix long long constants with LL.
* testsuite/22_locale/
(test02, test01): Likewise.
* testsuite/22_locale/
(test02, test01): Likewise.
* testsuite/22_locale/
(test02, test01): Likewise.
2002-06-03 Marc Espie <>
* config/cpu/m68k/bits/atomicity.h(__exchange_and_add): Fix inline
assembly for old assemblers.
2002-06-03 Phil Edwards <>
* include/bits/stl_bvector.h (swap(_Bit_reference,_Bit_reference)):
(vector<bool>::swap(reference,reference)): this.
2002-06-03 Phil Edwards <>
* docs/doxygen/TODO: Update.
* docs/doxygen/ (SORT_MEMBER_DOCS): Set to off, now that
some class members are in 14882 order.
* docs/html/ext/howto.html: 3.1 is in the past now, not the future.
* include/std/std_bitset.h: Update comment.
* src/ Update comments, clean up spacing.
* src/ (sources): Alphabetize for convenience.
* src/ Regenerate.
2002-06-03 Phil Edwards <>
* include/bits/stl_deque.h, include/bits/stl_list.h,
include/bits/stl_vector.h: Reformat to (mostly) match C++STYLE.
Reorder to match 14882. Doxygen blocks for all public members.
2002-05-31 Marcus Meissner <>
PR libstdc++/6886
* include/bits/stl_bvector.h: Use UL suffix for unsigned longs.
* testsuite/23_containers/ (test02): New test.
2002-05-30 Marc Espie <>
* Always check for sys/types.h
* configure: Regenerate.
2002-05-28 Nick Clifton <>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init):
Rebuild the wrapper file every time this proc is called.
2002-05-28 Phil Edwards <>
* testsuite/ (noinst_LIBRARIES): New target. Pull in
* testsuite/ Regenerate.
* testsuite/testsuite_hooks.h (gnu_copy_tracker): Move from and rename from 'T'. Move code bodies...
* testsuite/ here. New file.
* testsuite/23_containers/ Move 'T' class out.
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3_target_compile):
Add libv3test.a to link options.
2002-05-27 Benjamin Kosnik <>
* src/ Define unnecessary algorithm
instantiations. Break apart instantiations into groupings below.
* src/ New.
* src/ New.
* src/ New.
* src/ New.
* src/ New.
* src/ New.
* src/ (sources): Add files.
* src/ Regenerate.
* acinclude.m4: Work around automake 1.4-p5 bug, change
2002-05-27 Benjamin Kosnik <>
PR libstdc++/6795.
* config/os/solaris/solaris2.6/bits/ctype_noninline.h
(classic_table): Fix.
* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
2002-05-27 Benjamin Kosnik <>
* testsuite/22_locale/ Guard with
* testsuite/22_locale/ Same.
* testsuite/22_locale/ Same.
* testsuite/22_locale/ Same.
2002-05-26 Carlo Wood <>
Paolo Carlini <>
PR libstdc++/6811
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(__enc_traits::operator=): add missing return statement.
2002-05-24 Phil Edwards <>
PR libstdc++/6282
* include/std/std_bitset.h (_Base_biteset<0>): New specialization.
(operator>>): If nothing was extracted, don't fail in the
zero-length case.
* testsuite/23_containers/ (test02): New test.
2002-05-24 Benjamin Kosnik <>
PR libstdc++/6701
* testsuite/22_locale/ New.
* testsuite/22_locale/ New.
* testsuite/22_locale/ New.
* testsuite/22_locale/ New.
* testsuite/22_locale/ Move some bits into...
* testsuite/22_locale/ ...this.
* testsuite/22_locale/ ...and this.
* testsuite/22_locale/ Move some bits into...
* testsuite/22_locale/ ...this.
* testsuite/22_locale/ ...and this.
* testsuite/22_locale/ Should pass.
2002-05-24 Dale Peakall <>
PR libstdc++/6701
* config/locale/gnu/ (ctype<wchar_t>::do_narrow): Fix.
* config/locale/generic/ Same.
2002-05-24 Benjamin Kosnik <>
PR libstdc++/6750
* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
for empty string literal.
(ostream::operator<<(const _CharT*)): Same.
(ostream<char>::operator<<(const char*)): Same.
(ostream<char>::operator<<(streambuf*)): Same.
* testsuite/27_io/ (test08): Add tests.
* testsuite/27_io/ (test02): Modify.
2002-05-23 Benjamin Kosnik <>
* (release_VERSION): Update to 3.1.1.
(libtool_VERSION): Update to 4:1:0.
* configure: Regenerate.
2002-05-21 Phil Edwards <>
* include/bits/stl_pair.h: Tweak comment markup.
2002-05-21 Phil Edwards <>
* include/ext/stdio_filebuf.h: Add header guards. Doxygenate.
2002-05-21 Phil Edwards <>
* docs/doxygen/ (EXCLUDE): Add 'CVS'.
2002-05-21 Phil Edwards <>
* include/bits/stl_vector.h: Reformat to follow C++STYLE.
Doxygenate all public members. Reorder to follow 14882.
(vector::push_back(void)): Remove previously-deprecated fn.
(vector::insert(iterator), vector::_M_insert_aux(iterator)):
Deprecate for removal in 3.3.
2002-05-20 Phil Edwards <>
* docs/html/faq/index.html (5.4): Recommend against -I options for
finding the ext headers.
* docs/html/faq/index.txt: Regenerate.
2002-05-19 Paolo Carlini <>
* testsuite/23_containers/ (test01):
Fix minor typo in last commit.
2002-05-18 Paolo Carlini <>
PR libstdc++/6503
* include/bits/stl_deque.h (_Deque_iterator::operator==,
operator!=, operator<, operator>, operator>=, operator<=):
Make non-member functions, to allow comparing const and
non-const iterators in any order.
* testsuite/23_containers/ New testfile.
2002-05-16 Phil Edwards <>
* docs/html/faq/index.html: Update not-a-bug list with basic_file.h.
* docs/html/faq/index.txt: Regenerate.
2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Allow for PWDCMD to override hardcoded pwd.
* acinclude.m4: Likewise.
* docs/html/Makefile: Likewise.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Regenerate.
2002-05-15 Loren J. Rittle <>
* include/bits/c++config (__USE_MALLOC): Report case where
the user improperly defined it on the command line.
2002-05-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* testsuite/testsuite_hooks.h (__set_testsuite_memlimit):
Retrieve current limits before setting.
2002-05-15 Benjamin Kosnik <>
PR libstdc++/6518
* include/bits/ostream.tcc (ostream::operator<<(const char*)): Fix
for null case.
(ostream::operator<<(const _CharT*)): Same.
(ostream<char>::operator<<(const char*)): Same.
* testsuite/27_io/ (test07): Add test.
2002-05-15 Benjamin Kosnik <>
PR libstdc++/6594
* src/ (strstreambuf): Fix leak.
2002-05-15 Paolo Carlini <>
PR libstdc++/6648
* include/bits/istream.tcc (istream::getline, ignore):
Upon __idelim (__delim) call sbumpc() not snextc().
* testsuite/27_io/
Add test08 and test09.
2002-05-13 Benjamin Kosnik <>
* testsuite/22_locale/ Tweak.
* testsuite/22_locale/ New.
* docs/html/install.html: Fix.
2002-05-13 Benjamin Kosnik <>
* include/bits/fstream.tcc
(basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
try/catch blocks.
* src/ (locale::_Impl::_M_install_facet): Same.
* docs/html/install.html: Tweak, add bits about required locales
for the 22_locale tests when using the gnu model.
* testsuite/27_io/ Tweak.
2002-05-13 Kaveh R. Ghazi <>
* config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
Fix typo, use this->is() rather than manually (and perhaps
incorrectly) inlining it.
* config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
* testsuite/22_locale/ New file.
2002-05-13 Paolo Carlini <>
Jakub Jelinek <>
* testsuite/22_locale/
(test01, test02, test04): Use the de_DE@euro named locale
instead of de_DE to allow for an uniform behaviour with
both old and Euro-era localedata; tweak some tests.
* testsuite/22_locale/
(test01, test02, test04): Likewise.
* testsuite/22_locale/
(test01, test02, test04): Likewise.
* testsuite/22_locale/
(test01, test02, test04): Likewise.
2002-05-13 Paolo Carlini <>
* testsuite/22_locale/
(test03): Robustify wrt localedata.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test04): Likewise.
* testsuite/22_locale/ (test04): Likewise.
* testsuite/22_locale/ (test05): Likewise.
* testsuite/22_locale/ (test04): Likewise.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test08): Likewise.
* testsuite/22_locale/ (test08): Likewise.
* testsuite/22_locale/ (test07): Likewise.
* testsuite/22_locale/ (test07): Likewise.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test06): Likewise.
* testsuite/22_locale/ (test06): Likewise.
* testsuite/22_locale/ (test04): Add comment.
* testsuite/22_locale/ (test04): Likewise.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test03): Likewise.
* testsuite/22_locale/ (test08): Likewise.
* testsuite/22_locale/ (test08): Likewise.
* testsuite/22_locale/ (test04): Likewise.
* testsuite/22_locale/ (test04): Likewise.
2002-05-12 Kaveh R. Ghazi <>
* config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
2002-05-11 John David Anglin <>
* config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
to 64 for hppa 64-bit port.
(__glibcpp_long_double_bits): Define to 64 for all hppa ports.
2002-05-10 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* acinclude.m4 (enable_symvers): Quote $LD.
* aclocal.m4: Regenerate.
* configure: Likewise.
2002-05-09 Jakub Jelinek <>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Append all
multilib dirs containing libgcc_s*.so.1 below gcc object dir to
2002-05-08 Alexandre Oliva <>
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.
2002-05-07 Mark Mitchell <>
* Add support for WindISS.
* configure: Regenerated.
* Add support for WindISS.
* config/os/windiss/bits/ctype_base.h: New file.
* config/os/windiss/bits/ctype_inline.h: Likewise.
* config/os/windiss/bits/ctype_noninline.h: Likewise.
* config/os/windiss/bits/os_defines.h: Likewise.
2002-05-06 Paolo Carlini <>
Test all the facets for the temporary "C" locale switch issue.
* testsuite/22_locale/ Add test03.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test04.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test05.
* testsuite/22_locale/ Add test04.
* testsuite/22_locale/ Add test03.
* testsuite/22_locale/ Add test08.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test07.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test03.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test06.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test03.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test08.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ Add test04.
* testsuite/22_locale/ Likewise.
* testsuite/22_locale/ (test04): Add comment.
* testsuite/22_locale/ (test04): Likewise.
2002-05-06 Kaveh R. Ghazi <>
* config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
__EXTENSIONS__): Ensure they are always defined.
2002-05-06 Phil Edwards <>
* docs/html/documentation.html: Fix broken link.
2002-05-04 Benjamin Kosnik <>
Paolo Carlini <>
* testsuite/22_locale/ Add test04(),
testing for the locale_facets.tcc entry of the previous commit.
* testsuite/22_locale/ Likewise.
2002-05-04 Takeshi Kobayakawa <>
* config/locale/generic/
(__convert_to_v(float, double, long double)):
Fix the temporary switch to the "C" locale, saving and
restoring in the proper way the current locale.
* config/locale/generic/
(__timepunct<char, wchar_t>::_M_put): Likewise.
* config/locale/gnu/
(messages<char>::do_get): Likewise.
* config/locale/gnu/messages_members.h
(messages<_CharT>::do_get): Likewise.
* config/locale/gnu/
(__timepunct<char, wchar_t>::_M_put): Likewise.
* include/bits/locale_facets.tcc (__convert_from_v): Likewise.
2002-05-04 Kaveh R. Ghazi <>
* (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
* libsupc++/ (LTCOMPILE): Add $(DEFS).
*,, configure: Regenerate.
2002-05-03 Benjamin Kosnik <>
PR libstdc++/6549.
* include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert.
* testsuite/27_io/ (test07): Add.
2002-05-03 Kaveh R. Ghazi <>
* config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
Return __ctype + 1.
(ctype:_M_table): Initialize to classic_table(), not __ctype.
2002-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Update local install.html, configopts.html paths.
* configure: Regenerate.
2002-05-02 Kaveh R. Ghazi <>
* config/os/irix/irix5.2/bits/os_defines.h
(__glibcpp_long_double_bits, __glibcpp_long_bits): Define.
* config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
2002-05-02 Phil Edwards <>
* docs/html/faq/index.html: Update list in #4.1.
* docs/html/faq/index.txt: Regenerated.
2002-05-02 Benjamin Kosnik <>
* docs/html/17_intro/RELEASE-NOTES (New): Update.
2002-05-01 Phil Edwards <>
* include/std/std_bitset.h: Fix doxygen comments.
* docs/html/documentation.html: Minor tweaks for 3.1.
* docs/html/27_io/howto.html: Likewise.
* docs/html/ext/howto.html: Likewise, mention stdio_filebuf.
* docs/html/faq/index.html: Likewise.
* docs/html/faq/index.txt: Regenerated.
2002-05-01 Benjamin Kosnik <>
PR libstdc++/6533
* include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get): New.
(istreambuf_iterator::equal): Use it.
(istreambuf_iterator::operator*): Use it.
2002-05-01 Paolo Carlini <>
PR libstdc++/6513
* include/bits/stl_uninitialized.h
(uninitialized_copy(_InputIter, _InputIter, _ForwardIter)):
Fix typo in 2001-07-17 commit: typedef _ValueType to
iterator_traits<_ForwardIter> not <_InputIter>.
* testsuite/23_containers/ Add test04.
2002-04-30 John David Anglin <>
PR libstdc++/6501
* include/c_std/std_cctype.h: Include bits/c++config.h.
* config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.
2002-04-30 Benjamin Kosnik <>
* include/ext/stdio_filebuf.h: New file.
* include/ext/enc_filebuf.h: New file.
* config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
* config/io/ Same.
* include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
Remove _M_unbuf hacks.
(filebuf::_M_destroy_internal_buffer): Same.
(filebuf::filebuf(cfile, openmode, int_type): Remove definition.
(filebuf::fd): Remove.
* include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
(filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
(filebuf::fd): Remove.
* src/ (ios_base::_S_ios_create): Change to use specialized
(ios_base::_S_ios_destroy): Same.
* src/ (file_filebuf<char>): Add instantiation.
* include/ (ext_headers): Add ext_filebuf.h,
stdio_filebuf.h. * include/ Regenerate.
2002-04-30 Benjamin Kosnik <>
PR libstdc++/6511
* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.
2002-04-29 Benjamin Kosnik <>
PR libstdc++/5820
* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
Check for eof.
* include/bits/streambuf_iterator.h: Match stream_iterator.h.
(istreambuf_iterator::operator++): Invalidate on eof.
(istreambuf_iterator::operator++(int)): Same.
(istreambuf_iterator::operator*): Same.
2002-04-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all
2002-04-28 Benjamin Kosnik <>
PR libstdc++/5820
* config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
(__basic_file::sys_ungetc): Take int.
* config/io/ (__basic_file::sys_ungetc): Same.
* include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
Use sys_getc for unbuffered input.
* testsuite/27_io/ (test06): New.
* src/ (_M_grow_words): Adjust error checking.
* testsuite/27_io/ Same.
2002-04-28 Peter Schmid <>
* include/ext/stl_hashtable.h: Import __iterator_category
2002-04-28 Paolo Carlini <>
Peter Schmid <>
* testsuite/ext/ New testfile.
2002-04-27 Benjamin Kosnik <>
* config/os/solaris/solaris2.5/bits/os_defines.h: Remove
* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
* config/os/solaris/solaris2.7/bits/os_defines.h: Same.
2002-04-26 Paolo Carlini <>
* include/bits/basic_string.h (replace(__pos, __n1, __s, __n2):
Fix and tighten __throw_length_error check.
* testsuite/21_strings/ (test05): New.
* testsuite/21_strings/ (test02, test03, test04): Tweak.
2002-04-23 Loren J. Rittle <>
* include/std/std_fstream.h (basic_filebuf::sync): Hoist
unconditional flush on lower-layer handle to here...
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
...from here. Optimize remaining _M_file.sync() call pattern.
* testsuite/27_io/ (test04): New test.
(test05): Likewise.
2002-04-23 Jason Merrill <>
* include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
output-only filebufs.
* include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
(basic_filebuf::_M_set_determinate): Likewise.
PR libstdc++/6414
* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
value properly in the trivial case.
* testsuite/27_io/ (test04): Make sure that
tellg() returns the right value after a read.
2002-04-23 Hans-Peter Nilsson <>
* config/cpu/mmix/bits/cpu_limits.h: New file.
* (CPULIMITSH): Use it.
2002-04-22 Loren J. Rittle <>
* docs/html/17_intro/porting.texi (_GLIBCPP_AVOID_FSEEK): Remove.
* docs/html/17_intro/porting.html: Rebuilt.
2002-04-20 Jason Merrill <>
PR libstdc++/4150
* include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
Move to filebuf.
(basic_streambuf::_M_set_determinate): Likewise.
(basic_streambuf::_M_is_indeterminate): Likewise.
* include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
non-static data member.
(basic_filebuf::_M_underflow_common): New non-static member function.
(basic_filebuf::_M_underflow, _M_uflow): Call it.
(basic_filebuf::sync): Avoid useless seeking.
(basic_filebuf::_M_set_indeterminate): Move here from streambuf.
Set _M_filepos.
(basic_filebuf::_M_set_determinate): Likewise.
(basic_filebuf::_M_is_indeterminate): Likewise.
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
back to _M_out_beg if necessary.
(basic_filebuf::seekoff): Likewise.
(basic_filebuf::_M_underflow_common): Generalization of old
underflow(). Don't seek back to _M_in_beg.
* src/ Lose _GLIBCPP_AVOID_FSEEK stuff.
* config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
* config/os/bsd/freebsd/bits/os_defines.h: Likewise.
* config/os/mingw32/bits/os_defines.h: Likewise.
* testsuite/27_io/ (test05): Don't overspecify
ungetc test.
2002-04-22 Benjamin Kosnik <>
* include/bits/istream.tcc (istream::read): Fix.
* testsuite/27_io/ (main): Add.
2002-04-20 Benjamin Kosnik <>
PR libstdc++/6360
* include/bits/istream.tcc (istream::ignore): Streamline, use
delimiter as is.
* include/bits/streambuf.tcc: Use this->gptr.
* testsuite/27_io/ (test08): Add test.
2002-04-18 Benjamin Kosnik <>
* include/bits/localefwd.h (locale::id::_M_id): Do this correctly,
as type safety is important, especially on solaris.
* include/bits/istream.tcc (istream::read): Clean.
(istream::readsome): Same.
* Wrap lines.
* testsuite/21_strings/ Tweaks.
* testsuite/27_io/ (test): Add bool variable...
* testsuite/21_strings/ Clean.
2002-04-17 Phil Edwards <>
* docs/doxygen/ New group on binary searching.
* include/bits/stl_algo.h: Document binary searches and merges.
* include/bits/stl_deque.h: The 'map' member is not the 'map' class.
2002-04-17 Phil Edwards <>
* docs/doxygen/mainpage.html: Doxygen logo is now a PNG file.
* docs/doxygen/run_doxygen: Bump required version.
* docs/doxygen/ Revert accidental change.
* docs/html/faq/index.html: Reindent a block of links.
(4.4): New note on using dlsym.
* docs/html/faq/index.txt: Regenerated.
2002-04-17 Phil Edwards <>
* (cxxflags): Also pass @EXTRA_CXX_FLAGS@.
2002-04-17 Benjamin Kosnik <>
* config/linker-map.gnu (__malloc_alloc_template): Add.
(__default_alloc_template): Same.
* include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
(__default_alloc_template): Same.
2002-04-17 Benjamin Kosnik <>
* testsuite/27_io/ Add _S_pback_size instantiation.
2002-04-16 Benjamin Kosnik <>
* src/ (vector<locale::facet*>): Remove instantiations.
* src/ (vector::_M_insert_aux): Remove instantiation.
(__malloc_alloc_template): Conditionalize.
* include/bits/istream.tcc: Remove sputbackc calls.
* testsuite/19_diagnostics/ Fix comment.
2002-04-16 Paolo Carlini <>
* testsuite/24_iterators/ New test.
2002-04-16 Gabriel Dos Reis <>
* 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
* include/bits/stl_vector.h (_Alloc>): Likewise.
* src/ (__gnu_cxx): __normal_iterator<> is now here.
* src/ (operator==): Instantiate in __gnu_cxx.
2002-04-15 Benjamin Kosnik <>
PR libstdc++/4164
Valgrind fixes.
* config/io/ (__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/
(locale::facet::_S_create_c_locale): Add parameter.
* config/locale/generic/ Change
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/generic/ Changeup data types.
Add dtors.
* config/locale/generic/ Add dtors.
* config/locale/generic/ Add dtors.
* config/locale/gnu/ Add parameter.
* config/locale/gnu/
_M_compare_helper to _M_compare.
Change _M_transform_helper to _M_transform.
* config/locale/gnu/ Better error checking.
* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
* config/locale/gnu/ Tweak comment.
* config/locale/gnu/ Change data types.
Add dtors.
* config/locale/gnu/ Add dtors, better error
* config/locale/gnu/ Same.
* config/locale/ieee_1003.1-2001/
(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
* include/bits/localefwd.h: (locale::id::_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/ Add pre-allocations for "C" facets.
* src/ Remove vector instantiations.
* src/ Remove vector include. Fixups for _M_names,
_M_facets changes.
* src/ 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/ Fixup.
* testsuite/22_locale/ Same.
* testsuite/27_io/ Same.
2002-04-12 Steve Ellcey <>
* gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
(strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
does not define strtoll or strtoull, but does define strtol
and strtoul which are the same since in 64 bit mode
sizeof(long) == sizeof(long long).
2002-04-12 Phil Edwards <>
* include/std/std_bitset.h: Doxygenate std::bitset<>. Clean up
trailing spaces, indentation, and macro names. Make exception
messages more informative.
2002-04-11 Richard Henderson <>
* include/bits/fstream.tcc (basic_filebuf<>::open): Fix & ordering.
* include/bits/ostream.tcc (basic_ostream<>::operator<<(long)): Same.
(basic_ostream<>::operator<<(long long)): Same.
2002-04-11 Richard Henderson <>
* config/linker-map.gnu: Add __gxx_personality_sj0.
2002-04-09 Benjamin Kosnik <>
* include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
pointer to vector.
Remove forward declaration of vector.
Include vector.
* include/bits/locale_facets.tcc: Remove vector include.
(use_locale): Adjust.
(has_locale): Adjust.
* src/ Adjust.
* src/ Same.
2002-04-09 Benjamin Kosnik <>
Richard Henderson <>
* include/bits/sstream.tcc: Clean up bit ops.
* include/bits/fstream.tcc: Same.
2002-04-09 Jakub Jelinek <>
* include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
(__num_base::_S_scale_oct): Remove.
* src/ (__num_base::_S_scale_hex): Remove.
(__num_base::_S_scale_oct): Remove.
2002-04-09 Benjamin Kosnik <>
* testsuite/23_containers/ New test.
* include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
(_S_bit_count): Here.
(_First_one::_S_first_one): Move...
(_S_first_one): Here.
* src/ Adjust.
* config/linker-map.gnu: Export.
2002-04-08 Benjamin Kosnik <>
* include/bits/fstream.tcc (filebuf::seekpos): Fix.
* include/std/std_fstream.h: Clean.
* include/bits/ostream.tcc: Remove extraneous variables.
* include/bits/sstream.tcc (stringbuf::seekoff): Be strict about
open modes and which modes.
(stringbuf::seekpos): Same.
* testsuite/27_io/ New tests.
2002-04-05 Jonathan Wakely <>
* include/bits/stl_algo.h (unique_copy, __gcd, rotate, rotate_copy,
random_shuffle, partition, stable_partition, sort, stable_sort,
partial_sort, partial_sort_copy, nth_element): Doxygenate.
2002-04-05 David S. Miller <>
* config/os/gnu-linux/bits/os_defines.h
(__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.
2002-04-04 Benjamin Kosnik <>
* acinclude.m4 (version_specific_libs): Fix combo usage with
* aclocal.m4: Regenerate.
* configure: Same.
2002-04-03 Benjamin Kosnik <>
As per DR 184, libstdc++/3139
* include/std/std_limits.h (__glibcpp_bool_digits): Change to 1.
(numeric_limits<bool>::is_iec559): False.
(numeric_limits<bool>::is_modulo): False.
* testsuite/27_io/ Add instantiations.
2002-04-02 Benjamin Kosnik <>
* src/ (ios_base::Init::_S_ios_destroy): Remove flush calls.
* testsuite/27_io/ (tests04): Add test.
* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
(basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
* include/bits/basic_ios.tcc: Same. Remove outdated comments.
* include/bits/istream.tcc: Use _M_fctype, make consistent with
* testsuite/27_io/ (tests03): Add test.
2002-04-02 Phil Edwards <>
* include/ (install-data-local): Use mkinstalldirs.
* include/ Regenerate.
2002-04-02 Paolo Carlini <>
Nathan Myers <>
Philip Martin <>
* 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/ (test04): New tests.
2002-04-01 Benjamin Kosnik <>
* acinclude: More extensive checks for msgfmt, --enable-nls.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2002-04-01 Phil Edwards <>
* libsupc++/exception (__verbose_terminate_handler): Point to docs.
* docs/doxygen/ Doxygen hooks for abi::__cxa_demangle.
* docs/html/18_support/howto.html: Document the demangler.
* docs/html/17_intro/howto.html: And link to it.
* docs/doxygen/mainpage.html: Describe user-vs-maintainer docs.
* docs/doxygen/run_doxygen: Print user-vs-maintainer.
2002-04-01 Phil Edwards <>
* config/linker-map.gnu: Export __verbose_terminate_handler.
* libsupc++/ (sources): Add cxa_demangle.c, dyn-string.c.
Make new LTCOMPILE variable, use it in new special build rules.
* libsupc++/ Rebuild.
* src/ (__verbose_terminate_handler): Enable use of
runtime __cxa_demangle.
* docs/html/install.html: Update prereqs and instructions.
* docs/html/19_diagnostics/howto.html: Bring naming for
verbose_terminate_handler into line with reality.
2002-04-01 Benjamin Kosnik <>
* 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
(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.
* include/bits/basic_ios.tcc: Adjust.
* src/ (ios_base::_M_grow_words): Tweak.
* testsuite/27_io/ Add tests.
Kenny Simpson <>
* include/bits/ios_base.h: Fix.
Richard Henderson <>
* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
last change.
* include/bits/basic_string.h: Tweak formatting.
2002-04-01 Paolo Carlini <>
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
By definition, sizeof(char) == 1.
* include/bits/locale_facets.tcc (money_get::do_get,
money_put::do_put): Ditto.
* testsuite/21_strings/
(test04): Ditto.
2002-03-30 Richard Henderson <>
PR c++/3719
* libsupc++/ (__cxa_call_unexpected): Copy handler
data out of the exception struct before calling unexpectedHandler.
2002-03-28 Roger Sayle <>
* include/c_std/std_cmath.h: To prevent problems overloading
g++ builtins, use the double variants from the global namespace
before defining float and long double variants in std::.
2002-03-28 Loren J. Rittle <>
* testsuite/18_support/ (test_extrema): Fix typo.
2002-03-28 Paolo Carlini <>
* testsuite/24_iterators/
(test02): New tests.
2002-03-28 Ulrich Weigand <>
Paolo Carlini <>
* testsuite/22_locale/
(test01): Protect the test with _GLIBCPP_USE_WCHAR_T;
fix i_lit_base e_lit_base arrays, making them independent
from the endianness of the platform; tweak UCS4 to UCS-4BE.
2002-03-27 Benjamin Kosnik <>
* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Always
allocate at least a byte.
* testsuite/18_support/ (test_extrema): Make
* testsuite/27_io/ (test07): Fix.
(test06): Enable.
2002-03-27 Phil Edwards <>
* docs/doxygen/Intro.3: Date tweak.
* docs/doxygen/TODO: Update.
* docs/doxygen/ Point to tables.html.
* docs/doxygen/mainpage.html: Date tweak.
* docs/doxygen/run_doxygen: Version tweak. Copy tables.html over.
* docs/doxygen/tables.html: Fill in the blanks.
* docs/doxygen/ (ALIASES): Remove maint and endmaint.
* include/bits/stl_algo.h: Likewise; use expanded form.
* include/bits/stl_alloc.h: Likewise.
* include/bits/stl_construct.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_iterator_base_types.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_relops.h: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/std/std_memory.h: Likewise.
* include/bits/stl_deque.h: Point into tables.html and add @ingroup.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_vector.h: Likewise.
2002-03-26 Benjamin Kosnik <>
* include/c/: Guard with _CPP_.
* include/c_std/: Same.
* include/ Fixup install, link routines for null
c_base_headers_extra scenarios.
* include/ Regerate.
2002-03-25 Paolo Carlini <>
Richard Henderson <>
* testsuite/22_locale/
(test01, test02): make sure that the i_lit_base array
is sufficiently aligned.
2002-03-25 Benjamin Kosnik <>
* config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
2002-03-25 Paolo Carlini <>
* testsuite/22_locale/
(test01): compare the result of collate::compare with
that of collate::transform + string::compare, not with
that of collate::transform + collate::compare; values
returned by collate::compare are normalized, therefore
test against +-1.
2002-03-25 Benjamin Kosnik <>
Jakub Jelinek <>
* config/locale/gnu/messages_members.h: Correct conditional.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
2002-03-25 Ulrich Weigand <>
Paolo Carlini <>
* testsuite/22_locale/
(test01, test02): Fix i_lit_base arrays, making them
independent from the endianness of the platform.
2002-03-22 Benjamin Kosnik <>
* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
signbit and __signbit directly.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Regenerate.
* libmath/ Simplify.
* libmath/ Regenerate.
* include/c_std/std_cmath.h: Update paths for include of cmath.tcc.
* include/ Clean up handling of extra "C" header files.
Add hooks for "C" compatibility headers.
* include/ Regenerate.
* include/c/*: Formatting tweaks, cleanups.
* include/c_std/*: Same.
2002-03-22 Benjamin Kosnik <>
* config/locale/gnu/messages_members.h: Add __uselocale bits.
* config/locale/gnu/ Same.
* config/locale/gnu/ Same.
2002-03-22 Benjamin Kosnik <>
* src/ Format, -fno-exceptions cleanup.
2002-03-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
(GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv.
* aclocal.m4: Regenerate.
* configure: Likewise.
2002-03-19 Paolo Carlini <>
Ulrich Drepper <>
* src/ (__convert_from_v): Add an additional
__size parameter in the declarations.
* include/bits/locale_facets.tcc
(__convert_from_v): When available (that is,
_GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
(num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
being defined or not, call and use __convert_from_v in the
appropriate way.
(num_put::_M_convert_int): Same here.
(money_put::do_put(long double)): Same here.
2002-03-19 Phil Edwards <>
* docs/html/faq/index.html (#3.6): Rewrap and close <a href> tags.
* docs/html/faq/index.txt: Regenerate.
2002-03-19 Steve Ellcey <>
--enable-libunwind-exceptions is set.
macro to check for libunwind.
* configure: Regenerate.
* src/ (libstdc___la_LDFLAGS): Add
LIBUNWIND_FLAG to libstdc link line.
* src/ Regenerate.
2002-03-19 Benjamin Kosnik <>
* docs/html/faq/index.html: Add OS X workaround.
* docs/html/17_intro/TODO: Update.
2002-03-18 Paolo Carlini <>
* include/bits/locale_facets.tcc
(money_put::do_put(long double)): Fix dimensioning of
temporary buffers to avoid risk of overruns.
(money_put::do_put(string)): Same for the buffer used to
add the grouping chars.
* testsuite/22_locale/ Add test06.
* testsuite/22_locale/ Ditto.
* include/bits/locale_facets.tcc
(collate::do_transform): Simplify.
2002-03-18 Phil Edwards <>
* acinclude.m4 (GLIBCPP_CONFIGURE): Make indentation/spacing uniform.
* Add comments pointing the way for autoconf 2.5x.
* aclocal.m4,, configure: Regenerate.
2002-03-18 Philipp Thomas <>
* include/backward/hash_map.h: hash, hashtable, hash_map and
hash_multimap are in namespace __gnu_cxx.
include/backward/hash_set.h: hash, hashtable, hash_set and
hash_multiset are in namespace __gnu_cxx.
include/backward/hashtable.h: hash and hashtable are in
namespace __gnu_cxx.
include/backward/rope.h: char_producer, sequence_buffer,
rope, crope and wrope are in namespace __gnu_cxx.
include/backward/slist.h: slist is in namespace __gnu_cxx.
* testsuite/backward/
testsuite/backward/ New tests for
checking that we're using the correct namespace.
2002-03-17 Jason Merrill <>
PR c++/4381
* libsupc++/ (get_adjusted_ptr): New static fn.
(check_exception_spec): Call it. Take the thrown pointer.
(__cxa_call_unexpected): Pass it.
(PERSONALITY_FUNCTION): Likewise. Use get_adjusted_ptr.
2002-03-15 Anthony Green <>
* Remove useless is_mingw32.
* configure: Rebuilt.
2002-03-15 Paolo Carlini <>
* testsuite/22_locale/
(test01): compare the result of collate::compare with
that of collate::transform + string::compare, not with
that of collate::transform + collate::compare.
(test01): values returned by collate::compare are
normalized, therefore test against +-1.
* testsuite/22_locale/ Ditto.
2002-03-12 Loren Rittle <>
reported by Peter Schmid <>
* testsuite/thread/ Lower nominal iteration counter.
2002-03-12 Benjamin Kosnik <>
Per Liboriussen <>
* config/os/gnu-linux/bits/ctype_noninline.h: Cast to
unsigned char.
* config/os/gnu-linux/bits/ctype_inline.h: Same.
* config/os/irix/irix6.5/bits/ctype_inline.h: Same.
* config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
* config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
* config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
* testsuite/22_locale/ (main): Add tests.
2002-03-12 Benjamin Kosnik <>
* 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/ (test01): Re-enable, now
that memory limits are in place.
(test03): Add tests.
2002-03-11 Benjamin Kosnik <>
* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Check for wctype.h.
* aclocal.m4: Regenerate.
* Regenerate.
* configure: Regenerate.
* include/c_std/std_cwctype.h: Guard.
2002-03-11 Chris Demetriou <>
* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Enhance check for
whether GLIBCPP_CHECK_LINKER_FEATURES has been used.
* aclocal.m4: Regenerate.
* configure: Regenerate.
2002-03-11 Benjamin Kosnik <>
* include/bits/stl_bvector.h: Fix warning.
2002-03-11 Richard Henderson <>
* include/bits/stl_bvector.h (_Bit_type): New. Use throughout.
2002-03-11 Phil Edwards <>
* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-list-sourcefiles):
New function. Build the list of tests to run in testsuite_files.
* testsuite/libstdc++-v3.dg/dg.exp: Use it.
2002-03-11 Phil Edwards <>
* testsuite/21_strings/ Only explicitly instantiate on
platforms with no weak support.
* testsuite/27_io/ Likewise.
2002-03-10 Paolo Carlini <>
* include/bits/locale_facets.tcc (time_put::do_put):
Consider sizeof(char_type) in allocating the buffer.
* include/bits/locale_facets.tcc (collate::do_tranform):
Remove redundant variable.
2002-03-10 Ulrich Drepper <>
Paolo Carlini <>
* config/locale/generic/
(collate<char,wchar_t>::_M_compare_helper): normalize
values returned by strcoll and wcscoll.
* config/locale/gnu/
(collate<char,wchar_t>::_M_compare_helper): ditto
for __strcoll_l and __wcscoll_l.
2002-03-10 Anthony Green <>
* Support cross builds to mingw32 target.
* configure: Rebuilt.
2002-03-09 Paolo Carlini <>
* include/bits/locale_facets.tcc (collate::do_transform):
Rewrite to fix problems with long transformed strings.
2002-03-08 Benjamin Kosnik <>
* Move to...
* generic/
* c_locale_generic.h: Move to...
* generic/c_locale.h
* codecvt_specializations_generic.h: Move to...
* generic/codecvt_specializations.h
* Move to...
* generic/
* Move to...
* generic/
* Move to...
* generic/
* messages_members_generic.h: Move to...
* generic/messages_members.h
* Move to...
* generic/
* Move to...
* generic/
* Move to...
* generic/
* Move to...
* gnu/
* c_locale_gnu.h: Move to...
* gnu/c_locale.h
* Move to...
* gnu/
* Move to...
* gnu/
* Move to...
* gnu/
* messages_members_gnu.h: Move to...
* gnu/messages_members.h
* Move to...
* gnu/
* Move to...
* gnu/
* Move to...
* gnu/
* Move to...
* ieee_1003.1-2001/
* c_locale_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/c_locale.h
* codecvt_specializations_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/codecvt_specializations.h
* Move to...
* ieee_1003.1-2001/
* messages_members_ieee_1003.1-200x.h: Move to...
* ieee_1003.1-2001/messages_members.h
* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* src/ (sources): Change to monetary and numeric.
* src/ Regenerate.
* docs/html/configopts.html: Update to ieee_1003.1-2001.
2002-03-08 scott snyder <>
* include/bits/locale_facets.tcc (num_put::_M_convert_float):
Allow one more digit of precision.
* testsuite/27_io/ Test that we can
write a double and read back in the same value.
2002-03-08 Benjamin Kosnik <>
* include/std/std_limits.h: Move static const data members out of
generic template, into base class __numeric_limits_base.
* src/ Add definitions.
* config/linker-map.gnu: Add __numeric_limits_base.
* testsuite/18_support/ Declare test in scope.
2002-03-07 Benjamin Kosnik <>
* include/bits/stl_alloc.h: Add extern implicit allocator
* include/bits/basic_string.tcc: Tweak.
* include/bits/locale_facets.tcc: Remove default args. Add
has_facet, use_facet extern instantiations.
* src/ Add explicit instantiation.
* src/ Clean. Remove locale member template
* testsuite/22_locale/ (test02): Enable.
2002-03-06 Benjamin Kosnik <>
Stephen M. Webb <>
* include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
(_S_rb_tree_black): Make enum.
Clean. Format.
* include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
* include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
(__stl_threshold): _M_threshold, enum.
* src/ Same.
* config/linker-map.gnu: Remove.
* testsuite/23_containers/ New.
2002-03-06 Phil Edwards <>
* docs/doxygen/ 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/ Likewise.
2002-03-06 Phil Edwards <>
PR libstdc++/5734
* include/bits/stl_vector.h (vector::push_back()): Guard with
2002-03-06 Phil Edwards <>
* include/bits/c++config: Fix misplaced leading blanks on first line.
2002-03-05 Benjamin Kosnik <>
* docs/html/17_intro/RELEASE-NOTES: Fix usage.
* README (libmath): Make clear.
2002-03-05 Jakub Jelinek <>
* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Check for version
script globbing in ld.
* aclocal.m4: Rebuilt.
* configure: Rebuilt.
2002-03-05 Benjamin Kosnik <>
* docs/html/17_intro/RELEASE-NOTES: Update.
* README: Format subdirectories.
2002-03-05 Paolo Carlini <>
* include/bits/locale_facets.tcc
(num_get::_M_extract_float): Fix the parsing of __dec, since
the standard prescribes that if no grouping characters are
seen, no grouping check is applied.
* testsuite/22_locale/ Add test05
distilled from the PR.
* testsuite/22_locale/ Ditto.
2002-03-04 Craig Rodrigues <>
* docs/html/17_intro/porting-howto.xml: Refer to for docbookx.dtd.
* docs/html/17_intro/porting-howto.html: Regenerated.
2002-03-03 Phil Edwards <>
PR libstdc++/3955
* include/std/std_sstream.h: Remove trailing spaces.
(basic_stringbuf::_M_stringbuf_init): Also check for ios_base::app.
* testsuite/27_io/ (test05, test06): New tests.
2002-03-02 Paolo Carlini <>
* testsuite/22_locale/ (test04):
Use a named locale expecting grouping (de_DE).
* testsuite/22_locale/ (test04):
* testsuite/27_io/ (test01):
Extend coverage, uniform treatment of hexs and octs.
2002-02-28 Richard Henderson <>
* config/linker-map.gnu: Export operator new with unsigned long,
and with std::nothrow_t. Likewise operator delete.
2002-02-28 Paolo Carlini <>
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
Admit grouping for octals and hexadecimals too.
* testsuite/22_locale/ Add test04.
(test01): Tweak "." -> "," in void* test.
* testsuite/22_locale/ Ditto.
* testsuite/27_io/ Remove static keyword.
* testsuite/27_io/ Remove two of them.
2002-02-27 Paolo Carlini <>
* testsuite/27_io/ (test01):
Fix for 64 bit machines.
2002-02-26 Benjamin Kosnik <>
* include/bits/basic_ios.tcc (basic_ios::init): Set _M_fill to zero.
Adjust comment.
* include/bits/basic_ios.h (basic_ios::_M_fill): Make mutable.
(basic_ios::_M_fill_init): New.
(basic_ios::fill()): Delay dealing with _M_fill.
Adjust comment.
* (ios_base::ios_base()): Initialize _M_callbacks, _M_words.
(ios_base::_M_call_callbacks): Adjust.
* testsuite/27_io/ (test02): Adjust testcase.
2002-02-26 Loren Rittle <>
* include/ (thread_target_headers): Unconditionally
stage and install gthr-posix.h.
(${target_builddir}/gthr-posix.h): New rule cloned off
(${target_builddir}/gthr-default.h): Support chained inclusion
of gthr support headers.
* include/ Rebuilt.
2002-02-26 Paolo Carlini <>
* include/bits/locale_facets.tcc (num_put::_M_widen_int):
Group all the integral types, not only decs.
* testsuite/27_io/ (test01): Tweak existing
tests, add a few more.
2002-02-25 Benjamin Kosnik <>
* src/ (ios_base::~ios_base): Tweak.
(ios_base::_M_call_callbacks): Deal with null __p.
(ios_base::ios_base): Set _M_callbacks.
* include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
* testsuite/27_io/ (test02): Fix.
* (static_fail): Failed links go to output file.
2002-02-25 Phil Edwards <>
* docs/html/faq/index.html: Update.
* docs/html/faq/index.txt: Regenerate.
2002-02-22 Phil Edwards <>
* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Fix comment.
* aclocal.m4: Regenerate.
* docs/html/configopts.html: Document --enable-symvers.
* config/linker-map.gnu: Break libsupc++ symbols out to their own tag.
2002-02-22 Philipp Thomas <>
* include/backward/tempbuf.h: get_temporary_buffer and
return_temporary_buffer are in namespace std, not in __gnu_cxx.
2002-02-21 Benjamin Kosnik <>
* (target_alias): Default to yes.
* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
libgcc to default case.
2002-02-20 Phil Edwards <>
* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Also check version.
(GLIBCPP_ENABLE_SYMVERS): Redo logic, use linker version.
* (GLIBCPP_ENABLE_SYMVERS): Move later in the script.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config/linker-map.dummy: New file. Contains nothing useful.