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.