2002-04-28 Benjamin Kosnik PR libstdc++/5280 * 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.