X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=libstdc%2B%2B-v3%2FChangeLog-2002;fp=libstdc%2B%2B-v3%2FChangeLog-2002;h=932de0c619d8eb98dd847dbff3f2b45678f69bea;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=0000000000000000000000000000000000000000;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libstdc++-v3/ChangeLog-2002 b/libstdc++-v3/ChangeLog-2002 new file mode 100644 index 00000000..932de0c6 --- /dev/null +++ b/libstdc++-v3/ChangeLog-2002 @@ -0,0 +1,5590 @@ +2002-12-30 Loren J. Rittle + + * src/Makefile.am: Resolve non-portable use of $<. + * src/Makefile.in: Rebuilt. + +2002-12-30 Phil Edwards + + * configure.in (GLIBCPP_ENABLE_CXX_FLAGS): Do not pass arguments, + let the defaults work. + * configure: Regenerate. + +2002-12-30 Phil Edwards + + * acinclude.m4: Remove trailing whitespace. + (GLIBCPP_ENABLE_CXX_FLAGS): Fix. + * 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_members.cc + (ctype::_M_convert_to_wmask): Remove stray semicolon. + * config/locale/gnu/monetary_members.cc + (moneypunct::_M_initialize_moneypunct): Avoid + defining classes in static_cast. + (moneypunct::_M_initialize_moneypunct): Likewise. + * config/locale/gnu/numeric_members.cc + (numpunct::_M_initialize_numpunct): Likewise. + * include/bits/stl_deque.h (operator-): Insert typename where + required. + * 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++/tinfo.cc: 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/bitset_members.cc (test03): New test. + * testsuite/23_containers/bitset_shift.cc (test02): New test. + +2002-12-26 Phil Edwards + + * libsupc++/vterminate.cc (writestr): Use __builtin_strlen. + +2002-12-26 Phil Edwards + + * libsupc++/eh_term_handler.cc: 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/vterminate.cc: Move to... + * libsupc++/vterminate.cc: ...here. New file. Replace fprintf with + writestr macro. Slight reword to explanatory text. + * libsupc++/eh_terminate.cc (__cxxabiv1::__terminate_handler, + __cxxabiv1::__unexpected_handler): Break definitions out to... + * libsupc++/eh_unex_handler.cc: ...here (new file), and... + * libsupc++/eh_term_handler.cc: ...here (new file). Initialize + __terminate_handler with __gnu_cxx::__verbose_terminate_handler + instead of std::abort. + + * libsupc++/Makefile.am (sources), src/Makefile.am (sources): Update. + * libsupc++/Makefile.in, src/Makefile.in: Regenerate. + +2002-12-23 Danny Smith + + * config/io/basic_file_stdio.cc (__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/vector_capacity.cc (test03): Move ... + * testsuite/23_containers/vector_resize.cc: ...here as a new file. + Pass in -lmalloc for irix6. + * testsuite/27_io/ios_base_storage.cc: Pass in -lmalloc for irix6. + +2002-12-18 Jason Merrill + + * src/vterminate.cc (__verbose_terminate_handler): Send + diagnostics to stderr. + +2002-12-18 Ulrich Weigand + + * configure.in: Define with_target_subdir and with_build_subdir + variables in config-ml.in AC_OUTPUT call. + * configure: Regenerate. + +2002-12-16 Paolo Carlini + + PR libstdc++/8949 + * include/std/std_limits.h + (struct numeric_limits, + struct numeric_limits, + struct numeric_limits, + struct numeric_limits, + struct numeric_limits, + struct numeric_limits, + struct numeric_limits, + struct numeric_limits): According + to 18.2.1.2,53 and 18.2.1.5,1 is_iec559 shall be false. + * testsuite/18_support/numeric_limits.cc: Add test04. + +2002-12-16 Benjamin Kosnik + + * configure.in (GLIBCPP_ENABLE_DEBUG): Default to none. + Call GLIBCPP_ENABLE_DEBUG_FLAGS. + * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): GLIBCPP_BUILD_DEBUG, new + conditional if --enable-debug is yes. Rework. + (GLIBCPP_ENABLE_DEBUG_FLAGS): New. + * aclocal.m4: Regenerate. + * libio/Makefile.am: Remove DEBUG_FLAGS. + * libio/Makefile.in: Regenerate. + * libsupc++/Makefile.am: Remove DEBUG_FLAGS. + * libsupc++/Makefile.in: Regenerate. + * docs/html/configopts.html: Add docs for --enable-debug, + --enable-debug-flags. + +2002-12-16 Benjamin Kosnik + + Correct dependency tracking, build warts. + * configure.in: Correct repeated AC_OUTPUT thrashing by + config-ml.in + * configure: Regenerate. + * include/Makefile.am (stamp-target): Stamp in top_builddir. + * include/Makefile.in: Regenerate. + * src/Makefile.am (codecvt_members.cc): New rule. + (collate_members.cc): Same. + (ctype_members.cc): Same. + (messages_members.cc): Same. + (monetary_members.cc): Same. + (numeric_members.cc): Same. + (time_members.cc): Same. + (c++locale.cc): Same. + (basic_file.cc): Same. + * src/Makefile.in: Regenerate. + * acinclude.m4 (CCTYPE_CHAR_CC): Remove. + (CCCODECVT_CC): Don't link, AC_SUBST. + (CCOLLATE_CC): Same. + (CCTYPE_CC): Same. + (CMESSAGES_CC): Same. + (CMONEY_CC): Same. + (CNUMERIC_CC): Same. + (CTIME_CC): Same. + (CLOCALE_CC): Same. + * aclocal.m4: Regenerate. + + * src/Makefile.am (libstdc___la_LIBADD): Use top_builddir + for convenience libraries. + (version_arg): Rename linker.map to libstdc++.ver. + (libstdc___la_DEPENDENCIES): Remove linker.map, add + libstdc++-symbol.ver as a dependency. + (libstdc++-symbol.ver): Add rule. + * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to + SYMVER_MAP. Don't link, AC_SUBST. + + * include/Makefile.am (target_headers_noinst): New. + (stamp-target): Add CLOCALE_INTERNAL_H. + * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link + CLOCALE_INTERNAL_H, AC_SUBST. + * config/locale/gnu/c_locale.cc: Modify c++locale_internal.h + include. + * config/locale/gnu/time_members.cc: Same. + * config/locale/gnu/numeric_members.cc: Same. + * config/locale/gnu/monetary_members.cc: Same. + * config/locale/gnu/messages_members.cc: Same. + * config/locale/gnu/ctype_members.cc: Same. + * config/locale/gnu/collate_members.cc: Same. + * config/locale/gnu/codecvt_members.cc: Same. + * config/locale/generic/codecvt_members.cc: Remove. + +2002-12-11 Paolo Carlini + + PR libstdc++/8887 + * config/locale/generic/time_members.cc + (__timepunct::_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/abi_check.cc: Add GLIBCPP_3.2.2. + +2002-12-04 Paolo Carlini + + * config/locale/generic/codecvt_members.cc (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/codecvt_members.cc: 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, + forward_iterator_tag), + _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 + (_Deque_base::_M_initialize_map(size_t), + _M_assign_aux(_ForwardIterator, _ForwardIterator, + forward_iterator_tag)): + 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.cc (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/strstream.cc (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 + + * configure.in (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/ctor_copy_dtor.cc (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/localename.cc + (locale::_Impl::_Impl(const char*, size_t)): + Improve previous fix for the strtok vs MT issue. + +2002-11-28 Paolo Carlini + + * config/locale/gnu/c_locale.cc (locale::_S_categories): + Reorder the categories to match that of glibc's setlocale(LC_ALL, "")) + * config/locale/generic/c_locale.cc (locale::_S_categories): Ditto. + * testsuite/22_locale/ctor_copy_dtor.cc (test04): Tweak. + +2002-11-25 Benjamin Kosnik + + * testsuite/abi_check.cc: 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/localename.cc + (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/testsuite_allocator.cc: New file. + * testsuite/Makefile.am: 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/testsuite_hooks.cc: Added new static objects definitions. + * testsuite/23_containers/vector_capacity.cc: Added reserve() tests. + * testsuite/23_containers/vector_ctor.cc: Added a plethora of tests. + * testsuite/23_containers/deque_ctor.cc: Added a slew of new tests. + +2002-11-25 Mark Mitchell + + * libsupc++/Makefile.am (sources): Add guard.cc. + * libsupc++/Makefile.in: Regenerated. + * libsupc++/cxxabi.h (__cxa_guard_acquire): New function. + (__cxa_guard_release): Likewise. + (__cxa_guard_abort): Likewise. + * libsupc++/guard.cc: 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.cc (locale::locale(const char*)): Ditto. + +2002-11-24 Paolo Carlini + + * src/locale.cc (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/stdheader.cc: Handle the case of good headers. + +2002-11-21 Phil Edwards + + * acinclude.m4: Uniform formatting. + * configure.in: Warn when generic atomicity.h is used. + * configure.target: 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/user.cfg.in: 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 "" 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/ostream_inserter_other.cc (test_buffer_4): Add. + (test05): Use test_buffer_4. Delete unused ostringstream + variables. + +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::codecvt(size_t) + and std::codecvt::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 + bad_alloc. + * include/bits/vector.tcc: Formatting tweaks. + * include/bits/stl_vector.h: Same. + * testsuite/20_util/allocator_members.cc (test02): Add. + * testsuite/23_containers/vector_capacity.cc (test03): Add. + +2002-11-15 Rainer Orth + + * src/ios.cc [_GLIBCPP_HAVE_UNISTD_H]: Include unistd.h. + +2002-11-15 Paolo Carlini + Loren J. Rittle + + PR libstdc++/8399 + * acinclude.m4 + (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): New macro to + check for unistd.h functions. + (GLIBCPP_CHECK_UNISTD_SUPPORT): New macro, check for isatty + in unistd.h. + * configure.in: Call here. + * src/ios.cc (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. + * config.h.in: Regenerate. + * configure: Regenerate. + +2002-11-13 Benjamin Kosnik + + * acconfig.h (HAVE_DRAND48): Add. + (HAVE_GETPAGESIZE): Add. + (HAVE_SETENV): Add. + (HAVE_SIGSETJMP): Add. + * config.h.in: 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::reserve): Same. + * testsuite/23_containers/vector_capacity.cc (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/locale.cc (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_stdio.cc (__basic_file::_M_open_mode): Set + __p_mode as well. + (__basic_file::open): Set to non-block for input. + * testsuite/27_io/istream_unformatted.cc (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 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 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/monetary_members.cc + (moneypunct::_M_initialize_moneypunct(__c_locale, + const char*), + moneypunct::_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/istream_unformatted.cc (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/stringstream_members.cc: Add test04 from PR. + +2002-11-05 John David Anglin + + * configure.target (hppa*): Define cpu_include_dir. + * config/os/hpux/os_defines.h (_GLIBCPP_INST_ATOMICITY_LOCK): Define. + * src/misc-inst.cc: Instantiate atomicity lock when + _GLIBCPP_INST_ATOMICITY_LOCK is defined. + * 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/abi_check.cc: Output tweaks. + +2002-11-01 Benjamin Kosnik + + PR libstdc++/8172 + * src/string-inst.cc: Add instantiation. + +2002-11-01 Benjamin Kosnik + + PR libstdc++/7926 + * configure.target: 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++/eh_globals.cc: 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/istream_seeks.cc (test06): New. + +2002-10-28 Jason Thorpe + + * testsuite/thread/pthread5.cc: Include + if _GLIBCPP_HAVE_UNISTD_H is defined. + (main): Only use pthread_attr_setscope if + _POSIX_THREAD_PRIORITY_SCHEDULING is defined. + +2002-10-28 Jason Thorpe + + * testsuite/thread/pthread1.cc: Enable on *-*-netbsd*. + * testsuite/thread/pthread2.cc: Likewise. + * testsuite/thread/pthread3.cc: Likewise. + * testsuite/thread/pthread4.cc: Likewise. + * testsuite/thread/pthread5.cc: Likewise. + * testsuite/thread/pthread6.cc: 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/ctor_copy_dtor.cc: Add test05 from PR. + +2002-10-24 Hans-Peter Nilsson + + PR other/3337 + PR bootstrap/6763 + PR bootstrap/8122 + * testsuite/testsuite_hooks.cc (__set_testsuite_memlimit): Use + __typeof__ (r.rlim_cur), not rlim_t in declaration of limit. + +2002-10-23 Jakub Jelinek + + * testsuite/22_locale/num_put_members_char.cc (test01): Swap size + and decimal_point arguments of find. + * testsuite/22_locale/num_put_members_wchar_t.cc (test01): Likewise. + +2002-10-22 Jakub Jelinek + + * Makefile.am (check-abi, new-abi-baseline): Use @glibcpp_srcdir@ + instead of ${top_srcdir}. + * Makefile.in: Rebuilt. + +2002-10-22 Loren J. Rittle + + * testsuite/18_support/numeric_limits.cc (test_extrema): + Remove specialization for FreeBSD systems. + +2002-10-18 Loren J. Rittle + + * configure.target (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/pthread1.cc: 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 + macro. + * 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/stl-inst.cc (__USE_MALLOC): Remove it and all + guarded code. + * testsuite/21_strings/capacity.cc: Remove reference to __USE_MALLOC. + Add documentation on GLIBCPP_FORCE_NEW environment variable. + * testsuite/ext/allocators.cc: Likewise. + +2002-10-18 Phil Edwards + + * configure.in: Use target, not target_alias, when matching triplet + patterns. + * configure: Regenerate. + +2002-10-17 Momchil Velikov + Loren J. Rittle + + * configure.in: Add *-freebsd* to cross list. + * configure: Rebuilt. + +2002-10-16 Benjamin Kosnik + + * include/bits/locale_facets.h (__timepunct::__timepunct): Allocate + _M_name_timepunct. + (__timepunct::~__timepunct): Deallocate, remove specialization + declarations. + (messages::messages): Allocate _M_name_messages. + (messages::~messages): Deallocate. + (messages_byname): Same. + * config/locale/gnu/time_members.cc (__timepunct::~__timepunct): + Remove. + * config/locale/generic/time_members.cc (__timepunct::~__timepunct): + Remove. + + * 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/globals.cc (__gnu_cxx::c_locale_impl_compat): Add, alias to + c_locale_impl. + * testsuite/abi_check.cc (line_to_symbol_info): Collect size info. + * docs/html/abi.txt: Update. + +2002-10-14 Benjamin Kosnik + + * testsuite/22_locale/static_members.cc (test02): Less provincial. + +2002-10-14 Benjamin Kosnik + + * testsuite/22_locale/static_members.cc (test02): Disable for + systems without named locale support. + * testsuite/22_locale/ctor_copy_dtor.cc (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_init,_GLIBCPP_mutex_address, + _GLIBCPP_mutex_address_init, _GLIBCPP_once): + Declare in namespace __gnu_cxx. + (_STL_mutex_lock::_M_initialize): Qualify __gnu_cxx + names. + Adjust copyright. + +2002-10-12 Benjamin Kosnik + + * testsuite/abi_check.cc (hash): Specialize. + Simplify. Check compatible symbol versions. + * config/linker-map.gnu: Clarify, explicitly export + std::codecvt::c* symbols. + + * testsuite/22_locale/static_members.cc (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/static_members.cc (test02): Fix. + +2002-10-11 Benjamin Kosnik + + * acconfig.h (_GLIBCPP_SYMVER): Add. + (_GLIBCPP_ASM_SYMVER): Add. + * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Define _GLIBCPP_SYMVER. + * aclocal.m4: Regenerate. + * config.h.in: Regenerate. + * configure: Regenerate. + * include/bits/c++config (_GLIBCPP_AT_AT): Define, as an expedient + hack around m4 issues with quoting '@'. + * src/locale.cc: Use _GLIBCPP_ASM_SYMVER. + * src/globals.cc: Same. + + * testsuite/22_locale/ctor_copy_dtor.cc (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/ios.cc: Move globals into __gnu_cxx. Make old exported + symbols match. + * src/locale.cc: Same. + * src/localename.cc: Same. + * src/globals.cc: 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/locale.cc: Fix comments, move ctors together. + * testsuite/22_locale/static_members.cc (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/ostream_inserter_other.cc (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 + categories. + 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.cc (locale::locale(const char* )): Rewrite to deal + with the environment in a POSIX-compliant way while being thread + safe. + (locale::name()): Update to output POSIX environment strings. + * src/localename.cc + (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 + individually. + (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/globals.cc: Add fake_name. + * src/locale-inst.cc: Remove extra includes. + * src/locale.cc: 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/c_locale.cc: Add _S_categories definition. + * config/locale/generic/c_locale.h: Add _GLIBCPP_NUM_CATEGORIES macro. + * config/locale/generic/time_members.cc: _S_c_locale cleanup. + + * config/locale/gnu/c_locale.cc: 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/ctype_members.cc: Simplify _S_destroy_c_locale + calls, _S_c_locale usage. + * config/locale/gnu/monetary_members.cc: Same, tweaks. + * config/locale/gnu/monetary_members.cc: Same. + * config/locale/gnu/time_members.cc: 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/facet.cc (test02): Add. + * testsuite/22_locale/static_members.cc (test02): Add. + * testsuite/22_locale/ctor_copy_dtor.cc (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 + + * Makefile.am (check-abi): Add @ to rule. + * Makefile.in: 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/num_put_members_char.cc: Add test05. + * testsuite/22_locale/num_put_members_wchar_t.cc: Ditto. + +2002-09-27 Richard Henderson + + * config/os/hpux/cpu_limits.h: Remove. + + * include/std/std_limits.h (numeric_limits::is_iec559): False + if denormals are not supported. + +2002-09-25 Benjamin Kosnik + + * include/Makefile.am (target_headers): Remove cpu_limits.h. + * include/Makefile.in: Regenerate. + * configure.in (CPU_LIMITS_INC_SRCDIR): Remove + * configure: Regenerate. + * configure.target (CPULIMITS): Remove. + + * include/std/std_limits.h: Remove cpu_limits.h include. + + * config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits): + Remove. + * 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/numeric_limits.cc: Check the maximum and + minimum values of the wchar_t type. + +2002-09-25 Mark Mitchell + + * include/std/std_limits.h (numeric_limits::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::min): Use __glibcpp_min or limits.h builtins. + (numeric_limits::max): Use __glibcpp_max or limits.h builtins. + (numeric_limits::is_signed, T=char,wchar_t): Use __glibcpp_signed. + (numeric_limits::digits): Use __glibcpp_digits. + (numeric_limits::digits10): Use __glibcpp_digits10. + * testsuite/18_support/numeric_limits.cc (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::is_modulo, T floating): Use false. + +2002-09-22 Kaveh R. Ghazi + + * Makefile.am (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::epsilon, round_error): Use constant 0. + (numeric_limits::round_error): Use constant 0.5. + (numeric_limits::round_style): Use round_to_nearest. + (numeric_limits, numeric_limits): 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::is_iec559): Use has_infinity & has_quiet_NaN. + (numeric_limits, numeric_limits): 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::traps, T integral): Use __glibcpp_integral_traps. + (numeric_limits::is_modulo, T integral): Use true. + (numeric_limits::is_bounded, T floating): Use true. + +2002-09-18 Loren J. Rittle + + * testsuite/18_support/numeric_limits.cc (test_epsilon): New. + +2002-09-18 Richard Henderson + + * testsuite/18_support/numeric_limits.cc: Add -mieee for alpha. + +2002-09-16 Benjamin Kosnik + + * include/c_shadow: Remove. + * include/bits/generic_shadow.h: Remove. + * include/Makefile.am: 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 + + libstdc++/7922 + * 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::has_quiet_NaN): Use __builtin_nanf. + (std::numeric_limits::has_signaling_NaN): Mirror has_quiet_NaN. + (std::numeric_limits::quiet_NaN): Use __builtin_nanf. + (std::numeric_limits::signaling_NaN): Use __builtin_nansf. + (std::numeric_limits): Similarly. + (std::numeric_limits): Similarly. + * src/limits.cc (__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/numeric_limits.cc (test_infinity): New. + (test_denorm_min, test_qnan, test_is_iec559): New. + +2002-09-16 Phil Edwards + + * testsuite/abi_check.cc: Pull shell fragments out into... + * config/abi/extract_symvers: ...here. New file. + * Makefile.am (check_abi): Change to match. + (new-abi-baseline): New target. + * Makefile.in: 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::has_denorm): Use __FLT_DENORM_MIN__. + (std::numeric_limits::denorm_min): Likewise. + (std::numeric_limits): Similarly. + (std::numeric_limits): Similarly. + * src/limits.cc (__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/Makefile.am (LIBTOOL): Use --tag CC always for this + directory. + * libmath/Makefile.in: Regenerate. + * src/Makefile.am: Tweak comment. + * src/Makefile.in: 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/Makefile.am (sources): Edit. + (target_sources): New. + (target_sources_extra): New. + * src/Makefile.in: Regenerate. + * acinclude.m4: Set CCODECVT_CC. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * src/locale.cc: Move ctype definitions... + * src/ctype.cc: ...here. New file. + * src/locale.cc: Move codecvt definitions... + * src/codecvt.cc: ...here. + * config/generic/codecvt_members.cc: ...and here. + * config/gnu/codecvt_members.cc: ...and here. + * include/bits/codecvt.h: Tweak. + * include/bits/locale_facets: Tweak. + + * src/bitset.cc: Correct license text. + * src/concept-inst.cc: Same. + * src/strstream.cc: Same. + * src/vterminate.cc: 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 + scope. + * include/bits/basic_string.h (basic_string<>): Likewise. + * include/bits/stl_bvector.h (vector): 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, + class codecvt): Add new + codecvt(__c_locale, size_t) constructor. + (codecvt_byname::codecvt_byname): Update. + * src/codecvt.cc (class codecvt, + class codecvt): 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/localename.cc (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 + information. + Update testing information. + Update linux issues for named locales. + * docs/html/abi.txt: Fix typos. + Add more info. + + * src/misc-inst.cc: Add missing instantiations. + + * testsuite/abi_check.cc: Make output results more verbose. + + * config/os/gnu-linux/ctype_base.h: Remove shadow headers injections. + +2002-09-07 Jakub Jelinek + + * config/locale/generic/messages_members.cc: Add specialization for + messages. + * config/locale/ieee_1003.1-20021/messages_members.cc: Likewise. + +2002-09-06 Benjamin Kosnik + + * include/bits/localefwd.h: Tweak formatting. + * docs/html/abi.txt: Add. + +2002-09-06 Jakub Jelinek + + * configure.target: 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::classic_table): If _GLIBCPP_C_LOCALE_GNU, return + _S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale + and return __ctype_b. + (ctype::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::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.cc (locale::locale(__s)): Use getenv instead + of setenv for the environment locale. + * testsuite/22_locale/ctor_copy_dtor.cc (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 + to XHTML. + * docs/html/faq/index.txt: Regenerate. + +2002-09-05 Jakub Jelinek + + * config/locale/gnu/ctype_members.cc (ctype::do_widen(char)): + Switch to _M_c_locale_ctype around btowc call. + (ctype::do_widen(const char*, const char *, wchar_t*)): + Switch to _M_c_locale_ctype around mbsrtowcs call. + (ctype::do_narrow(char)): Switch to _M_c_locale_ctype around + wctob call. + (ctype::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/monetary_members.cc + (moneypunct::_M_initialize_moneypunct, + moneypunct::_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/c_locale.cc: Include it. + * config/locale/gnu/collate_members.cc: Include it. + * config/locale/gnu/ctype_members.cc: Include it. + * config/locale/gnu/messages_members.cc: Include it. + * config/locale/gnu/monetary_members.cc: Include it. + * config/locale/gnu/numeric_members.cc: Include it. + * config/locale/gnu/time_members.cc: Include it. + (_M_put): Reorder __strftime_l and __wcsftime_l arguments to match + glibc. + (_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. + (CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line. + * aclocal.m4, configure: Rebuilt. + +2002-09-05 Benjamin Kosnik + + * include/bits/locale_facets.h: Add declaration of specialization + here. + * config/locale/gnu/messages_members.cc: Add specialization for + messages. + * 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, std::numeric_limits, + std::numeric_limits): Use __builtin_huge_val + to implement has_infinity and infinity(). + * src/limits.cc (__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_min_exponent10, + __glibcpp_long_double_max_exponent, + __glibcpp_long_double_max_exponent10): Remove macros. + (std::numeric_limits, std::numeric_limits, + std::numeric_limits): Use protected float.h macros. + +2002-09-01 Phil Edwards + + * testsuite/Makefile.am: Use LD_RUN_PATH when linking abi_check. + Fix spelling in comment. + * testsuite/Makefile.in: Regenerate. + * testsuite/abi_check.cc: 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: ...to help generate this. + + * docs/html/21_strings/howto.html: Prepare for new entry. + * include/bits/basic_string.h: Initial basic_stirng hook for + doxygen. Remove trailing whitespace. + * include/bits/char_traits.h: Point to onlinedocs for new entry. + * include/bits/stringfwd.h: Add doxygen hooks for string and + wstring typedefs. + +2002-08-29 Richard Earnshaw + + * config/cpu/arm/cpu_limits.h: New file. + * configure.target: Use config/cpu/arm for XScale and StrongARM + configurations. + +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 + __WCHAR_UNSIGNED__. + +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_infinity_bytes, + __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_infinity_bytes, + __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_infinity_bytes, + __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_infinity_bytes, + __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_infinity_bytes, + __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_infinity_bytes, + __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_infinity_bytes, + __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): + Likewise. + + * src/limits.cc (__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): + Likewise. + +2002-08-25 Gabriel Dos Reis + + * include/std/std_limits.h: Indent conditional macro definitions. + +2002-08-23 Phil Edwards + + * Makefile.am (check-abi): Specify current directory. + * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Fix shell syntax, use + abi_baseline_triplet in baseline_file. + * Makefile.in, aclocal.m4, configure: Regenerate. + * configure.target: Add abi_baseline_triplet with default. + * testsuite/abi_check.cc: 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 + statements. + __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 + + * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Set + GLIBCPP_BUILD_ABI_CHECK based on cross compiling, build, host + variables. + * aclocal.m4: Regenerate. + * testsuite/Makefile.am (noinst_PROGRAMS): Make conditional on + native compiling. + * testsuite/Makefile.in: Regenerate. + +2002-08-22 Loren J. Rittle + + * testsuite/abi_check.cc: 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 + + * Makefile.am (check-abi): New rule. + * Makefile.in: Regenerate. + * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check. + (abi_check_SOURCES): Add. + * testsuite/Makefile.in: Regenerate. + * testsuite/abi_check.cc: 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 + + * configure.in (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/locale.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.cc (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. + * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): + Do not cast landing_pad or base_of_encoded_value to (void *). + * libsupc++/eh_throw.cc (__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 + punctuation. + +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/narrow_stream_objects.cc (test10): Add. + +2002-08-07 John David Anglin + + * libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS. + * libsupc++/Makefile.in: Regenerate. + +2002-08-05 Gabriel Dos Reis + + PR/7491 + * 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/valarray_name_lookup.cc: Rename from + testsuite/26_numerics/valarray_name_lookup.C + + * 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. + (_BinFunBase1<>):Likewise. + (_BinFunBase2<>): Likewise. + (_DEFINE_EXPR_RELATIONAL_OPERATOR): Likewise. + (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition. + (_DEFINE_EXPR_BINARY_OPERATOR): Likewise. + (_DEFINE_EXPR_BINARY_FUNCTION): Likewise. + * include/std/std_valarray.h: Dont #include anymore. + (_Bitwise_or<>, _Bitwise_and<>, _Bitwise_xor<>, _Shift_left<>, + _Shift_right<>): Remove. + (_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT): Adjust instantiation. + (_DEFINE_BINARY_OPERATOR): Tweak definition. + (_DEFINE_LOGICAL_OPERATOR): Remove. + * 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 + template. + (_UnClos<>): Likewise. + (_Expr<>): Reformate. Adjust unary member operator return types. + (_DEFINE_EXPR_UNARY_OPERATOR): Adjust definition. + (_DEFINE_EXPR_UNARY_FUNCTION): Likewise. + * include/std/std_valarray.h (_UnClos<>): Adjust declaration. + (valarray<>::_UnaryOp<>): New nested traits. Adjust unary member + operator return types. Reformat. + (_Bitwise_not): Remove. + (_DEFINE_VALARRAY_UNARY_OPERATOR): Adjust definition. + * 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/strstream.cc (strstreambuf): Revert. + (strstreambuf::overflow): Same. + (strstreambuf::~strstreambuf): Same. + * testsuite/backward/strstream_members.cc (test02): Add. + + * docs/html/abi.txt: Update. Spell check. + + * testsuite/19_diagnostics/stdexceptions.cc (test04): Add bool test. + + * testsuite/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES. + * testsuite/Makefile.in: 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 + classes. + (__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++/Makefile.am (LT_COMPILE): Remove C++ flags. + * libsupc++/Makefile.in: Regenerate. + +2002-08-01 Benjamin Kosnik + Jakub Jelinek + + * config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2, + GLIBCPP_3.1 to GLIBCPP_3.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 + 2.9.5p7. + (__pbase_type_info::__qualifier_masks): Change to __masks, as per + 2.9.5p7. + (__pointer_to_member_type_info::__context_class): Change member to + __context, as per 2.9.5p9. + * libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to + __context. + * libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to + __flags. + * libsupc++/tinfo.cc (__do_find_public_src): Change __base to + __base_type. + * libsupc++/tinfo.cc (__do_dyncast): Same. + * libsupc++/tinfo.cc (__do_upcast): Same. + +2002-07-31 Benjamin Kosnik + + * src/fstream.cc: 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.cc (locale::classic): Move locks inside !_S_classic + block. + +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/locale-inst.cc: Update __pad instantiations. + + * include/std/std_fstream.h: Declare _M_underflow_common + specializations. + * src/fstream.cc: 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/Makefile.am (sources): Add fstream.cc. + * src/Makefile.in: Regenerate. + + * testsuite/21_strings/capacity.cc: Add char_traits specializations. + * testsuite/22_locale/codecvt_members_unicode_char.cc: Same. + * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc: Same. + * testsuite/22_locale/ctor_copy_dtor.cc: Same. + * testsuite/27_io/filebuf_virtuals.cc (test07): Move to... + * testsuite/27_io/filebuf.cc: ...here. + * testsuite/testsuite_hooks.h: Add gnu_char, gnu_int, char_traits + specialization for both. + * testsuite/27_io/streambuf.cc: Add instantiation test, + testsuite_hooks include. + * testsuite/27_io/istream.cc: Same. + * testsuite/27_io/ostream.cc: Same. + * testsuite/27_io/fstream.cc: Same. + * testsuite/27_io/stringstream.cc: Same. + * testsuite/27_io/filebuf.cc: Same. + * testsuite/27_io/stringbuf.cc: Same. + +2002-07-29 Alan Modra + + * config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define. + * configure.target (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/iostream.cc (test01): Add typedef tests. + * testsuite/27_io/istream.cc: Same. + * testsuite/27_io/ostream.cc: Same. + * testsuite/27_io/filebuf.cc: Same. + * testsuite/27_io/stringbuf.cc: Replace content, move to... + * testsuite/27_io/stringbuf_members.cc: ...here. + * testsuite/27_io/streambuf.cc: Replace content, move to... + * testsuite/27_io/streambuf_members.cc: ...here. + * testsuite/27_io/stringstream.cc: Replace content, move to... + * testsuite/27_io/stringstream_members.cc: ...here. + * testsuite/27_io/ios.cc: New file. + * testsuite/27_io/fstream.cc: New file. + * testsuite/27_io/ifstream.cc: New file. + * testsuite/27_io/ofstream.cc: New file. + * testsuite/27_io/istringstream.cc: New file. + * testsuite/27_io/ostringstream.cc: New file. + +2002-07-25 Benjamin Kosnik + + PR libstdc++/7220 + * include/bits/istream.tcc (istream::ignore): Don't extract on + zero. + * testsuite/27_io/istream_unformatted.cc (test10): Add. + +2002-07-25 Benjamin Kosnik + + * testsuite/27_io/ios_base_type.cc: Move to... + * testsuite/27_io/ios_base_types.cc: ...here. + +2002-07-24 Benjamin Kosnik + + PR libstdc++/7222 + * src/locale.cc (locale::locale(const char*)): Use setlocale NULL. + * testsuite/22_locale/ctor_copy_dtor.cc (test02): New. + +2002-07-24 Benjamin Kosnik + + PR libstdc++/7230 + * config/linker-map.gnu: Revert strstream patch from 2002-07-01. + * include/Makefile.am (backward_headers): Use strstream, not + strstream.h. + * include/Makefile.in: Regenerate. + * include/backward/strstream: Revert. + * include/backward/strstream.h: Remove. + * src/strstream.cc: Revert. + * testsuite/backward/strstream_members.cc: 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/ios_base_type.cc: New. + +2002-07-24 Benjamin Kosnik + + PR libstdc++/7286 + * libsupc++/new: Add placement delete. + * testsuite/18_support/new_delete_placement.cc: 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. + Re-organize. + 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 + + DR/123 + * include/bits/slice_array.h + (slice_array::operator=(const T&)): Constify. + * include/bits/gslice_array.h + (gslice_array::operator=(const T&)): Likewise. + * include/bits/mask_array.h + (mask_array::operator=(const T&)): Likewise. + * include/bits/indirect_array.h + (indirect_array::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 + exceptions. + * libsupc++/new_handler.cc (set_new_handler): Likewise. + +2002-07-16 Gabriel Dos Reis + + * include/Makefile.am (bits_headers): Remove slice.h + * include/Makefile.in: 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/slice.cc: New test. + +2002-07-15 Rainer Orth + + * config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix + print to match vendor . + +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 + + * configure.target (target_os switch): Allow for irix6*o32 + configurations. + +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 + + * configure.target: 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/deque_operators.cc: 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 + eq_int_type. + (basic_streambuf::uflow): Same. + * include/bits/sstream.tcc (basic_stringbuf::overflow): Use + to_char_type. + * include/bits/basic_ios.tcc (basic_ios::init): Use _CharT(). + * include/bits/streambuf.tcc (basic_streambuf::xsgetn): Use + eq_int_type. + (basic_streambuf::xsputn): Same. + (__copy_streambufs): Same. + +2002-07-03 Benjamin Kosnik + + * include/std/std_memory.h: Fix formatting. + * testsuite/20_util/auto_ptr_neg.cc: New. + * testsuite/20_util/auto_ptr.cc: Tweaks. + * testsuite/23_containers/map_operators.cc (test01): Split into.. + * testsuite/23_containers/map_operators_neg.cc (test01): ...this. New. + * testsuite/23_containers/set_operators.cc: Move to... + * testsuite/23_containers/set_operators_neg.cc: ...here. + * testsuite/README: Add some more naming rules. + +2002-07-03 Steev Wilcox + + PR libstdc++/7057 + * include/ext/stl_hashtable.h: Fix. + * testsuite/ext/hash_map.cc: New. + +2002-07-03 Jack Reeves + Kenny Simpson + Phil Edwards + + PR libstdc++/3946 + * testsuite/20_util/auto_ptr.cc (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/monetary_members.cc: Use it. + * config/locale/generic/monetary_members.cc: Same. + * src/localename.cc (_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/iterator.cc: Add test from the PR. + +2002-07-02 Phil Edwards + + PR libstdc++/7173 + * acinclude.m4: Simplify determination of gcc_version, and move + up to GLIBCPP_CONFIGURE. + * configure.in (release_VERSION): Really remove. + (AM_INIT_AUTOMAKE, AM_CONFIG_HEADER): Move after GLIBCPP_CONFIGURE. + * 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: ...here. Qualify std names. + * src/strstream.cc: Remove namespace std. + * include/Makefile.am (backward_headers): Remove strstream.h. + * include/Makefile.in: Regenerate. + * config/linker-map.gnu: Export strstream bits. + + * src/fstream-inst.cc: Tweak. + * src/io-inst.cc: Same. + * src/istream-inst.cc: Same. + * src/misc-inst.cc: Same. + * src/ostream-inst.cc: Same. + * src/sstream-inst.cc: Same. + * src/valarray-inst.cc: Same. + * src/misc-inst.cc: Remove unused instantiations. + +2002-07-01 Benjamin Kosnik + + * configure.in (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/adaptors.cc: 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 + + * configure.in (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 + GLIBCPP_TOPREL_CONFIGURE. + * aclocal.m4: Likewise. + * configure.in: Call it before AC_CANONICAL_SYSTEM. + * configure: Regenerate. + +2002-06-25 Jessica Han + + * config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING + * libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when + _GLIBCPP_VTABLE_PADDING is defined. + +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. + * configure.in: Update. + * configure: Regenerate. + * configure.target: 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/header_cstdlib.cc (test01): Qualify ldiv_t + with std. + * testsuite/17_intro/header_cwchar.cc: Tweak. + * testsuite/22_locale/codecvt_members_char_char.cc (test03): Use + std::setlocale. + * testsuite/22_locale/ctype_to_wchar_t.cc (test05): Same. + * testsuite/22_locale/ctype_to_char.cc (test05): Same. + * testsuite/22_locale/ctype_is_wchar_t.cc (test05): Same. + * testsuite/22_locale/ctype_is_char.cc (test05): Same. + * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Same. + * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Same. + * testsuite/22_locale/time_get_members_char.cc (test08): Same. + * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Same. + * testsuite/22_locale/time_put_members_char.cc (test04): Same. + * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Same. + * testsuite/22_locale/num_put_members_char.cc (test04): Same. + * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Same. + * testsuite/22_locale/numpunct_members_char.cc (test03): Same. + * testsuite/22_locale/num_get_members_wchar_t.cc: Same. + * testsuite/22_locale/num_get_members_char.cc: Same. + * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Same. + * testsuite/22_locale/money_put_members_char.cc (test07): Same. + * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Same. + * testsuite/22_locale/moneypunct_members_char.cc (test03): Same. + * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Same. + * testsuite/22_locale/money_get_members_char.cc (test08): Same. + * testsuite/22_locale/messages_members_char.cc (test03): Same. + * testsuite/22_locale/collate_members_wchar_t.cc (test04): Same. + * testsuite/22_locale/collate_members_char.cc (test04): Same. + * testsuite/26_numerics/fabs_inline.cc: Use std::printf. + * testsuite/27_io/istream_seeks.cc (test02): Qualify abort. + * testsuite/27_io/istream_extractor_arith.cc (test11): Qualify strtol. + +2002-06-20 Benjamin Kosnik + + * libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add + c_sources. + +2002-06-20 Benjamin Kosnik + + * src/ext-inst.cc (__gnu_cxx): Use instead of std:: for extensions. + Use size_type instead of unsigned long. + +2002-06-20 Steve Ellcey + + * src/ext-inst.cc (_S_fetch): Add explicit templates for char and + wchar types. + (_S_min_len): Ditto. + +2002-06-20 Benjamin Kosnik + + * include/Makefile.am: Add rules. + * include/Makefile.in: Regenerate. + + * acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * configure.target (c_model, c_compatibility): Add. + + * libsupc++/Makefile.am (c_sources): New. + (libsupc___la_SOURCES): Add c_sources. + (LTCOMPILE): Remove INCLUDES. + (GCC_INCLUDES): New. + (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 + + * configure.in (HAVE_FINITE*, HAVE_ISINF*, HAVE_ISNAN*): Remove + 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++/eh_alloc.cc: Tweak include order. + * libsupc++/pure.cc: Use cstdio. + * libsupc++/new_op.cc: Remove malloc forward declaration, as + cstdlib brings it in. Use std::malloc. + + * src/Makefile.am (sources): Remove cmath.cc. + * src/Makefile.in: Regenerate. + * src/cmath.cc: Remove. + +2002-06-18 Phil Edwards + + * configure.target: Force mips to use the generic cpu routines. + +2002-06-18 Phil Edwards + + * configure.host: Delete file. + * configure.target: More documentation. Factor out common parts of + script into "intelligent" settings about defaults. Remove redundancy. + + * acinclude.m4: Update comments. Do not call configure.host. + (GLIBCPP_ENABLE_SYMVERS): If disabled, do not bother checking for + libgcc_s. + * configure.in: Slight reformatting, more comments. Factor out + "config/" from all the directories. + * docs/html/17_intro/porting.texi: Update and expand. + * testsuite/Makefile.am (AM_RUNTESTFLAGS): Move empty setting + from configure.host. + + * aclocal.m4, configure, docs/html/17_intro/porting.html, + testsuite/Makefile.in: Regenerate. + +2002-06-16 Phil Edwards + + * docs/doxygen/TODO: Update. + * docs/doxygen/tables.html: Uncomment magical middle column. + * docs/doxygen/user.cfg.in: 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 + + * configure.in (target_alias): Fix. + * configure: Regenerate. + * aclocal.m4: Regenerate. + +2002-06-12 Phil Edwards + + * include/Makefile.am: Add new files. + * include/Makefile.in: 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: ...to 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 + + * Makefile.am: Add FLAGS_TO_PASS. + * Makefile.in: Regenerated. + +2002-06-11 J.T. Conklin + Benjamin Kosnik + + * configure.target: Set os_include_dir to config/os/qnx/qnx6.1 + under *-qnx6.[12]*. + * configure.in: 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. + (GLIBCPP_CHECK_SETRLIMIT): Likewise. + (ac_setrlimit): Likewise. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * testsuite/testsuite_hooks.cc: Reorder and include all + required headers for use against older POSIX standard. + +2002-06-08 Paolo Carlini + + * testsuite/backwards/strstream_members.cc: New. + +2002-06-08 Benjamin Kosnik + + * include/backwards/strstream: Format. + * src/strstream.cc: Format. + +2002-06-08 Andreas Schwab + + * src/strstream.cc (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/locale-inst.cc (__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 + + * mkcheck.in: Link against local testsuite library. + * testsuite/testsuite_hooks.h (__set_testsuite_memlimit): Move null + implementation out... + * testsuite/testsuite_hooks.cc: ...to here. + +2002-06-06 Loren J. Rittle + + * src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation. + * include/Makefile.am (AUTOMAKE_OPTIONS): Likewise. + * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise. + * src/Makefile.in: Regenerate (explicitly with --cygnus option). + * testsuite/Makefile.in: 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 + + * 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 + (basic_string::_S_construct(forward_iterator_tag): + Fix typo in null pointer check. + * testsuite/21_strings/ctor_copy_dtor.cc: Add test04. + +2002-06-04 Paolo Carlini + + * testsuite/22_locale/money_get_members_char.cc + (test02): Add decimal point to long double constants. + * testsuite/22_locale/money_get_members_wchar_t.cc + (test02): Likewise. + * testsuite/22_locale/money_put_members_char.cc + (test02, test03, test06): Likewise. + * testsuite/22_locale/money_put_members_wchar_t.cc: + (test02, test03, test06): Likewise. + * testsuite/22_locale/num_get_members_char.cc: + (test02, test01): Likewise; suffix long long constants with LL. + * testsuite/22_locale/num_get_members_wchar_t.cc: + (test02, test01): Likewise. + * testsuite/22_locale/num_put_members_char.cc: + (test02, test01): Likewise. + * testsuite/22_locale/num_put_members_wchar_t.cc: + (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)): + Move/rename... + (vector::swap(reference,reference)): ...to this. + +2002-06-03 Phil Edwards + + * docs/doxygen/TODO: Update. + * docs/doxygen/user.cfg.in (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/bitset.cc: Update comments, clean up spacing. + + * src/Makefile.am (sources): Alphabetize for convenience. + * src/Makefile.in: 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/vector_bool.cc (test02): New test. + +2002-05-30 Marc Espie + + * configure.in: 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/Makefile.am (noinst_LIBRARIES): New target. Pull in + CXX/INCLUDES. + * testsuite/Makefile.in: Regenerate. + * testsuite/testsuite_hooks.h (gnu_copy_tracker): Move from + list_modifiers.cc and rename from 'T'. Move code bodies... + * testsuite/testsuite_hooks.cc: ...to here. New file. + * testsuite/23_containers/list_modifiers.cc: 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/misc-inst.cc: Define unnecessary algorithm + instantiations. Break apart instantiations into groupings below. + * src/fstream-inst.cc: New. + * src/io-inst.cc: New. + * src/istream-inst.cc: New. + * src/ostream-inst.cc: New. + * src/streambuf-inst.cc: New. + * src/sstream-inst.cc: New. + * src/Makefile.am (sources): Add files. + * src/Makefile.in: Regenerate. + + * acinclude.m4: Work around automake 1.4-p5 bug, change + AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT. + +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/ctype_is_wchar_t.cc: Guard with + _GLIBCPP_USE_WCHAR_T. + * testsuite/22_locale/ctype_narrow_wchar_t.cc: Same. + * testsuite/22_locale/ctype_to_wchar_t.cc: Same. + * testsuite/22_locale/ctype_widen_wchar_t.cc: 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/bitset_ctor.cc (test02): New test. + +2002-05-24 Benjamin Kosnik + + PR libstdc++/6701 + * testsuite/22_locale/ctype_narrow_char.cc: New. + * testsuite/22_locale/ctype_narrow_wchar_t.cc: New. + * testsuite/22_locale/ctype_widen_char.cc: New. + * testsuite/22_locale/ctype_widen_wchar_t.cc: New. + * testsuite/22_locale/ctype_members_char.cc: Move some bits into... + * testsuite/22_locale/ctype_is_char.cc: ...this. + * testsuite/22_locale/ctype_to_char.cc: ...and this. + * testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into... + * testsuite/22_locale/ctype_is_wchar_t.cc: ...this. + * testsuite/22_locale/ctype_to_wchar_t.cc: ...and this. + + * testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass. + +2002-05-24 Dale Peakall + + PR libstdc++/6701 + * config/locale/gnu/ctype_members.cc (ctype::do_narrow): Fix. + * config/locale/generic/ctype_members.cc: 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::operator<<(const char*)): Same. + (ostream::operator<<(streambuf*)): Same. + * testsuite/27_io/ostream_inserter_char.cc (test08): Add tests. + * testsuite/27_io/ostream_inserter_other.cc (test02): Modify. + +2002-05-23 Benjamin Kosnik + + * configure.in (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/user.cfg.in (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/deque_operators.cc (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/deque_operators.cc: 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 + + * Makefile.am: Allow for PWDCMD to override hardcoded pwd. + * acinclude.m4: Likewise. + * docs/html/Makefile: Likewise. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * Makefile.in: Regenerate. + +2002-05-15 Loren J. Rittle + + libstdc++/6641 + * include/bits/c++config (__USE_MALLOC): Report case where + the user improperly defined it on the command line. + +2002-05-15 Rainer Orth + + * 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::operator<<(const char*)): Same. + * testsuite/27_io/ostream_inserter_char.cc (test07): Add test. + +2002-05-15 Benjamin Kosnik + + PR libstdc++/6594 + * src/strstream.cc (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/narrow_stream_objects.cc: + Add test08 and test09. + +2002-05-13 Benjamin Kosnik + + * testsuite/22_locale/ctype_scan_char.cc: Tweak. + * testsuite/22_locale/ctype_scan_wchar_t.cc: 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/localename.cc (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/istream_sentry.cc: 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): + Likewise. + * testsuite/22_locale/ctype_scan_char.cc: New file. + +2002-05-13 Paolo Carlini + Jakub Jelinek + + * testsuite/22_locale/money_get_members_char.cc + (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/money_get_members_wchar_t.cc + (test01, test02, test04): Likewise. + * testsuite/22_locale/money_put_members_char.cc + (test01, test02, test04): Likewise. + * testsuite/22_locale/money_put_members_wchar_t.cc + (test01, test02, test04): Likewise. + +2002-05-13 Paolo Carlini + + * testsuite/22_locale/codecvt_members_char_char.cc + (test03): Robustify wrt localedata. + * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test03): Likewise. + * testsuite/22_locale/collate_members_char.cc (test04): Likewise. + * testsuite/22_locale/collate_members_wchar_t.cc (test04): Likewise. + * testsuite/22_locale/ctype_members_char.cc (test05): Likewise. + * testsuite/22_locale/ctype_members_wchar_t.cc (test04): Likewise. + * testsuite/22_locale/messages_members_char.cc (test03): Likewise. + * testsuite/22_locale/money_get_members_char.cc (test08): Likewise. + * testsuite/22_locale/money_get_members_wchar_t.cc (test08): Likewise. + * testsuite/22_locale/money_put_members_char.cc (test07): Likewise. + * testsuite/22_locale/money_put_members_wchar_t.cc (test07): Likewise. + * testsuite/22_locale/moneypunct_members_char.cc (test03): Likewise. + * testsuite/22_locale/moneypunct_members_wchar_t.cc (test03): Likewise. + * testsuite/22_locale/num_get_members_char.cc (test06): Likewise. + * testsuite/22_locale/num_get_members_wchar_t.cc (test06): Likewise. + * testsuite/22_locale/num_put_members_char.cc (test04): Add comment. + * testsuite/22_locale/num_put_members_wchar_t.cc (test04): Likewise. + * testsuite/22_locale/numpunct_members_char.cc (test03): Likewise. + * testsuite/22_locale/numpunct_members_wchar_t.cc (test03): Likewise. + * testsuite/22_locale/time_get_members_char.cc (test08): Likewise. + * testsuite/22_locale/time_get_members_wchar_t.cc (test08): Likewise. + * testsuite/22_locale/time_put_members_char.cc (test04): Likewise. + * testsuite/22_locale/time_put_members_wchar_t.cc (test04): Likewise. + +2002-05-12 Kaveh R. Ghazi + + * config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06 + change. + +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 + + * 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 + LD_LIBRARY_PATH. + +2002-05-08 Alexandre Oliva + + * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at + script entry, and set LD to it when configuring multilibs. + * configure: Rebuilt. + +2002-05-07 Mark Mitchell + + * configure.in: Add support for WindISS. + * configure: Regenerated. + * configure.target: 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/codecvt_members_char_char.cc: Add test03. + * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise. + * testsuite/22_locale/collate_members_char.cc: Add test04. + * testsuite/22_locale/collate_members_wchar_t.cc: Likewise. + * testsuite/22_locale/ctype_members_char.cc: Add test05. + * testsuite/22_locale/ctype_members_wchar_t.cc: Add test04. + * testsuite/22_locale/messages_members_char.cc: Add test03. + * testsuite/22_locale/money_get_members_char.cc: Add test08. + * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/money_put_members_char.cc: Add test07. + * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise. + * testsuite/22_locale/moneypunct_members_char.cc: Add test03. + * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise. + * testsuite/22_locale/num_get_members_char.cc: Add test06. + * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/numpunct_members_char.cc: Add test03. + * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise. + * testsuite/22_locale/time_get_members_char.cc: Add test08. + * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/time_put_members_char.cc: Add test04. + * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise. + + * testsuite/22_locale/num_put_members_char.cc (test04): Add comment. + * testsuite/22_locale/num_put_members_wchar_t.cc (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/num_put_members_char.cc: Add test04(), + testing for the locale_facets.tcc entry of the previous commit. + * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise. + +2002-05-04 Takeshi Kobayakawa + + * config/locale/generic/c_locale.cc + (__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/time_members.cc + (__timepunct::_M_put): Likewise. + * config/locale/gnu/messages_members.cc + (messages::do_get): Likewise. + * config/locale/gnu/messages_members.h + (messages<_CharT>::do_get): Likewise. + * config/locale/gnu/time_members.cc + (__timepunct::_M_put): Likewise. + * include/bits/locale_facets.tcc (__convert_from_v): Likewise. + +2002-05-04 Kaveh R. Ghazi + + * configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h. + * libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS). + + * Makefile.in, config.h.in, configure: Regenerate. + +2002-05-03 Benjamin Kosnik + + PR libstdc++/6549. + * include/bits/fstream.tcc (filebuf::_M_underflow_common): Revert. + * testsuite/27_io/narrow_stream_objects.cc (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 + + * configure.in: 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 + char. + +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/vector_ctor.cc: 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/basic_file_stdio.cc: 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.cc (ios_base::_S_ios_create): Change to use specialized + filebufs. + (ios_base::_S_ios_destroy): Same. + * src/misc-inst.cc (file_filebuf): Add instantiation. + * include/Makefile.am (ext_headers): Add ext_filebuf.h, + stdio_filebuf.h. * include/Makefile.in: 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 + + * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Set all + of LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH, + LD_LIBRARY64_PATH. + +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_stdio.cc (__basic_file::sys_ungetc): Same. + * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common): + Use sys_getc for unbuffered input. + * testsuite/27_io/narrow_stream_objects.cc (test06): New. + + * src/ios.cc (_M_grow_words): Adjust error checking. + * testsuite/27_io/ios_base_storage.cc: Same. + +2002-04-28 Peter Schmid + + * include/ext/stl_hashtable.h: Import __iterator_category + +2002-04-28 Paolo Carlini + Peter Schmid + + * testsuite/ext/hash_set.cc: New testfile. + +2002-04-27 Benjamin Kosnik + + * config/os/solaris/solaris2.5/bits/os_defines.h: Remove + _G_USING_THUNKS. + * 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/replace.cc (test05): New. + * testsuite/21_strings/replace.cc (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/narrow_stream_objects.cc (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): + Likewise. + (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/istream_seeks.cc (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. + * configure.target (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/ios.cc: 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/filebuf_virtuals.cc (test05): Don't overspecify + ungetc test. + +2002-04-22 Benjamin Kosnik + + * include/bits/istream.tcc (istream::read): Fix. + * testsuite/27_io/istream_unformatted.cc (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/istream_unformatted.cc (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. + * locale.cc: Wrap lines. + + * testsuite/21_strings/inserters_extractors.cc: Tweaks. + * testsuite/27_io/instantiations.cc (test): Add bool variable... + * testsuite/21_strings/capacity.cc: Clean. + +2002-04-17 Phil Edwards + + * docs/doxygen/doxygroups.cc: 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/user.cfg.in: 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 + + * testsuite_flags.in (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 + template. + (__default_alloc_template): Same. + +2002-04-17 Benjamin Kosnik + + * testsuite/27_io/filebuf_virtuals.cc: Add _S_pback_size instantiation. + +2002-04-16 Benjamin Kosnik + + * src/concept-inst.cc (vector): Remove instantiations. + * src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation. + (__malloc_alloc_template): Conditionalize. + + * include/bits/istream.tcc: Remove sputbackc calls. + + * testsuite/19_diagnostics/stdexceptions.cc: Fix comment. + +2002-04-16 Paolo Carlini + + * testsuite/24_iterators/rel_ops.cc: 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 + __normal_iterator. + * include/bits/stl_vector.h (_Alloc>): Likewise. + * src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now here. + * src/string-inst.cc (operator==): Instantiate in __gnu_cxx. + +2002-04-15 Benjamin Kosnik + + PR libstdc++/4164 + Valgrind fixes. + * config/io/basic_file_stdio.cc (__basic_file::~__basic_file): + Call close. + (__basic_file::close): Call fflush. Correct return if fclose ok. + (__basic_file::is_open): Make const. + Change __c_file_type to __c_file. + * config/io/basic_file_stdio.h: Change __c_file_type to __c_file. + (__basic_file::is_open): Make const. + * config/io/c_io_stdio.h: Change __c_file_type to __c_file. + * include/std/std_fstream.h (filebuf::_M_allocate_file): Remove. + (filebuf::_M_unbuf): Add. + (filebuf::_M_file): Change to non-pointer. + (filebuf::_M_allocate_pback_buffer): Remove. + * include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove. + (filebuf::_M_allocate_internal_buffer): Use _M_unbuf. + Change initialization list for _M_file change. + (filebuf::_M_allocate_pback_buffer): Remove. + Change _M_file usage to reflect non-pointer data member. + + * config/locale/generic/c_locale.cc + (locale::facet::_S_create_c_locale): Add parameter. + * config/locale/generic/collate_members.cc: Change + _M_compare_helper to _M_compare. + Change _M_transform_helper to _M_transform. + * config/locale/generic/monetary_members.cc: Changeup data types. + Add dtors. + * config/locale/generic/numeric_members.cc: Add dtors. + * config/locale/generic/time_members.cc: Add dtors. + * config/locale/gnu/c_locale.cc: Add parameter. + * config/locale/gnu/collate_members.cc:Change + _M_compare_helper to _M_compare. + Change _M_transform_helper to _M_transform. + * config/locale/gnu/ctype_members.cc: Better error checking. + * config/os/gnu-linux/bits/ctype_noninline.h: Better error checking. + * config/locale/gnu/messages_members.cc: Tweak comment. + * config/locale/gnu/monetary_members.cc: Change data types. + Add dtors. + * config/locale/gnu/numeric_members.cc: Add dtors, better error + checking. + * config/locale/gnu/time_members.cc: Same. + * config/locale/ieee_1003.1-2001/c_locale.cc + (locale::facet::_S_create_c_locale): Add parameter. + * config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef. + * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove + bogus ctor. + + * include/bits/locale_facets.h (moneypunct): Use string literals. + Don't define dtor. + (numpunct): Same. + (__timepunct): Same. + (locale::_Impl::_M_facets): Change from vector to array. + (locale::_Impl::_M_names): Change from array of strings to array + of string literals. + (locale::facet::_S_create_c_locale): Add parameter. + (locale::locale::_S_num_facets): Move to... + (locale::_Impl::_M_facets_size): Here. + * include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name + changes. + * include/bits/localefwd.h: (locale::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/globals.cc: Add pre-allocations for "C" facets. + * src/locale-inst.cc: Remove vector instantiations. + * src/locale.cc: Remove vector include. Fixups for _M_names, + _M_facets changes. + * src/localename.cc: Same. + + * include/bits/stl_vector.h: Fix odd formatting. + + * include/bits/basic_string.tcc: Tweak comment. + + * libsupc++/new: Make sure parameters are uglified. + * libsupc++/typeinfo: Same. + + * testsuite/22_locale/num_get_members_char.cc: Fixup. + * testsuite/22_locale/num_get_members_wchar_t.cc: Same. + * testsuite/27_io/filebuf_members.cc: Same. + +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 + + libstdc++/1072 + * 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/locale.cc: Adjust. + * src/localename.cc: 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/locale.cc (__num_base::_S_scale_hex): Remove. + (__num_base::_S_scale_oct): Remove. + +2002-04-09 Benjamin Kosnik + + libstdc++/6124 + * testsuite/23_containers/bitset_members.cc: 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. + Format. + * src/bitset.cc: Adjust. + * config/linker-map.gnu: Export. + +2002-04-08 Benjamin Kosnik + + libstdc++/5180 + * 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/stringbuf_virtuals.cc: 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 + + libstdc++/3457 + via gawrilow@math.tu-berlin.de + * acinclude.m4 (version_specific_libs): Fix combo usage with + --with-gxx-include-dir. + * 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::is_iec559): False. + (numeric_limits::is_modulo): False. + + * testsuite/27_io/ios_init.cc: Add instantiations. + +2002-04-02 Benjamin Kosnik + + libstdc++/5268 + * src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls. + * testsuite/27_io/ios_init.cc (tests04): Add test. + + libstdc++/3983 + * 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 + ostream. + * testsuite/27_io/ios_init.cc (tests03): Add test. + +2002-04-02 Phil Edwards + + * include/Makefile.am (install-data-local): Use mkinstalldirs. + * include/Makefile.in: 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/replace.cc (test04): New tests. + +2002-04-01 Benjamin Kosnik + + libstdc++/5542 + * 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/doxygroups.cc: 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++/Makefile.am (sources): Add cxa_demangle.c, dyn-string.c. + Make new LTCOMPILE variable, use it in new special build rules. + * libsupc++/Makefile.in: Rebuild. + * src/vterminate.cc (__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 + + libstdc++/3129 + * include/bits/basic_ios.h (basic_ios::_M_exception): Move. + (basic_ios::_M_streambuf_state): Move. + * include/bits/ios_base (ios_base): To here. + * include/bits/ios_base.h (ios_base::_S_local_words): To + _S_local_word_size. + (ios_base::_M_word_array): To _M_local_word. + (ios_base::_M_words_limit): To _M_word_size. + (ios_base::_M_words): To _M_word. + Comment. + * include/bits/basic_ios.tcc: Adjust. + * src/ios.cc (ios_base::_M_grow_words): Tweak. + * testsuite/27_io/ios_base_storage.cc: Add tests. + + libstdc++/5207 + Kenny Simpson + * 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/inserters_extractors.cc + (test04): Ditto. + +2002-03-30 Richard Henderson + + PR c++/3719 + * libsupc++/eh_personality.cc (__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/numeric_limits.cc (test_extrema): Fix typo. + +2002-03-28 Paolo Carlini + + * testsuite/24_iterators/istream_iterator.cc + (test02): New tests. + +2002-03-28 Ulrich Weigand + Paolo Carlini + + * testsuite/22_locale/codecvt_members_unicode_wchar_t.cc + (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/numeric_limits.cc (test_extrema): Make + debugger-friendly. + * testsuite/27_io/streambuf.cc (test07): Fix. + (test06): Enable. + +2002-03-27 Phil Edwards + + * docs/doxygen/Intro.3: Date tweak. + * docs/doxygen/TODO: Update. + * docs/doxygen/doxygroups.cc: 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/user.cfg.in (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/Makefile.am: Fixup install, link routines for null + c_base_headers_extra scenarios. + * include/Makefile.in: Regerate. + +2002-03-25 Paolo Carlini + Richard Henderson + + * testsuite/22_locale/codecvt_members_unicode_char.cc + (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 + _ctype_. + +2002-03-25 Paolo Carlini + + * testsuite/22_locale/collate_byname.cc + (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/messages_members.cc: Same. + * config/locale/gnu/time_members.cc: Same. + +2002-03-25 Ulrich Weigand + Paolo Carlini + + * testsuite/22_locale/codecvt_members_unicode_char.cc + (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. + * config.h.in: Regenerate. + * libmath/Makefile.am: Simplify. + * libmath/Makefile.in: Regenerate. + * include/c_std/std_cmath.h: Update paths for include of cmath.tcc. + + * include/Makefile.am: Clean up handling of extra "C" header files. + Add hooks for "C" compatibility headers. + * include/Makefile.in: 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/messages_members.cc: Same. + * config/locale/gnu/time_members.cc: Same. + +2002-03-22 Benjamin Kosnik + + * src/vterminate.cc: Format, -fno-exceptions cleanup. + +2002-03-21 Rainer Orth + + * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_3): New. + (GLIBCPP_CONFIGURE_TESTSUITE): Use it to check for setenv. + * aclocal.m4: Regenerate. + * configure: Likewise. + +2002-03-19 Paolo Carlini + Ulrich Drepper + + * src/locale-inst.cc (__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 tags. + * docs/html/faq/index.txt: Regenerate. + +2002-03-19 Steve Ellcey + + * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define + GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if + --enable-libunwind-exceptions is set. + * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new + macro to check for libunwind. + * configure: Regenerate. + * src/Makefile.am (libstdc___la_LDFLAGS): Add + LIBUNWIND_FLAG to libstdc link line. + * src/Makefile.in: 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/money_put_members_char.cc: Add test06. + * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto. + + * include/bits/locale_facets.tcc + (collate::do_transform): Simplify. + +2002-03-18 Phil Edwards + + * acinclude.m4 (GLIBCPP_CONFIGURE): Make indentation/spacing uniform. + * configure.in: Add comments pointing the way for autoconf 2.5x. + * aclocal.m4, config.h.in, 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/header_hash_map_h.cc + testsuite/backward/header_hash_set_h.cc + testsuite/backward/header_hashtable_h.cc + testsuite/backward/header_rope_h.cc + testsuite/backward/header_slist_h.cc + testsuite/backward/header_tempbuf_h.cc: New tests for + checking that we're using the correct namespace. + +2002-03-17 Jason Merrill + + PR c++/4381 + * libsupc++/eh_personality.cc (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 + + * configure.in: Remove useless is_mingw32. + * configure: Rebuilt. + +2002-03-15 Paolo Carlini + + * testsuite/22_locale/collate_members_char.cc + (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/collate_members_wchar_t.cc: Ditto. + +2002-03-12 Loren Rittle + + reported by Peter Schmid + * testsuite/thread/pthread4.cc: 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/ctype_members_char.cc (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/ctor_copy_dtor.cc (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. + * config.h.in: 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/capacity.cc: Only explicitly instantiate on + platforms with no weak support. + * testsuite/27_io/ios_init.cc: 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_members.cc + (collate::_M_compare_helper): normalize + values returned by strcoll and wcscoll. + * config/locale/gnu/collate_members.cc + (collate::_M_compare_helper): ditto + for __strcoll_l and __wcscoll_l. + +2002-03-10 Anthony Green + + * configure.in: 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 + + * c_locale_generic.cc: Move to... + * generic/c_locale.cc + * c_locale_generic.h: Move to... + * generic/c_locale.h + * codecvt_specializations_generic.h: Move to... + * generic/codecvt_specializations.h + * collate_members_generic.cc: Move to... + * generic/collate_members.cc + * ctype_members_generic.cc: Move to... + * generic/ctype_members.cc + * messages_members_generic.cc: Move to... + * generic/messages_members.cc + * messages_members_generic.h: Move to... + * generic/messages_members.h + * moneypunct_members_generic.cc: Move to... + * generic/monetary_members.cc + * numpunct_members_generic.cc: Move to... + * generic/numeric_members.cc + * time_members_generic.cc: Move to... + * generic/time_members.cc + * c_locale_gnu.cc: Move to... + * gnu/c_locale.cc + * c_locale_gnu.h: Move to... + * gnu/c_locale.h + * collate_members_gnu.cc: Move to... + * gnu/collate_members.cc + * ctype_members_gnu.cc: Move to... + * gnu/ctype_members.cc + * messages_members_gnu.cc: Move to... + * gnu/messages_members.cc + * messages_members_gnu.h: Move to... + * gnu/messages_members.h + * moneypunct_members_gnu.cc: Move to... + * gnu/monetary_members.cc + * numpunct_members_gnu.cc: Move to... + * gnu/numeric_members.cc + * time_members_gnu.cc: Move to... + * gnu/time_members.cc + * c_locale_ieee_1003.1-200x.cc: Move to... + * ieee_1003.1-2001/c_locale.cc + * 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 + * messages_members_ieee_1003.1-200x.cc: Move to... + * ieee_1003.1-2001/messages_members.cc + * 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/Makefile.am (sources): Change to monetary and numeric. + * src/Makefile.in: Regenerate. + * docs/html/configopts.html: Update to ieee_1003.1-2001. + +2002-03-08 scott snyder + + libstdc++/5875 + * include/bits/locale_facets.tcc (num_put::_M_convert_float): + Allow one more digit of precision. + * testsuite/27_io/ostream_inserter_arith.cc: 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/limits.cc: Add definitions. + * config/linker-map.gnu: Add __numeric_limits_base. + * testsuite/18_support/numeric_limits.cc: Declare test in scope. + +2002-03-07 Benjamin Kosnik + + * include/bits/stl_alloc.h: Add extern implicit allocator + instantiations. + * include/bits/basic_string.tcc: Tweak. + * include/bits/locale_facets.tcc: Remove default args. Add + has_facet, use_facet extern instantiations. + * src/stl-inst.cc: Add explicit instantiation. + * src/locale-inst.cc: Clean. Remove locale member template + instantiations. + + * testsuite/22_locale/operators.cc (test02): Enable. + +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/stl-inst.cc: Same. + * config/linker-map.gnu: Remove. + + * testsuite/23_containers/vector_bool.cc: New. + +2002-03-06 Phil Edwards + + * docs/doxygen/user.cfg.in: Also document deprecated entries. + * docs/html/Makefile: Example rule to rebuild porting-howto.html. + * docs/html/17_intro/howto.html: "gcc"->"GCC" changes, when + referring to the collection as a whole. New section on which macros + can be redefined by the user. + * docs/html/19_diagnostics/howto.html: Update note for concepts. + * docs/html/20_util/howto.html: Update link to SGI. + * docs/html/faq/index.html: Update snapshot versions. New entry + on why g++ (but not gcc) must currently predefine certain macros. + * docs/html/faq/index.txt: Regenerated. + + * include/bits/basic_string.h (basic_string::_S_construct): Fix + names in declaration. + (basic_string::compare): These are no longer optional. + * include/bits/ostream.tcc: Tweak closing brace placement. + * include/bits/stl_algo.h: Lots of initial doxygen comment hooks. + * include/std/std_sstream.h: Fix typo in comment. + * include/bits/locale_facets.tcc: Remove unneeded header inclusion. + * src/locale.cc: Likewise. + +2002-03-06 Phil Edwards + + PR libstdc++/5734 + * include/bits/stl_vector.h (vector::push_back()): Guard with + _GLIBCPP_DEPRECATED. + +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 + + libstdc++/5816 + * 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/num_get_members_char.cc: Add test05 + distilled from the PR. + * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto. + +2002-03-04 Craig Rodrigues + + * docs/html/17_intro/porting-howto.xml: Refer to + http://www.oasis-open.org 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/stringbuf.cc (test05, test06): New tests. + +2002-03-02 Paolo Carlini + + * testsuite/22_locale/num_get_members_char.cc (test04): + Use a named locale expecting grouping (de_DE). + * testsuite/22_locale/num_get_members_wchar_t.cc (test04): + Ditto. + * testsuite/27_io/ios_manip_basefield.cc (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/num_get_members_char.cc: Add test04. + (test01): Tweak "." -> "," in void* test. + * testsuite/22_locale/num_get_members_wchar_t.cc: Ditto. + + * testsuite/27_io/ios_manip_basefield.cc: Remove static keyword. + * testsuite/27_io/ios_manip_fmtflags.cc: Remove two of them. + +2002-02-27 Paolo Carlini + + * testsuite/27_io/ios_manip_basefield.cc (test01): + Fix for 64 bit machines. + +2002-02-26 Benjamin Kosnik + + libstdc++/3983 + * 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.cc (ios_base::ios_base()): Initialize _M_callbacks, _M_words. + (ios_base::_M_call_callbacks): Adjust. + * testsuite/27_io/ios_init.cc (test02): Adjust testcase. + +2002-02-26 Loren Rittle + + * include/Makefile.am (thread_target_headers): Unconditionally + stage and install gthr-posix.h. + (${target_builddir}/gthr-posix.h): New rule cloned off + ${target_builddir}/gthr-default.h. + (${target_builddir}/gthr-default.h): Support chained inclusion + of gthr support headers. + * include/Makefile.in: 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/ios_manip_basefield.cc (test01): Tweak existing + tests, add a few more. + +2002-02-25 Benjamin Kosnik + + * src/ios.cc (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/ios_init.cc (test02): Fix. + + * mkcheck.in (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 + + * configure.in (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. + * configure.in (GLIBCPP_ENABLE_SYMVERS): Move later in the script. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * config/linker-map.dummy: New file. Contains nothing useful. + +2002-02-20 Benjamin Kosnik + + * testsuite/22_locale/money_put_members_char.cc: Fix. + * testsuite/22_locale/money_put_members_wchar_t.cc: Fix. + + * testsuite/27_io/standard_manipulators.cc: New file. + + * testsuite/27_io/ios_manip_basefield.cc: Check results, now failing. + * testsuite/27_io/ios_manip_fmtflags.cc: Use locale::classic(). + +2002-02-20 Danny Smith + + * config/os/mingw32/bits/ctype_noninline.h + (ctype::ctype): Remove default args from parm list. + * config/os/djgpp/bits/ctype_noninline.h: Same. + +2002-02-19 Benjamin Kosnik + + * include/std/std_iomanip.h: Inline, tweaks. + * config/linker-map.gnu: Remove hacks. + + * testsuite/21_strings/capacity.cc: Add explicit instantiations. + * testsuite/27_io/ios_init.cc: Same. + * testsuite/22_locale/money_get_members_char.cc (test07): Fix. + * testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same. + +2002-02-19 Benjamin Kosnik + + * config/linker-map.gnu: Export global vtable, typeinfo, guard + variable, and thunk info as per CXXABI docs. + +2002-02-19 Loren Rittle + + * include/Makefile.am: Use CONFIG_HEADER instead of ad hoc names. + * include/Makefile.in: Rebuilt. + +2002-02-18 Peter Schmid + + * testsuite/22_locale/collate_byname.cc (test01): Replace size4 + with size3 for the string collations of str5. + +2002-02-18 Paolo Carlini + + libstdc++/5708 + * include/bits/locale_facets.tcc (money_put::do_put): + For the space field use __fill instead of ' ', uniformly. + * testsuite/22_locale/money_put_members_char.cc: + Add test05 distilled from PR. + (test01-02-03): Trim some '*' to ' '. + * testsuite/22_locale/money_put_members_wchar_t.cc: Ditto. + +2002-02-18 Loren Rittle + + libstdc++/5697 + * include/Makefile.am (thread_builddir): Remove (map all + existing uses to target_builddir). + (thread_headers): Rename to... + (thread_target_headers): ...this. + (stamp-thread): Remove. + (stamp-target): Correctly state the position as built. + Update all dependencies to match the new reality. Remove all + dependency calculations on directories. + * include/Makefile.in: Rebuilt. + +2002-02-16 Benjamin Kosnik + + * include/bits/locale_facets.tcc: Add pragma GCC system_header. + * include/bits/fstream.tcc: Same. + * include/bits/sstream.tcc: Same. + * include/bits/ostream.tcc: Same. + * include/bits/istream.tcc: Same. + * include/bits/streambuf.tcc: Same. + * include/bits/basic_ios.tcc: Same. + * include/bits/basic_string.tcc: Same. + +2002-02-15 Benjamin Kosnik + + * include/std/std_iosfwd.h: Don't guard typedefs with + _GLIBCPP_USE_WCHAR_T + * include/bits/stringfwd.h: Same. + +2002-02-15 Benjamin Kosnik + + * src/locale.cc (moneypunct_byname): Remove definitions. + * include/std/std_streambuf.h (streambuf::operator=): Return. + +2002-02-15 Benjamin Kosnik + + Tune for size. + * src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant + explicit instantiation. + (string::_Rep::_S_max_size): Same. + * include/bits/basic_string.tcc: Add extern explicit + instantiations for string, wstring. + * include/bits/basic_ios.tcc: Add extern explicit instantiations + for ios, wios. + * include/bits/streambuf.tcc: Same, for streambuf, wstreambuf. + * include/bits/istream.tcc: Same, for istream, wistream. + * include/bits/ostream.tcc: Same for ostream, wostream, iostream, + wiostream. + * include/bits/sstream.tcc: Same, for stringbuf, wstringbuf, + istringstream, wistringstream, ostringstream, wostringstream, + stringstream, wstringstream. + * include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream, + wifstream, ofstream, wofstream, fstream, wfstream. + * src/misc-inst.cc: Correct comments. + Add iomanip instantiations for wide streams. + * include/std/std_iomanip.h: Same. + * include/bits/locale_facets.tcc: Same. + + * include/std/std_streambuf.h: Correct + _GLIBCPP_FULLY_COMPLIANT_HEADERS guard. + * include/std/std_sstream.h: Same. + * include/std/std_ostream.h: Same. + * include/std/std_istream.h: Same. + * include/std/std_fstream.h: Same. + + * include/std/std_streambuf.h: Add definitions for private copy + ctor and assignment operator. + * include/std/std_istream.h: Remove declared but undefined copy + ctor and assignment operator. This is taken care of in ios_base, + so adding it in the derived class as well is superfluous. + * include/std/std_ostream.h: Same. + + * include/bits/basic_ios.h (basic_ios::clear): Don't inline. + * include/bits/basic_ios.tcc (basic_ios::clear): Move definition here. + +2002-02-14 Benjamin Kosnik + + * config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1. + Add typeinfo bits. Smooth. + * aclocal.m4: Regenerate. + * configure: Same. + * src/Makefile.in: Same. + +2001-02-14 Joel Sherrill + + * config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets + which do not have a CAS instruction. + +2002-02-14 Phil Edwards + + * acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): New macro, initial revision. + * configure.in: Call it. + * config/linker-map.gnu: New file, initial incomplete revision. + * src/Makefile.am: Optionally pass version script to the linker. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * src/Makefile.in: Regenerate. + +2002-02-13 Benjamin Kosnik + + * src/localename.cc: Remove stdexcept include. + * src/locale-inst.cc: Same. + * src/locale.cc: Same. + * src/functexcept.cc: Remove string includes. + * include/std/std_bitset.h: Remove stdexcept include. + * testsuite/23_containers/bitset_members.cc: Add stdexcept. + * testsuite/23_containers/bitset_ctor.cc: Same. + +2002-02-11 Benjamin Kosnik + + * include/bits/stl_algo (__stl_threshold): Declare external. + (__stl_chunk_size): Same. + * include/bits/stl_bvector.h (__WORD_BIT): Same. + * include/bits/stl_tree.h (_S_rb_tree_red): Same. + (_S_rb_tree_black): Same. + * src/stl-inst.cc (__stl_threshold): Define. + (__stl_chunk_size): Same. + (__WORD_BIT): Same. + (_S_rb_tree_red): Same. + (_S_rb_tree_black): Same. + + * config/io/basic_file_libio.h (__basic_file): Add declarations. + * include/bits/basic_file.h: Remove. + * config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION + Declare generic types, specialization. + * config/io/basic_file_stdio.cc: Definitions. + * config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE. + Declare generic types. + * include/Makefile.am (bits_headers): Remove basic_file.h. + (extra_target_headers): Change basic_file_model.h to basic_file.h. + (stamp-target): Same. + + * include/bits/stl_alloc.h: Tweaks. + * include/bits/localefwd.h: Same. + +2002-02-11 Aaron W LaFramboise + + * include/bits/locale_facets.tcc (collate::do_hash): Fix. + * testsuite/22_locale/collate_members_char.cc (test03): New test. + * testsuite/22_locale/collate_members_wchar_t.cc (test03): Same. + +2002-02-10 Phil Edwards + + * include/bits/stl_algo.h (transform (both signatures), generate_n): + Use __typeof__ in concept checks. + +2002-02-10 Jonathan Wakely + + * include/bits/stl_algo.h (__median, for_each, find, find_if, + adjacent_find, count, count_if, search, search_n, swap_ranges, + transform, replace, replace_if, replace_copy, replace_copy_if, + generate, generate_n, remove_copy, remove_copy_if, remove, remove_if, + unique, unique_copy, reverse, reverse_copy): Doxygenate. + +2002-02-08 Benjamin Kosnik + + * include/bits/locale_facets.h + (numpunct<_CharT>::_M_initialize_numpunct): Remove definition. + (__timepunct<_CharT>::_M_initialize_timepunct): Same. + (__timepunct<_CharT>::_M_put_helper): Same. + (moneypunct<_CharT, _Intl>::_M_initialize_moneypunct): Same. + + * include/bits/fstream.tcc (filebuf::underflow): Remove + __codecvt_type typedef. + (filebuf::_M_convert_to_external): Same. + +2002-02-08 Phil Edwards + + * docs/doxygen/TODO: Update. + * docs/doxygen/doxygroups.cc: Tweak __gnu_cxx description. + * docs/doxygen/mainpage.html: Add TODO list link. + * docs/doxygen/user.cfg.in: Add @doctodo hook. + * docs/doxygen/tables.html: New file, emoty structure only. + + * include/bits/stl_iterator.h: Doxygenate just about everything. + * include/bits/stl_iterator_base_funcs.h: Ditto, clean up spaces. + * include/bits/stl_iterator_base_types.h: Add notes. + +2002-02-07 Stephan Buys + + * include/bits/stl_map.h: Tweak doxygen markup. + * include/bits/stl_multimap.h: Doxygenate and remove extra spaces. + * include/bits/stl_vector.h: Likewise. + +2002-02-07 Benjamin Kosnik + + libstdc++/5286 + libstdc++/3860 + * include/std/std_fstream.h (filebuf::__file_type): Change to + __basic_file. + (filebuf::_M_convert_to_external): Declare. + * include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define + codecvt bits for wide streams. + (filebuf::_M_really_overflow): Use it. + (filebuf::underflow): Use codecvt. + * config/locale/codecvt_specializations_ieee_1003.1-200x.h: + (codecvt<__enc_traits>::do_out): Deal with partial. + (codecvt<__enc_traits>::do_encoding): Return something useful. + * src/codecvt.cc (codecvt::do_encoding): Return sizeof + wchar_t. + * testsuite/22_locale/codecvt_members_unicode_char.cc (test01): + Change expected encoding output. + (test02): Same. + * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same. + (test02): Same. + +2002-02-07 Benjamin Kosnik + Wolfgang Bangerth + + * include/bits/basic_ios.tcc (basic_ios::narrow): Add default value. + (basic_ios::widen): Same. + +2002-02-07 Paolo Carlini + + * testsuite/22_locale/money_get_members_char.cc: + Add comment, tidy up. + (test01): more "en_HK" tests (without showbase). + * testsuite/22_locale/money_get_members_wchar_t.cc: Ditto. + +2002-02-06 Loren Rittle + + * config/locale/c_locale_generic.cc: Do not trust + _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as + set by configure. + +2002-02-06 Loren Rittle + + * acinclude.m4: Add C++ linkage check for strtof. + * aclocal.m4: Rebuilt. + * config.h.in: Rebuilt. + * configure: Rebuilt. + * config/locale/c_locale_generic.cc: Conditionally include + . Improve handling and error checking of float + and long double input for non-C99 configurations. + +2002-02-06 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get::do_get(string)): + In case money_base::symbol deal properly with multi-char sign + for patterns {X,Y,Z,symbol} and {X,Y,symbol,none}. + * testsuite/22_locale/money_get_members_char.cc: Add test07. + * testsuite/22_locale/money_get_members_wchar_t.cc: Add test07. + +2002-02-05 Paolo Carlini + + * include/bits/locale_facets.tcc (money_get::do_get(string)): + First construct a tentative returned string, then, only if the + parsing succeeds, copy it into the string passed by reference. + * testsuite/22_locale/money_get_members_char.cc: Add test06. + * testsuite/22_locale/money_get_members_wchar_t.cc: Add test06. + +2002-02-04 Phil Edwards + + * docs/doxygen/TODO: Impl-defined behavior now documented... + * docs/html/17_intro/howto.html: ...here. + * docs/doxygen/mainpage.doxy: Remove, rename... + * docs/doxygen/mainpage.html: ...to this. Tweak HTML, add license. + * docs/doxygen/style.css: Add small text. + * docs/doxygen/run_doxygen: Adjust for new mainpage. + * docs/doxygen/user.cfg.in: Likewise. + +2002-02-04 Stephan Buys + + * include/bits/stl_map.h: Initial doxygen markup. + * include/std/std_fstream.h: Initial doxygen markup. + +2002-02-04 Paolo Carlini + + libstdc++/5579 + * include/bits/locale_facets.tcc (money_get::do_get(string)): + Deal correctly with !(__io.flags() & ios_base::showbase) + for case money_base::symbol. + * testsuite/22_locale/money_get_members_char.cc: Add test05. + * testsuite/22_locale/money_get_members_wchar_t.cc: Add test05. + +2002-02-02 Paolo Carlini + + * testsuite/22_locale/operators.cc + (gnu_collate::do_compare()): Add return statement to + suppress "no return statement" warning. + +2002-02-01 Paolo Carlini + + * testsuite/27_io/ostream_manip.cc: Enable test02. + +2002-02-01 Phil Edwards + + * docs/html/documentation.html: Update for 3.0.96. + * docs/html/faq/index.html: Update for 3.0.96. + * docs/html/faq/index.txt: Regenerated. + * docs/doxygen/TODO: Update notes. + * docs/html/17_intro/howto.html: Initial impl-specific listing. + +2002-01-31 Benjamin Kosnik + + * config/locale/codecvt_specializations_ieee_1003.1-200x.h: + Initialize all data members in copy ctor. Make ctors explicit. + (__enc_traits::__enc_traits()): Default ctor does nothing. + (__enc_traits::_M_init): Guard against multiple iconv_opens. + * include/std/std_sstream.h (basic_stringbuf): Make data members + protected. + * include/std/std_fstream.h (basic_filebuf): Same. + * include/std/std_streambuf.h: Tweak. + * include/bits/streambuf.tcc: Same. + * include/bits/sstream.tcc: Same. + * include/bits/fstream.tcc: Same. + +2002-01-31 Loren Rittle + + * testsuite/22_locale/codecvt_members_char_char.cc: Do not + allow NULL argument to be passed to setenv(). + * testsuite/22_locale/codecvt_members_wchar_t_char.cc: Likewise. + * testsuite/22_locale/collate_members_char.cc: Likewise. + * testsuite/22_locale/collate_members_wchar_t.cc: Likewise. + * testsuite/22_locale/ctype_members_char.cc: Likewise. + * testsuite/22_locale/ctype_members_wchar_t.cc: Likewise. + * testsuite/22_locale/messages_members_char.cc: Likewise. + * testsuite/22_locale/money_get_members_char.cc: Likewise. + * testsuite/22_locale/money_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/money_put_members_char.cc: Likewise. + * testsuite/22_locale/money_put_members_wchar_t.cc: Likewise. + * testsuite/22_locale/moneypunct_members_char.cc: Likewise. + * testsuite/22_locale/moneypunct_members_wchar_t.cc: Likewise. + * testsuite/22_locale/num_get_members_char.cc: Likewise. + * testsuite/22_locale/num_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/num_put_members_char.cc: Likewise. + * testsuite/22_locale/num_put_members_wchar_t.cc: Likewise. + * testsuite/22_locale/numpunct_members_char.cc: Likewise. + * testsuite/22_locale/numpunct_members_wchar_t.cc: Likewise. + * testsuite/22_locale/time_get_members_char.cc: Likewise. + * testsuite/22_locale/time_get_members_wchar_t.cc: Likewise. + * testsuite/22_locale/time_put_members_char.cc: Likewise. + * testsuite/22_locale/time_put_members_wchar_t.cc: Likewise. + +2002-01-30 Benjamin Kosnik + + * config/locale/c_locale_gnu.cc: Same errno fixes as generic. + + * ChangeLog-2001: Fix spelling errors... + * docs/html/17_intro/RELEASE-NOTES: Update. + * docs/html/17_intro/TODO: Update. + * README (file): Update. + +2002-01-30 Loren Rittle + + * config/locale/c_locale_generic.cc: Check errno for ERANGE + instead of non-zero to aid portability. + +2002-01-30 Peter Schmid + + * docs/html/22_locale/messages.html: Fix example code. + +2002-01-30 Richard Henderson + + * testsuite/27_io/ostream_inserter_arith.cc (test03_check): Break + out from test03 and templatize. + (test03): Use it. + +2002-01-30 Paolo Carlini + + * config/locale/numpunct_members_gnu.cc + (numpunct::_M_initialize_numpunct()): + Fix initialization of _M_grouping for locales which have + _M_thousands_sep == '\0'(L'\0', respectively). + * testsuite/22_locale/numpunct_byname.cc (test02): Add test. + +2002-01-30 Paolo Carlini + + * testsuite/27_io/ostream_inserter_arith.cc (test03): + Better fix for 32/64 bit architectures, avoiding the + implicit assumption that CHAR_BIT == 8. + +2002-01-28 Phil Edwards + + * Makefile.am (doxygen, doxygen-maint, doxygen-man): Tweak targets. + * Makefile.in: Regenerate. + + * docs/doxygen/run_doxygen: Update, mostly for man pages. + * docs/doxygen/Intro.3: Update. + * docs/doxygen/TODO: Update. + * docs/doxygen/doxygroups.cc: Add namespace hook for __gnu_cxx. + * docs/doxygen/mainpage.doxy: Update. + * docs/doxygen/user.cfg.in: Update for header rename. Also + regenerate comments and variables with 1.2.12. + * docs/doxygen/maint.cfg.in: Remove file. + + * include/bits/stl_relops.h: Doxygenate. + * include/bits/stl_tempbuf.h (std::_Temporary_buffer): Likewise. + + * include/c_std/std_cassert.h, include/c_std/std_cctype.h, + include/c_std/std_cerrno.h, include/c_std/std_cfloat.h, + include/c_std/std_ciso646.h, include/c_std/std_climits.h, + include/c_std/std_clocale.h, include/c_std/std_cmath.h, + include/c_std/std_csetjmp.h, include/c_std/std_csignal.h, + include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h, + include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h, + include/c_std/std_cstring.h, include/c_std/std_ctime.h, + include/c_std/std_cwchar.h, include/c_std/std_cwctype.h, + include/ext/algorithm, include/ext/functional, include/ext/hash_map, + include/ext/hash_set, include/ext/iterator, include/ext/memory, + include/ext/numeric, include/ext/rb_tree, include/ext/rope, + include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h, + include/ext/stl_hashtable.h, include/ext/stl_rope.h, + include/std/std_algorithm.h, include/std/std_bitset.h, + include/std/std_complex.h, include/std/std_deque.h, + include/std/std_fstream.h, include/std/std_functional.h, + include/std/std_iomanip.h, include/std/std_ios.h, + include/std/std_iosfwd.h, include/std/std_iostream.h, + include/std/std_istream.h, include/std/std_iterator.h, + include/std/std_limits.h, include/std/std_list.h, + include/std/std_locale.h, include/std/std_map.h, + include/std/std_memory.h, include/std/std_numeric.h, + include/std/std_ostream.h, include/std/std_queue.h, + include/std/std_set.h, include/std/std_sstream.h, + include/std/std_stack.h, include/std/std_stdexcept.h, + include/std/std_streambuf.h, include/std/std_string.h, + include/std/std_utility.h, include/std/std_valarray.h, + include/std/std_vector.h: Add/correct @file doxygen hook. + + * include/ext/memory: Doxygenate most of rest of file. + * libsupc++/exception: Doxygen output formatting. + * libsupc++/new: Say which header it is. + + * testsuite/lib/libstdc++-v3-dg.exp: Fix spacing. + * docs/html/19_diagnostics/howto.html: Describe concept-checks switch. + * docs/html/23_containers/howto.html: Describe O(n) list::size(). + * docs/html/27_io/howto.html: Also link to Langer and Kreft text. + +2002-01-28 Paolo Carlini + Charles Leggett + + * testsuite/27_io/filebuf_members.cc (test_05): Add test. + +2002-01-28 Paolo Carlini + + * testsuite/27_io/ostream_inserter_arith.cc (test03): + Fix to deal correctly with both 32 bit and 64 bit architectures + +2002-01-25 Loren Rittle + + * testsuite/thread/pthread1.cc: Use one condition variable + per predicate instead of tricky use of one condition variable. + +2002-01-25 Benjamin Kosnik + + * include/bits/fstream.tcc (filebuf::close()): Fix close for input + streams. + (filebuf::_M_really_overflow): Match indeterminate and sync calls. + * testsuite/27_io/filebuf.cc: Compile only. + * testsuite/27_io/filebuf_members.cc: Move tests to here. + * testsuite/27_io/filebuf_virtuals.cc: And here. + Revert sungetc, sync changes for expected values. + * testsuite/27_io/filebuf-*: Move to... + * testsuite/27_io/filebuf_virtuals-*: ...here. + * testsuite/27_io/istream.cc: Compile only, activate. + * testsuite/27_io/ostream.cc: Same. + * testsuite/27_io/iostream.cc: New. + * testsuite/27_io/iostream_members.cc: New. + +2002-01-25 David Billinghurst + + * testsuite/thread/pthread1.cc: Enable on cygwin. + * testsuite/thread/pthread2.cc: Likewise. + * testsuite/thread/pthread3.cc: Likewise. + * testsuite/thread/pthread4.cc: Likewise. + * testsuite/thread/pthread5.cc: Likewise. + * testsuite/thread/pthread6.cc: Likewise. + +2002-01-24 Benjamin Kosnik + + * testsuite/27_io/ostream_inserter_char.cc (test07): New. + +2002-01-24 Benjamin Kosnik + + * include/bits/basic_ios.h (basic_ios::_M_check_facet): Make + const, tweak. + (basic_ios::fill(char_type)): Use fill(). + * include/bits/basic_ios.tcc (basic_ios::widen): Use _M_check_facet. + (basic_ios::narrow): Same. + (basic_ios::_M_cache_facets): Explicitly set cached facets to zero + if they are invalid. + (basic_ios::init): Comment. + * testsuite/27_io/ios_init.cc (test02): New. + +2002-01-24 Phil Edwards + + * include/bits/stl_tempbuf.h (_Temporary_buffer): Add doxygen hook. + * include/bits/stl_algo.h: Include stl_tempbuf.h. + * include/ext/memory: Do not include stl_tempbuf.h. + (temporary_buffer): Add doxygen hook. + (__get_temporary_buffer, get_temporary_buffer, + return_temporary_buffer): Move back to std:: header... + * include/std/std_memory.h: ...here. Do not include stl_tempbuf.h. + * include/ext/rope: Do not include stl_tempbuf.h. + * include/ext/stl_hashtable.h: Likewise. + * include/std/std_algorithm.h: Likewise. + * testsuite/20_util/temporary_buffer.cc: New file. + +2002-01-24 andrew@andypo.net + (tweaks, test and commit by Loren J. Rittle ) + + libstdc++/5432 + * include/bits/ios_base.h: Use _Atomic_word for reference counts. + * include/bits/localefwd.h: Likewise. + Also use for std::locale::id::_S_highwater. + * src/ios.cc (ios_base::xalloc): Use _Atomic_word. + * src/locale.cc: Support new usage of _Atomic_word. + (std::locale::classic): Guard entire function against reentry. + * src/localename.cc: Support new usage of _Atomic_word. + +2002-01-24 Benjamin Kosnik + + * testsuite/22_locale/num_put_members_wchar_t.cc (test03): Use + _GLIBCPP_HAVE_SETENV. + * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): Same. + * testsuite/22_locale/collate_members_char.cc (test02): Same. + * testsuite/22_locale/ctype_members_char.cc (test03): Same. + * testsuite/22_locale/ctype_members_wchar_t.cc (test03): Same. + * testsuite/22_locale/messages_members_char.cc (test02): Same. + * testsuite/22_locale/moneypunct_members_char.cc (test02): Same. + * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): Same. + * testsuite/22_locale/money_put_members_char.cc (test04): Same. + * testsuite/22_locale/money_put_members_wchar_t.cc (test04): Same. + * testsuite/22_locale/num_get_members_char.cc (test03): Same. + * testsuite/22_locale/num_get_members_wchar_t.cc (test03): Same. + * testsuite/22_locale/numpunct_members_char.cc (test02): Same. + * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): Same. + * testsuite/22_locale/time_get_members_char.cc (test07): Same. + * testsuite/22_locale/time_get_members_wchar_t.cc (test07): Same. + * testsuite/22_locale/time_put_members_char.cc (test03): Same. + * testsuite/22_locale/time_put_members_wchar_t.cc (test03): Same. + * testsuite/22_locale/num_put_members_char.cc (test03): Same. + * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Check for setenv. + * aclocal.m4: Regenerate. + * configure: Regenerate. + * config.h.in: Regenerate. + +2002-01-23 Loren Rittle + + * testsuite/thread/pthread1.cc: New test. + * testsuite/thread/pthread2.cc: New test adapted from libstdc++/5347. + * testsuite/thread/pthread3.cc: Likewise. + * testsuite/thread/pthread4.cc: New test adapted from + http://gcc.gnu.org/ml/gcc-bugs/2002-01/msg00679.html + * testsuite/thread/pthread5.cc: New test adapted from libstdc++/5464. + * testsuite/thread/pthread6.cc: New test adapted from libstdc++/5444. + +2002-01-23 Richard Henderson + + PR libstdc++/5198 + * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use + CAS on the cpu variants that support it. Add versions that use + TAS and that disable interrupts. + (__atomic_add): Use __exchange_and_add to guarantee atomicity. + +2002-01-23 Matt Kraai + + * include/bits/locale_facets.tcc: Remove old comments. + +2002-01-23 Andreas Tobler + + * include/bits/locale_facets.tcc (__convert_to_v): Change template + parameter to _Tv. + (__convert_from_v): Same. + +2002-01-23 Benjamin Kosnik + + * include/bits/locale_facets.h (num_get::_M_extract_int): Change + prototype. + * include/bits/locale_facets.tcc (num_get::_M_extract_int): Remove + __max_digits checks, adjust arguments. + (num_get::do_get(*)): Changeup. + +2002-01-23 Loren Rittle + + * config/locale/c_locale_generic.cc: Fix typename usage. + +2002-01-22 Benjamin Kosnik + + * config/locale/c_locale_generic.cc: Fix. + +2002-01-22 Benjamin Kosnik + + * docs/html/22_locale/messages.html: Remove angle brackets. + * docs/html/17_intro/TODO: Add. + +2002-01-22 Paolo Carlini + + * testsuite/27_io/ios_manip_basefield.cc: Enable test02. + * testsuite/27_io/ostream_inserter_arith.cc: Enable test03. + * testsuite/27_io/ostream_inserter_char.cc: Enable test01. + * testsuite/27_io/ostream_inserter_other.cc: Enable test04. + +2002-01-22 Benjamin Kosnik + + Audit for LANG independence. + * include/bits/localefwd.h: Tweaks. + * include/bits/locale_facets.tcc (money_get::do_get(long double)): + Use __convert_to_v. + (time_get::do_get_year): Same. + (__convert_from_v): Add. + (num_put::_M_convert_float): Use. + (num_put::_M_convert_int): Same. + (money_put::do_put): Same. + + * src/locale-inst.cc: Add instantiations for __convert_from_v. + * config/locale/time_members_gnu.cc: Cleanup setlocale usage. + * config/locale/time_members_generic.cc: + * config/locale/messages_members_gnu.cc: Same. + * config/locale/messages_members_gnu.h: Same. + + * testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New. + * testsuite/22_locale/codecvt_members_char_char.cc (test02): New. + * testsuite/22_locale/collate_members_wchar_t.cc (test02): New. + * testsuite/22_locale/collate_members_char.cc (test02): New. + * testsuite/22_locale/ctype_members_wchar_t.cc (test03): New. + * testsuite/22_locale/ctype_members_char.cc (test03): New. + * testsuite/22_locale/messages_members_char.cc (test02): New. + * testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New. + * testsuite/22_locale/moneypunct_members_char.cc (test02): New. + * testsuite/22_locale/money_get_members_wchar_t.cc (test04): New. + * testsuite/22_locale/money_get_members_char.cc (test04): New. + * testsuite/22_locale/money_put_members_wchar_t.cc (test04): New. + * testsuite/22_locale/money_put_members_char.cc (test04): New. + * testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New. + * testsuite/22_locale/numpunct_members_char.cc (test02): New. + * testsuite/22_locale/time_put_members_wchar_t.cc (test03): New. + * testsuite/22_locale/time_put_members_char.cc (test03): New. + * testsuite/22_locale/time_get_members_wchar_t.cc (test07): New. + * testsuite/22_locale/time_get_members_char.cc (test07): New. + * testsuite/22_locale/num_get_members_wchar_t.cc (test03): New. + * testsuite/22_locale/num_get_members_char.cc (test03): New. + * testsuite/22_locale/num_put_members_wchar_t.cc (test03): New. + * testsuite/22_locale/num_put_members_char.cc (test03): New. + + * testsuite/22_locale/time_get_members_char.cc: Fixups for global + locale issues. + * testsuite/22_locale/time_get_members_char.cc: Same. + +2002-01-22 Benjamin Kosnik + + libstdc++/5280 + * include/bits/localefwd.h: Tweak comments. + * include/bits/locale_facets.h (__convert_to_v): Add. + * include/bits/locale_facets.tcc (num_get::do_get(double)): Use it. + (num_get::do_get(float)): Same. + (num_get::do_get(long double)): Same. + (num_get::do_get(bool)): Same. + (num_get::do_get(long)): Same. + (num_get::do_get(long long)): Same. + (num_get::do_get(unsigned int)): Same. + (num_get::do_get(unsigned short)): Same. + (num_get::do_get(unsigned long)): Same. + (num_get::do_get(unsigned long long)): Same. + * config/locale/c_locale_gnu.cc (__convert_to_v): Specialize. + * config/locale/c_locale_generic.cc: Same. + +2002-01-22 Loren Rittle + + * include/Makefile.am (c_base_builddir): Remove redundant slash. + (std_builddir): Likewise. + (std_headers_rename): Fix cut-n-paste typo. + (install-data-local): Concat path per element instead of once to + first element of list. + * include/Makefile.in: Rebuilt. + +2002-01-22 Benjamin Kosnik + + * config/os/aix/bits/ctype_noninline.h: Fix formatting. + * config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo. + * config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting. + +2002-01-20 Benjamin Kosnik + + * include/bits/locale_facets.h (ctype::classic_table): + Remove definition. + (ctype::_S_ctable): Remove. + * config/os/gnu-linux/bits/ctype_noninline.h + (ctype::_S_table): Remove definition. + (ctype::classic_table): Define. + (ctype::ctype): Replace _S_ctable with classic_table(). + * config/os/aix/bits/ctype_noninline.h: Same. + * config/os/bsd/freebsd/bits/ctype_noninline.h: Same. + * config/os/bsd/netbsd/bits/ctype_noninline.h: Same. + * config/os/djgpp/bits/ctype_noninline.h: Same. + * config/os/generic/bits/ctype_noninline.h: Same. + * config/os/gnu-linux/bits/ctype_noninline.h: Same. + * config/os/hpux/bits/ctype_noninline.h: Same. + * config/os/irix/irix5.2/bits/ctype_noninline.h: Same. + * config/os/irix/irix6.5/bits/ctype_noninline.h: Same. + * config/os/mingw32/bits/ctype_noninline.h: Same. + * config/os/newlib/bits/ctype_noninline.h: Same. + * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same. + * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same. + * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same. + +2002-01-20 Danny Smith + + * config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead + of _pctype. Use to define _S_ctable. Add definition for alternate + ctor. Initialise _M_ctable to _S_ctable in ctors. + (do_toupper, do_tolower): Use inline code appropriate for C-locale + rather than ::toupper, ::tolower. + +2002-01-18 Loren Rittle + + * testsuite/18_support/numeric_limits.cc (test_extrema): + Add specialization for FreeBSD systems only to avoid losing test + only due to extra precision unmentioned in system headers. + +2002-01-18 David Billinghurst + + * config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo + +2002-01-17 Nick Clifton + + * testsuite/testsuite_hooks.h: Fix comment typo. Memory + limiting is only attempted if _GLIBCPP_MEM_LIMIT is defined. + +2002-01-17 Peter Schmid + + * testsuite/22_locale/ctor_copy_dtor.cc: Remove check. + +2002-01-17 David Edelsohn + + * configure.target: Define OPT_LDFLAGS for AIX case. + +2002-01-17 Gabriel Dos Reis + + * include/std/std_limits.h (__glibcpp_float_has_quiet_NaN, + __glibcpp_double_has_quiet_NaN): Correct mispelling. + +2002-01-17 Andreas Tobler + + * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix. + +2002-01-16 David Edelsohn + + * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Do not clear + SECTION_LDFLAGS and OPT_LDFLAGS. Fix ac_sectionLDflags type. + * aclocal.m4: Regenerate. + * configure: Regenerate. + +2002-01-16 Benjamin Kosnik + + * include/Makefile.am (c_base_headers_rename): New. + (c_base_headers_extra): New. + (stamp-c_base): Modify. + (install-data-local): Use both. + * include/Makefile.in: Regenerate. + * include/c/[cctype ciso646 cmath cstdarg cstdlib cerrno climits + csetjmp cstddef cstring cwchar cassert cfloat clocale csignal + cstdio ctime cwctype]: Move to.. + * include/c/std_*: Here. + * include/c_std/[cctype ciso646 cmath cstdarg cstdlib cerrno climits + csetjmp cstddef cstring cwchar cassert cfloat clocale csignal + cstdio ctime cwctype]: Move to.. + * include/c_std/std_*: Here. + + Alexandre Oliva + * include/Makefile.am (.PRECIOUS): Add rule. + * include/Makefile.in: Regenerate. + +2002-01-16 Benjamin Kosnik + Peter Schmid + + * include/bits/stl_iterator.h (reverse_iterator::_M_current): + Deuglify, should be current. + (back_insert_iterator::_M_container): Deuglify, should be container. + (front_insert_iterator::_M_container): Same. + (insert_iterator::_M_container): Same. + * testsuite/24_iterators/reverse_iterator.cc: Add check. + * testsuite/24_iterators/back_insert_iterator.cc: Add check. + * testsuite/24_iterators/front_insert_iterator.cc: Same. + * testsuite/24_iterators/insert_iterator.cc: Same. + +2002-01-16 Benjamin Kosnik + + * include/bits/locale_facets.h (ctype::classic_table): Make + static. + (ctype::_M_ctable): Make static, change name to _S_ctable. + * config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable. + * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same. + * config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same. + * config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same. + * config/os/newlib/bits/ctype_noninline.h: Same. + * config/os/irix/irix6.5/bits/ctype_noninline.h: Same. + * config/os/irix/irix5.2/bits/ctype_noninline.h: Same. + * config/os/hpux/bits/ctype_noninline.h: Same. + * config/os/djgpp/bits/ctype_noninline.h: Same. + * config/os/bsd/netbsd/bits/ctype_noninline.h: Same. + * config/os/bsd/freebsd/bits/ctype_noninline.h: Same. + * config/os/aix/bits/ctype_noninline.h: Same. + + Testcase by Dietmar Kühl via Peter Schmid + * testsuite/22_locale/ctype_members_char.cc (char>): Add test for + classic_table(). + +2002-01-16 Benjamin Kosnik + + * libmath/signbitl.c: Copyright years as list, not range. + * libmath/Makefile.am: Same. + * libmath/Makefie.in: Regenerate. + * libmath/signbit.c: Same. + * libmath/nan.c: Same. + * libmath/copysignf.c: Same. + * libmath/signbitf.c: Same. + * testsuite/22_locale/money_get_members_char.cc: Same. + * testsuite/22_locale/money_get_members_wchar_t.cc: Same. + * testsuite/22_locale/money_put_members_char.cc: Same. + * testsuite/22_locale/money_put_members_wchar_t.cc: Same. + * testsuite/22_locale/time_get_members_char.cc: Same. + * testsuite/22_locale/time_get_members_wchar_t.cc: Same. + * testsuite/22_locale/time_put_members_char.cc: Same. + * testsuite/22_locale/time_put_members_wchar_t.cc: Same. + * testsuite/21_strings/nonmember.cc: Same. + * testsuite/21_strings/compare.cc: Same. + * testsuite/27_io/stringstream.cc: Same. + * testsuite/27_io/stringbuf.cc: Same. + * testsuite/27_io/filebuf.cc: Same. + * testsuite/27_io/ios_manip_basefield.cc: Same. + * testsuite/27_io/ios_manip_fmtflags.cc: Same. + * include/bits/cpp_type_traits.h: Same. + * include/bits/generic_shadow.h: Same. + * include/bits/gslice_array.h: Same. + * include/bits/gslice.h: Same. + * include/bits/indirect_array.h: Same. + * include/bits/slice_array.h: Same. + * include/bits/sstream.tcc: Same. + * include/bits/streambuf_iterator.h: Same. + * include/bits/valarray_array.tcc: Same. + * include/bits/valarray_meta.h: Same. + * include/bits/valarray_array.h: Same. + * config/os/mingw32/bits/ctype_noninline.h: Same. + * config/os/mingw32/bits/ctype_base.h: Same. + * config/os/hpux/bits/ctype_noninline.h: Same. + * config/os/hpux/bits/ctype_base.h: Same. + * config/os/gnu-linux/bits/ctype_noninline.h: Same. + * config/os/gnu-linux/bits/ctype_base.h: Same. + * config/os/generic/bits/ctype_noninline.h: Same. + * config/os/generic/bits/ctype_base.h: Same. + + * libsupc++/tinfo.h: Tweaks. + +2002-01-15 Benjamin Kosnik + + * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Same. + * testsuite/22_locale/num_put_members_char.cc (test01): Tweak. + * testsuite/22_locale/ctype_members_char.cc: Tweak. + +2002-01-15 Benjamin Kosnik + + * include/bits/locale_facets.tcc (num_put::do_put(bool): Fix. + (num_put::do_put(void*)): Fix. + * testsuite/22_locale/num_put_members_char.cc (test02): Add. + * testsuite/22_locale/num_put_members_wchar_t.cc (test02): Add. + * testsuite/22_locale/num_get_members_char.cc (test02): Add + long double, void, bool types. + * testsuite/22_locale/num_get_members_wchar_t.cc (test02): Add. + +2002-01-15 Benjamin Kosnik + Alexandre Oliva + + * libmath/Makefile.am (LINK): Add --tag CC. + * libmath/Makefile.in: Regenerate. + +2002-01-15 John David Anglin + + * config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address + of character to attribute mapping table. + +2002-01-15 David Billinghurst + + * testsuite/26_numerics/c99_classification_macros_c.cc + Remove dg-error and dg-excess-errors comments. + +2002-01-14 Benjamin Kosnik + + * include/bits/locale_facets.tcc (time_put::put): Correct output + iterator positions. + * testsuite/22_locale/time_put_members_char.cc (test02): Add. + * testsuite/22_locale/time_put_members_wchar_t.cc (test02): Add. + * testsuite/22_locale/time_get_members_wchar_t.cc (test06): Add. + * testsuite/22_locale/time_get_members_char.cc (test06): Add. + +2002-01-14 Craig Rodrigues + + * docs/html/17_intro/porting-howto.xml: Update filebuf section. + +2002-01-14 Paolo Carlini + Nathan Myers + + * include/bits/basic_string.h + (replace(__pos, __n1, __s, __n2)): Optimize by avoiding + temporaries (i.e., call _M_replace_safe) when possible. + (replace(__pos, __n, __str)): Call replace(__pos, __n1, __s, __n2). + (replace(__pos, __n1, __s)): Call replace(__pos, __n1, __s , __n2). + (replace(__i1, __i2, __str)): Call replace(__i1, __i2, __s, __n). + (replace(__i1, __i2, __s)): Call replace(__i1, __i2, __s, __n). + (replace(__i1, __i2, __s, __n)): Call replace(__pos1, __n1, __s, __n2). + * include/bits/basic_string.tcc + (replace(__pos1, __n1, __str, __pos2, __n2)): Call + replace(__pos, __n1, __s, __n2). + * testsuite/21_strings/replace.cc (test03): New testcases. + + * include/bits/basic_string.h (insert(__pos, __s, __n)): + Adjust comparison wrt overflow. + +2002-01-12 Benjamin Kosnik + + * include/Makefile.am (std_headers_rename): New variable. + (install-data-local): Use it. + * include/Makefile.in: Regenerate. + +2002-01-12 Benjamin Kosnik + + * include/bits/locale_facets.tcc (money_put::do_put(string): + Correct output iterator value. + * testsuite/22_locale/money_put_members_char.cc (test03): Add. + * testsuite/22_locale/money_put_members_wchar_t.cc: Same. + +2002-01-11 Phil Edwards + + * include/Makefile.am, include/Makefile.in (stamp-std): Fix typo from + previous commit. + +2002-01-11 Phil Edwards + + * include/Makefile.am (std_headers): Update list with new names. + (stamp-std): Link to standardized name. + * include/Makefile.in: Regenerate. + + * include/std/algorithm, include/std/bitset, include/std/complex, + include/std/deque, include/std/fstream, include/std/functional, + include/std/iomanip, include/std/ios, include/std/iosfwd, + include/std/iostream, include/std/istream, include/std/iterator, + include/std/limits, include/std/list, include/std/locale, + include/std/map, include/std/memory, include/std/numeric, + include/std/ostream, include/std/queue, include/std/set, + include/std/sstream, include/std/stack, include/std/stdexcept, + include/std/streambuf, include/std/string, include/std/utility, + include/std/valarray, include/std/vector: Rename to... + + * include/std/std_algorithm.h, include/std/std_bitset.h, + include/std/std_complex.h, include/std/std_deque.h, + include/std/std_fstream.h, include/std/std_functional.h, + include/std/std_iomanip.h, include/std/std_ios.h, + include/std/std_iosfwd.h, include/std/std_iostream.h, + include/std/std_istream.h, include/std/std_iterator.h, + include/std/std_limits.h, include/std/std_list.h, + include/std/std_locale.h, include/std/std_map.h, + include/std/std_memory.h, include/std/std_numeric.h, + include/std/std_ostream.h, include/std/std_queue.h, + include/std/std_set.h, include/std/std_sstream.h, + include/std/std_stack.h, include/std/std_stdexcept.h, + include/std/std_streambuf.h, include/std/std_string.h, + include/std/std_utility.h, include/std/std_valarray.h, + include/std/std_vector.h: ...this. + +2002-01-11 Loren Rittle + + * include/Makefile.am (extra_target_headers): New list of all + target files built with ad hoc naming rules. + (stamp-*): Handle LN_S failure in manner portable across make + implementations. + (install-data-local): Install header files from human-maintained + file lists and directory components instead of non-robust find. + * include/Makefile.in: Rebuilt. + +2002-01-11 Benjamin Kosnik + + * include/bits/locale_facets.tcc (money_get::do_get(string)): + Check for zero-length negative sign before adding it to output + string. + (money_get::do_get(long double)): Return beg. + * testsuite/22_locale/money_get_members_char.cc (test02): Add + iterator checks. + * testsuite/22_locale/money_get_members_wchar_t.cc: Same. + +2002-01-10 David Seymour + + libstdc++/5331 + * include/bits/locale_facets.h (num_get<>): Return advanced iterator + for _M_extract_float and _M_extract_int + * include/bits/locale_facets.tcc (num_get<>::_M_extract_float) + (num_get<>::_M_extract_int): Likewise, all callers changed + * testsuite/22_locale/num_get_members_char.cc: Testcase + +2002-01-09 Paolo Carlini + + * libsupc++/exception (bad_exception): Add comment. + * libsupc++/new (bad_alloc): Same. + * libsupc++/typeinfo (bad_cast, bad_typeid): Same. + +2002-01-09 Paolo Carlini + + libstdc++/3150: revert 2001-11-30 commit. DR266 only means + that the destructors should be removed from the descriptions + in the standard: writing them explicitly allows the vtable + heuristic to work. For additional information see: + http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html + http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html + http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html + * libsupc++/exception (bad_exception::~bad_exception()): + Reintroduce declaration. + * libsupc++/new (bad_alloc::~bad_alloc()): Same. + * libsupc++/typeinfo (bad_cast::~bad_cast()): Same. + (bad_typeid::~bad_typeid()): Same. + * libsupc++/eh_exception.cc (bad_exception::~bad_exception()): + Reintroduce definition. + * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same. + * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same. + (bad_typeid::~bad_typeid()): Same. + +2002-01-09 Benjamin Kosnik + + * include/Makefile.am (c_base_srcdir): Remove duplicate '/'. + * include/Makefile.in: Regenerate. + +2002-01-09 Bo Thorsen + + * config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add + definition. + +2002-01-08 Benjamin Kosnik + + libstdc++/2913 + libstdc++/4879 + * include/bits/fstream.tcc (filebuf::_M_really_overflow): Test + return value of _M_file->sync(). + (filebuf::showmanyc): Check for is_open. + * include/std/fstream (filebuf::sync): Tweak. + * testsuite/27_io/filebuf.cc: Tweak. + +2002-01-08 John Fardo + Brad Garcia + + * testsuite/27_io/filebuf_members.cc: Add test. + +2002-01-07 Benjamin Kosnik + Craig Rodrigues + + libstdc++/5174 + * po/Makefile.am (mkinstalldirs): Add. + * po/Makefile.in: Regenerate. + +2002-01-07 David Billinghurst + + * testsuite_flags.in: Add -fmessage-length=0 to CXXFLAGS * + testsuite/lib/prune.exp: Delete lines ":In function ..." from + compiler output. + * testsuite/23_containers/map_operators.cc: Remove + dg-excess-errors comment. + * testsuite/23_containers/set_operators.cc: Likewise. + +2002-01-06 Paolo Carlini + + * include/bits/stl_function.h: Remove two lines of comments; + adjust copyright years. + +2002-01-04 Benjamin Kosnik + + * include/Makefile.am (std_headers): Remove cXXX from list. + (c_base_srcdir): No bits subdirectory. + (c_base_builddir): Same. + (c_base_headers): Adjust names, add ciso646. + (bits_headers): Remove std_xxx.h headers. + * include/Makefile.in: Regenerate. + + * include/ext/iterator: Adjust includes. + * include/ext/ropeimpl.h: Same. + * include/ext/stl_hash_fun.h: Same. + * include/ext/algorithm: Same. + + * include/backward/bvector.h: Adjust includes. + * include/backward/vector.h: Same. + * include/backward/strstream: Same. + * include/backward/streambuf.h: Same. + * include/backward/stack.h: Same. + * include/backward/set.h: Same. + * include/backward/queue.h: Same. + * include/backward/multiset.h: Same. + * include/backward/multimap.h: Same. + * include/backward/map.h: Same. + * include/backward/list.h: Same. + * include/backward/iterator.h: Same. + * include/backward/iostream.h: Same. + * include/backward/iomanip.h: Same. + * include/backward/fstream.h: Same. + * include/backward/deque.h: Same. + * include/backward/complex.h: Same. + + * include/bits/std_algorithm.h: Move to... + * include/std/algorithm: ...here. + * include/bits/std_iosfwd.h, std_locale.h, std_stack.h, + std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h, + std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h, + std_deque.h, std_istream.h, std_numeric.h, std_string.h, + std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h, + std_queue.h, std_valarray.h, std_functional.h, std_limits.h, + std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h: + Same. + + * include/c_std/bits/std_cassert.h: Move to... + * include/c_std/cassert: Here. + * include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h, + std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h, + std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h, + std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h, + std_cwctype.h: Same. + * include/c_std/cmath: Adjust cmath.tcc include. + * include/c_std/cstdlib: Adjust includes. + * include/c_std/cwchar: Same. + * include/c_std/ctime: Same. + * include/c_std/cstring: Same. + * include/c_std/cstdio: Same. + * include/c_std/bits: Remove directory. + + * include/c/bits/std_cassert.h: Move to... + * include/c/cassert: Here. + * include/c/std_cctype.h, std_cerrno.h, std_cfloat.h, + std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h, + std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h, + std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h, + std_cwctype.h: Same. + * include/c/bits: Remove directory. + + * include/std/cwctype: Remove. + * include/std/cwchar: Remove. + * include/std/ctime: Remove. + * include/std/cstring: Remove. + * include/std/cstdlib: Remove. + * include/std/cstdio: Remove. + * include/std/cstddef: Remove. + * include/std/cstdarg: Remove. + * include/std/csignal: Remove. + * include/std/csetjmp: Remove. + * include/std/cmath: Remove. + * include/std/clocale: Remove. + * include/std/climits: Remove. + * include/std/ciso646: Remove. + * include/std/cfloat: Remove. + * include/std/cerrno: Remove. + * include/std/cctype: Remove. + * include/std/cassert: Remove. + + * include/bits/fpos.h: Adjust includes, removing + files and subsituting . + * include/bits/valarray_array.h: Same. + * include/bits/stl_uninitialized.h: Same. + * include/bits/stl_alloc.h: Same. + * include/bits/stl_algobase.h: Same. + * include/bits/sstream.tcc: Same. + * include/bits/pthread_allocimpl.h: Same. + * include/bits/ostream.tcc: Same. + * include/bits/localefwd.h: Same. + * include/bits/locale_facets.tcc: Same. + * include/bits/locale_facets.h: Same. + * include/bits/istream.tcc: Same. + * include/bits/char_traits.h: Same. + * include/bits/boost_concept_check.h: Same. + * include/bits/basic_file.h: Same. + * include/std/bitset: Same. + * include/std/complex: Same. + * include/std/fstream: Same. + * include/std/functional: Same. + * include/std/ios: Same. + * include/std/iostream: Same. + * include/std/ostream: Same. + * include/std/sstream: Same. + * include/std/streambuf: Same. + * include/std/string: Same. + * include/std/iterator: Same. + * include/std/valarray: Same. + + * src/ios.cc: Adjust includes. + * src/valarray-inst.cc: Same. + * src/string-inst.cc: Same. + * src/stl-inst.cc: Same. + * src/stdexcept.cc: Same. + * src/misc-inst.cc: Same. + * src/localename.cc: Same. + * src/locale-inst.cc: Same. + * src/locale.cc: Same. + * src/limits.cc: Same. + * src/concept-inst.cc: Same. + * src/complex_io.cc: Same. + * src/codecvt.cc: Same. + * src/bitset.cc: Same. + * src/cmath.cc: Same. + +2002-01-04 Paolo Carlini + + * include/bits/stl_tree.h (rb_tree): Move to... + * include/ext/rb_tree: ...here, new file. + * include/Makefile.am (ext_headers): Add new file. + * include/Makefile.in: Regenerate. + * include/bits/stl_tempbuf.h (get_temporary_buffer + helper, + return_temporary_buffer, struct temporary_buffer): Move to... + * include/ext/memory: ...here. + * testsuite/ext/headers.cc: Include . + * include/backward/tempbuf.h: Include , tweak. + * include/backward/tree.h: Include + + * include/bits/stl_numeric.h (power + helpers, iota): Move to... + * include/ext/numeric: ...here, new file. + * include/bits/stl_function.h (identity_element, unary_compose, + binary_compose, compose1, compose2, identity, select1st, + select2nd, project1st + helper, project2nd + helper, + constant_void_fun + helper, constant_unary_fun + helper, + costant_binary_fun + helper, constant0, constant1, constant2, + subtractive_rng, mem_fun1, mem_fun1_ref): Move to... + * include/ext/functional: ...here, new file. + * include/Makefile.am (ext_headers): Add new files. + * include/Makefile.in: Regenerate. + * testsuite/ext/headers.cc: Include and + . + * include/backward/algo.h: Include , tweak. + * include/backward/function.h: Include , tweak. + * include/ext/ropeimpl.h: Include . + +2002-01-03 Jeffrey A Law + + * config/os/hpux/bits/os_defines.h: Prefix __strtoll and + __strtoull declarations with __extension__. + +2002-01-03 David Billinghurst + + * testsuite/lib/prune.exp: Correct regular expression for + -ffunction-sections + +2002-01-02 Phil Edwards + + * include/bits/stl_algo.h (upper_bound, equal_range, binary_search): + Change concept checks, as with lower_bound and PR 2054. + * testsuite/ext/concept_checks.cc: Expand test to include those. + +2002-01-02 Phil Edwards + + * include/bits/boost_concept_check.h: Import some changes from + upsteam (Boost) version. + +2002-01-02 Paolo Carlini + + * include/bits/stl_algobase.h (copy_n + helpers, + lexicographical_compare_3way + helpers): Move to... + * include/ext/algorithm: ...here. + * include/bits/stl_uninitialized.h (uninitialized_copy_n + + helpers): Move to... + * include/ext/memory: ...here, new file. + * include/Makefile.am (ext_headers): Add new file. + * include/Makefile.in: Regenerate. + * testsuite/ext/headers.cc: Include . + * include/backward/algobase.h: Include and + , tweak. + * include/ext/ropeimpl.h: Include , tweak. + * include/ext/stl_rope.h: Include , tweak. + +2002-01-01 Roger Sayle + + * libmath/stubs.c (sinf,cosf): Implement stubs to enable the + equivalent ___builtin__ versions. + + * include/c_shadow/bits/std_cmath.h: All __builtin math functions + are available in libstdc++ as the necessary stub implementations + are provided by libmath/stubs.c. + +2002-01-01 Jason Thorpe + + * configure.in: Add support for NetBSD cross compiles. + * configure: Regenerate.