xref: /netbsd-src/external/gpl3/gcc/dist/libstdc++-v3/ChangeLog-2004 (revision 48fb7bfab72acd4281a53bbee5ccf3f809019e75)
14fee23f9Smrg2004-12-31  Paolo Carlini  <pcarlini@suse.de>
24fee23f9Smrg
34fee23f9Smrg	* include/tr1/type_traits (is_member_function_pointer): Provide a
44fee23f9Smrg	workaround for c++/19076, correct for functions with up to 15
54fee23f9Smrg	arguments.
64fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
74fee23f9Smrg	is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests;
84fee23f9Smrg	add a test for variadic functions.
94fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
104fee23f9Smrg	is_scalar/is_scalar.cc: Uncomment "XFAILed" tests.
114fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
124fee23f9Smrg	is_enum/is_enum.cc: Likewise.
134fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
144fee23f9Smrg	is_member_function_pointer/is_member_function_pointer.cc: Likewise;
154fee23f9Smrg	add a test for variadic functions.
164fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
174fee23f9Smrg	is_member_object_pointer/is_member_object_pointer.cc: Likewise.
184fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
194fee23f9Smrg	has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests.
204fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
214fee23f9Smrg	has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
224fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
234fee23f9Smrg	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
244fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
254fee23f9Smrg	has_trivial_assign/has_trivial_assign.cc: Likewise.
264fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
274fee23f9Smrg	has_trivial_constructor/has_trivial_constructor.cc: Likewise.
284fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
294fee23f9Smrg	has_trivial_copy/has_trivial_copy.cc: Likewise.
304fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
314fee23f9Smrg	has_trivial_destructor/has_trivial_destructor.cc: Likewise.
324fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
334fee23f9Smrg	is_pod/is_pod.cc: Likewise.
344fee23f9Smrg
354fee23f9Smrg2004-12-30  Paolo Carlini  <pcarlini@suse.de>
364fee23f9Smrg
374fee23f9Smrg	* include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign,
384fee23f9Smrg	has_nothrow_copy, has_nothrow_assign.
394fee23f9Smrg	* testsuite/testsuite_tr1.h: Add test_copy_property and
404fee23f9Smrg	test_assign_property.
414fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
424fee23f9Smrg	has_nothrow_assign/has_nothrow_assign.cc: New.
434fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
444fee23f9Smrg	has_nothrow_assign/typedefs.cc: Likewise.
454fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
464fee23f9Smrg	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
474fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
484fee23f9Smrg	has_nothrow_copy/typedefs.cc: Likewise.
494fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
504fee23f9Smrg	has_trivial_assign/has_trivial_assign.cc: Likewise.
514fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
524fee23f9Smrg	has_trivial_assign/typedefs.cc: Likewise.
534fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
544fee23f9Smrg	has_trivial_copy/has_trivial_copy.cc: Likewise.
554fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
564fee23f9Smrg	has_trivial_copy/typedefs.cc: Likewise.
574fee23f9Smrg
584fee23f9Smrg2004-12-29  Jonathan Wakely  <redi@gcc.gnu.org>
594fee23f9Smrg
604fee23f9Smrg	* include/bits/vector.tcc (erase(iterator, iterator),
614fee23f9Smrg	operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator,
624fee23f9Smrg	forward_iterator_tag)): Qualify all calls to std::copy().
634fee23f9Smrg
644fee23f9Smrg2004-12-29  Paolo Carlini  <pcarlini@suse.de>
654fee23f9Smrg
664fee23f9Smrg	Minimal fixes for -fno-exceptions.
674fee23f9Smrg	* src/bitmap_allocator.cc (free_list::_M_get): Use
684fee23f9Smrg	__throw_exception_again, instead of plain throw.
694fee23f9Smrg	* testsuite/testsuite_abi.cc (get_symbol, examine_symbol,
704fee23f9Smrg	create_symbols): Likewise.
714fee23f9Smrg	* testsuite/testsuite_hooks.cc (verify_demangle,
724fee23f9Smrg	run_tests_wrapped_locale, run_tests_wrapped_env): Likewise.
734fee23f9Smrg	(try_named_locale): Wrap the whole catch in __EXCEPTIONS.
744fee23f9Smrg
754fee23f9Smrg2004-12-29  Paolo Carlini  <pcarlini@suse.de>
764fee23f9Smrg
774fee23f9Smrg	* include/tr1/type_traits: Add has_nothrow_constructor.
784fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
794fee23f9Smrg	has_nothrow_constructor/has_nothrow_constructor.cc: New.
804fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
814fee23f9Smrg	has_nothrow_constructor/typedefs.cc: Likewise.
824fee23f9Smrg
834fee23f9Smrg2004-12-28  David Edelsohn  <edelsohn@gnu.org>
844fee23f9Smrg
854fee23f9Smrg	* configure.host (aix4*|aix5*): Add atomic_word_dir.
864fee23f9Smrg	* config/os/aix/atomic_word.h: New file.
874fee23f9Smrg
884fee23f9Smrg2004-12-27  Jason Merrill  <jason@redhat.com>
894fee23f9Smrg
904fee23f9Smrg	Add memory barriers to the double-checked locking used for static
914fee23f9Smrg	initialization.
924fee23f9Smrg	* libsupc++/guard.cc (__test_and_acquire): Define default.
934fee23f9Smrg	(_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
944fee23f9Smrg	(_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
954fee23f9Smrg	(recursion_push, recursion_pop): New abstraction functions.
964fee23f9Smrg	(__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
974fee23f9Smrg	(__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
984fee23f9Smrg	* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
994fee23f9Smrg	from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
1004fee23f9Smrg	(_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
1014fee23f9Smrg	* config/cpu/arm/cxxabi_tweaks.h: Likewise.
1024fee23f9Smrg	* config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
1034fee23f9Smrg	(_GLIBCXX_WRITE_MEM_BARRIER): Define.
1044fee23f9Smrg	* config/cpu/powerpc/atomic_word.h: Likewise.
1054fee23f9Smrg	* config/cpu/sparc/atomic_word.h: Likewise.
1064fee23f9Smrg	* config/cpu/generic/atomic_word.h: Define them, commented out.
1074fee23f9Smrg	* include/bits/atomicity.h: Define defaults.
1084fee23f9Smrg	* config/cpu/ia64/atomic_word.h (__test_and_acquire)
1094fee23f9Smrg	(__set_and_release): New inlines.
1104fee23f9Smrg	(_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
1114fee23f9Smrg	(_GLIBCXX_GUARD_SET_AND_RELEASE): Define.
1124fee23f9Smrg
1134fee23f9Smrg	* libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
1144fee23f9Smrg	abort();
1154fee23f9Smrg
1164fee23f9Smrg2004-12-27  Paolo Carlini  <pcarlini@suse.de>
1174fee23f9Smrg
1184fee23f9Smrg	* include/tr1/type_traits: Rework the _DEFINE_SPEC* macros.
1194fee23f9Smrg
1204fee23f9Smrg2004-12-26  Paolo Carlini  <pcarlini@suse.de>
1214fee23f9Smrg
1224fee23f9Smrg	* include/tr1/type_traits (__is_enum_helper): Slightly simplify,
1234fee23f9Smrg	make __convert non template.
1244fee23f9Smrg
1254fee23f9Smrg2004-12-26  Paolo Carlini  <pcarlini@suse.de>
1264fee23f9Smrg
1274fee23f9Smrg	* include/tr1/type_traits: Implement is_pod, has_trivial_constructor,
1284fee23f9Smrg	and has_trivial_destructor.
1294fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1304fee23f9Smrg	has_trivial_constructor/has_trivial_constructor.cc: New.
1314fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1324fee23f9Smrg	has_trivial_constructor/typedefs.cc: Likewise.
1334fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1344fee23f9Smrg	has_trivial_destructor/has_trivial_destructor.cc: Likewise.
1354fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1364fee23f9Smrg	has_trivial_destructor/typedefs.cc: Likewise.
1374fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1384fee23f9Smrg	is_pod/is_pod.cc: Likewise.
1394fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
1404fee23f9Smrg	is_pod/typedefs.cc: Likewise.
1414fee23f9Smrg
1424fee23f9Smrg2004-12-25  Paolo Carlini  <pcarlini@suse.de>
1434fee23f9Smrg
1444fee23f9Smrg	* include/tr1/type_traits (is_enum): Minor tweak.
1454fee23f9Smrg
1464fee23f9Smrg2004-12-25  Paolo Carlini  <pcarlini@suse.de>
1474fee23f9Smrg
1484fee23f9Smrg	* include/tr1/type_traits: Implement is_enum (usual caveats about
1494fee23f9Smrg	the nasty consequences of c++/19076...).
1504fee23f9Smrg	* testsuite/testsuite_tr1.h: Add ConvType.
1514fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
1524fee23f9Smrg	is_scalar/is_scalar.cc: New.
1534fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
1544fee23f9Smrg	is_scalar/typedefs.cc: Likewise.
1554fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1564fee23f9Smrg	is_enum/is_enum.cc: Likewise.
1574fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1584fee23f9Smrg	is_enum/typedefs.cc: Likewise.
1594fee23f9Smrg
1604fee23f9Smrg2004-12-24  Paolo Carlini  <pcarlini@suse.de>
1614fee23f9Smrg
1624fee23f9Smrg	* include/tr1/type_traits: Add missing undef.
1634fee23f9Smrg
1644fee23f9Smrg2004-12-24  Paolo Carlini  <pcarlini@suse.de>
1654fee23f9Smrg
1664fee23f9Smrg	* include/tr1/type_traits: Implement is_member_object_pointer,
1674fee23f9Smrg	is_member_function_pointer. N.B. Due to c++/19076, the latter
1684fee23f9Smrg	doesn't really work at the moment (a rather ugly work around
1694fee23f9Smrg	will be provided in case the front-end bug doesn't get fixed
1704fee23f9Smrg	soon); generalize and extend the _DEFINE_SPEC macros.
1714fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
1724fee23f9Smrg	is_member_pointer/is_member_pointer.cc: New.
1734fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
1744fee23f9Smrg	is_member_pointer/typedefs.cc: Likewise.
1754fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1764fee23f9Smrg	is_member_function_pointer/is_member_function_pointer.cc: Likewise.
1774fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1784fee23f9Smrg	is_member_function_pointer/typedefs.cc: Likewise.
1794fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1804fee23f9Smrg	is_member_object_pointer/is_member_object_pointer.cc: Likewise.
1814fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
1824fee23f9Smrg	is_member_object_pointer/typedefs.cc: Likewise.
1834fee23f9Smrg
1844fee23f9Smrg2004-12-22  Paolo Carlini  <pcarlini@suse.de>
1854fee23f9Smrg
1864fee23f9Smrg	* include/tr1/type_traits_fwd.h: New, forward declarations.
1874fee23f9Smrg	* include/tr1/type_traits: Clean-up.
1884fee23f9Smrg	* include/Makefile.am: Add.
1894fee23f9Smrg	* include/Makefile.in: Regenerate.
1904fee23f9Smrg
1914fee23f9Smrg2004-12-20  Paolo Carlini  <pcarlini@suse.de>
1924fee23f9Smrg
1934fee23f9Smrg	* testsuite/27_io/basic_istream/peek/wchar_t/1.cc: New.
1944fee23f9Smrg	* testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
1954fee23f9Smrg	* testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
1964fee23f9Smrg	* testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
1974fee23f9Smrg	* testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
1984fee23f9Smrg	* testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
1994fee23f9Smrg	* testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
2004fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
2014fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
2024fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
2034fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
2044fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
2054fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
2064fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/
2074fee23f9Smrg	exceptions_badbit_throw.cc: Likewise.
2084fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
2094fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
2104fee23f9Smrg	* testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
2114fee23f9Smrg	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
2124fee23f9Smrg	* testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
2134fee23f9Smrg	* testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
2144fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
2154fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
2164fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
2174fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/
2184fee23f9Smrg	exceptions_badbit_throw.cc: Likewise.
2194fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
2204fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
2214fee23f9Smrg	* testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
2224fee23f9Smrg
2234fee23f9Smrg	* testsuite/data/wistream_extractor_other-1.tst: New.
2244fee23f9Smrg	* testsuite/data/wistream_extractor_other-1.txt: Likewise.
2254fee23f9Smrg	* testsuite/data/wistream_extractor_other-2.tst: Likewise.
2264fee23f9Smrg	* testsuite/data/wistream_seeks-1.tst: Likewise.
2274fee23f9Smrg	* testsuite/data/wistream_seeks-1.txt: Likewise.
2284fee23f9Smrg	* testsuite/data/wistream_unformatted-1.tst: Likewise.
2294fee23f9Smrg	* testsuite/data/wistream_unformatted-1.txt: Likewise.
2304fee23f9Smrg
2314fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc:
2324fee23f9Smrg	Use wistream_extractor_other-1.txt.
2334fee23f9Smrg
2344fee23f9Smrg	* testsuite/27_io/basic_istream/peek/char/6414.cc: Minor clean-up.
2354fee23f9Smrg	* testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
2364fee23f9Smrg	* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
2374fee23f9Smrg	* testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
2384fee23f9Smrg
2394fee23f9Smrg2004-12-19  Paolo Carlini  <pcarlini@suse.de>
2404fee23f9Smrg
2414fee23f9Smrg	* testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: New.
2424fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2434fee23f9Smrg	01.cc: Likewise.
2444fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2454fee23f9Smrg	02.cc: Likewise.
2464fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2474fee23f9Smrg	03.cc: Likewise.
2484fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2494fee23f9Smrg	06.cc: Likewise.
2504fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2514fee23f9Smrg	07.cc: Likewise.
2524fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2534fee23f9Smrg	08.cc: Likewise.
2544fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2554fee23f9Smrg	09.cc: Likewise.
2564fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2574fee23f9Smrg	10.cc: Likewise.
2584fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2594fee23f9Smrg	11.cc: Likewise.
2604fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2614fee23f9Smrg	12.cc: Likewise.
2624fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2634fee23f9Smrg	13.cc: Likewise.
2644fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2654fee23f9Smrg	9555-ia.cc: Likewise.
2664fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2674fee23f9Smrg	exceptions_badbit_throw.cc: Likewise.
2684fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2694fee23f9Smrg	exceptions_failbit.cc: Likewise.
2704fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
2714fee23f9Smrg	exceptions_failbit_throw.cc: Likewise.
2724fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
2734fee23f9Smrg	1.cc: Likewise.
2744fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
2754fee23f9Smrg	11095-i.cc: Likewise.
2764fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
2774fee23f9Smrg	2.cc: Likewise.
2784fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
2794fee23f9Smrg	3.cc: Likewise.
2804fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
2814fee23f9Smrg	9555-ic.cc: Likewise.
2824fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2834fee23f9Smrg	1.cc: Likewise.
2844fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2854fee23f9Smrg	2.cc: Likewise.
2864fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2874fee23f9Smrg	3.cc: Likewise.
2884fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2894fee23f9Smrg	9318-in.cc: Likewise.
2904fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2914fee23f9Smrg	9424-in.cc: Likewise.
2924fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2934fee23f9Smrg	9555-io.cc: Likewise.
2944fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2954fee23f9Smrg	error_failbit.cc: Likewise.
2964fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2974fee23f9Smrg	exceptions_badbit_throw.cc: Likewise.
2984fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
2994fee23f9Smrg	exceptions_failbit_throw.cc: Likewise.
3004fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
3014fee23f9Smrg	exceptions_null.cc: Likewise.
3024fee23f9Smrg
3034fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/char/2.cc: Minor
3044fee23f9Smrg	tweaks.
3054fee23f9Smrg
3064fee23f9Smrg	* testsuite/testsuite_io.h (struct fail_buf): Fix type of
3074fee23f9Smrg	dummy return values.
3084fee23f9Smrg
3094fee23f9Smrg2004-12-19  Dhruv Matani  <dhruvbird@gmx.net>
3104fee23f9Smrg
3114fee23f9Smrg	* include/ext/bitmap_allocator.h: Make doxygen style comments for
3124fee23f9Smrg	internal functions and classes.
3134fee23f9Smrg
3144fee23f9Smrg2004-12-19  Dhruv Matani  <dhruvbird@gmx.net>
3154fee23f9Smrg
3164fee23f9Smrg	* docs/html/20_util/allocator.html: Correct link.
3174fee23f9Smrg	* docs/html/ext/ballocator_doc.txt: Remove.
3184fee23f9Smrg	* docs/html/ext/ballocator_doc.html: Add.
3194fee23f9Smrg
3204fee23f9Smrg2004-12-16  Danny Smith  <dannysmith@users.sourceforge.net>
3214fee23f9Smrg
3224fee23f9Smrg	PR target/18997
3234fee23f9Smrg	* config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
3244fee23f9Smrg	Define to 0 for __CYGWIN__.
3254fee23f9Smrg
3264fee23f9Smrg2004-12-16  Paolo Carlini  <pcarlini@suse.de>
3274fee23f9Smrg
3284fee23f9Smrg	* include/tr1/type_traits: Implement add_const, add_volatile,
3294fee23f9Smrg	and add_cv.
3304fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
3314fee23f9Smrg	add_const.cc: New.
3324fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
3334fee23f9Smrg	add_cv.cc: Likewise.
3344fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
3354fee23f9Smrg	add_volatile.cc: Likewise.
3364fee23f9Smrg
3374fee23f9Smrg2004-12-16  Paolo Carlini  <pcarlini@suse.de>
3384fee23f9Smrg
3394fee23f9Smrg	* include/tr1/type_traits: Implement is_function.
3404fee23f9Smrg	(struct __sfinae_types, struct __is_function_helper): New.
3414fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
3424fee23f9Smrg	is_object/is_object.cc: New.
3434fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
3444fee23f9Smrg	is_object/typedefs.cc: Likewise.
3454fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
3464fee23f9Smrg	is_function/is_function.cc: Likewise.
3474fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
3484fee23f9Smrg	is_function/typedefs.cc: Likewise.
3494fee23f9Smrg
3504fee23f9Smrg2004-12-13  Paolo Carlini  <pcarlini@suse.de>
3514fee23f9Smrg
3524fee23f9Smrg	* include/tr1/type_traits (extent): Minor tweak (i.e., public).
3534fee23f9Smrg
3544fee23f9Smrg2004-12-12  Paolo Carlini  <pcarlini@suse.de>
3554fee23f9Smrg
3564fee23f9Smrg	* include/tr1/type_traits: Minor tweak.
3574fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/extent/
3584fee23f9Smrg	typedefs.cc: Fix date.
3594fee23f9Smrg
3604fee23f9Smrg2004-12-12  Paolo Carlini  <pcarlini@suse.de>
3614fee23f9Smrg
3624fee23f9Smrg	* include/tr1/type_traits: Implement extent.
3634fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/extent/
3644fee23f9Smrg	extent.cc: New.
3654fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/extent/
3664fee23f9Smrg	typedefs.cc: Likewise.
3674fee23f9Smrg
3684fee23f9Smrg2004-12-12  Paolo Carlini  <pcarlini@suse.de>
3694fee23f9Smrg
3704fee23f9Smrg	* include/tr1/type_traits: Implement is_pointer, remove_pointer,
3714fee23f9Smrg	and add_pointer; reformat.
3724fee23f9Smrg	(_DEFINE_PRIMARY_SPEC_HELPER, _DEFINE_PRIMARY_SPEC): Generalize
3734fee23f9Smrg	and rename to _DEFINE_SPEC_HELPER and _DEFINE_SPEC; update uses.
3744fee23f9Smrg	* testsuite/tr1/4_metaprogramming/pointer_modifications/
3754fee23f9Smrg	add_pointer.cc: New.
3764fee23f9Smrg	* testsuite/tr1/4_metaprogramming/pointer_modifications/
3774fee23f9Smrg	remove_pointer.cc: Likewise.
3784fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
3794fee23f9Smrg	is_pointer/is_pointer.cc: Likewise.
3804fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
3814fee23f9Smrg	is_pointer/typedefs.cc: Likewise.
3824fee23f9Smrg
3834fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
3844fee23f9Smrg	is_reference/is_reference.cc: Slightly tweak consistently.
3854fee23f9Smrg
3864fee23f9Smrg2004-12-11  Paolo Carlini  <pcarlini@suse.de>
3874fee23f9Smrg
3884fee23f9Smrg	* include/tr1/type_traits: Implement rank.
3894fee23f9Smrg	* testsuite/testsuite_tr1.h (test_property): Generalize to any
3904fee23f9Smrg	value_type.
3914fee23f9Smrg	(test_category, test_relationship): Slightly tweak consistently.
3924fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/rank/
3934fee23f9Smrg	rank.cc: New.
3944fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/rank/
3954fee23f9Smrg	typedefs.cc: Likewise.
3964fee23f9Smrg
3974fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
3984fee23f9Smrg	is_compound/is_compound.cc: New.
3994fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4004fee23f9Smrg	is_compound/typedefs.cc: Likewise.
4014fee23f9Smrg
4024fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4034fee23f9Smrg	is_arithmetic/is_arithmetic.cc: Tweak consistently with the
4044fee23f9Smrg	testsuite_tr1.h changes.
4054fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4064fee23f9Smrg	is_fundamental/is_fundamental.cc: Likewise.
4074fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4084fee23f9Smrg	is_array/is_array.cc: Likewise.
4094fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4104fee23f9Smrg	is_floating_point/is_floating_point.cc: Likewise.
4114fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4124fee23f9Smrg	is_integral/is_integral.cc: Likewise.
4134fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4144fee23f9Smrg	is_reference/is_reference.cc: Likewise.
4154fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4164fee23f9Smrg	is_void/is_void.cc: Likewise.
4174fee23f9Smrg	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4184fee23f9Smrg	is_same/is_same.cc: Likewise.
4194fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/is_const/
4204fee23f9Smrg	is_const.cc: Likewise.
4214fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/is_volatile/
4224fee23f9Smrg	is_volatile.cc: Likewise.
4234fee23f9Smrg
4244fee23f9Smrg2004-12-10  Paolo Carlini  <pcarlini@suse.de>
4254fee23f9Smrg
4264fee23f9Smrg	* include/tr1/type_traits: Implement remove_const, remove_volatile,
4274fee23f9Smrg	and remove_cv.
4284fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
4294fee23f9Smrg	remove_const.cc: New.
4304fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
4314fee23f9Smrg	remove_cv.cc: Likewise.
4324fee23f9Smrg	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
4334fee23f9Smrg	remove_volatile.cc: Likewise.
4344fee23f9Smrg
4354fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4364fee23f9Smrg	is_array/is_array.cc: Slightly tweak consistently, remove typedefs,
4374fee23f9Smrg	add a few tests.
4384fee23f9Smrg
4394fee23f9Smrg2004-12-09  Paolo Carlini  <pcarlini@suse.de>
4404fee23f9Smrg
4414fee23f9Smrg	* include/tr1/type_traits: Implement remove_extent and
4424fee23f9Smrg	remove_all_extents.
4434fee23f9Smrg	* testsuite/tr1/4_metaprogramming/array_modifications/
4444fee23f9Smrg	remove_all_extents.cc: New.
4454fee23f9Smrg	* testsuite/tr1/4_metaprogramming/array_modifications/
4464fee23f9Smrg	remove_extent.cc: Likewise.
4474fee23f9Smrg
4484fee23f9Smrg2004-12-08  Paolo Carlini  <pcarlini@suse.de>
4494fee23f9Smrg
4504fee23f9Smrg	* include/tr1/type_traits: Implement is_same, add_reference and
4514fee23f9Smrg	remove_reference.
4524fee23f9Smrg	* testsuite/testsuite_tr1.h (test_relationship): New.
4534fee23f9Smrg	* testsuite/tr1/4_metaprogramming/reference_modifications/
4544fee23f9Smrg	add_reference.cc: New.
4554fee23f9Smrg	* testsuite/tr1/4_metaprogramming/reference_modifications/
4564fee23f9Smrg	remove_reference.cc: Likewise.
4574fee23f9Smrg	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4584fee23f9Smrg	is_same/is_same.cc: Likewise.
4594fee23f9Smrg	* testsuite/tr1/4_metaprogramming/relationships_between_types/
4604fee23f9Smrg	is_same/typedefs.cc: Likewise.
4614fee23f9Smrg
4624fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/is_const/
4634fee23f9Smrg	is_const.cc: Minor tweaks.
4644fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/is_volatile/
4654fee23f9Smrg	is_volatile.cc: Likewise.
4664fee23f9Smrg
4674fee23f9Smrg2004-12-08  David Edelsohn  <edelsohn@gnu.org>
4684fee23f9Smrg
4694fee23f9Smrg	* Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and
4704fee23f9Smrg	PICFLAG.
4714fee23f9Smrg	* Makefile.in: Regenerated.
4724fee23f9Smrg
4734fee23f9Smrg2004-12-07  Paolo Carlini  <pcarlini@suse.de>
4744fee23f9Smrg
4754fee23f9Smrg	* include/tr1/type_traits: Implement is_const and is_volatile.
4764fee23f9Smrg	* testsuite/testsuite_tr1.h (test_property): New.
4774fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
4784fee23f9Smrg	is_const/is_const.c: New.
4794fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
4804fee23f9Smrg	is_const/typedefs.cc: Likewise.
4814fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
4824fee23f9Smrg	is_volatile/is_volatile.cc: Likewise.
4834fee23f9Smrg	* testsuite/tr1/4_metaprogramming/type_properties/
4844fee23f9Smrg	is_volatile/typedefs.cc: Likewise.
4854fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4864fee23f9Smrg	is_arithmetic/is_arithmetic.cc: Slightly tweak to use ClassType
4874fee23f9Smrg	from testsuite_tr1.h.
4884fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
4894fee23f9Smrg	is_fundamental/is_fundamental.cc: Likewise.
4904fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4914fee23f9Smrg	is_array/is_array.cc: Likewise.
4924fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4934fee23f9Smrg	is_floating_point/is_floating_point.cc: Likewise.
4944fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4954fee23f9Smrg	is_integral/is_integral.cc: Likewise.
4964fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4974fee23f9Smrg	is_reference/is_reference.cc: Likewise.
4984fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
4994fee23f9Smrg	is_void/is_void.cc: Likewise.
5004fee23f9Smrg
5014fee23f9Smrg2004-12-06  Paolo Carlini  <pcarlini@suse.de>
5024fee23f9Smrg
5034fee23f9Smrg	* include/tr1/type_traits: Implement is_reference.
5044fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5054fee23f9Smrg	is_reference/is_reference.cc: New.
5064fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5074fee23f9Smrg	is_reference/typedefs.cc: Likewise.
5084fee23f9Smrg
5094fee23f9Smrg2004-12-05  Paolo Carlini  <pcarlini@suse.de>
5104fee23f9Smrg
5114fee23f9Smrg	PR libstdc++/18837
5124fee23f9Smrg	* testsuite/testsuite_performance.h: Fix mallinfo macros for
5134fee23f9Smrg	hpux.
5144fee23f9Smrg
5154fee23f9Smrg2004-12-04  Richard Henderson  <rth@redhat.com>
5164fee23f9Smrg
5174fee23f9Smrg	* testsuite/26_numerics/complex/pow.cc: Use -mieee on alpha.
5184fee23f9Smrg
5194fee23f9Smrg2004-12-04  Richard Henderson  <rth@redhat.com>
5204fee23f9Smrg
5214fee23f9Smrg	* include/ext/malloc_allocator.h: Include cstdlib.
5224fee23f9Smrg
5234fee23f9Smrg2004-12-04  Paolo Carlini  <pcarlini@suse.de>
5244fee23f9Smrg
5254fee23f9Smrg	* include/tr1/type_traits: New.
5264fee23f9Smrg	* include/Makefile.am: Add.
5274fee23f9Smrg	* include/Makefile.in: Regenerate.
5284fee23f9Smrg	* testsuite/testsuite_tr1.h: New.
5294fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
5304fee23f9Smrg	is_arithmetic/is_arithmetic.cc: New.
5314fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
5324fee23f9Smrg	is_arithmetic/typedefs.cc: Likewise.
5334fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
5344fee23f9Smrg	is_fundamental/is_fundamental.cc: Likewise.
5354fee23f9Smrg	* testsuite/tr1/4_metaprogramming/composite_type_traits/
5364fee23f9Smrg	is_fundamental/typedefs.cc: Likewise.
5374fee23f9Smrg	* testsuite/tr1/4_metaprogramming/helper_classes/
5384fee23f9Smrg	true_false_type.cc: Likewise.
5394fee23f9Smrg	* testsuite/tr1/4_metaprogramming/helper_classes/
5404fee23f9Smrg	true_false_type_typedefs.cc: Likewise.
5414fee23f9Smrg	* testsuite/tr1/4_metaprogramming/helper_classes/
5424fee23f9Smrg	typedefs.cc: Likewise.
5434fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5444fee23f9Smrg	is_array/is_array.cc: Likewise.
5454fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5464fee23f9Smrg	is_array/typedefs.cc: Likewise.
5474fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5484fee23f9Smrg	is_floating_point/is_floating_point.cc: Likewise.
5494fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5504fee23f9Smrg	is_floating_point/typedefs.cc: Likewise.
5514fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5524fee23f9Smrg	is_integral/is_integral.cc: Likewise.
5534fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5544fee23f9Smrg	is_integral/typedefs.cc: Likewise.
5554fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5564fee23f9Smrg	is_void/is_void.cc: Likewise.
5574fee23f9Smrg	* testsuite/tr1/4_metaprogramming/primary_type_categories/
5584fee23f9Smrg	is_void/typedefs.cc: Likewise.
5594fee23f9Smrg
5604fee23f9Smrg2004-12-02  Paolo Carlini  <pcarlini@suse.de>
5614fee23f9Smrg
5624fee23f9Smrg	* testsuite/testsuite_io.h (class sync_buf): New, templatized
5634fee23f9Smrg	version of sync_streambuf; add typedefs for streambuf/wstreambuf.
5644fee23f9Smrg	(class fail_buf): Likewise, for fail_streambuf.
5654fee23f9Smrg	(class fail_num_get): Templatize and add char/wchar_t typedefs.
5664fee23f9Smrg	(class fail_num_put): Likewise.
5674fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
5684fee23f9Smrg	exceptions_badbit_throw.cc: Use the latter.
5694fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
5704fee23f9Smrg	exceptions_failbit_throw.cc: Likewise.
5714fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
5724fee23f9Smrg	exceptions_badbit_throw.cc: Likewise.
5734fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
5744fee23f9Smrg	exceptions_failbit_throw.cc: Likewise.
5754fee23f9Smrg
5764fee23f9Smrg2004-12-01  Paolo Carlini  <pcarlini@suse.de>
5774fee23f9Smrg
5784fee23f9Smrg	* testsuite/27_io/basic_istream/get/wchar_t/1.cc: New.
5794fee23f9Smrg	* testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
5804fee23f9Smrg	* testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
5814fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
5824fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
5834fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
5844fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
5854fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
5864fee23f9Smrg
5874fee23f9Smrg2004-11-29  Paolo Carlini  <pcarlini@suse.de>
5884fee23f9Smrg
5894fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/char/18654.cc: Use
5904fee23f9Smrg        better names.
5914fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: Same.
5924fee23f9Smrg
5934fee23f9Smrg2004-11-29  Paolo Carlini  <pcarlini@suse.de>
5944fee23f9Smrg
5954fee23f9Smrg	PR libstdc++/18654
5964fee23f9Smrg	* include/bits/basic_string.tcc (_Rep::_S_create): When shrinking,
5974fee23f9Smrg	do not round to pagesize.
5984fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/char/18654.cc: New.
5994fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: New.
6004fee23f9Smrg
6014fee23f9Smrg2004-11-27  Paolo Carlini  <pcarlini@suse.de>
6024fee23f9Smrg
6034fee23f9Smrg	PR libstdc++/18690
6044fee23f9Smrg	* include/tr1/utility (get(pair), get(const pair)): Change
6054fee23f9Smrg	occurrences of _I to _Int.
6064fee23f9Smrg
6074fee23f9Smrg2004-11-27  Paolo Carlini  <pcarlini@suse.de>
6084fee23f9Smrg
6094fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Fix typo.
6104fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
6114fee23f9Smrg
6124fee23f9Smrg	* testsuite/22_locale/time_put/put/char/17038.cc: Use VERIFY.
6134fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
6144fee23f9Smrg	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
6154fee23f9Smrg	* testsuite/27_io/basic_ios/exceptions/char/2.cc: Likewise.
6164fee23f9Smrg
6174fee23f9Smrg2004-11-26  Paolo Carlini  <pcarlini@suse.de>
6184fee23f9Smrg
6194fee23f9Smrg	DR 243. get and getline when sentry reports failure [WP]
6204fee23f9Smrg	* include/bits/istream.tcc (istream<>::get, istream<>::getline):
6214fee23f9Smrg	Store a null character only if the array has a non-zero size.
6224fee23f9Smrg	* src/istream.cc (istream<char>::getline, istream<wchar_t>::getline):
6234fee23f9Smrg	Likewise.
6244fee23f9Smrg	* testsuite/27_io/basic_istream/get/char/3.cc: New.
6254fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/6.cc: New.
6264fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/6.cc: New.
6274fee23f9Smrg	* docs/html/ext/howto.html: Add an entry for DR 243.
6284fee23f9Smrg
6294fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: New.
6304fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: New.
6314fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/3.cc: New.
6324fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: New.
6334fee23f9Smrg	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: New.
6344fee23f9Smrg
6354fee23f9Smrg2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
6364fee23f9Smrg
6374fee23f9Smrg	* configure: Regenerate for libtool change.
6384fee23f9Smrg
6394fee23f9Smrg2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
6404fee23f9Smrg
6414fee23f9Smrg	* Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
6424fee23f9Smrg	* include/Makefile.in: Likewise.
6434fee23f9Smrg	* libmath/Makefile.in: Likewise.
6444fee23f9Smrg	* libsupc++/Makefile.in: Likewise.
6454fee23f9Smrg	* po/Makefile.in: Likewise.
6464fee23f9Smrg	* src/Makefile.in: Likewise.
6474fee23f9Smrg	* testsuite/Makefile.in: Likewise.
6484fee23f9Smrg
6494fee23f9Smrg2004-11-24  Jonathan Wakely  <redi@kayari.org>
6504fee23f9Smrg
6514fee23f9Smrg	* docs/html/ext/howto.html: Fix incorrect link.
6524fee23f9Smrg	* docs/html/documentation.html: Regenerate.
6534fee23f9Smrg
6544fee23f9Smrg2004-11-24  Nathan Myers  <ncm@cantrip.org>
6554fee23f9Smrg
6564fee23f9Smrg	* include/bits/streambuf_iterator.h
6574fee23f9Smrg	(istreambuf_iterator<>::operator++(), operator++(int)): Don't
6584fee23f9Smrg	check unnecessarily the return value of _M_sbuf->sbumpc().
6594fee23f9Smrg
6604fee23f9Smrg2004-11-24  Benjamin Kosnik  <bkoz@redhat.com>
6614fee23f9Smrg
6624fee23f9Smrg	* include/Makefile.am (tr1_headers): Add utility, functional.
6634fee23f9Smrg	* include/Makefile.in: Regenerate.
6644fee23f9Smrg
6654fee23f9Smrg2004-11-24  Chris Jefferson  <chris@bubblescope.net>
6664fee23f9Smrg
6674fee23f9Smrg	* include/tr1/tuple(operator!=): Change operator
6684fee23f9Smrg	definition to match (draft) technical report.
6694fee23f9Smrg	(operator>): Same.
6704fee23f9Smrg	(operator<=): Same.
6714fee23f9Smrg	(operator>=): Same.
6724fee23f9Smrg	(ref): Move to include/tr1/functional.
6734fee23f9Smrg	(cref): Same.
6744fee23f9Smrg	(tuple_size<pair>): Move to include/tr1/utility.
6754fee23f9Smrg	(tuple_element<,pair>): Same.
6764fee23f9Smrg	* include/tr1/functional: New.
6774fee23f9Smrg	* include/tr1/utility: New.
6784fee23f9Smrg	* testsuite/tr1/6_container/utility/pair.cc: New.
6794fee23f9Smrg
6804fee23f9Smrg2004-11-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
6814fee23f9Smrg
6824fee23f9Smrg	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
6834fee23f9Smrg	(do_out, do_unshift, do_in): Remove redundant typedef.
6844fee23f9Smrg
6854fee23f9Smrg2004-11-23  Chris Jefferson  <chris@bubblescope.net>
6864fee23f9Smrg
6874fee23f9Smrg	* testsuite/testsuite_iterators.h: New.
6884fee23f9Smrg        * testsuite/25_algorithms/search_n/iterator.cc: New.
6894fee23f9Smrg        * testsuite/performance/25_algorithms/search_n.cc: New.
6904fee23f9Smrg
6914fee23f9Smrg2004-11-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6924fee23f9Smrg
6934fee23f9Smrg	* testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp.
6944fee23f9Smrg
6954fee23f9Smrg2004-11-23  Benjamin Kosnik  <bkoz@redhat.com>
6964fee23f9Smrg
6974fee23f9Smrg	* docs/doxygen/doxygroups.cc: Add std::tr1 namespace.
6984fee23f9Smrg	* docs/doxygen/run_doxygen: Renames for std::tr1.
6994fee23f9Smrg	* docs/doxygen/user.cfg.in: Add cxxabi.h.
7004fee23f9Smrg	* include/bits/*.tcc: Add file markup.
7014fee23f9Smrg	* include/bits/allocator.h: Add link to allocator.html.
7024fee23f9Smrg	* include/bits/atomicity.h: Add file markup.
7034fee23f9Smrg	* include/bits/concurrence.h: Same.
7044fee23f9Smrg	* include/bits/functexcept.h: Same.
7054fee23f9Smrg	* include/ext*: Adjust file markup, remove GCC3 bits.
7064fee23f9Smrg	* include/std/*: Adjust file markup, remove bits about renamed files.
7074fee23f9Smrg	* libsupc++/cxxabi.h: Add file markup.
7084fee23f9Smrg	* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers.
7094fee23f9Smrg
7104fee23f9Smrg2004-11-22  Benjamin Kosnik  <bkoz@redhat.com>
7114fee23f9Smrg
7124fee23f9Smrg	* include/bits/locale_facets.h (isspace, isprint, isupper,
7134fee23f9Smrg	islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph,
7144fee23f9Smrg	toupper, tolower): Add doxygen markup.
7154fee23f9Smrg	(codecvt_byname, ctype_byname, numpunct_byname, collate_byname,
7164fee23f9Smrg	time_get_byname, time_put_byname, moneypunct_byname,
7174fee23f9Smrg	messages_byname): Same.
7184fee23f9Smrg	* include/std/std_fstream.h: Remove superfluous markup.
7194fee23f9Smrg	* include/std/std_sstream.h: Same.
7204fee23f9Smrg	* include/std/std_streambuf.h: Same.
7214fee23f9Smrg	* include/ext/enc_filebuf.h: Adjust markup.
7224fee23f9Smrg	* include/ext/stdio_filebuf.h: Same.
7234fee23f9Smrg	* include/ext/stdio_sync_filebuf.h: Same.
7244fee23f9Smrg	* include/bits/codecvt.h: Same.
7254fee23f9Smrg	* config/os/gnu-linux/ctype_base.h: Same.
7264fee23f9Smrg	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
7274fee23f9Smrg	* include/tr1/array: Add markup.
7284fee23f9Smrg	* include/tr1/tuple: Same.
7294fee23f9Smrg
7304fee23f9Smrg	* docs/doxygen/run_doxygen: Print arguments.
7314fee23f9Smrg
7324fee23f9Smrg	* docs/doxygen/user.cfg.in: Tweaks.
7334fee23f9Smrg
7344fee23f9Smrg2004-11-19  Jonathan Wakely  <redi@gcc.gnu.org>
7354fee23f9Smrg
7364fee23f9Smrg	* include/bits/basic_string.h, include/bits/locale_classes.h,
7374fee23f9Smrg	include/bits/valarray_after.h, include/bits/valarray_before.h,
7384fee23f9Smrg	include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h,
7394fee23f9Smrg	include/std/std_functional.h, include/std/std_memory.h,
7404fee23f9Smrg	include/std/std_numeric.h: Doxygen fixes.
7414fee23f9Smrg
7424fee23f9Smrg2004-11-19  Paolo Carlini  <pcarlini@suse.de>
7434fee23f9Smrg
7444fee23f9Smrg	* testsuite/22_locale/time_get/get_date/char/1.cc: In the checks
7454fee23f9Smrg	use, more correctly (and consistently with other testcases) the
7464fee23f9Smrg	return value of the facet (the iterator arguments are by value).
7474fee23f9Smrg	* testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
7484fee23f9Smrg	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
7494fee23f9Smrg	* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
7504fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
7514fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
7524fee23f9Smrg	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
7534fee23f9Smrg	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
7544fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
7554fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
7564fee23f9Smrg	* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
7574fee23f9Smrg	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
7584fee23f9Smrg
7594fee23f9Smrg2004-11-19  Jonathan Wakely  <redi@gcc.gnu.org>
7604fee23f9Smrg
7614fee23f9Smrg	* Makefile.am (doxygen, doxygen-maint, doxygen-man): Remove extra '$'
7624fee23f9Smrg	from host_alias variable.
7634fee23f9Smrg	* Makefile.in: Regenerate.
7644fee23f9Smrg
7654fee23f9Smrg2004-11-19  Chris Jefferson  <chris@bubblescope.net>
7664fee23f9Smrg
7674fee23f9Smrg	* include/bits/stl_list.h (list::back, list::back const):
7684fee23f9Smrg	Don't decrement temporary.
7694fee23f9Smrg
7704fee23f9Smrg2004-11-19  Paolo Carlini  <pcarlini@suse.de>
7714fee23f9Smrg
7724fee23f9Smrg	* include/bits/stl_deque.h (deque::front, deque::front const,
7734fee23f9Smrg	deque::back, deque::back const): Slightly tweak for stylistic
7744fee23f9Smrg	consistency.
7754fee23f9Smrg
7764fee23f9Smrg2004-11-18  Paolo Carlini  <pcarlini@suse.de>
7774fee23f9Smrg
7784fee23f9Smrg	* testsuite/26_numerics/numeric/sum_diff.cc: Use VERIFY.
7794fee23f9Smrg	* testsuite/ext/array_allocator/1.cc: Likewise.
7804fee23f9Smrg	* testsuite/ext/array_allocator/2.cc: Likewise.
7814fee23f9Smrg	* testsuite/ext/array_allocator/3.cc: Likewise.
7824fee23f9Smrg	* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
7834fee23f9Smrg
7844fee23f9Smrg2004-11-18  Paolo Carlini  <pcarlini@suse.de>
7854fee23f9Smrg
7864fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::do_get(void*&)):
7874fee23f9Smrg	If the failbit is set, don't set it again.
7884fee23f9Smrg	(money_get<>::_M_extract): Minor stylistic tweak: consistently
7894fee23f9Smrg	with the other functions, take care of eofbit at the end.
7904fee23f9Smrg
7914fee23f9Smrg2004-11-18  Paolo Carlini  <pcarlini@suse.de>
7924fee23f9Smrg
7934fee23f9Smrg	DR 434. bitset::to_string() hard to use [Ready]
7944fee23f9Smrg	* include/std/std_bitset.h (to_string): Add three overloads, taking
7954fee23f9Smrg	fewer template arguments.
7964fee23f9Smrg	* docs/html/ext/howto.html: Add an entry for DR 434.
7974fee23f9Smrg	* testsuite/23_containers/bitset/to_string/1.cc: New.
7984fee23f9Smrg
7994fee23f9Smrg2004-11-17  Paolo Carlini  <pcarlini@suse.de>
8004fee23f9Smrg
8014fee23f9Smrg	* include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
8024fee23f9Smrg	_CharT)): Remove temporary kludge for libstdc++/15002.
8034fee23f9Smrg	* include/std/std_streambuf.h (class basic_streambuf): Declare
8044fee23f9Smrg	getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
8054fee23f9Smrg	* include/bits/basic_string.h (getline(basic_istream<>&,
8064fee23f9Smrg	basic_string<>&, _CharT)): Declare optimized specializations for
8074fee23f9Smrg	char and wchar_t, using protected members of basic_streambuf.
8084fee23f9Smrg	* src/istream.cc: Define the latter.
8094fee23f9Smrg
8104fee23f9Smrg2004-11-16  Jonathan Wakely  <redi@gcc.gnu.org>
8114fee23f9Smrg
8124fee23f9Smrg	* docs/html/19_diagnostics/howto.html: Document change from
8134fee23f9Smrg	_GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.
8144fee23f9Smrg
8154fee23f9Smrg2004-11-16  Matthias Klose  <doko@debian.org>
8164fee23f9Smrg
8174fee23f9Smrg	* docs/doxygen/user.cfg.in: Set HAVE_DOT to NO.
8184fee23f9Smrg
8194fee23f9Smrg2004-11-16  Matthias Klose  <doko@debian.org>
8204fee23f9Smrg
8214fee23f9Smrg	* Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias
8224fee23f9Smrg	instead of build_alias.
8234fee23f9Smrg	* docs/doxygen/run_doxygen: Likewise.
8244fee23f9Smrg	* docs/doxygen/user.cfg.in: Likewise.
8254fee23f9Smrg	* Makefile.in: Regenerate.
8264fee23f9Smrg
8274fee23f9Smrg2004-11-15  Paolo Carlini  <pcarlini@suse.de>
8284fee23f9Smrg
8294fee23f9Smrg	* include/bits/streambuf.tcc (__copy_streambufs): Provide
8304fee23f9Smrg	a generic version of the function, not using the protected
8314fee23f9Smrg	members of basic_streambuf.
8324fee23f9Smrg	* include/std/std_streambuf.h (__copy_streambufs): Declare
8334fee23f9Smrg	optimized specializations for char and wchar_t.
8344fee23f9Smrg	* src/streambuf.cc: New file, define the latter.
8354fee23f9Smrg	* src/Makefile.am: Add.
8364fee23f9Smrg	* src/Makefile.in: Regenerate.
8374fee23f9Smrg
8384fee23f9Smrg2004-11-15  Matthias Klose  <doko@debian.org>
8394fee23f9Smrg
8404fee23f9Smrg	* docs/doxygen/run_doxygen: Add --build_alias option,
8414fee23f9Smrg	substitute it in docs/doxygen/user.cfg.in.
8424fee23f9Smrg	* docs/doxygen/user.cfg.in: Use build_alias.
8434fee23f9Smrg	* Makefile.am: Pass --build_alias to run_doxygen
8444fee23f9Smrg	* Makefile.in: Regenerate.
8454fee23f9Smrg
8464fee23f9Smrg2004-11-15  Benjamin Kosnik  <bkoz@redhat.com>
8474fee23f9Smrg
8484fee23f9Smrg	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4.
8494fee23f9Smrg
8504fee23f9Smrg2004-11-15  Paolo Carlini  <pcarlini@suse.de>
8514fee23f9Smrg
8524fee23f9Smrg	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33.
8534fee23f9Smrg
8544fee23f9Smrg2004-11-14  Paolo Carlini  <pcarlini@suse.de>
8554fee23f9Smrg
8564fee23f9Smrg	* include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get):
8574fee23f9Smrg	Slightly tweak for clarity (also leads to measurably better code).
8584fee23f9Smrg
8594fee23f9Smrg2004-11-12  Andrew Pinski  <pinskia@physics.uc.edu>
8604fee23f9Smrg
8614fee23f9Smrg	PR other/14264
8624fee23f9Smrg	* testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C.
8634fee23f9Smrg
8644fee23f9Smrg2004-11-09  Paolo Carlini  <pcarlini@suse.de>
8654fee23f9Smrg
8664fee23f9Smrg	* include/bits/locale_facets.tcc (time_get<>::do_get_weekday,
8674fee23f9Smrg	time_get<>::do_get_monthname): Absolutely avoid dereferencing
8684fee23f9Smrg	end iterators.
8694fee23f9Smrg
8704fee23f9Smrg	* include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
8714fee23f9Smrg	Minor tweak.
8724fee23f9Smrg
8734fee23f9Smrg2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
8744fee23f9Smrg	    Doug Gregor  <dgregor@cs.indiana.edu>
8754fee23f9Smrg
8764fee23f9Smrg	PR libstdc++/17664
8774fee23f9Smrg	* src/debug.cc : Just use one mutex.
8784fee23f9Smrg
8794fee23f9Smrg2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
8804fee23f9Smrg
8814fee23f9Smrg	* configure.ac (libtool_VERSION): To 6:4:0.
8824fee23f9Smrg	* configure: Regenerate.
8834fee23f9Smrg
8844fee23f9Smrg	* config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4.
8854fee23f9Smrg
8864fee23f9Smrg	* docs/doxygen/user.cfg.in: Add more extension files.
8874fee23f9Smrg
8884fee23f9Smrg2004-11-08  Paolo Carlini  <pcarlini@suse.de>
8894fee23f9Smrg
8904fee23f9Smrg	* include/bits/streambuf_iterator.h (class istreambuf_iterator):
8914fee23f9Smrg	Consistently use _M_c to cache the current char, i.e., not only
8924fee23f9Smrg	when operator++(int) is involved; change _M_c to mutable.
8934fee23f9Smrg	(_M_get()): Always save the return value of _M_sbuf->sgetc() into
8944fee23f9Smrg	_M_c.
8954fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix
8964fee23f9Smrg	(long standing) typo.
8974fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
8984fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
8994fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
9004fee23f9Smrg
9014fee23f9Smrg2004-11-08  Paolo Carlini  <pcarlini@suse.de>
9024fee23f9Smrg
9034fee23f9Smrg	* include/bits/istream.tcc (getline(char_type*, streamsize,
9044fee23f9Smrg	char_type), ignore(streamsize), ignore(streamsize, int_type)):
9054fee23f9Smrg	Restore a generic version of the functions, not using the
9064fee23f9Smrg	protected members of basic_streambuf.
9074fee23f9Smrg	* include/std/std_istream.h (getline(char_type*, streamsize,
9084fee23f9Smrg	char_type), ignore(streamsize), ignore(streamsize, int_type)):
9094fee23f9Smrg	Declare optimized specializations for char and wchar_t.
9104fee23f9Smrg	* src/istream.cc: New file, define the latter.
9114fee23f9Smrg	* src/Makefile.am: Add.
9124fee23f9Smrg	* src/Makefile.in: Regenerate.
9134fee23f9Smrg
9144fee23f9Smrg2004-11-07  Paolo Carlini  <pcarlini@suse.de>
9154fee23f9Smrg
9164fee23f9Smrg	* testsuite/performance/27_io/ifstream_getline-2.cc: New.
9174fee23f9Smrg
9184fee23f9Smrg2004-11-05  Benjamin Kosnik  <bkoz@redhat.com>
9194fee23f9Smrg
9204fee23f9Smrg	PR libstdc++/17218
9214fee23f9Smrg	PR libstdc++/17223
9224fee23f9Smrg	* docs/doxygen/filter: Remove.
9234fee23f9Smrg	* docs/doxygen/filter.sed: Remove.
9244fee23f9Smrg	* docs/doxygen/mainpage.html: Add link to functions.
9254fee23f9Smrg	* docs/doxygen/run_doxygen: Changes due to new source filtering.
9264fee23f9Smrg	* docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
9274fee23f9Smrg	* include/bits/allocator.h: Tweaks for doxygen.
9284fee23f9Smrg	* include/bits/char_traits.h: Same.
9294fee23f9Smrg	* include/bits/codecvt.h: Same.
9304fee23f9Smrg	* include/bits/concurrence.h: Same.
9314fee23f9Smrg	* include/bits/locale_facets.h: Same.
9324fee23f9Smrg	* include/ext/array_allocator.h: Same.
9334fee23f9Smrg	* include/ext/debug_allocator.h: Same.
9344fee23f9Smrg	* include/ext/malloc_allocator.h: Same.
9354fee23f9Smrg	* include/ext/mt_allocator.h: Same.
9364fee23f9Smrg	* include/ext/new_allocator.h: Same.
9374fee23f9Smrg	* include/ext/pool_allocator.h: Same.
9384fee23f9Smrg	* include/ext/stdio_sync_filebuf.h: Same.
9394fee23f9Smrg	* include/std/std_memory.h: Same.
9404fee23f9Smrg	* include/tr1/array: Same.
9414fee23f9Smrg	* include/tr1/tuple: Same.
9424fee23f9Smrg	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
9434fee23f9Smrg	* config/os/gnu-linux/ctype_base.h: Same.
9444fee23f9Smrg
9454fee23f9Smrg2004-11-04  Paolo Carlini  <pcarlini@suse.de>
9464fee23f9Smrg
9474fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::do_get(bool&)):
9484fee23f9Smrg	Evaluate __beg == __end the exact strict minimum number of times.
9494fee23f9Smrg
9504fee23f9Smrg2004-11-03  Jonathan Wakely  <redi@gcc.gnu.org>
9514fee23f9Smrg
9524fee23f9Smrg	* include/bits/stl_numeric.h (partial_sum, adjacent_difference):
9534fee23f9Smrg	Avoid dereferencing two times __first in the prologue.
9544fee23f9Smrg
9554fee23f9Smrg2004-11-03  Paolo Carlini  <pcarlini@suse.de>
9564fee23f9Smrg
9574fee23f9Smrg	* include/bits/stl_numeric.h: Trivial formatting fixes.
9584fee23f9Smrg
9594fee23f9Smrg2004-11-03  Benjamin Kosnik  <bkoz@redhat.com>
9604fee23f9Smrg
9614fee23f9Smrg	* include/bits/c++config: Spacing.
9624fee23f9Smrg	* libsupc++/del_op.cc: Include c++config.h.
9634fee23f9Smrg	* libsupc++/del_opnt.cc: Same.
9644fee23f9Smrg	* libsupc++/del_opv.cc: Same.
9654fee23f9Smrg	* libsupc++/del_opvnt.cc: Same.
9664fee23f9Smrg	* libsupc++/new_op.cc: Same.
9674fee23f9Smrg	* libsupc++/new_opnt.cc: Same.
9684fee23f9Smrg	* libsupc++/new_opv.cc: Same.
9694fee23f9Smrg	* libsupc++/new_opvnt.cc: Same.
9704fee23f9Smrg
9714fee23f9Smrg2004-11-03  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
9724fee23f9Smrg
9734fee23f9Smrg	* config/os/bsd/darwin/os_defines.h
9744fee23f9Smrg	(_GLIBCXX_WEAK_DEFINITION): Define.
9754fee23f9Smrg	* include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
9764fee23f9Smrg	* libsupc++/del_op.cc (operator delete(void *)): Use
9774fee23f9Smrg	_GLIBCXX_WEAK_DEFINITION.
9784fee23f9Smrg	* libsupc++/del_opnt.cc
9794fee23f9Smrg	(operator delete(void *, const std::nothrow_t&)): Same.
9804fee23f9Smrg	* libsupc++/del_opv.cc (operator delete[](void *)): Same.
9814fee23f9Smrg	* libsupc++/del_opvnt.cc
9824fee23f9Smrg	(operator delete[](void *, const std::nothrow_t&)): Same.
9834fee23f9Smrg	* libsupc++/new_op.cc (operator new(std::size_t)): Same.
9844fee23f9Smrg	* libsupc++/new_opnt.cc
9854fee23f9Smrg	(operator new(std::size_t, const std::nothrow_t&)): Same
9864fee23f9Smrg	* libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
9874fee23f9Smrg	* libsupc++/new_opvnt.cc
9884fee23f9Smrg	(operator new[](std::size_t, const std::nothrow_t&)): Same.
9894fee23f9Smrg
9904fee23f9Smrg2004-11-02  Paolo Carlini  <pcarlini@suse.de>
9914fee23f9Smrg
9924fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int):
9934fee23f9Smrg	Evaluate *__beg the exact strict minimum number of times; likewise
9944fee23f9Smrg	for __beg != __end; slightly simplify main parsing loop.
9954fee23f9Smrg
9964fee23f9Smrg2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
9974fee23f9Smrg  	    Lothar Werzinger  <lothar@xcerla.com>
9984fee23f9Smrg
9994fee23f9Smrg	PR libstdc++/17664
10004fee23f9Smrg	* src/debug.cc: Include concurrence, use mutexes.
10014fee23f9Smrg	(_Safe_iterator_base::_M_attach): Here.
10024fee23f9Smrg	(_Safe_iterator_base::_M_detach): Here.
10034fee23f9Smrg
10044fee23f9Smrg2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
10054fee23f9Smrg
10064fee23f9Smrg	PR libstdc++/17922
10074fee23f9Smrg	* include/bits/ios_base.h : Add enum values.
10084fee23f9Smrg	* testsuite/testsuite_hooks.h (bitmask_operators): Add function.
10094fee23f9Smrg	* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
10104fee23f9Smrg	* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
10114fee23f9Smrg	* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
10124fee23f9Smrg	* testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
10134fee23f9Smrg	* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
10144fee23f9Smrg	* testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
10154fee23f9Smrg	* testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
10164fee23f9Smrg
10174fee23f9Smrg	* config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
10184fee23f9Smrg	* src/ios.cc: Same.
10194fee23f9Smrg
10204fee23f9Smrg	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
10214fee23f9Smrg	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
10224fee23f9Smrg
10234fee23f9Smrg2004-11-01  Momchil Velikov  <velco@fadata.bg>
10244fee23f9Smrg
10254fee23f9Smrg	PR libstdc++/18185
10264fee23f9Smrg	* libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
10274fee23f9Smrg	exceptions.
10284fee23f9Smrg	* testsuite/thread/18185.cc: New.
10294fee23f9Smrg
10304fee23f9Smrg2004-11-01  Chris Jefferson  <chris@bubblescope.net>
10314fee23f9Smrg
10324fee23f9Smrg	PR libstdc++/18159
10334fee23f9Smrg	* include/tr1/tuple (get(pair)): Change occurrences of _I to _Int.
10344fee23f9Smrg	(get(const pair)): Likewise.
10354fee23f9Smrg
10364fee23f9Smrg2004-11-01  Paolo Carlini  <pcarlini@suse.de>
10374fee23f9Smrg
10384fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
10394fee23f9Smrg	Evaluate *__beg the exact strict minimum number of times; likewise
10404fee23f9Smrg	for __beg != __end; in the main parsing loop, call ++__beg in two
10414fee23f9Smrg	places only. The former is also a correctness issue, because,
10424fee23f9Smrg	according to the standard (22.2.2.1.2, Stage 2), 'in' shall be
10434fee23f9Smrg	dereferenced only one time for each increment.
10444fee23f9Smrg
10454fee23f9Smrg2004-10-31  Benjamin Kosnik  <bkoz@redhat.com>
10464fee23f9Smrg
10474fee23f9Smrg	PR c++/16728
10484fee23f9Smrg	* testsuite/23_containers/set/modifiers/16728.cc: New.
10494fee23f9Smrg
10504fee23f9Smrg2004-10-30  Paolo Carlini  <pcarlini@suse.de>
10514fee23f9Smrg
10524fee23f9Smrg	* include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak.
10534fee23f9Smrg
10544fee23f9Smrg	* testsuite/ext/bitmap_allocator/check_delete.cc: New.
10554fee23f9Smrg	* testsuite/ext/bitmap_allocator/check_new.cc: Likewise.
10564fee23f9Smrg
10574fee23f9Smrg2004-10-29  Geoffrey Keating  <geoffk@apple.com>
10584fee23f9Smrg
10594fee23f9Smrg	* configure.host (darwin*): Set os_include_dir to a separate directory
10604fee23f9Smrg	for Darwin.
10614fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
10624fee23f9Smrg	'darwin'.
10634fee23f9Smrg	* config/locale/darwin/ctype_members.cc: New.
10644fee23f9Smrg	* config/os/bsd/darwin/ctype_base.h: New.
10654fee23f9Smrg	* config/os/bsd/darwin/ctype_inline.h: New.
10664fee23f9Smrg	* config/os/bsd/darwin/ctype_noninline.h: New.
10674fee23f9Smrg	* config/os/bsd/darwin/os_defines.h: New.
10684fee23f9Smrg
10694fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail
10704fee23f9Smrg	on Linux.
10714fee23f9Smrg
10724fee23f9Smrg2004-10-29  Chris Jefferson  <chris@bubblescope.net>
10734fee23f9Smrg
10744fee23f9Smrg	* include/bit/stl_algo.h (find_first_of(,,,,pred)):
10754fee23f9Smrg	Remove invalid EqualOpConcept.
10764fee23f9Smrg	* testsuite/25_algorithms/find_first_of/concept_check_1.cc: New.
10774fee23f9Smrg
10784fee23f9Smrg2004-10-29  Benjamin Kosnik  <bkoz@redhat.com>
10794fee23f9Smrg
10804fee23f9Smrg	* testsuite/testsuite_allocator.h (check_delete): New.
10814fee23f9Smrg	(check_new): Simplify.
10824fee23f9Smrg	* testsuite/ext/array_allocator/check_delete.cc: New.
10834fee23f9Smrg	* testsuite/ext/array_allocator/check_new.cc: Simplify.
10844fee23f9Smrg	* testsuite/ext/debug_allocator/check_delete.cc: New.
10854fee23f9Smrg	* testsuite/ext/debug_allocator/check_new.cc: Simplify.
10864fee23f9Smrg	* testsuite/ext/malloc_allocator/check_delete.cc: New.
10874fee23f9Smrg	* testsuite/ext/malloc_allocator/check_new.cc: Simplify.
10884fee23f9Smrg	* testsuite/ext/mt_allocator/check_delete.cc: New.
10894fee23f9Smrg	* testsuite/ext/mt_allocator/check_new.cc: Simplify.
10904fee23f9Smrg	* testsuite/ext/new_allocator/check_delete.cc: New.
10914fee23f9Smrg	* testsuite/ext/new_allocator/check_new.cc: Simplify.
10924fee23f9Smrg	* testsuite/ext/pool_allocator/check_delete.cc: New.
10934fee23f9Smrg	* testsuite/ext/pool_allocator/check_new.cc: Simplify.
10944fee23f9Smrg
10954fee23f9Smrg2004-10-28  Chris Jefferson  <chris@bubblescope.net>
10964fee23f9Smrg
10974fee23f9Smrg	PR libstdc++/18159
10984fee23f9Smrg	* include/tr1/tuple: Fix, change formatting.
10994fee23f9Smrg
11004fee23f9Smrg2004-10-28  Benjamin Kosnik  <bkoz@redhat.com>
11014fee23f9Smrg
11024fee23f9Smrg	* include/ext/mt_allocator.h (__common_pool_policy): Add template
11034fee23f9Smrg	template parameter for pool class type.
11044fee23f9Smrg	(__per_type_pool_policy): Same.
11054fee23f9Smrg	(__mt_allocator): Don't inherit policy. Qualify policy_type calls.
11064fee23f9Smrg	* testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix.
11074fee23f9Smrg	* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same.
11084fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
11094fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
11104fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
11114fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
11124fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
11134fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
11144fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
11154fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
11164fee23f9Smrg	* testsuite/ext/mt_allocator/instantiate.cc: Same.
11174fee23f9Smrg	* testsuite/ext/mt_allocator/tune-1.cc: Same.
11184fee23f9Smrg	* testsuite/ext/mt_allocator/tune-2.cc: Same.
11194fee23f9Smrg	* testsuite/ext/mt_allocator/tune-3.cc: Same.
11204fee23f9Smrg	* testsuite/ext/mt_allocator/tune-4.cc: Same.
11214fee23f9Smrg
11224fee23f9Smrg2004-10-28  Paolo Carlini  <pcarlini@suse.de>
11234fee23f9Smrg
11244fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
11254fee23f9Smrg	Cache *__beg in __c when parsing exponent sign too.
11264fee23f9Smrg	(num_get<>::do_get(..., bool&)): Cache *__beg.
11274fee23f9Smrg	(money_get<>::_M_extract)): Likewise, in money_base::value.
11284fee23f9Smrg
11294fee23f9Smrg2004-10-27  Paolo Carlini  <pcarlini@suse.de>
11304fee23f9Smrg
11314fee23f9Smrg	* include/bits/basic_string.h (assign(const basic_string&)):
11324fee23f9Smrg	Move out of line...
11334fee23f9Smrg	* include/bits/basic_string.tcc: ... here.
11344fee23f9Smrg
11354fee23f9Smrg2004-10-27  Paolo Carlini  <pcarlini@suse.de>
11364fee23f9Smrg
11374fee23f9Smrg	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
11384fee23f9Smrg	Move out of line...
11394fee23f9Smrg	* include/bits/basic_string.tcc: ... here.
11404fee23f9Smrg
11414fee23f9Smrg2004-10-26  Paolo Carlini  <pcarlini@suse.de>
11424fee23f9Smrg
11434fee23f9Smrg	* include/bits/basic_string.h (append(const basic_string&),
11444fee23f9Smrg	append(size_type, _CharT)): Move out of line...
11454fee23f9Smrg	* include/bits/basic_string.tcc: ... here.
11464fee23f9Smrg
11474fee23f9Smrg2004-10-26  Paolo Carlini  <pcarlini@suse.de>
11484fee23f9Smrg
11494fee23f9Smrg	* include/bits/basic_string.h (erase(size_type, size_type),
11504fee23f9Smrg	erase(iterator), erase(iterator, iterator)): Call _M_mutate
11514fee23f9Smrg	instead of _M_replace_safe, equivalent when the fourth argument
11524fee23f9Smrg	is zero and simpler.
11534fee23f9Smrg
11544fee23f9Smrg2004-10-26  Benjamin Kosnik  <bkoz@redhat.com>
11554fee23f9Smrg
11564fee23f9Smrg	* include/ext/array_allocator.h (array::allocate): Check for valid
11574fee23f9Smrg	array object, use its size member function directly.
11584fee23f9Smrg	* testsuite/ext/array_allocator/3.cc: New.
11594fee23f9Smrg	* docs/html/20_util/allocator.html: Add docs.
11604fee23f9Smrg
11614fee23f9Smrg2004-10-25  Geoffrey Keating  <geoffk@apple.com>
11624fee23f9Smrg
11634fee23f9Smrg	* configure.host (darwin*): Build libstdc++ single module
11644fee23f9Smrg	and flat namespace.
11654fee23f9Smrg	* libsupc++/new_op.cc (new): Make weak.
11664fee23f9Smrg	* libsupc++/new_opnt.cc (new): Make weak.
11674fee23f9Smrg	* libsupc++/new_opv.cc (new): Make weak.
11684fee23f9Smrg	* libsupc++/new_opvnt.cc (new): Make weak.
11694fee23f9Smrg	* libsupc++/delete_op.cc (delete): Make weak.
11704fee23f9Smrg	* libsupc++/delete_opnt.cc (delete): Make weak.
11714fee23f9Smrg	* libsupc++/delete_opv.cc (delete): Make weak.
11724fee23f9Smrg	* libsupc++/delete_opvnt.cc (delete): Make weak.
11734fee23f9Smrg
11744fee23f9Smrg2004-10-25  Benjamin Kosnik  <bkoz@redhat.com>
11754fee23f9Smrg
11764fee23f9Smrg	* testsuite/Makefile.am (GLIBCXX_INCLUDES): Add.
11774fee23f9Smrg	(AUTOMAKE_OPTIONS): Add nostdinc.
11784fee23f9Smrg	* testsuite/Makefile.in: Regenerate.
11794fee23f9Smrg	* scripts/testsuite_flags.in (build-includes): Remove redundant
11804fee23f9Smrg	search for libsupc++.
11814fee23f9Smrg	* fragment.am: Clean.
11824fee23f9Smrg
11834fee23f9Smrg2004-10-25  Benjamin Kosnik  <bkoz@redhat.com>
11844fee23f9Smrg
11854fee23f9Smrg	* include/Makefile.am (tr1_headers): Add tuple.
11864fee23f9Smrg	* include/Makefile.in: Regenerate.
11874fee23f9Smrg
11884fee23f9Smrg2004-10-25  Chris Jefferson  <chris@bubblescope.net>
11894fee23f9Smrg
11904fee23f9Smrg        * include/tr1/tuple: Implementation of tuple from library TR.
11914fee23f9Smrg	* testsuite/tr1/6_containers/tuple/tuple_element.cc: New.
11924fee23f9Smrg	* testsuite/tr1/6_containers/tuple/tuple_size.cc: New.
11934fee23f9Smrg	* testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
11944fee23f9Smrg	New.
11954fee23f9Smrg	* testsuite/tr1/6_containers/tuple/cons/assignment.cc: New.
11964fee23f9Smrg	* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: New.
11974fee23f9Smrg	* testsuite/tr1/6_containers/tuple/cons/constructor.cc: New.
11984fee23f9Smrg	* testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
11994fee23f9Smrg	New.
12004fee23f9Smrg	* testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: New.
12014fee23f9Smrg	* testsuite/tr1/6_containers/tuple/element_access/get.cc: New.
12024fee23f9Smrg
12034fee23f9Smrg2004-10-25  Paolo Carlini  <pcarlini@suse.de>
12044fee23f9Smrg
12054fee23f9Smrg	* include/bits/basic_string.h (_Rep::_M_is_safe): Move to
12064fee23f9Smrg	basic_string as _M_disjunct, adjust to take only __s.
12074fee23f9Smrg	* include/bits/basic_string.tcc: Adjust consistently callers.
12084fee23f9Smrg
12094fee23f9Smrg2004-10-25  Paolo Carlini  <pcarlini@suse.de>
12104fee23f9Smrg
12114fee23f9Smrg	* include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
12124fee23f9Smrg	Adjust bit missing from the previous commit.
12134fee23f9Smrg
12144fee23f9Smrg2004-10-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
12154fee23f9Smrg
12164fee23f9Smrg	PR other/18138
12174fee23f9Smrg	* testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc.
12184fee23f9Smrg
12194fee23f9Smrg2004-10-25  Paolo Carlini  <pcarlini@suse.de>
12204fee23f9Smrg
12214fee23f9Smrg	* include/bits/basic_string.h (_Rep::_M_is_safe, _M_check_length,
12224fee23f9Smrg	_M_move, _M_copy, _M_assign): New, use througout.
12234fee23f9Smrg	(operator+=(_CharT)): Define in terms of push_back.
12244fee23f9Smrg	(append(const basic_string&)): Define here, inline, and simplify,
12254fee23f9Smrg	don't use the full _M_replace_safe.
12264fee23f9Smrg	(append(size_type, _CharT)): Likewise, don't use _M_replace_aux.
12274fee23f9Smrg	(push_back): Likewise.
12284fee23f9Smrg	(assign(const basic_string&)): Define here, inline.
12294fee23f9Smrg	* include/bits/basic_string.tcc (append(const _CharT* s, size_type):
12304fee23f9Smrg	Fix: when s points inside the _Rep, upon reallocation (reserve) we
12314fee23f9Smrg	were copying from deallocated memory.
12324fee23f9Smrg	(append(const basic_string&, size_type, size_type)): Simplify,
12334fee23f9Smrg	don't use _M_replace_safe.
12344fee23f9Smrg	(replace(size_type, size_type, const _CharT*, size_type)): Slightly
12354fee23f9Smrg	tweak.
12364fee23f9Smrg	(reserve): Likewise.
12374fee23f9Smrg	* testsuite/21_strings/basic_string/append/char/2.cc: New.
12384fee23f9Smrg	* testsuite/21_strings/basic_string/append/char/3.cc: Likewise.
12394fee23f9Smrg	* testsuite/21_strings/basic_string/append/wchar_t/2.cc: Likewise.
12404fee23f9Smrg	* testsuite/21_strings/basic_string/append/wchar_t/3.cc: Likewise.
12414fee23f9Smrg
12424fee23f9Smrg	* testsuite/21_strings/basic_string/assign/char/3.cc: Remove junk.
12434fee23f9Smrg	* testsuite/21_strings/basic_string/assign/wchar_t/3.cc: Likewise.
12444fee23f9Smrg
12454fee23f9Smrg2004-10-23  Andrew Pinski  <pinskia@physics.uc.edu>
12464fee23f9Smrg
12474fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-2.c:
12484fee23f9Smrg	s/value_t/value_type/. s/traits_t/traits_type/.
12494fee23f9Smrg	s/policy_t/policy_type/. s/allocator_t/allocator_type/.
12504fee23f9Smrg	s/string_t/string_type/. s/list_t/list_type/.
12514fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
12524fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
12534fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
12544fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
12554fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
12564fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
12574fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
12584fee23f9Smrg
12594fee23f9Smrg2004-10-21  Benjamin Kosnik  <bkoz@redhat.com>
12604fee23f9Smrg
12614fee23f9Smrg	* include/tr1/array (array): Make safe for zero-sized arrays.
12624fee23f9Smrg	(array::end): Return one past the end.
12634fee23f9Smrg	(array::at): Use __throw_out_of_range, include functexcept.h.
12644fee23f9Smrg	(operator==): Implement.
12654fee23f9Smrg	(operator!=): Same.
12664fee23f9Smrg	(operator<): Same.
12674fee23f9Smrg	(operator>): Same.
12684fee23f9Smrg	(operator>=): Same.
12694fee23f9Smrg	(operator<=): Same.
12704fee23f9Smrg	* testsuite/tr1/6_containers/array/capacity/(empty.cc,
12714fee23f9Smrg	max_size.cc, size.cc): New.
12724fee23f9Smrg	* testsuite/tr1/6_containers/array/comparison_operators/(equal.cc,
12734fee23f9Smrg	greater.cc, greater_or_equal.cc, less.cc, less_or_equal.cc,
12744fee23f9Smrg	not_equal): New.
12754fee23f9Smrg	* testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
12764fee23f9Smrg	New.
12774fee23f9Smrg	* testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
12784fee23f9Smrg	New.
12794fee23f9Smrg	* testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc: New.
12804fee23f9Smrg	* testsuite/tr1/6_containers/array/requirements/(contiguous.cc,
12814fee23f9Smrg	instantiate, typedefs, zero_size_arrays): New.
12824fee23f9Smrg
12834fee23f9Smrg2004-10-21  Paolo Carlini  <pcarlini@suse.de>
12844fee23f9Smrg	    Benjamin Kosnik  <bkoz@redhat.com>
12854fee23f9Smrg
12864fee23f9Smrg	* include/bits/basic_string.h (_M_set_length_and_sharable): New.
12874fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct, assign(const _CharT*,
12884fee23f9Smrg	size_type), _M_mutate, _M_clone): Use it.
12894fee23f9Smrg	(_Rep::_S_create): Don't set/call _M_length/_M_set_sharable here.
12904fee23f9Smrg
12914fee23f9Smrg2004-10-21  Paolo Carlini  <pcarlini@suse.de>
12924fee23f9Smrg	    Dhruv Matani  <dhruvbird@gmx.net>
12934fee23f9Smrg	    Nathan Myers  <ncm@cantrip.org>
12944fee23f9Smrg
12954fee23f9Smrg	* include/bits/vector.tcc (_M_insert_aux, _M_fill_insert,
12964fee23f9Smrg	_M_range_insert): Check at the outset that we are not trying
12974fee23f9Smrg	to exceed max_size, then deal properly with __len overflows.
12984fee23f9Smrg	* testsuite/23_containers/vector/modifiers/insert/1.cc: New.
12994fee23f9Smrg
13004fee23f9Smrg	* testsuite/testsuite_allocator.h: Remove redundant include.
13014fee23f9Smrg
13024fee23f9Smrg2004-10-20  Paolo Carlini  <pcarlini@suse.de>
13034fee23f9Smrg
13044fee23f9Smrg	* include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc
13054fee23f9Smrg	when n > max_size().
13064fee23f9Smrg	* include/ext/malloc_allocator.h (allocate): Likewise.
13074fee23f9Smrg	* include/ext/mt_allocator.h (allocate): Likewise.
13084fee23f9Smrg	* include/ext/new_allocator.h (allocate): Likewise.
13094fee23f9Smrg	* include/ext/array_allocator.h: Use __throw_bad_alloc().
13104fee23f9Smrg	* include/ext/pool_allocator.h: Use __builtin_expect.
13114fee23f9Smrg	* testsuite/ext/array_allocator/check_allocate_max_size.cc: New.
13124fee23f9Smrg	* testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise.
13134fee23f9Smrg	* testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise.
13144fee23f9Smrg	* testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise.
13154fee23f9Smrg	* testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise.
13164fee23f9Smrg	* testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise.
13174fee23f9Smrg	* testsuite/testsuite_allocator.h (check_allocate_max_size): New test.
13184fee23f9Smrg
13194fee23f9Smrg2004-10-19  Paolo Carlini  <pcarlini@suse.de>
13204fee23f9Smrg
13214fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc:
13224fee23f9Smrg	Include <ext/new_allocator.h>.
13234fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
13244fee23f9Smrg
13254fee23f9Smrg2004-10-18  Paolo Carlini  <pcarlini@suse.de>
13264fee23f9Smrg
13274fee23f9Smrg	* include/bits/basic_string.tcc (_M_mutate): Do not reallocate
13284fee23f9Smrg	unnecessarily when _M_rep() == &_S_empty_rep() and __new_size
13294fee23f9Smrg	== capacity() (== 0): is ok to just leave everything unchanged.
13304fee23f9Smrg
13314fee23f9Smrg	* include/bits/basic_string.h: Minor formatting fixes.
13324fee23f9Smrg	* include/bits/basic_string.tcc: Likewise.
13334fee23f9Smrg
13344fee23f9Smrg2004-10-17  Benjamin Kosnik  <bkoz@redhat.com>
13354fee23f9Smrg
13364fee23f9Smrg	* include/ext/mt_allocator.h (__pool::_M_get_align): New.
13374fee23f9Smrg	(__mt_alloc::allocate): Use it.
13384fee23f9Smrg	* src/mt_allocator.cc (__pool::_M_reclaim_block): Use it.
13394fee23f9Smrg	(__pool::_M_reserve_block): Simplify block allocation.
13404fee23f9Smrg
13414fee23f9Smrg2004-10-17  Dhruv Matani  <dhruvbird@gmx.net>
13424fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
13434fee23f9Smrg
13444fee23f9Smrg	* include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
13454fee23f9Smrg	makes the code 64-bit correct and also fixes (together with using at
13464fee23f9Smrg	the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
13474fee23f9Smrg	8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
13484fee23f9Smrg	Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
13494fee23f9Smrg	* src/bitmap_allocator.cc: Change to size_t.
13504fee23f9Smrg	* config/linker-map.gnu: Adjust.
13514fee23f9Smrg
13524fee23f9Smrg2004-10-16  Benjamin Kosnik  <bkoz@redhat.com>
13534fee23f9Smrg
13544fee23f9Smrg	* include/tr1/array: Don't use layout_type.
13554fee23f9Smrg
13564fee23f9Smrg2004-10-16  Sashan Govender  <sashang@gmail.com>
13574fee23f9Smrg
13584fee23f9Smrg	* include/tr1/array (array::end const): Fix casting from iterator
13594fee23f9Smrg	to const_iterator.
13604fee23f9Smrg
13614fee23f9Smrg2004-10-15  Paolo Carlini  <pcarlini@suse.de>
13624fee23f9Smrg
13634fee23f9Smrg	* include/ext/bitmap_allocator.h: Qualify ::operator delete.
13644fee23f9Smrg	* src/bitmap_allocator.cc: Likewise.
13654fee23f9Smrg	* src/mt_allocator.cc: Use ::operator delete, not delete,
13664fee23f9Smrg	consistently with ::operator new.
13674fee23f9Smrg
13684fee23f9Smrg	* include/ext/bitmap_allocator.h (deallocate): Check for null
13694fee23f9Smrg	pointer.
13704fee23f9Smrg	* testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New.
13714fee23f9Smrg	* testsuite/testsuite_allocator.h (check_deallocate_null): Add test.
13724fee23f9Smrg
13734fee23f9Smrg2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
13744fee23f9Smrg
13754fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for
13764fee23f9Smrg	null pointer.
13774fee23f9Smrg	* include/ext/pool_allocator.h (debug_allocator::deallocate):
13784fee23f9Smrg	Check pointer value.
13794fee23f9Smrg	* include/ext/debug_allocator.h (debug_allocator::deallocate):
13804fee23f9Smrg	Throw exceptions, don't abort.
13814fee23f9Smrg	* include/ext/array_allocator.h
13824fee23f9Smrg	(array_allocator_base::deallocate): Remove unused parameters.
13834fee23f9Smrg	* testsuite/testsuite_allocator.h (check_deallocate_null): New.
13844fee23f9Smrg	* testsuite/ext/mt_allocator/check_deallocate_null.cc: New.
13854fee23f9Smrg	* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New.
13864fee23f9Smrg	* testsuite/ext/array_allocator/check_deallocate_null.cc: New.
13874fee23f9Smrg	* testsuite/ext/debug_allocator/check_deallocate_null.cc: New.
13884fee23f9Smrg	* testsuite/ext/malloc_allocator/check_deallocate_null.cc: New.
13894fee23f9Smrg	* testsuite/ext/new_allocator/check_deallocate_null.cc: New.
13904fee23f9Smrg	* testsuite/ext/pool_allocator/check_deallocate_null.cc: New.
13914fee23f9Smrg
13924fee23f9Smrg	* testsuite/testsuite_allocator.h (check_new): Add instance argument.
13934fee23f9Smrg	* testsuite/ext/array_allocator/check_new.cc: New.
13944fee23f9Smrg
13954fee23f9Smrg2004-10-14  Paolo Carlini  <pcarlini@suse.de>
13964fee23f9Smrg
13974fee23f9Smrg	* include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block):
13984fee23f9Smrg	Rename __unused to __M_unused.
13994fee23f9Smrg
14004fee23f9Smrg2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
14014fee23f9Smrg
14024fee23f9Smrg	* testsuite/ext/headers.cc: Add includes, compile only.
14034fee23f9Smrg	* testsuite/ext/hash_map.cc: Move to...
14044fee23f9Smrg	* testsuite/ext/hash_map/1.cc: ...here.
14054fee23f9Smrg	* testsuite/ext/14648.cc: Move to...
14064fee23f9Smrg	* testsuite/ext/hash_map/14648.cc: ...here.
14074fee23f9Smrg	* testsuite/ext/hash_map/instantiate.cc: Add.
14084fee23f9Smrg	* testsuite/ext/hash_set.cc: Move to...
14094fee23f9Smrg	* testsuite/ext/hash_set/1.cc: ...here.
14104fee23f9Smrg	* testsuite/ext/hash_set_explicit_instantiation.cc: Move to...
14114fee23f9Smrg	* testsuite/ext/hash_set/instantiate.cc: ...here.
14124fee23f9Smrg	* testsuite/ext/hash_check_construct_destroy.cc: Move to...
14134fee23f9Smrg	* testsuite/ext/hash_set/check_construct_destroy.cc: ...here.
14144fee23f9Smrg	* testsuite/ext/slist_check_construct_destroy.cc: Move to...
14154fee23f9Smrg	* testsuite/ext/slist/check_construct_destroy.cc: ...here.
14164fee23f9Smrg	* testsuite/ext/slist_explicit_instantiation.cc: Move to...
14174fee23f9Smrg	* testsuite/ext/slist/instantiate.cc: ...here.
14184fee23f9Smrg
14194fee23f9Smrg2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
14204fee23f9Smrg
14214fee23f9Smrg	* include/ext/mt_allocator.h: Tweaks.
14224fee23f9Smrg	* src/mt_allocator.cc: Same.
14234fee23f9Smrg
14244fee23f9Smrg2004-10-14  Dhruv Matani  <dhruvbird@gmx.net>
14254fee23f9Smrg
14264fee23f9Smrg	* ext/bitmap_allocator.h: Clean-up add/remove functions.
14274fee23f9Smrg	* src/bitmap_allocator.cc: New file. Contains the out-of-line
14284fee23f9Smrg	function definitions, static initialization of variables, and
14294fee23f9Smrg	explicit instantiations needed for the allocator.
14304fee23f9Smrg	* src/Makefile.am: Add.
14314fee23f9Smrg	* src/Makefile.in: Regenerate.
14324fee23f9Smrg	* config/linker.map.gnu: Add the necessary symbols.
14334fee23f9Smrg
14344fee23f9Smrg2004-10-13  Paolo Carlini  <pcarlini@suse.de>
14354fee23f9Smrg
14364fee23f9Smrg	* include/bits/basic_string.tcc (_S_create): Use consistently
14374fee23f9Smrg	the exponential policy, simplify.
14384fee23f9Smrg	* testsuite/performance/21_strings/string_append_2.cc: New.
14394fee23f9Smrg
14404fee23f9Smrg	* include/ext/array_allocator.h (allocate): Fix bad_alloc check.
14414fee23f9Smrg	* testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in
14424fee23f9Smrg	that case sizeof(_Rep) == 24).
14434fee23f9Smrg
14444fee23f9Smrg2004-10-12  Paolo Carlini  <pcarlini@suse.de>
14454fee23f9Smrg
14464fee23f9Smrg	PR libstdc++/17948
14474fee23f9Smrg	* include/bits/stl_tree.h (erase(iterator, iterator)): Revert
14484fee23f9Smrg	wrong commit of 2004-10-07.
14494fee23f9Smrg
14504fee23f9Smrg2004-10-12  Scott Snyder  <snyder@fnal.gov>
14514fee23f9Smrg
14524fee23f9Smrg	PR libstdc++/17948
14534fee23f9Smrg	* testsuite/23_containers/set/modifiers/17948.cc: New.
14544fee23f9Smrg
14554fee23f9Smrg2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
14564fee23f9Smrg
14574fee23f9Smrg	* include/bits/stl_deque.h: Correct for over-long lines.
14584fee23f9Smrg
14594fee23f9Smrg2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
14604fee23f9Smrg
14614fee23f9Smrg	PR libstdc++/17937
14624fee23f9Smrg	* include/ext/mt_allocator.h (__pool::_M_destroy): New.
14634fee23f9Smrg	* src/mt_allocator.cc (__pool::~__pool): Change definitions to
14644fee23f9Smrg	_M_destroy.
14654fee23f9Smrg	* acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
14664fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
14674fee23f9Smrg	* configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
14684fee23f9Smrg	* configure: Regenerate.
14694fee23f9Smrg	* config/linker-map.gnu: Tweak exports.
14704fee23f9Smrg	* docs/html/ext/mt_allocator.html: Update docs.
14714fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
14724fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.
14734fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
14744fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
14754fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
14764fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
14774fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
14784fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.
14794fee23f9Smrg
14804fee23f9Smrg2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
14814fee23f9Smrg
14824fee23f9Smrg	PR libstdc++/16614 continued.
14834fee23f9Smrg	* include/ext/mt_allocator.h
14844fee23f9Smrg	(__per_type_pool_policy::_S_get_pool): Use saner defaults based on
14854fee23f9Smrg	specific type characteristics.
14864fee23f9Smrg	(__pool_base): Add constructor that takes a _Tune argument.
14874fee23f9Smrg	(__pool): Same.
14884fee23f9Smrg	* testsuite/ext/mt_allocator/tune-2.cc: Adjust default.
14894fee23f9Smrg	* testsuite/ext/mt_allocator/tune-4.cc: Same.
14904fee23f9Smrg	* testsuite/ext/mt_allocator/tune-3.cc: Same.
14914fee23f9Smrg
14924fee23f9Smrg2004-10-11  Joachim Kuebart  <kuebart@mathematik.uni-ulm.de>
14934fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
14944fee23f9Smrg
14954fee23f9Smrg	* src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk):
14964fee23f9Smrg	Deal properly with exceptions thrown by ::operator new(size_t).
14974fee23f9Smrg	* testsuite/ext/pool_allocator/allocate_chunk.cc: New.
14984fee23f9Smrg
14994fee23f9Smrg	* include/ext/pool_allocator.h: Include <cstdlib>.
15004fee23f9Smrg
15014fee23f9Smrg2004-10-10  Benjamin Kosnik  <bkoz@redhat.com>
15024fee23f9Smrg
15034fee23f9Smrg	* include/bits/functexcept.h: Add guards.
15044fee23f9Smrg
15054fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test.
15064fee23f9Smrg	* configure: Regenerate.
15074fee23f9Smrg
15084fee23f9Smrg2004-10-10  Paolo Carlini  <pcarlini@suse.de>
15094fee23f9Smrg
15104fee23f9Smrg	* config/locale/gnu/monetary_members.cc (_S_construct_pattern):
15114fee23f9Smrg	Give __ret a default value, thus avoiding spurious warnings.
15124fee23f9Smrg
15134fee23f9Smrg	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
15144fee23f9Smrg	words or linux.words, otherwise exit.
15154fee23f9Smrg	* testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
15164fee23f9Smrg
15174fee23f9Smrg2004-10-09  Paolo Carlini  <pcarlini@suse.de>
15184fee23f9Smrg
15194fee23f9Smrg	* include/std/std_memory.h (__get_temporary_buffer): Don't use
15204fee23f9Smrg	INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit
15214fee23f9Smrg	platforms too.
15224fee23f9Smrg	* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error
15234fee23f9Smrg	line numbers.
15244fee23f9Smrg
15254fee23f9Smrg2004-10-08  Benjamin Kosnik  <bkoz@redhat.com>
15264fee23f9Smrg
15274fee23f9Smrg	* acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
15284fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New.
15294fee23f9Smrg	* configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT.
15304fee23f9Smrg	* configure: Regenerate.
15314fee23f9Smrg	* src/mt_allocator.cc (__pool::~__pool): Make conditional on
15324fee23f9Smrg	_GLIBCXX_USE___CXA_ATEXIT macro.
15334fee23f9Smrg	* docs/html/ext/mt_allocator.html: Add note about deallocation.
15344fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks
15354fee23f9Smrg	with _GLIBCXX_USE___CXA_ATEXIT.
15364fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
15374fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
15384fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
15394fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
15404fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
15414fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
15424fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
15434fee23f9Smrg
15444fee23f9Smrg2004-10-07  Phil Edwards  <phil@codesourcery.com>
15454fee23f9Smrg
15464fee23f9Smrg	* testsuite/lib/libstdc++.exp:  Update list of undefined functions.
15474fee23f9Smrg
15484fee23f9Smrg2004-10-07  Paolo Carlini  <pcarlini@suse.de>
15494fee23f9Smrg
15504fee23f9Smrg	* include/bits/list.tcc (operator=): Avoid iterator postincrement.
15514fee23f9Smrg	* include/bits/stl_tree.h (erase(iterator, iterator)): Likewise.
15524fee23f9Smrg
15534fee23f9Smrg2004-10-07  Benjamin Kosnik  <bkoz@redhat.com>
15544fee23f9Smrg
15554fee23f9Smrg	* include/tr1: New.
15564fee23f9Smrg	* include/tr1/array: New.
15574fee23f9Smrg	* include/Makefile.am (tr1_headers): New.
15584fee23f9Smrg	(stamp-tr1): New.
15594fee23f9Smrg	(install-headers): New.
15604fee23f9Smrg	(allstamped): Add stamp-tr1.
15614fee23f9Smrg
15624fee23f9Smrg	* include/ext/array_allocator.h: New.
15634fee23f9Smrg	* include/Makefile.am: Add.
15644fee23f9Smrg	* include/Makefile.in: Regenerate.
15654fee23f9Smrg	* testsuite/ext/array_allocator/1.cc: New.
15664fee23f9Smrg	* testsuite/ext/array_allocator/2.cc: New.
15674fee23f9Smrg
15684fee23f9Smrg2004-10-07  Richard Earnshaw  <rearnsha@arm.com>
15694fee23f9Smrg
15704fee23f9Smrg	* testsuite/lib/libstdc++.exp (libstdc++_exit): New proc.
15714fee23f9Smrg
15724fee23f9Smrg2004-10-07  Roger Sayle  <roger@eyesopen.com>
15734fee23f9Smrg
15744fee23f9Smrg	PR libstdc++/17850
15754fee23f9Smrg	* configure.ac: Newlib does not provide strtold.
15764fee23f9Smrg	* configure: Regenerate.
15774fee23f9Smrg
15784fee23f9Smrg2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>
15794fee23f9Smrg
15804fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
15814fee23f9Smrg	(GLIBCXX_CONFIGURE_TESTSUITE): Use it.
15824fee23f9Smrg	* configure: Regenerated.
15834fee23f9Smrg	* testsuite/Makefile.am (CLEANFILES): Add TEST for
15844fee23f9Smrg	check-performance executables.
15854fee23f9Smrg	(stamp_thread): New.
15864fee23f9Smrg	(all-local): Use it.
15874fee23f9Smrg	* testsuite/Makefile.in: Regenerate.
15884fee23f9Smrg	* scripts/create_testsuite_files: Filter thread tests.
15894fee23f9Smrg
15904fee23f9Smrg	* testsuite/thread/pthread1.cc: Remove macro conditionals: this
15914fee23f9Smrg	file will only be run by thread enabled configurations.
15924fee23f9Smrg	* testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
15934fee23f9Smrg	* testsuite/thread/pthread6.cc: Same.
15944fee23f9Smrg	* testsuite/thread/pthread5.cc: Same.
15954fee23f9Smrg	* testsuite/thread/pthread4.cc: Same.
15964fee23f9Smrg	* testsuite/thread/pthread3.cc: Same.
15974fee23f9Smrg	* testsuite/thread/pthread2.cc: Same.
15984fee23f9Smrg
15994fee23f9Smrg	* testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
16004fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
16014fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
16024fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
16034fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here.
16044fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
16054fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
16064fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
16074fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.
16084fee23f9Smrg
16094fee23f9Smrg2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>
16104fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
16114fee23f9Smrg
16124fee23f9Smrg	PR libstdc++/17780
16134fee23f9Smrg	* src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
16144fee23f9Smrg	to old locking order.
16154fee23f9Smrg
16164fee23f9Smrg2004-10-06  Paolo Carlini  <pcarlini@suse.de>
16174fee23f9Smrg
16184fee23f9Smrg	* include/std/std_sstream.h (_M_sync): When the caller is
16194fee23f9Smrg	setbuf, don't trust _M_string.capacity() to be the size of
16204fee23f9Smrg	the buffer area, use _M_string.size() in this case.
16214fee23f9Smrg	* testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New.
16224fee23f9Smrg	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
16234fee23f9Smrg
16244fee23f9Smrg	* include/bits/sstream.tcc (overflow): Avoid calling string::assign
16254fee23f9Smrg	unnecessarily when the current _M_string is empty.
16264fee23f9Smrg
16274fee23f9Smrg2004-10-06  Paolo Carlini  <pcarlini@suse.de>
16284fee23f9Smrg
16294fee23f9Smrg	* include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)):
16304fee23f9Smrg	Avoid iterator postincrement.
16314fee23f9Smrg	(__rotate): Likewise.
16324fee23f9Smrg
16334fee23f9Smrg	* include/bits/stl_algo.h: Minor formatting tweaks.
16344fee23f9Smrg
16354fee23f9Smrg2004-10-06  Christopher Jefferson <caj@cs.york.ac.uk>
16364fee23f9Smrg
16374fee23f9Smrg	* include/bits/stl_algo.h (__reverse(random_access_iterator_tag)):
16384fee23f9Smrg	Avoid iterator postincrement; fix swapping middle element with
16394fee23f9Smrg	itself on odd-length inputs.
16404fee23f9Smrg
16414fee23f9Smrg2004-10-05  Benjamin Kosnik  <bkoz@redhat.com>
16424fee23f9Smrg
16434fee23f9Smrg	PR libstdc++/17780
16444fee23f9Smrg	* include/ext/mt_allocator.h (__pool_base::_Tune): Add default
16454fee23f9Smrg	options as compile-time constant enums.
16464fee23f9Smrg	(__pool_base::_Tune::is_default): New.
16474fee23f9Smrg	(__pool_base::_Block_address): New.
16484fee23f9Smrg	(__pool_base): Rearrange data members.
16494fee23f9Smrg	(__pool::_M_reserve_memory): To _M_reserve_block.
16504fee23f9Smrg	(__pool::_M_reclaim_memory): To _M_reclaim_block.
16514fee23f9Smrg	(__pool::_Bin_record): Add _Block_address data member.
16524fee23f9Smrg	(__pool<false>): Add _M_thread_freelist_initial.
16534fee23f9Smrg	(__pool::~__pool): Declare.
16544fee23f9Smrg	(__common_pool_policy): Move static data member to...
16554fee23f9Smrg	(__common_pool_policy::_S_get_pool): ...here, make static local.
16564fee23f9Smrg	(__per_type_pool_policy): Move static data member to...
16574fee23f9Smrg	(__per_type_pool_policy::_S_get_pool): ...here, make static local.
16584fee23f9Smrg	(__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
16594fee23f9Smrg	Remove static member definitions. Use define for __default_policy.
16604fee23f9Smrg	* src/mt_allocator.cc: Same.
16614fee23f9Smrg	* config/linker-map.gnu: Don't export _S_get_pool. Renames.
16624fee23f9Smrg	* testsuite/ext/new_allocator: New.
16634fee23f9Smrg	* testsuite/ext/new_allocator/instantiate.cc: New.
16644fee23f9Smrg	* testsuite/ext/new_allocator/check_new.cc: New.
16654fee23f9Smrg	* testsuite/ext/new_allocator/deallocate_global.cc: New.
16664fee23f9Smrg	* testsuite/ext/new_allocator/deallocate_local.cc: New.
16674fee23f9Smrg	* testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
16684fee23f9Smrg	template arguments.
16694fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
16704fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
16714fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
16724fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
16734fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
16744fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
16754fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
16764fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
16774fee23f9Smrg	* testsuite/ext/mt_allocator/deallocate.cc: New.
16784fee23f9Smrg	* testsuite/ext/malloc_allocator/deallocate.cc: New.
16794fee23f9Smrg	* testsuite/ext/malloc_allocator/deallocate_global.cc: New.
16804fee23f9Smrg	* testsuite/ext/malloc_allocator/deallocate_local.cc: New.
16814fee23f9Smrg
16824fee23f9Smrg2004-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
16834fee23f9Smrg
16844fee23f9Smrg	* configure.host (abi_baseline_pair): Define for s390-*-linux* and
16854fee23f9Smrg	s390x-*-linux*.
16864fee23f9Smrg	* config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
16874fee23f9Smrg	* config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
16884fee23f9Smrg
16894fee23f9Smrg2004-10-05  Christopher Jefferson  <caj@cs.york.ac.uk>
16904fee23f9Smrg
16914fee23f9Smrg	* include/bits/stl_algobase.h (iter_swap): delegate to swap via
16924fee23f9Smrg	__iter_swap when iterator's value_types are equal.
16934fee23f9Smrg	(struct __iter_swap): New.
16944fee23f9Smrg
16954fee23f9Smrg2004-10-04  Benjamin Kosnik  <bkoz@redhat.com>
16964fee23f9Smrg
16974fee23f9Smrg	* configure.ac (libtool_VERSION): To 6:3:0.
16984fee23f9Smrg	* configure: Regnerate.
16994fee23f9Smrg	* testsuite/testsuite_abi.cc (check_version): Add 3.4.3.
17004fee23f9Smrg
17014fee23f9Smrg2004-10-04  Roger Sayle  <roger@eyesopen.com>
17024fee23f9Smrg	    Eric Botcazou  <ebotcazou@libertysurf.fr>
17034fee23f9Smrg
17044fee23f9Smrg	PR libstdc++/17505
17054fee23f9Smrg	* config/linker-map.gnu: Synchronize the current list of stub
17064fee23f9Smrg	functions from libmath.
17074fee23f9Smrg
17084fee23f9Smrg2004-10-03  Roger Sayle  <roger@eyesopen.com>
17094fee23f9Smrg
17104fee23f9Smrg	* config/locale/generic/c_locale.cc (__convert_to_v): Use
17114fee23f9Smrg	_GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
17124fee23f9Smrg	Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
17134fee23f9Smrg	to check for presence of strtold.
17144fee23f9Smrg
17154fee23f9Smrg2004-10-03  Paolo Carlini  <pcarlini@suse.de>
17164fee23f9Smrg
17174fee23f9Smrg	* include/bits/stl_list.h: Trivial formatting fixes.
17184fee23f9Smrg	* include/bits/stl_tree.h: Likewise.
17194fee23f9Smrg
17204fee23f9Smrg2004-10-03  Paolo Carlini  <pcarlini@suse.de>
17214fee23f9Smrg
17224fee23f9Smrg	* include/bits/sstream.tcc (seekpos): In case of success, just
17234fee23f9Smrg	return __sp.
17244fee23f9Smrg
17254fee23f9Smrg2004-10-01  Paolo Carlini  <pcarlini@suse.de>
17264fee23f9Smrg
17274fee23f9Smrg	* include/bits/sstream.tcc (pbackfail): Implement correctly
17284fee23f9Smrg	27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
17294fee23f9Smrg	write in the buffer.
17304fee23f9Smrg	* testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
17314fee23f9Smrg	* testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
17324fee23f9Smrg	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
17334fee23f9Smrg	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
17344fee23f9Smrg	* testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
17354fee23f9Smrg
17364fee23f9Smrg2004-10-01  Paolo Carlini  <pcarlini@suse.de>
17374fee23f9Smrg
17384fee23f9Smrg	* include/bits/sstream.tcc (seekpos): Minor rearrangement of two
17394fee23f9Smrg	conditionals consistently with seekoff.
17404fee23f9Smrg	* include/std/std_sstream.h (setbuf): Avoid a string temporary.
17414fee23f9Smrg	(_M_sync): Simplify a bit, clean-up comment.
17424fee23f9Smrg
17434fee23f9Smrg2004-09-30  Paolo Carlini  <pcarlini@suse.de>
17444fee23f9Smrg
17454fee23f9Smrg	PR libstdc++/10975 (DR 453)
17464fee23f9Smrg	* include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
17474fee23f9Smrg	and __off == 0.
17484fee23f9Smrg	* docs/html/ext/howto.html: Add an entry for DR 453.
17494fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
17504fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
17514fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
17524fee23f9Smrg	* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
17534fee23f9Smrg	* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
17544fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
17554fee23f9Smrg	move to...
17564fee23f9Smrg	* testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
17574fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
17584fee23f9Smrg	move to...
17594fee23f9Smrg	* testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
17604fee23f9Smrg
17614fee23f9Smrg2004-09-29  Paolo Carlini  <pcarlini@suse.de>
17624fee23f9Smrg
17634fee23f9Smrg	* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
17644fee23f9Smrg	Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
17654fee23f9Smrg	(str()): Slightly tweak, protect from pptr() == 0.
17664fee23f9Smrg	(_M_update_egptr()): Likewise.
17674fee23f9Smrg	* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
17684fee23f9Smrg	for an empty buffer use __beg instead of _M_string.capacity().
17694fee23f9Smrg	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
17704fee23f9Smrg	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
17714fee23f9Smrg
17724fee23f9Smrg	* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
17734fee23f9Smrg	* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
17744fee23f9Smrg	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
17754fee23f9Smrg	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
17764fee23f9Smrg
17774fee23f9Smrg2004-09-29  Paolo Carlini  <pcarlini@suse.de>
17784fee23f9Smrg	    Benjamin Kosnik  <bkoz@redhat.com>
17794fee23f9Smrg
17804fee23f9Smrg	* testsuite/testsuite_io.h (class constraint_buf): New, extended
17814fee23f9Smrg	and templatized version of constraint_filebuf; add typedefs for
17824fee23f9Smrg	streambuf/stringbuf/filebuf and wchar_t counterparts.
17834fee23f9Smrg
17844fee23f9Smrg2004-09-28  Paolo Carlini  <pcarlini@suse.de>
17854fee23f9Smrg
17864fee23f9Smrg	PR libstdc++/16612
17874fee23f9Smrg	* include/bits/basic_string.h (_M_dispose, _M_refcopy,
17884fee23f9Smrg	basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined,
17894fee23f9Smrg	don't deal with _S_empty_rep.
17904fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct, _M_destroy,
17914fee23f9Smrg	_M_leak_hard, _M_mutate): Likewise.
17924fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New.
17934fee23f9Smrg	* acconfig.h: Add corresponding undef.
17944fee23f9Smrg	* configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING.
17954fee23f9Smrg	* docs/html/configopts.html: Document --enable-fully-dynamic-string.
17964fee23f9Smrg	* configure: Regenerate.
17974fee23f9Smrg	* config.h.in: Likewise.
17984fee23f9Smrg
17994fee23f9Smrg2004-09-28  Benjamin Kosnik  <bkoz@redhat.com>
18004fee23f9Smrg            Paolo Carlini  <pcarlini@suse.de>
18014fee23f9Smrg
18024fee23f9Smrg	* testsuite/21_strings/basic_string/operations/char/1.cc: New.
18034fee23f9Smrg	* testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New.
18044fee23f9Smrg	* testsuite/21_strings/basic_string/element_access/char/empty.cc: New.
18054fee23f9Smrg	* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
18064fee23f9Smrg	New.
18074fee23f9Smrg
18084fee23f9Smrg2004-09-28  Paolo Carlini  <pcarlini@suse.de>
18094fee23f9Smrg
18104fee23f9Smrg	* README: Remove obsolete entry about include/c_shadow.
18114fee23f9Smrg
18124fee23f9Smrg2004-09-24  H.J. Lu  <hongjiu.lu@intel.com>
18134fee23f9Smrg
18144fee23f9Smrg	PR libstdc++/17469
18154fee23f9Smrg	* testsuite/lib/libstdc++.exp: Don't use global ld_library_path.
18164fee23f9Smrg
18174fee23f9Smrg2004-09-24  Paolo Carlini  <pcarlini@suse.de>
18184fee23f9Smrg
18194fee23f9Smrg	* src/localename.cc (locale::locale(const char*)): Minor tweaks:
18204fee23f9Smrg	rename a variable, move an assignment.
18214fee23f9Smrg	(locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak.
18224fee23f9Smrg
18234fee23f9Smrg2004-09-24  Paul Brook  <paul@codesourcery.com>
18244fee23f9Smrg
18254fee23f9Smrg	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm
18264fee23f9Smrg	simulator targets.
18274fee23f9Smrg	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
18284fee23f9Smrg	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto.
18294fee23f9Smrg	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto.
18304fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto.
18314fee23f9Smrg	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto.
18324fee23f9Smrg	* testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto.
18334fee23f9Smrg
18344fee23f9Smrg2004-09-23  Zack Weinberg  <zack@codesourcery.com>
18354fee23f9Smrg
18364fee23f9Smrg	* testsuite/20_util/memory/auto_ptr/assign_neg.cc
18374fee23f9Smrg	* testsuite/23_containers/map/operators/1_neg.cc
18384fee23f9Smrg	* testsuite/23_containers/set/operators/1_neg.cc:
18394fee23f9Smrg	Update locations and/or regexps of dg-error markers.
18404fee23f9Smrg
18414fee23f9Smrg2004-09-23  P.J. Darcy  <darcypj@us.ibm.com>
18424fee23f9Smrg
18434fee23f9Smrg	* include/Makefile.am (thread_host_headers): Add gthr-tpf.h.
18444fee23f9Smrg	Add rule to build ${host_builddir}/gthr-tpf.h.
18454fee23f9Smrg	* include/Makefile.in: Regenerate.
18464fee23f9Smrg
18474fee23f9Smrg2004-09-23  Paolo Carlini  <pcarlini@suse.de>
18484fee23f9Smrg	    Magnus Fromreide  <magfr@lysator.liu.se>
18494fee23f9Smrg
18504fee23f9Smrg	* include/bits/boost_concept_check.h (struct _SequenceConcept):
18514fee23f9Smrg	Remove wrong requirement, i.e., not present in Table 67.
18524fee23f9Smrg
18534fee23f9Smrg2004-09-21  Paolo Carlini  <pcarlini@suse.de>
18544fee23f9Smrg
18554fee23f9Smrg	PR libstdc++/12882 (cont)
18564fee23f9Smrg	* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
18574fee23f9Smrg	* configure: Regenerate.
18584fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
18594fee23f9Smrg	_GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
18604fee23f9Smrg	trivial showmanyc for large files too.
18614fee23f9Smrg
18624fee23f9Smrg2004-09-17  Jonathan Wakely  <redi@gcc.gnu.org>
18634fee23f9Smrg
18644fee23f9Smrg	* include/bits/stl_algo.h (remove): Remove too restrictive
18654fee23f9Smrg	concept-check.
18664fee23f9Smrg
18674fee23f9Smrg2004-09-17  Paolo Carlini  <pcarlini@suse.de>
18684fee23f9Smrg
18694fee23f9Smrg	* include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
18704fee23f9Smrg	as per Nathan's original suggestion.
18714fee23f9Smrg
18724fee23f9Smrg2004-09-17  Paolo Carlini  <pcarlini@suse.de>
18734fee23f9Smrg
18744fee23f9Smrg	* testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean
18754fee23f9Smrg	up a bit.
18764fee23f9Smrg	* testsuite/ext/mt_allocator/tune-2.cc: Likewise.
18774fee23f9Smrg	* testsuite/ext/mt_allocator/tune-3.cc: Likewise.
18784fee23f9Smrg	* testsuite/ext/mt_allocator/tune-4.cc: Likewise.
18794fee23f9Smrg
18804fee23f9Smrg2004-09-17  Paolo Carlini  <pcarlini@suse.de>
18814fee23f9Smrg	    Andrea Arcangeli  <andrea@suse.de>
18824fee23f9Smrg
18834fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't
18844fee23f9Smrg	call unnecessarily sync, that is fflush: the library, since 3.4.0
18854fee23f9Smrg	does not use buffered fread/fwrite.
18864fee23f9Smrg	* include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise.
18874fee23f9Smrg
18884fee23f9Smrg2004-09-15  Mark Mitchell  <mark@codesourcery.com>
18894fee23f9Smrg
18904fee23f9Smrg	* config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
18914fee23f9Smrg	Define.
18924fee23f9Smrg	* config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
18934fee23f9Smrg	Define.
18944fee23f9Smrg	* libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
18954fee23f9Smrg	(__cxa_vec_new): Use it.
18964fee23f9Smrg	(__cxa_vec_new2): Likewise.
18974fee23f9Smrg	(__cxa_vec_new3): Likewise.
18984fee23f9Smrg	(__cxa_vec_cdtor): Likewise.
18994fee23f9Smrg	(__cxa_vec_cctor): Likeiwse.
19004fee23f9Smrg	(__cxa_vec_dtor): Likewise.
19014fee23f9Smrg	(__cxa_vec_cleanup): Likewise.
19024fee23f9Smrg	(__cxa_vec_delete2): Likewise.
19034fee23f9Smrg	(__cxa_vec_delete3): Likewise.
19044fee23f9Smrg	* libsupc++/vec.cc (__cxa_vec_new): Likewise.
19054fee23f9Smrg	(__cxa_vec_new2): Likewise.
19064fee23f9Smrg	(__cxa_vec_new3): Likewise.
19074fee23f9Smrg	(__cxa_vec_cdtor): Likewise.
19084fee23f9Smrg	(__cxa_vec_cctor): Likeiwse.
19094fee23f9Smrg	(__cxa_vec_dtor): Likewise.
19104fee23f9Smrg	(__cxa_vec_cleanup): Likewise.
19114fee23f9Smrg	(__cxa_vec_delete2): Likewise.
19124fee23f9Smrg	(__cxa_vec_delete3): Likewise.
19134fee23f9Smrg	(__aeabi_vec_ctor_nocookie_nodtor): New function.
19144fee23f9Smrg	(__aeabi_vec_ctor_cookie_nodtor): Likewise.
19154fee23f9Smrg	(__aeabi_vec_cctor_nocookie_nodtor): Likewise.
19164fee23f9Smrg	(__aeabi_vec_new_cookie_noctor): Likewise.
19174fee23f9Smrg	(__aeabi_vec_new_nocookie): Likewise.
19184fee23f9Smrg	(__aeabi_vec_new_cookie_nodtor): Likewise.
19194fee23f9Smrg	(__aeabi_vec_new_cookie): Likewise.
19204fee23f9Smrg	(__aeabi_vec_dtor): Likewise.
19214fee23f9Smrg	(__aeabi_vec_dtor_cookie): Likewise.
19224fee23f9Smrg	(__aeabi_vec_delete): Likewise.
19234fee23f9Smrg	(__aeabi_vec_delete3): Likewise.
19244fee23f9Smrg	(__aeabi_vec_delete3_nodtor): Likewise.
19254fee23f9Smrg	(__aeabi_atexit): Likewise.
19264fee23f9Smrg
19274fee23f9Smrg2004-09-14  Nathan Myers  <ncm@cantrip.org>
19284fee23f9Smrg
19294fee23f9Smrg	* include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
19304fee23f9Smrg	for 11722: copy can replace move; the common case is __avail == 0.
19314fee23f9Smrg
19324fee23f9Smrg2004-09-14  Paolo Carlini  <pcarlini@suse.de>
19334fee23f9Smrg
19344fee23f9Smrg	* include/bits/cpp_type_traits.h: Rename __is_trivially_copyable
19354fee23f9Smrg	to __is_scalar, more clear and consistent with "tr1" naming.
19364fee23f9Smrg	* include/bits/stl_algobase.h: Update consistently throughout.
19374fee23f9Smrg
19384fee23f9Smrg2004-09-13  Paolo Carlini  <pcarlini@suse.de>
19394fee23f9Smrg
19404fee23f9Smrg	PR libstdc++/11722
19414fee23f9Smrg	* include/std/std_fstream.h (xsgetn): Declare only.
19424fee23f9Smrg	* include/bits/fstream.tcc (xsgetn): Define, optimize for the
19434fee23f9Smrg	always_noconv() case: when __n > __buflen, copy the available
19444fee23f9Smrg	buffer and issue a direct read.
19454fee23f9Smrg	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.
19464fee23f9Smrg
19474fee23f9Smrg	* include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
19484fee23f9Smrg	conditional.
19494fee23f9Smrg
19504fee23f9Smrg2004-09-13  Hans-Peter Nilsson  <hp@bitrange.com>
19514fee23f9Smrg
19524fee23f9Smrg	* testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call
19534fee23f9Smrg	libstdc++_maybe_build_wrapper instead of using local code.
19544fee23f9Smrg
19554fee23f9Smrg2004-09-08  Benjamin Kosnik  <bkoz@redhat.com>
19564fee23f9Smrg
19574fee23f9Smrg	* config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
19584fee23f9Smrg
19594fee23f9Smrg2004-09-03  Jan Beulich  <jbeulich@novell.com>
19604fee23f9Smrg
19614fee23f9Smrg	* crossconfig.m4: Add NetWare as a target.
19624fee23f9Smrg	* configure: Regenerate.
19634fee23f9Smrg
19644fee23f9Smrg2004-09-02  Mark Mitchell  <mark@codesourcery.com>
19654fee23f9Smrg
19664fee23f9Smrg	* libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
19674fee23f9Smrg	defined.
19684fee23f9Smrg
19694fee23f9Smrg2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
19704fee23f9Smrg	    Simon Richter  <Simon.Richter@hogyros.de>
19714fee23f9Smrg
19724fee23f9Smrg	PR libstdc++/16715
19734fee23f9Smrg	* include/bits/istream.tcc: Add extern template for iostream
19744fee23f9Smrg	char and wchar_t instantiations.
19754fee23f9Smrg
19764fee23f9Smrg2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
19774fee23f9Smrg	    Leland Wang  <llwang@infor.org>
19784fee23f9Smrg
19794fee23f9Smrg	PR libstdc++/17259
19804fee23f9Smrg	* include/ext/ropeimpl.h (rope::_S_compare): Use
19814fee23f9Smrg	_Rope_constants::_S_leaf.
19824fee23f9Smrg
19834fee23f9Smrg2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
19844fee23f9Smrg
19854fee23f9Smrg	PR libstdc++/16848
19864fee23f9Smrg	* include/Makefile.am (ext_headers): Remove demangle.h.
19874fee23f9Smrg	* include/Makefile.in: Regenerate.
19884fee23f9Smrg	* include/ext/demangle.h: Remove.
19894fee23f9Smrg
19904fee23f9Smrg2004-09-01  Benjamin Kosnik  <bkoz@redhat.com>
19914fee23f9Smrg
19924fee23f9Smrg	PR libstdc++/16614
19934fee23f9Smrg	* include/ext/mt_allocator.h (__mt_base): Not type dependent,
19944fee23f9Smrg	split into..
19954fee23f9Smrg	(__pool): New, specialize.
19964fee23f9Smrg	(__common_pool): New, static bits here.
19974fee23f9Smrg	(__per_type_pool): New, and here.
19984fee23f9Smrg	(__mt_alloc_base): New.
19994fee23f9Smrg	(__mt_alloc): Add template parameter, inherit from it.
20004fee23f9Smrg	* src/allocator.cc: Split this...
20014fee23f9Smrg	* src/allocator-inst.cc: And this...
20024fee23f9Smrg	* src/pool_allocator.cc: ...into this.
20034fee23f9Smrg	* src/mt_allocator.cc: ... and this. Add definitions for
20044fee23f9Smrg	__mt_base.
20054fee23f9Smrg	* src/Makefile.am (sources): Split allocator.cc to
20064fee23f9Smrg	pool_allocator.cc and mt_allocator.cc.
20074fee23f9Smrg	* src/Makefile.in: Regenerate.
20084fee23f9Smrg	* config/linker-map.gnu: Add symbols.
20094fee23f9Smrg	* docs/html/ext/mt_allocator.html: Document new design.
20104fee23f9Smrg	* testsuite/ext/mt_allocator/tune-1.cc: New.
20114fee23f9Smrg	* testsuite/ext/mt_allocator/tune-2.cc: New.
20124fee23f9Smrg	* testsuite/ext/mt_allocator/tune-3.cc: New.
20134fee23f9Smrg	* testsuite/ext/mt_allocator/tune-4.cc: New.
20144fee23f9Smrg
20154fee23f9Smrg	* testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
20164fee23f9Smrg	* testsuite/ext/allocators.cc: Use check_new, split into...
20174fee23f9Smrg	* testsuite/ext/mt_allocator/check_new.cc: this.
20184fee23f9Smrg	* testsuite/ext/pool_allocator/check_new.cc: this.
20194fee23f9Smrg	* testsuite/ext/malloc_allocator/check_new.cc: this.
20204fee23f9Smrg	* testsuite/ext/debug_allocator/check_new.cc: this.
20214fee23f9Smrg	* testsuite/ext/mt_allocator/instantiate.cc: this.
20224fee23f9Smrg	* testsuite/ext/pool_allocator/instantiate.cc: this.
20234fee23f9Smrg	* testsuite/ext/malloc_allocator/instantiate.cc: this.
20244fee23f9Smrg	* testsuite/ext/debug_allocator/instantiate.cc: this.
20254fee23f9Smrg
20264fee23f9Smrg2004-08-30  Phil Edwards  <phil@codesourcery.com>
20274fee23f9Smrg
20284fee23f9Smrg	* docs/html/install.html:  Update locales list (from Paolo).
20294fee23f9Smrg	Remove other redundant information and point to the GCC install
20304fee23f9Smrg	documentation.
20314fee23f9Smrg
20324fee23f9Smrg2004-08-30  Benjamin Kosnik  <bkoz@redhat.com>
20334fee23f9Smrg
20344fee23f9Smrg	* include/ext/pool_allocator.h: Rename __pool_base to
20354fee23f9Smrg	__pool_alloc_base.
20364fee23f9Smrg	* src/allocator.cc: Same.
20374fee23f9Smrg	* config/linker-map.gnu: Same.
20384fee23f9Smrg
20394fee23f9Smrg2004-08-30  Paolo Carlini  <pcarlini@suse.de>
20404fee23f9Smrg	    Kenneth C. Schalk  <ken@xorian.net>
20414fee23f9Smrg
20424fee23f9Smrg	PR libstdc++/17215
20434fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file<char>::close()):
20444fee23f9Smrg	Check the return value of fclose/sync, loop on EINTR.
20454fee23f9Smrg	(__basic_file<char>::sys_open): Likewise, for sync.
20464fee23f9Smrg
20474fee23f9Smrg2004-08-29  Paolo Carlini  <pcarlini@suse.de>
20484fee23f9Smrg
20494fee23f9Smrg	* include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format,
20504fee23f9Smrg	case 'S'): Allow for at least one leap-second (as per C99, 7.23.1
20514fee23f9Smrg	and 7.23.3.5), two if !_GLIBCXX_USE_C99.
20524fee23f9Smrg	* testsuite/22_locale/time_get/get_time/char/4.cc: New.
20534fee23f9Smrg	* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
20544fee23f9Smrg
20554fee23f9Smrg2004-08-27  Jason Merrill  <jason@redhat.com>
20564fee23f9Smrg
20574fee23f9Smrg	PR c++/13684
20584fee23f9Smrg	* libsupc++/guard.cc (static_mutex): Internal class implementing a
20594fee23f9Smrg	recursive mutex which controls initialization of local statics.
20604fee23f9Smrg	(__gnu_cxx::recursive_init): New exception class.
20614fee23f9Smrg	(__cxa_guard_acquire): Deal with locking and recursion detection.
20624fee23f9Smrg	(acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
20634fee23f9Smrg
20644fee23f9Smrg2004-08-27  Matthias Klose  <doko@debian.org>
20654fee23f9Smrg
20664fee23f9Smrg	* configure.host: For mips*-*-linux* update cpu_include_dir
20674fee23f9Smrg	after atomicity_dir is set.
20684fee23f9Smrg
20694fee23f9Smrg2004-08-27  Matthias Klose  <doko@debian.org>
20704fee23f9Smrg
20714fee23f9Smrg	* config/abi/arm-linux-gnu/baseline_symbols.txt: New.
20724fee23f9Smrg	* config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
20734fee23f9Smrg	* configure.host: Set abi_baseline_pair for arm*-*-linux* and
20744fee23f9Smrg	mips*-*-linux*.
20754fee23f9Smrg
20764fee23f9Smrg2004-08-27  Paolo Carlini  <pcarlini@suse.de>
20774fee23f9Smrg
20784fee23f9Smrg	* testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New.
20794fee23f9Smrg	* testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
20804fee23f9Smrg	* testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
20814fee23f9Smrg	* testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
20824fee23f9Smrg	* testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
20834fee23f9Smrg
20844fee23f9Smrg	* testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor
20854fee23f9Smrg	formatting fixes.
20864fee23f9Smrg	* testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise.
20874fee23f9Smrg	* testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
20884fee23f9Smrg	* testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
20894fee23f9Smrg	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
20904fee23f9Smrg
20914fee23f9Smrg2004-08-25  Paolo Carlini  <pcarlini@suse.de>
20924fee23f9Smrg
20934fee23f9Smrg	PR libstdc++/17038 (partial)
20944fee23f9Smrg	* include/bits/locale_facets.tcc (time_put<>::do_put): Increase
20954fee23f9Smrg	__maxlen to 128.
20964fee23f9Smrg	* include/bits/locale_facets.h (class __timepunct): Add FIXME
20974fee23f9Smrg	comment about _M_put.
20984fee23f9Smrg	* config/locale/generic/time_members.cc (_M_put): Always null
20994fee23f9Smrg	terminate __s.
21004fee23f9Smrg	* config/locale/gnu/time_members.cc (_M_put): Likewise.
21014fee23f9Smrg	* testsuite/22_locale/time_put/put/char/17038.cc: New.
21024fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
21034fee23f9Smrg
21044fee23f9Smrg2004-08-24  Paolo Carlini  <pcarlini@suse.de>
21054fee23f9Smrg
21064fee23f9Smrg	* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
21074fee23f9Smrg	* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
21084fee23f9Smrg	* testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
21094fee23f9Smrg	* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
21104fee23f9Smrg	* testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
21114fee23f9Smrg	* testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
21124fee23f9Smrg
21134fee23f9Smrg	* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
21144fee23f9Smrg	newlines.
21154fee23f9Smrg	* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
21164fee23f9Smrg
21174fee23f9Smrg2004-08-22  Matthias Klose  <doko@debian.org>
21184fee23f9Smrg
21194fee23f9Smrg	* config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
21204fee23f9Smrg	* config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
21214fee23f9Smrg
21224fee23f9Smrg2004-08-23  Paolo Carlini  <pcarlini@suse.de>
21234fee23f9Smrg
21244fee23f9Smrg	* configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
21254fee23f9Smrg	* aclocal.m4: Regenerate with automake-1.9.1.
21264fee23f9Smrg	* configure: Regenerate.
21274fee23f9Smrg	* Makefile.in: Likewise.
21284fee23f9Smrg	* include/Makefile.in: Likewise.
21294fee23f9Smrg	* libmath/Makefile.in: Likewise.
21304fee23f9Smrg	* libsupc++/Makefile.in: Likewise.
21314fee23f9Smrg	* po/Makefile.in: Likewise.
21324fee23f9Smrg	* src/Makefile.in: Likewise.
21334fee23f9Smrg	* testsuite/Makefile.in: Likewise.
21344fee23f9Smrg
21354fee23f9Smrg2004-08-22  Paolo Carlini  <pcarlini@suse.de>
21364fee23f9Smrg
21374fee23f9Smrg	* include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast
21384fee23f9Smrg	to a signed type, long according to the resolution of DR 359.
21394fee23f9Smrg	* testsuite/22_locale/num_put/put/char/9.cc: New.
21404fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/9.cc: New.
21414fee23f9Smrg
21424fee23f9Smrg	* include/bits/locale_facets.tcc (num_put<>::do_put(const void*)):
21434fee23f9Smrg	Simplify a bit: no need to clear showpos.
21444fee23f9Smrg
21454fee23f9Smrg2004-08-21  Paolo Carlini  <pcarlini@suse.de>
21464fee23f9Smrg
21474fee23f9Smrg	* include/bits/char_traits.h (struct _Char_traits_match): Remove,
21484fee23f9Smrg	unused.
21494fee23f9Smrg
21504fee23f9Smrg2004-08-21  Paolo Carlini  <pcarlini@suse.de>
21514fee23f9Smrg
21524fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper
21534fee23f9Smrg	wchar_t	type for the fill argument; minor formatting tweaks.
21544fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
21554fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
21564fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
21574fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
21584fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
21594fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
21604fee23f9Smrg
21614fee23f9Smrg2004-08-21  Paolo Carlini  <pcarlini@suse.de>
21624fee23f9Smrg
21634fee23f9Smrg	* include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal
21644fee23f9Smrg	with _M_word != _M_local_word two times, redundantly.
21654fee23f9Smrg
21664fee23f9Smrg2004-08-20  Jason Merrill  <jason@redhat.com>
21674fee23f9Smrg
21684fee23f9Smrg	* include/Makefile.am (${host_builddir}/gthr.h): Don't add
21694fee23f9Smrg	_GLIBCXX_ to #pragma lines.
21704fee23f9Smrg	* include/Makefile.in: Update.
21714fee23f9Smrg
21724fee23f9Smrg2004-08-20  Paolo Carlini  <pcarlini@suse.de>
21734fee23f9Smrg
21744fee23f9Smrg	PR libstdc++/7219 (continued)
21754fee23f9Smrg	* include/bits/ios_base.h (class ios_base): Expose Annex D.6
21764fee23f9Smrg	typedefs by default.
21774fee23f9Smrg	* testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED.
21784fee23f9Smrg	* testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error
21794fee23f9Smrg	line number.
21804fee23f9Smrg	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
21814fee23f9Smrg
21824fee23f9Smrg2004-08-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
21834fee23f9Smrg
21844fee23f9Smrg	* cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory
21854fee23f9Smrg	barrier to locking asm.
21864fee23f9Smrg
21874fee23f9Smrg2004-08-20  Paolo Carlini  <pcarlini@suse.de>
21884fee23f9Smrg
21894fee23f9Smrg	* include/c_std/cmath.tcc (__cmath_power): Revert previous commit:
21904fee23f9Smrg	actually the warning is a front-end bug (c++/17120).
21914fee23f9Smrg
21924fee23f9Smrg2004-08-20  Matthias Klose  <doko@debian.org>
21934fee23f9Smrg
21944fee23f9Smrg	* config/abi/s390-linux-gnu/baseline_symbols.txt: New.
21954fee23f9Smrg
21964fee23f9Smrg2004-08-20  Paolo Carlini  <pcarlini@suse.de>
21974fee23f9Smrg
21984fee23f9Smrg	* include/c_std/cmath.tcc (__cmath_power): Suppress assignment
21994fee23f9Smrg	used as truth value warning.
22004fee23f9Smrg
22014fee23f9Smrg2004-08-20  Paolo Carlini  <pcarlini@suse.de>
22024fee23f9Smrg
22034fee23f9Smrg	* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit
22044fee23f9Smrg	baseline.
22054fee23f9Smrg
22064fee23f9Smrg2004-08-20  Paolo Carlini  <pcarlini@suse.de>
22074fee23f9Smrg
22084fee23f9Smrg	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it.
22094fee23f9Smrg
22104fee23f9Smrg2004-08-19  Benjamin Kosnik  <bkoz@redhat.com>
22114fee23f9Smrg
22124fee23f9Smrg	* testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check
22134fee23f9Smrg	timezone.
22144fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same.
22154fee23f9Smrg
22164fee23f9Smrg2004-08-19  Paolo Carlini  <pcarlini@suse.de>
22174fee23f9Smrg
22184fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc: For std::map
22194fee23f9Smrg	instantiate the allocator for a correct pair type.
22204fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
22214fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
22224fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc:
22234fee23f9Smrg	Likewise.
22244fee23f9Smrg
22254fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc: Very
22264fee23f9Smrg	minor formatting fixes.
22274fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
22284fee23f9Smrg
22294fee23f9Smrg2004-08-19  Paolo Carlini  <pcarlini@suse.de>
22304fee23f9Smrg
22314fee23f9Smrg	* testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the
22324fee23f9Smrg	results.
22334fee23f9Smrg	* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
22344fee23f9Smrg	* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
22354fee23f9Smrg	* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
22364fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
22374fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
22384fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
22394fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
22404fee23f9Smrg
22414fee23f9Smrg2004-08-19  Paolo Carlini  <pcarlini@suse.de>
22424fee23f9Smrg
22434fee23f9Smrg	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
22444fee23f9Smrg
22454fee23f9Smrg2004-08-18  Matthias Klose  <doko@debian.org>
22464fee23f9Smrg
22474fee23f9Smrg	* config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
22484fee23f9Smrg	* config/abi/i386-linux-gnu/baseline_symbols.txt: New.
22494fee23f9Smrg	* config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
22504fee23f9Smrg
22514fee23f9Smrg2004-08-17  Paolo Carlini  <pcarlini@suse.de>
22524fee23f9Smrg
22534fee23f9Smrg	* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
22544fee23f9Smrg
22554fee23f9Smrg2004-08-17  Paolo Carlini  <pcarlini@suse.de>
22564fee23f9Smrg
22574fee23f9Smrg	* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
22584fee23f9Smrg
22594fee23f9Smrg2004-08-17  Benjamin Kosnik  <bkoz@redhat.com>
22604fee23f9Smrg
22614fee23f9Smrg	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
22624fee23f9Smrg
22634fee23f9Smrg2004-08-16  Paolo Carlini  <pcarlini@suse.de>
22644fee23f9Smrg
22654fee23f9Smrg	* include/bits/indirect_array.h: Trivial formatting fixes.
22664fee23f9Smrg	* include/bits/valarray_after.h: Likewise.
22674fee23f9Smrg	* include/bits/valarray_array.h: Likewise.
22684fee23f9Smrg	* src/valarray-inst.cc: Likewise.
22694fee23f9Smrg
22704fee23f9Smrg2004-08-15  Paolo Carlini  <pcarlini@suse.de>
22714fee23f9Smrg
22724fee23f9Smrg	* testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk.
22734fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
22744fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
22754fee23f9Smrg
22764fee23f9Smrg	* testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New.
22774fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
22784fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
22794fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
22804fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
22814fee23f9Smrg
22824fee23f9Smrg2004-08-15  Paolo Carlini  <pcarlini@suse.de>
22834fee23f9Smrg
22844fee23f9Smrg	* include/bits/deque.tcc: Trivial formatting fixes.
22854fee23f9Smrg
22864fee23f9Smrg2004-08-15  Paolo Carlini  <pcarlini@suse.de>
22874fee23f9Smrg
22884fee23f9Smrg	* include/bits/deque.tcc: Trivial formatting fixes.
22894fee23f9Smrg
22904fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::do_get(&bool)):
22914fee23f9Smrg	Remove unneded typedef.
22924fee23f9Smrg
22934fee23f9Smrg	* include/bits/locale_facets.tcc: Very minor tweaks.
22944fee23f9Smrg
22954fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper
22964fee23f9Smrg	type for the fill argument.
22974fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
22984fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
22994fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
23004fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
23014fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
23024fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
23034fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
23044fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
23054fee23f9Smrg
23064fee23f9Smrg2004-08-13  Paolo Carlini  <pcarlini@suse.de>
23074fee23f9Smrg
23084fee23f9Smrg	* src/debug.cc (_Error_formatter::_M_print_string): Fix thinko,
23094fee23f9Smrg	memmove is not needed, memcpy suffices.
23104fee23f9Smrg
23114fee23f9Smrg2004-08-13  Paolo Carlini  <pcarlini@suse.de>
23124fee23f9Smrg
23134fee23f9Smrg	* include/std/std_fstream.h (class basic_ifstream,
23144fee23f9Smrg	class basic_ofstream, class basic_fstream): Add const overloads
23154fee23f9Smrg	of is_open, as per DR 365 [WP].
23164fee23f9Smrg	* docs/html/ext/howto.html: Add an entry for DR 365.
23174fee23f9Smrg
23184fee23f9Smrg2004-08-12  Paolo Carlini  <pcarlini@suse.de>
23194fee23f9Smrg
23204fee23f9Smrg	* configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE.
23214fee23f9Smrg
23224fee23f9Smrg2004-08-12  Paolo Carlini  <pcarlini@suse.de>
23234fee23f9Smrg
23244fee23f9Smrg	PR libstdc++/16956
23254fee23f9Smrg	* include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off
23264fee23f9Smrg	to the returned value, reorganize a bit.
23274fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New.
23284fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New.
23294fee23f9Smrg
23304fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk.
23314fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
23324fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
23334fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
23344fee23f9Smrg
23354fee23f9Smrg2004-08-12  Paul Brook  <paul@codesourcery.com>
23364fee23f9Smrg
23374fee23f9Smrg	* config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
23384fee23f9Smrg	_GLIBCXX_CXA_VEC_CTOR_RETURN.
23394fee23f9Smrg	* config/cpu/generic/cxxabi_tweaks.h: Ditto.
23404fee23f9Smrg	* libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
23414fee23f9Smrg	__cxa_vec_ctor_return.
23424fee23f9Smrg	* libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
23434fee23f9Smrg	Use _GLIBCXX_CXA_VEC_CTOR_RETURN.
23444fee23f9Smrg
23454fee23f9Smrg2004-08-12  Kelley Cook  <kcook@gcc.gnu.org>
23464fee23f9Smrg
23474fee23f9Smrg	* Makefile.in, aclocal.m4, configure, include/Makefile.in,
23484fee23f9Smrg	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
23494fee23f9Smrg	src/Makefile.in, testsuite/Makefile.in: Regenerate
23504fee23f9Smrg
23514fee23f9Smrg2004-08-12  Jan Beulich  <jbeulich@novell.com>
23524fee23f9Smrg
23534fee23f9Smrg	* config/locale/generic/ctype_members.cc
23544fee23f9Smrg	(ctype<wchar_t>::_M_convert_to_wmask): Default case must not use 0 as
23554fee23f9Smrg	initializer for return value, as that is invalid for enumerated	types.
23564fee23f9Smrg	* config/locale/gnu/ctype_members.cc
23574fee23f9Smrg	(ctype<wchar_t>::_M_convert_to_wmask): Likewise.
23584fee23f9Smrg
23594fee23f9Smrg2004-08-11  Paolo Carlini  <pcarlini@suse.de>
23604fee23f9Smrg
23614fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo.
23624fee23f9Smrg
23634fee23f9Smrg2004-08-11  Paolo Carlini  <pcarlini@suse.de>
23644fee23f9Smrg
23654fee23f9Smrg	* testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test
23664fee23f9Smrg	variable.
23674fee23f9Smrg	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto.
23684fee23f9Smrg	* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk.
23694fee23f9Smrg	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto.
23704fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto.
23714fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto.
23724fee23f9Smrg	* testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto.
23734fee23f9Smrg	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto.
23744fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto.
23754fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto.
23764fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto.
23774fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto.
23784fee23f9Smrg	* testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto.
23794fee23f9Smrg	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto.
23804fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto.
23814fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto.
23824fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto.
23834fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto.
23844fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto.
23854fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto.
23864fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto.
23874fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto.
23884fee23f9Smrg
23894fee23f9Smrg2004-08-11  Paolo Carlini  <pcarlini@suse.de>
23904fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
23914fee23f9Smrg
23924fee23f9Smrg	PR libstdc++/16959
23934fee23f9Smrg	* src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
23944fee23f9Smrg	standard streams are constructed.
23954fee23f9Smrg	* testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.
23964fee23f9Smrg
23974fee23f9Smrg2004-08-09  Paolo Carlini  <pcarlini@suse.de>
23984fee23f9Smrg
23994fee23f9Smrg	* include/bits/stl_bvector.h: Trivial formatting fixes.
24004fee23f9Smrg
24014fee23f9Smrg2004-08-09  Paolo Carlini  <pcarlini@suse.de>
24024fee23f9Smrg
24034fee23f9Smrg	* src/ios.cc (ios_base::_M_grow_words): Uglify the names.
24044fee23f9Smrg
24054fee23f9Smrg2004-08-07  Jonathan Wakely  <redi@gcc.gnu.org>
24064fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
24074fee23f9Smrg
24084fee23f9Smrg	* src/debug.cc (_Error_formatter::_M_print_string): In order
24094fee23f9Smrg	to print individual words from __string, _M_format_word can't
24104fee23f9Smrg	be called since may be just sprintf, thus ignoring completely
24114fee23f9Smrg	__n: instead, use memmove and append '\0' by hand.
24124fee23f9Smrg
24134fee23f9Smrg2004-08-07  Paolo Carlini  <pcarlini@suse.de>
24144fee23f9Smrg
24154fee23f9Smrg	* config/locale/generic/c_locale.h (__convert_from_v): Don't
24164fee23f9Smrg	use a default for __prec, assume __prec >= 0 and simplify.
24174fee23f9Smrg	* config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
24184fee23f9Smrg	* include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
24194fee23f9Smrg	Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".
24204fee23f9Smrg
24214fee23f9Smrg2004-08-04  Phil Edwards  <phil@codesourcery.com>
24224fee23f9Smrg
24234fee23f9Smrg	* docs/html/configopts.html:  Emphasize that options change.
24244fee23f9Smrg	* docs/html/17_intro/configury.html:  Update links.
24254fee23f9Smrg
24264fee23f9Smrg2004-08-03  Paolo Carlini  <pcarlini@suse.de>
24274fee23f9Smrg
24284fee23f9Smrg	* include/bits/list.tcc: Trivial formatting fixes.
24294fee23f9Smrg
24304fee23f9Smrg2004-08-03  Mark Mitchell  <mark@codesourcery.com>
24314fee23f9Smrg
24324fee23f9Smrg	* libsupc++/new_op.cc: Update comments.
24334fee23f9Smrg	* libsupc++/del_op.cc: Likewise.
24344fee23f9Smrg
24354fee23f9Smrg2004-08-02  Mark Mitchell  <mark@codesourcery.com>
24364fee23f9Smrg
24374fee23f9Smrg	* libsupc++/cxxabi.h: Make all declarations have default
24384fee23f9Smrg	visibility.
24394fee23f9Smrg	* libsupc++/exception: Likewise.
24404fee23f9Smrg	* libsupc++/new: Likewise.
24414fee23f9Smrg	* libsupc++/typeinfo: Likewise.
24424fee23f9Smrg	* libsupc++/unwind-cxx.h: Likewise.
24434fee23f9Smrg	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
24444fee23f9Smrg	the __cxxabiv1 namespace.
24454fee23f9Smrg	(__cxa_free_exception): Likewise.
24464fee23f9Smrg	* libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
24474fee23f9Smrg	(__cxa_bad_typeid): Likewise.
24484fee23f9Smrg	* libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
24494fee23f9Smrg	(__cxa_end_catch): Likewise.
24504fee23f9Smrg	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
24514fee23f9Smrg	(__cxa_get_globals): Likewise.
24524fee23f9Smrg	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
24534fee23f9Smrg	(__cxa_rethrow): Likewise.
24544fee23f9Smrg	* libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
24554fee23f9Smrg	* libsupc++/eh_type.cc: Include <cxxabi.h>.
24564fee23f9Smrg
24574fee23f9Smrg	* Makefile.am (hosted_source): Add libmath and testsuite.
24584fee23f9Smrg	(SUBDIRS): Remove them.
24594fee23f9Smrg	* acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
24604fee23f9Smrg	on arm*-*-symbianelf*.
24614fee23f9Smrg	* crossconfig.m4: Add arm*-*-symbianelf* support.
24624fee23f9Smrg	* include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
24634fee23f9Smrg	when freestanding.  Do not bring names into std:: namespace with
24644fee23f9Smrg	"using" when freestanding.  Declare required functions and macros
24654fee23f9Smrg	when freestanding.
24664fee23f9Smrg	* libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
24674fee23f9Smrg	when freestanding.
24684fee23f9Smrg	* libsupc++/del_op.cc: Declare "free" only when freestanding.
24694fee23f9Smrg	* libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
24704fee23f9Smrg	(malloc): Declare when freestanding.
24714fee23f9Smrg	(free): Likewise.
24724fee23f9Smrg	(memset): Likewise.
24734fee23f9Smrg	(__cxa_allocate_exception): Call malloc, not std::malloc.  Likewise
24744fee23f9Smrg	for memset.
24754fee23f9Smrg	(__cxa_free_exception): Likewise for free.
24764fee23f9Smrg	* libsupc++/new_op.cc: Declare "malloc" when freestanding.
24774fee23f9Smrg	* libsupc++/pure.cc (writestr): Define to nothing when
24784fee23f9Smrg	freestanding.
24794fee23f9Smrg	* libsupc++/vterminate.cc: Do not define anything when
24804fee23f9Smrg	freestanding.
24814fee23f9Smrg	* Makefile.in: Regenerated.
24824fee23f9Smrg	* aclocal.m4: Likewise.
24834fee23f9Smrg	* configure: Likewise.
24844fee23f9Smrg	* include/Makefile.in: Likewise.
24854fee23f9Smrg	* libmath/Makefile.in: Likewise.
24864fee23f9Smrg	* libsupc++/Makefile.in: Likewise.
24874fee23f9Smrg	* po/Makefile.in: Likewise.
24884fee23f9Smrg	* src/Makefile.in: Likewise.
24894fee23f9Smrg	* testsuite/Makefile.in: Likewise.
24904fee23f9Smrg
24914fee23f9Smrg2004-08-01  Matt Austern  <austern@apple.com>
24924fee23f9Smrg
24934fee23f9Smrg	PR libstdc++/16844
24944fee23f9Smrg	* include/bits/stl_list.h (_M_create_node): Remove unused
24954fee23f9Smrg	zero-argument version.
24964fee23f9Smrg	* include/ext/slist (_M_create_node): Pass two arguments to
24974fee23f9Smrg	allocator's construct() member function.
24984fee23f9Smrg	* testsuite/23_containers/deque/explicit_instantiation.cc: New.
24994fee23f9Smrg	* testsuite/23_containers/list/explicit_instantiation.cc: New.
25004fee23f9Smrg	* testsuite/23_containers/vector/explicit_instantiation.cc: New.
25014fee23f9Smrg	* testsuite/23_containers/map/explicit_instantiation.cc: New.
25024fee23f9Smrg	* testsuite/23_containers/set/explicit_instantiation.cc: New.
25034fee23f9Smrg	* testsuite/23_containers/multimap/explicit_instantiation.cc: New.
25044fee23f9Smrg	* testsuite/23_containers/multiset/explicit_instantiation.cc: New.
25054fee23f9Smrg	* testsuite/ext/hash_set_explicit_instantiation.cc: New.
25064fee23f9Smrg	* testsuite/ext/slist_explicit_instantiation.cc: New.
25074fee23f9Smrg
25084fee23f9Smrg2004-07-30  Paolo Carlini  <pcarlini@suse.de>
25094fee23f9Smrg
25104fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
25114fee23f9Smrg	num_get<>::_M_extract_int): In the main parsing loop delay the
25124fee23f9Smrg	life of __q to the actual use point.
25134fee23f9Smrg
25144fee23f9Smrg2004-07-29  Paolo Carlini  <pcarlini@suse.de>
25154fee23f9Smrg
25164fee23f9Smrg	PR libstdc++/14220
25174fee23f9Smrg	* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
25184fee23f9Smrg	Don't clip the precision passed down to __convert_from_v:
25194fee23f9Smrg	22.2.2.2.2 nowhere says so.
25204fee23f9Smrg	* testsuite/22_locale/num_put/put/char/14220.cc: New.
25214fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
25224fee23f9Smrg
25234fee23f9Smrg2004-07-29  Paolo Carlini  <pcarlini@suse.de>
25244fee23f9Smrg
25254fee23f9Smrg	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31.
25264fee23f9Smrg
25274fee23f9Smrg2004-07-29  Paolo Carlini  <pcarlini@suse.de>
25284fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
25294fee23f9Smrg
25304fee23f9Smrg	PR libstdc++/12658 (continued)
25314fee23f9Smrg	* src/locale_init.cc (locale::locale, locale::global): Use
25324fee23f9Smrg	a single locale_mutex instead of two separate mutexes.
25334fee23f9Smrg
25344fee23f9Smrg2004-07-29  Paolo Carlini  <pcarlini@suse.de>
25354fee23f9Smrg
25364fee23f9Smrg	PR libstdc++/16813
25374fee23f9Smrg	* include/debug/map.h (insert(_InputIterator, _InputIterator)):
25384fee23f9Smrg	Fix typo.
25394fee23f9Smrg	* testsuite/23_containers/map/insert/16813.cc: New.
25404fee23f9Smrg
25414fee23f9Smrg2004-07-29  Phil Edwards  <phil@codesourcery.com>
25424fee23f9Smrg
25434fee23f9Smrg	* docs/html/faq/index.html:  Update version references.  Make
25444fee23f9Smrg	clear that code from SGI has diverged greatly.  Remove references
25454fee23f9Smrg	to library snapshots and what's-new sections.
25464fee23f9Smrg	* docs/html/faq/index.txt:  Regenerate.
25474fee23f9Smrg
25484fee23f9Smrg2004-07-28  Matt Austern  <austern@apple.com>
25494fee23f9Smrg
25504fee23f9Smrg	* include/bits/stl_construct.h (_Destroy): New three-argument
25514fee23f9Smrg	overload that takes an allocator argument.  Another inline
25524fee23f9Smrg	three-argument overload that takes std::allocator and dispatches
25534fee23f9Smrg	to the two-argument version.
25544fee23f9Smrg	* include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
25554fee23f9Smrg	Change return type to void to match uninitialized_fill_n.
25564fee23f9Smrg	(__uninitialized_copy_a_): New function.  Like uninitialized_copy
25574fee23f9Smrg	except that it takes an allocator and uses it for construct and
25584fee23f9Smrg	destroy.  If the allocator is std::allocator, dispatches to
25594fee23f9Smrg	uninitialized_copy.
25604fee23f9Smrg	(__uninitialized_fill_a): Likewise.
25614fee23f9Smrg	(__uninitialized_fill_n_a): Likewise.
25624fee23f9Smrg	(__uninitialized_copy_copy): Give it an allocator argument.
25634fee23f9Smrg	(__uninitialized_fill_copy): Likewise.
25644fee23f9Smrg	(__uninitialized_copy_fill): Likewise.
25654fee23f9Smrg	* include/bits/deque.tcc: Use new forms defined in stl_construct.h
25664fee23f9Smrg	and stl_uninitialized.h.  Replace use of single-argument _Construct
25674fee23f9Smrg	and _Destroy with use of allocator's construct and destroy methods.
25684fee23f9Smrg	* include/bits/list.tcc: Likewise.
25694fee23f9Smrg	* include/bits/stl_deque.h: Likewise.
25704fee23f9Smrg	* include/bits/stl_list.h: Likewise.
25714fee23f9Smrg	* include/bits/stl_tree.h: Likewise.
25724fee23f9Smrg	* include/bits/stl_vector.h: Likewise.
25734fee23f9Smrg	* include/bits/vector.tcc: Likewise.
25744fee23f9Smrg	* include/ext/hashtable.h: Use rebind so that allocator_type
25754fee23f9Smrg	has correct type for a container's allocator.  Replace use of
25764fee23f9Smrg	single-argument _Construct and _Destroy with use of allocator's
25774fee23f9Smrg	construct and destroy methods.
25784fee23f9Smrg	* include/ext/memory (__uninitialized_copy_n_a): New function.
25794fee23f9Smrg	Like uninitialized_copy_n except that it takes an extra parameter,
25804fee23f9Smrg	an allocator, and uses it for construct and destroy operations.
25814fee23f9Smrg	* include/ext/rope: Use new forms defined in stl_construct.h,
25824fee23f9Smrg	stl_uninitialized.h, and ext/memory.  Replace use of single-argument
25834fee23f9Smrg	_Construct and _Destroy with allocator construct and destroy methods.
25844fee23f9Smrg	* include/ext/ropeimpl.h: Likewise.
25854fee23f9Smrg	* include/ext/slist.h: Likewise.
25864fee23f9Smrg	* testsuite/testsuite_allocator.h (check_construct_destroy): New.
25874fee23f9Smrg	* testsuite/testsuite_allocator.cc (check_construct_destroy): New.
25884fee23f9Smrg	* testsuite/23_containers/deque/check_construct_destroy.cc: New.
25894fee23f9Smrg	* testsuite/23_containers/list/check_construct_destroy.cc: New.
25904fee23f9Smrg	* testsuite/23_containers/set/check_construct_destroy.cc: New.
25914fee23f9Smrg	* testsuite/23_containers/vector/check_construct_destroy.cc: New.
25924fee23f9Smrg	* testsuite/ext/hash_check_construct_destroy.cc: New.
25934fee23f9Smrg	* testsuite/ext/slist_check_construct_destroy.cc: New.
25944fee23f9Smrg
25954fee23f9Smrg2004-07-28  Alexandre Oliva  <aoliva@redhat.com>
25964fee23f9Smrg
25974fee23f9Smrg	2003-10-01  Eric Christopher  <echristo@redhat.com>
25984fee23f9Smrg	* config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm'
25994fee23f9Smrg	constraint.
26004fee23f9Smrg	2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
26014fee23f9Smrg	* config/cpu/sh/atomicity.h: New.  Use movli and movco on SH4a.
26024fee23f9Smrg
26034fee23f9Smrg2004-07-23  Benjamin Kosnik  <bkoz@redhat.com>
26044fee23f9Smrg
26054fee23f9Smrg	PR libstdc++/16678
26064fee23f9Smrg	* include/bits/locale_facets.tcc: Fix for -Werror.
26074fee23f9Smrg
26084fee23f9Smrg2004-07-23  Jonathan Wakely  <redi@gcc.gnu.org>
26094fee23f9Smrg
26104fee23f9Smrg	* docs/html/debug.html: Say debug mode only available since 3.4.0.
26114fee23f9Smrg
26124fee23f9Smrg2004-07-21  Benjamin Kosnik  <bkoz@redhat.com>
26134fee23f9Smrg
26144fee23f9Smrg	* docs/doxygen/mainpage.html: Clarify links.
26154fee23f9Smrg	* docs/doxygen/stdheader.cc: Add files.
26164fee23f9Smrg	* docs/doxygen/style.css: Remove bolds, add h2, h3 styles.
26174fee23f9Smrg	* docs/doxygen/user.cfg.in: New options, wrap.
26184fee23f9Smrg
26194fee23f9Smrg2004-07-20  Danny Smith  <dannysmith@users.sourceforge.net>
26204fee23f9Smrg
26214fee23f9Smrg	* include/c_std/std_cwchar.h (wcsstr): Correct signature.
26224fee23f9Smrg
26234fee23f9Smrg2004-07-19  Benjamin Kosnik  <bkoz@redhat.com>
26244fee23f9Smrg
26254fee23f9Smrg	PR libstdc++/15488
26264fee23f9Smrg	* testsuite/lib/libstdc++.exp (v3-copy-files): Revert.
26274fee23f9Smrg
26284fee23f9Smrg2004-07-17  Richard Sandiford  <rsandifo@redhat.com>
26294fee23f9Smrg
26304fee23f9Smrg	PR bootstrap/16469
26314fee23f9Smrg	* scripts/create_testsuite_files: Pass -print to find.
26324fee23f9Smrg
26334fee23f9Smrg2004-07-15  Paolo Carlini  <pcarlini@suse.de>
26344fee23f9Smrg
26354fee23f9Smrg	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
26364fee23f9Smrg	* docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.
26374fee23f9Smrg
26384fee23f9Smrg2004-07-15  Jakub Jelinek  <jakub@redhat.com>
26394fee23f9Smrg
26404fee23f9Smrg	PR libstdc++/14697
26414fee23f9Smrg	* acinclude.m4 (glibcxx_shared_libgcc): Correct
26424fee23f9Smrg	glibcxx_shared_libgcc test for multilibs.
26434fee23f9Smrg	* configure: Rebuilt.
26444fee23f9Smrg
26454fee23f9Smrg2004-07-14  Paolo Carlini  <pcarlini@suse.de>
26464fee23f9Smrg
26474fee23f9Smrg	PR libstdc++/16505
26484fee23f9Smrg	* include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix
26494fee23f9Smrg	the signature to return void, as per 20.4.4.3.
26504fee23f9Smrg	* include/bits/stl_vector.h (vector::vector(size_type,
26514fee23f9Smrg	const value_type&, const allocator_type&), vector::vector(size_type),
26524fee23f9Smrg	vector::_M_initialize_dispatch): Adjust callers.
26534fee23f9Smrg	* include/bits/vector.tcc (vector<>::_M_fill_assign,
26544fee23f9Smrg	vector<>::_M_fill_insert): Likewise.
26554fee23f9Smrg	* testsuite/20_util/memory/16505.cc: New.
26564fee23f9Smrg
26574fee23f9Smrg2004-07-14  Paolo Carlini  <pcarlini@suse.de>
26584fee23f9Smrg
26594fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread-1.cc,
26604fee23f9Smrg	12658_thread-2.cc: Use __gnu_test::try_named_locale.
26614fee23f9Smrg
26624fee23f9Smrg2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>
26634fee23f9Smrg
26644fee23f9Smrg	* docs/html/ext/mt_allocator.html: Add docs for _Tune.
26654fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
26664fee23f9Smrg	(__mt_alloc::_S_set_options): Same.
26674fee23f9Smrg	Add to comments.
26684fee23f9Smrg
26694fee23f9Smrg2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>
26704fee23f9Smrg
26714fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
26724fee23f9Smrg	for linux.
26734fee23f9Smrg	* configure: Regenerated.
26744fee23f9Smrg
26754fee23f9Smrg2004-07-13  Paolo Carlini  <pcarlini@suse.de>
26764fee23f9Smrg
26774fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename
26784fee23f9Smrg	to 12658_thread-1.cc and xfail.
26794fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread-2.c: New, much
26804fee23f9Smrg	simpler version of 12658_thread-1.cc, still failing on 3_3 and
26814fee23f9Smrg	not failing on 3_4/mainline - both on single processor and
26824fee23f9Smrg	multiprocessor machines.
26834fee23f9Smrg
26844fee23f9Smrg2004-07-12  Benjamin Kosnik  <bkoz@redhat.com>
26854fee23f9Smrg
26864fee23f9Smrg	* docs/html/abi.html: Remove non-public qualification.
26874fee23f9Smrg
26884fee23f9Smrg	* include/bits/concurrence.h: Tweak comments.
26894fee23f9Smrg
26904fee23f9Smrg2004-07-11  Paolo Carlini  <pcarlini@suse.de>
26914fee23f9Smrg
26924fee23f9Smrg	Add wchar_t counterparts of the basic_streambbuf<char> tests.
26934fee23f9Smrg	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
26944fee23f9Smrg	* testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
26954fee23f9Smrg	Likewise.
26964fee23f9Smrg	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
26974fee23f9Smrg	* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
26984fee23f9Smrg	3599.cc: Likewise.
26994fee23f9Smrg	* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
27004fee23f9Smrg	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
27014fee23f9Smrg	* testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
27024fee23f9Smrg	* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
27034fee23f9Smrg	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
27044fee23f9Smrg	Likewise.
27054fee23f9Smrg	* testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
27064fee23f9Smrg
27074fee23f9Smrg	* testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
27084fee23f9Smrg	tweaks.
27094fee23f9Smrg	* testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
27104fee23f9Smrg	Likewise.
27114fee23f9Smrg	* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
27124fee23f9Smrg	* testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
27134fee23f9Smrg
27144fee23f9Smrg2004-07-11  Phil Edwards  <phil@codesourcery.com>
27154fee23f9Smrg
27164fee23f9Smrg	* acinclude.m4:  Cosmetic shell syntax fixes.
27174fee23f9Smrg	* configure.ac:  Bring comment inline with reality.
27184fee23f9Smrg	* configure.host:  Both of the above.  Move 'arm' case to right
27194fee23f9Smrg	place in host_cpu switch.
27204fee23f9Smrg	* aclocal.m4, configure:  Regenerate.
27214fee23f9Smrg
27224fee23f9Smrg2004-07-09  Paolo Carlini  <pcarlini@suse.de>
27234fee23f9Smrg
27244fee23f9Smrg	Add wchar_t counterparts of the basic_stringbuf<char> tests.
27254fee23f9Smrg	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New.
27264fee23f9Smrg	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
27274fee23f9Smrg	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc,
27284fee23f9Smrg	3599.cc, 9988.cc: Likewise.
27294fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc:
27304fee23f9Smrg	Likewise.
27314fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc:
27324fee23f9Smrg	Likewise.
27334fee23f9Smrg	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc:
27344fee23f9Smrg	Likewise.
27354fee23f9Smrg	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc:
27364fee23f9Smrg	Likewise.
27374fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
27384fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
27394fee23f9Smrg	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
27404fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc:
27414fee23f9Smrg	Likewise.
27424fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc,
27434fee23f9Smrg	9404-1.cc: Likewise.
27444fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc,
27454fee23f9Smrg	9404-2.cc: Likewise.
27464fee23f9Smrg	* testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc,
27474fee23f9Smrg	3955.cc: Likewise.
27484fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
27494fee23f9Smrg	* testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
27504fee23f9Smrg
27514fee23f9Smrg2004-07-08  Paolo Carlini  <pcarlini@suse.de>
27524fee23f9Smrg
27534fee23f9Smrg	* include/bits/gslice.h: Trivial formatting fixes.
27544fee23f9Smrg	* include/bits/gslice_array.h: Likewise.
27554fee23f9Smrg	* include/bits/indirect_array.h: Likewise.
27564fee23f9Smrg	* include/bits/mask_array.h: Likewise.
27574fee23f9Smrg	* include/bits/slice_array.h: Likewise.
27584fee23f9Smrg	* include/bits/valarray_after.h: Likewise.
27594fee23f9Smrg	* include/bits/valarray_array.h: Likewise.
27604fee23f9Smrg	* include/bits/valarray_before.h: Likewise.
27614fee23f9Smrg	* include/std/std_valarray.h: Likewise.
27624fee23f9Smrg
27634fee23f9Smrg2004-07-08  Benjamin Kosnik  <bkoz@redhat.com>
27644fee23f9Smrg
27654fee23f9Smrg	PR c++/16169
27664fee23f9Smrg	* include/bits/basic_string.h (basic_string::operator=): Revert.
27674fee23f9Smrg
27684fee23f9Smrg2004-07-07  Benjamin Kosnik  <bkoz@redhat.com>
27694fee23f9Smrg
27704fee23f9Smrg	* configure.ac (libtool_VERSION): To 6:2:0.
27714fee23f9Smrg	* configure: Regenerated.
27724fee23f9Smrg
27734fee23f9Smrg	* testsuite/testsuite_abi.cc (check_version): Add 3.4.2.
27744fee23f9Smrg
27754fee23f9Smrg2004-07-07  Aaron W. LaFramboise  <aaronraolete36@aaronwl.com>
27764fee23f9Smrg
27774fee23f9Smrg	PR libstdc++/16411
27784fee23f9Smrg	* config/linker-map.gnu: Add stdio_sync_filebuf::file exports.
27794fee23f9Smrg
27804fee23f9Smrg2004-07-07  Benjamin Kosnik  <bkoz@redhat.com>
27814fee23f9Smrg
27824fee23f9Smrg	* docs/html/abi.html: Updates for 3.4.1 release. Add summary of
27834fee23f9Smrg	-Weffc++ issues.
27844fee23f9Smrg
27854fee23f9Smrg2004-07-07  Paolo Carlini  <pcarlini@suse.de>
27864fee23f9Smrg
27874fee23f9Smrg	PR libstdc++/16401
27884fee23f9Smrg	* include/bits/sstream.tcc (overflow): When reallocating _M_string
27894fee23f9Smrg	use an exponential grow policy.
27904fee23f9Smrg	* testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
27914fee23f9Smrg	* testsuite/performance/27_io/stringbuf_overflow.cc: New.
27924fee23f9Smrg
27934fee23f9Smrg2004-07-06  Anssi Hannula  <anssi.hannula@mbnet.fi>
27944fee23f9Smrg
27954fee23f9Smrg	PR libstdc++/15928
27964fee23f9Smrg	* crossconfig.m4: Add in bits for djgpp.
27974fee23f9Smrg	* configure: Regenerate.
27984fee23f9Smrg
27994fee23f9Smrg2004-07-05  Jonathan Wakely  <redi@gcc.gnu.org>
28004fee23f9Smrg
28014fee23f9Smrg	* testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
28024fee23f9Smrg	instantiation of set and multiset (functor param given as int).
28034fee23f9Smrg
28044fee23f9Smrg2004-07-04  Paolo Carlini  <pcarlini@suse.de>
28054fee23f9Smrg
28064fee23f9Smrg	* include/bits/basic_string.h: Trivial formatting fixes and/or
28074fee23f9Smrg	const-ification of some variables.
28084fee23f9Smrg	* include/bits/deque.tcc: Likewise.
28094fee23f9Smrg	* include/bits/stl_algobase.h: Likewise.
28104fee23f9Smrg	* include/bits/stl_bvector.h: Likewise.
28114fee23f9Smrg	* include/bits/stl_construct.h: Likewise.
28124fee23f9Smrg	* include/bits/stl_deque.h: Likewise.
28134fee23f9Smrg	* include/bits/stl_pair.h: Likewise.
28144fee23f9Smrg	* include/bits/stl_vector.h: Likewise.
28154fee23f9Smrg	* include/bits/vector.tcc: Likewise.
28164fee23f9Smrg
28174fee23f9Smrg2004-07-04  Paolo Carlini  <pcarlini@suse.de>
28184fee23f9Smrg
28194fee23f9Smrg	* testsuite/25_algorithms/copy/1.cc: Add instantiations for
28204fee23f9Smrg	systems with no COMDAT or weak support.
28214fee23f9Smrg	* testsuite/25_algorithms/copy/2.cc: Likewise.
28224fee23f9Smrg	* testsuite/25_algorithms/copy/3.cc: Likewise.
28234fee23f9Smrg	* testsuite/25_algorithms/copy/4.cc: Likewise.
28244fee23f9Smrg
28254fee23f9Smrg2004-07-03  Paul Brook  <paul@codesourcery.com>
28264fee23f9Smrg
28274fee23f9Smrg	* configure.ac: Set ABI_TWEAKS_SRCDIR.
28284fee23f9Smrg	* configure.host: Set abi_tweaks_dir.  Check for atomicity.h when
28294fee23f9Smrg	setting atomicity_dir.  Override type_cpu for arm based targets.
28304fee23f9Smrg	* include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
28314fee23f9Smrg	* libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
28324fee23f9Smrg	* libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
28334fee23f9Smrg	* libsupc++/vec.cc: Ditto.
28344fee23f9Smrg	* config/cpu/arm/cxxabi_tweaks.h: New file.
28354fee23f9Smrg	* config/cpu/generic/cxxabi_tweaks.h: New file.
28364fee23f9Smrg	* */Makefile.in: Regenerate.
28374fee23f9Smrg	* configure: Regenerate.
28384fee23f9Smrg
28394fee23f9Smrg2004-07-02  Paolo Carlini  <pcarlini@suse.de>
28404fee23f9Smrg
28414fee23f9Smrg	* include/bits/type_traits.h (_Is_normal_iterator): Move...
28424fee23f9Smrg	* include/bits/cpp_type_traits.h: ... here, renamed to
28434fee23f9Smrg	__is_normal_iterator and consistent with the other traits.
28444fee23f9Smrg	* include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
28454fee23f9Smrg	to the struct __copy_normal and three specializations.
28464fee23f9Smrg	(__copy_backward_output_normal_iterator,
28474fee23f9Smrg	__copy_backward_input_normal_iterator): Likewise, convert to
28484fee23f9Smrg	the struct __copy_backward_normal and three specializations.
28494fee23f9Smrg	(copy, copy_backward): Use the latter.
28504fee23f9Smrg	(__copy_aux, __copy_backward_aux): Very minor tweaks.
28514fee23f9Smrg
28524fee23f9Smrg2004-07-01  Paolo Carlini  <pcarlini@suse.de>
28534fee23f9Smrg
28544fee23f9Smrg	* include/bits/stl_algobase.h (__copy_trivial): Remove.
28554fee23f9Smrg	(__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
28564fee23f9Smrg	__is_trivially_copyable, __are_same and __copy::copy.
28574fee23f9Smrg	(__copy): Rewrite as a class template and two specializations.
28584fee23f9Smrg	(__copy_ni2): Simplify, just call __copy_aux.
28594fee23f9Smrg
28604fee23f9Smrg	* include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
28614fee23f9Smrg	check.
28624fee23f9Smrg	* testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
28634fee23f9Smrg	for destination value type != source value type.
28644fee23f9Smrg
28654fee23f9Smrg2004-07-01  Benjamin Kosnik  <bkoz@redhat.com>
28664fee23f9Smrg	    Per Bothner  <per@bothner.com>
28674fee23f9Smrg	    Mohan Embar  <gnustuff@thisiscool.com>
28684fee23f9Smrg
28694fee23f9Smrg	PR libstdc++/16248
28704fee23f9Smrg	* include/bits/concurrence.h (__glibcxx_mutex_type): New.
28714fee23f9Smrg	(__glibcxx_mutex): Encapsulate mutex init function into type for
28724fee23f9Smrg	threaded configurations without __GTHREAD_MUTEX_INIT.
28734fee23f9Smrg	(lock::lock): Make device member a reference.
28744fee23f9Smrg	(lock::~lock): Same.
28754fee23f9Smrg	* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
28764fee23f9Smrg	to mutex_type.
28774fee23f9Smrg	* src/allocator.cc: Same.
28784fee23f9Smrg
28794fee23f9Smrg2004-06-30  Brad Spencer  <spencer@infointeractive.com>
28804fee23f9Smrg
28814fee23f9Smrg	* include/ext/mt_allocator.h: Handle allocations at static
28824fee23f9Smrg	initialization that happen before _S_options is (automatically)
28834fee23f9Smrg	constructed; set _S_init even if _M_force_new is true.
28844fee23f9Smrg
28854fee23f9Smrg2004-06-30  Benjamin Kosnik  <bkoz@redhat.com>
28864fee23f9Smrg
28874fee23f9Smrg	* config/linker-map.gnu: Revert new exports.
28884fee23f9Smrg
28894fee23f9Smrg2004-06-30  Benjamin Kosnik  <bkoz@redhat.com>
28904fee23f9Smrg	    Stuart Anderson  <anderson@netsweng.com>
28914fee23f9Smrg
28924fee23f9Smrg	* config/linker-map.gnu: Add destructor exports for abstract base
28934fee23f9Smrg	classes to conform to LSB.
28944fee23f9Smrg
28954fee23f9Smrg2004-06-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
28964fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
28974fee23f9Smrg
28984fee23f9Smrg	* include/bits/cpp_type_traits.h: Add __is_pointer and
28994fee23f9Smrg	__is_trivially_copyable.
29004fee23f9Smrg	* include/bits/stl_algobase.h (fill, fill_n): Slightly
29014fee23f9Smrg	tweak to use the latter.
29024fee23f9Smrg	(__copy_backward_dispatch): Remove.
29034fee23f9Smrg	(__copy_backward_aux): Rewrite to use __is_pointer and
29044fee23f9Smrg	__is_trivially_copyable and __copy_backward::copy_b.
29054fee23f9Smrg	(__copy_backward): Rewrite as a class template and two
29064fee23f9Smrg	specializations.
29074fee23f9Smrg
29084fee23f9Smrg2004-06-30  Paolo Carlini  <pcarlini@suse.de>
29094fee23f9Smrg
29104fee23f9Smrg	* testsuite/25_algorithms/copy.cc: Move to...
29114fee23f9Smrg	* testsuite/25_algorithms/copy/1.cc: ... here, extend.
29124fee23f9Smrg	* testsuite/25_algorithms/copy/2.cc: New.
29134fee23f9Smrg	* testsuite/25_algorithms/copy/3.cc: New.
29144fee23f9Smrg	* testsuite/25_algorithms/copy/4.cc: New.
29154fee23f9Smrg
29164fee23f9Smrg2004-06-29  Paul Brook  <paul@codesourcery.com>
29174fee23f9Smrg
29184fee23f9Smrg	* libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
29194fee23f9Smrg	element size in the cookie.
29204fee23f9Smrg
29214fee23f9Smrg2004-06-28  Paolo Carlini  <pcarlini@suse.de>
29224fee23f9Smrg
29234fee23f9Smrg	* include/bits/cpp_type_traits.h: Move the additions to
29244fee23f9Smrg	namespace __gnu_internal outside of namespace std; trivial
29254fee23f9Smrg	formatting fixes.
29264fee23f9Smrg
29274fee23f9Smrg2004-06-28  Benjamin Kosnik  <bkoz@redhat.com>
29284fee23f9Smrg
29294fee23f9Smrg	* include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
29304fee23f9Smrg	Revert -Weffc++ changes that defined copy ctory and or assignment
29314fee23f9Smrg	operator.
29324fee23f9Smrg	* libsupc++/tinfo.cc (__upcast_result): Same.
29334fee23f9Smrg
29344fee23f9Smrg2004-06-28  Paolo Carlini  <pcarlini@suse.de>
29354fee23f9Smrg
29364fee23f9Smrg	* src/localename.cc (locale::_Impl::_Impl): Slightly improve
29374fee23f9Smrg	the algorithm used to name the categories.
29384fee23f9Smrg
29394fee23f9Smrg2004-06-28  Paolo Bonzini  <bonzini@gnu.org>
29404fee23f9Smrg
29414fee23f9Smrg	* include/Makefile.am: Give a .gch extension to
29424fee23f9Smrg	the PCH files, not only to the directory.
29434fee23f9Smrg	* include/Makefile.in: Regenerate.
29444fee23f9Smrg
29454fee23f9Smrg2004-06-28  Paolo Carlini  <pcarlini@suse.de>
29464fee23f9Smrg
29474fee23f9Smrg	* config/locale/gnu/monetary_members.cc
29484fee23f9Smrg	(moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
29494fee23f9Smrg	assignments of _M_decimal_point and _M_thousands_sep.
29504fee23f9Smrg
29514fee23f9Smrg2004-06-27  Paolo Carlini  <pcarlini@suse.de>
29524fee23f9Smrg
29534fee23f9Smrg	* docs/html/17_intro/contribute.html: Update some links.
29544fee23f9Smrg	* docs/html/17_intro/porting-howto.html: Likewise.
29554fee23f9Smrg	* docs/html/17_intro/porting-howto.xml: Likewise.
29564fee23f9Smrg	* docs/html/18_support/howto.html: Likewise.
29574fee23f9Smrg	* docs/html/21_strings/howto.html: Likewise.
29584fee23f9Smrg	* docs/html/27_io/howto.html: Likewise.
29594fee23f9Smrg	* docs/html/configopts.html: Likewise.
29604fee23f9Smrg	* docs/html/ext/howto.html: Likewise.
29614fee23f9Smrg	* docs/html/faq/index.html: Likewise.
29624fee23f9Smrg	* docs/html/install.html: Don't mention 2.x compilers.
29634fee23f9Smrg
29644fee23f9Smrg2004-06-27  Paolo Carlini  <pcarlini@suse.de>
29654fee23f9Smrg
29664fee23f9Smrg	* include/ext/rope: Trivial formatting fixes.
29674fee23f9Smrg	* include/ext/ropeimpl.h: Likewise.
29684fee23f9Smrg
29694fee23f9Smrg2004-06-26  Paolo Carlini  <pcarlini@suse.de>
29704fee23f9Smrg
29714fee23f9Smrg	PR libstdc++/16210
29724fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
29734fee23f9Smrg	availability of strto(u)ll, not used anymore in the iostreams.
29744fee23f9Smrg	* configure: Regenerate.
29754fee23f9Smrg
29764fee23f9Smrg2004-06-25  Benjamin Kosnik  <bkoz@redhat.com>
29774fee23f9Smrg
29784fee23f9Smrg	PR libstdc++/16182
29794fee23f9Smrg	* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
29804fee23f9Smrg	AC_DEFINE_UNQUOTED.
29814fee23f9Smrg	* configure: Regenerate.
29824fee23f9Smrg
29834fee23f9Smrg2004-06-25  Paul Brook  <paul@codesourcery.com>
29844fee23f9Smrg
29854fee23f9Smrg	* libsupc++/cxxabi.h: Define __ARM_EABI__
29864fee23f9Smrg	(__guard): Use it.
29874fee23f9Smrg	* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
29884fee23f9Smrg
29894fee23f9Smrg2004-06-25  Paul Brook  <paul@codesourcery.com>
29904fee23f9Smrg
29914fee23f9Smrg	* include/bits/concurrence.h: Still create mutex object when
29924fee23f9Smrg	single-threaded.
29934fee23f9Smrg
29944fee23f9Smrg2004-06-25  Paolo Carlini  <pcarlini@suse.de>
29954fee23f9Smrg
29964fee23f9Smrg	* include/bits/stl_algobase.h (fill, fill_n): Revert last
29974fee23f9Smrg	change: actually we need to copy construct an object of type
29984fee23f9Smrg	_Tp, not of type iterator_traits<>::value_type, therefore the
29994fee23f9Smrg	code is ok.
30004fee23f9Smrg
30014fee23f9Smrg2004-06-25  Paolo Carlini  <pcarlini@suse.de>
30024fee23f9Smrg
30034fee23f9Smrg	* include/bits/stl_algobase.h (fill, fill_n): Tighten the
30044fee23f9Smrg	dispatch: use iterator_traits<>::value_type, not _Tp.
30054fee23f9Smrg
30064fee23f9Smrg2004-06-25  Paolo Carlini  <pcarlini@suse.de>
30074fee23f9Smrg
30084fee23f9Smrg	* testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
30094fee23f9Smrg	* testsuite/25_algorithms/fill/2.cc: Likewise.
30104fee23f9Smrg
30114fee23f9Smrg2004-06-25  Dan Nicolaescu  <dann@ics.uci.edu>
30124fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
30134fee23f9Smrg
30144fee23f9Smrg	* include/bits/stl_algobase.h (__fill, __fill_n): New helpers
30154fee23f9Smrg	for fill and fill_n, respectively: when copying is cheap, use a
30164fee23f9Smrg	temporary to avoid a memory read in each iteration.
30174fee23f9Smrg
30184fee23f9Smrg2004-06-25  Paolo Carlini  <pcarlini@suse.de>
30194fee23f9Smrg
30204fee23f9Smrg	* testsuite/25_algorithms/fill/1.cc: New.
30214fee23f9Smrg	* testsuite/25_algorithms/fill/2.cc: Likewise.
30224fee23f9Smrg
30234fee23f9Smrg2004-06-25  Benjamin Kosnik  <bkoz@redhat.com>
30244fee23f9Smrg
30254fee23f9Smrg	* include/debug/formatter.h (__gnu_debug::_Error_formatter):
30264fee23f9Smrg	Remove copy constructor and assignment operator.
30274fee23f9Smrg
30284fee23f9Smrg2004-06-24  Benjamin Kosnik  <bkoz@redhat.com>
30294fee23f9Smrg
30304fee23f9Smrg	* include/bits/concurrence.h (__gnu_cxx::lock): New.
30314fee23f9Smrg	* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
30324fee23f9Smrg	(__pool_base::_M_get_mutex): New.
30334fee23f9Smrg	* include/bits/allocator.h: Tweak.
30344fee23f9Smrg	* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
30354fee23f9Smrg	* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
30364fee23f9Smrg	* include/bits/stl_threads.h: Remove.
30374fee23f9Smrg	* include/Makefile.am: Also here.
30384fee23f9Smrg	* include/Makefile.in: Regenerate.
30394fee23f9Smrg
30404fee23f9Smrg	* src/locale_init.cc: Use __gnu_cxx::lock.
30414fee23f9Smrg
30424fee23f9Smrg	* src/allocator.cc: Move all instantiations...
30434fee23f9Smrg	* src/allocator-inst.cc: ...here.
30444fee23f9Smrg
30454fee23f9Smrg2004-06-23  Andrew Pinski  <apinski@apple.com>
30464fee23f9Smrg
30474fee23f9Smrg	* linkage.m4: Remove check for libmx.
30484fee23f9Smrg	* configure: Regenerate.
30494fee23f9Smrg
30504fee23f9Smrg2004-06-23  Paolo Carlini  <pcarlini@suse.de>
30514fee23f9Smrg
30524fee23f9Smrg	PR libstdc++/16154
30534fee23f9Smrg	* include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
30544fee23f9Smrg	Don't require the _DefaultConstructibleConcept.
30554fee23f9Smrg	(struct _ForwardIteratorConcept): Require it here.
30564fee23f9Smrg
30574fee23f9Smrg2004-06-22  Alexandre Oliva  <aoliva@redhat.com>
30584fee23f9Smrg
30594fee23f9Smrg	* include/bits/istream.tcc (getline): Make sure arguments passed
30604fee23f9Smrg	to min/max have the same type.
30614fee23f9Smrg	* include/bits/locale_facets.tcc (__verify_grouping): Likewise.
30624fee23f9Smrg	* include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.
30634fee23f9Smrg
30644fee23f9Smrg2004-06-22  Benjamin Kosnik  <bkoz@redhat.com>
30654fee23f9Smrg
30664fee23f9Smrg	* docs/html/abi.html: Update links.
30674fee23f9Smrg
30684fee23f9Smrg2004-06-22  Paolo Carlini  <pcarlini@suse.de>
30694fee23f9Smrg
30704fee23f9Smrg	* testsuite/26_numerics/complex_inserters_extractors.cc,
30714fee23f9Smrg	complex_value.cc, buggy_complex.cc: Move to...
30724fee23f9Smrg	* testsuite/26_numerics/complex/: ... here.
30734fee23f9Smrg	* testsuite/26_numerics/c99_classification_macros_c++.cc,
30744fee23f9Smrg	c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc,
30754fee23f9Smrg	fabs_inline.cc: Move to...
30764fee23f9Smrg	* testsuite/26_numerics/cmath/: ... here.
30774fee23f9Smrg	* testsuite/26_numerics/binary_closure.cc, slice.cc,
30784fee23f9Smrg	slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc,
30794fee23f9Smrg	valarray_name_lookup.cc, valarray_operators.cc,
30804fee23f9Smrg	valarray_subset_assignment.cc: Move to...
30814fee23f9Smrg	* testsuite/26_numerics/valarray/: ... here (new dir).
30824fee23f9Smrg	* testsuite/26_numerics/sum_diff.cc: Move to...
30834fee23f9Smrg	* testsuite/26_numerics/numeric/: ... here (new dir).
30844fee23f9Smrg
30854fee23f9Smrg2004-06-22  Paolo Carlini  <pcarlini@suse.de>
30864fee23f9Smrg
30874fee23f9Smrg	* include/std/std_istream.h (ignore(streamsize __n = 1,
30884fee23f9Smrg	int_type __delim = traits_type::eof())): Split into...
30894fee23f9Smrg	(ignore(), ignore(streamsize __n), ignore(streamsize __n,
30904fee23f9Smrg	int_type __delim)): The first two can be much more simpler
30914fee23f9Smrg	and efficient than the fully general case; also, the last
30924fee23f9Smrg	two can take advantage of the same mechanism already used
30934fee23f9Smrg	for getline.
30944fee23f9Smrg	* include/bits/istream.tcc (ignore(streamsize __n = 1,
30954fee23f9Smrg	int_type __delim = traits_type::eof()): Remove.
30964fee23f9Smrg	(ignore(), ignore(streamsize __n), ignore(streamsize __n,
30974fee23f9Smrg	int_type __delim)): New.
30984fee23f9Smrg
30994fee23f9Smrg2004-06-21  Loren J. Rittle  <ljrittle@acm.org>
31004fee23f9Smrg
31014fee23f9Smrg	* config/linker-map.gnu: Use wildcards for
31024fee23f9Smrg	__basic_file::sys_open(FILE*, _Ios_Openmode).
31034fee23f9Smrg
31044fee23f9Smrg2004-06-20  Paolo Carlini  <pcarlini@suse.de>
31054fee23f9Smrg
31064fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/char/3.cc: New.
31074fee23f9Smrg
31084fee23f9Smrg2004-06-18  Paolo Carlini  <pcarlini@suse.de>
31094fee23f9Smrg
31104fee23f9Smrg	* include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
31114fee23f9Smrg	the alignment requested.
31124fee23f9Smrg	(__mt_alloc<>::_Tune::_Tune): Tweak consistently.
31134fee23f9Smrg	(__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
31144fee23f9Smrg	(__mt_alloc<>::deallocate): Likewise.
31154fee23f9Smrg
31164fee23f9Smrg2004-06-18  Paolo Carlini  <pcarlini@suse.de>
31174fee23f9Smrg
31184fee23f9Smrg	PR libstdc++/16020
31194fee23f9Smrg	* include/debug/safe_base.h
31204fee23f9Smrg	(_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
31214fee23f9Smrg	_Safe_sequence_base::operator=): Provide definitions.
31224fee23f9Smrg	* testsuite/23_containers/bitset/cons/16020.cc: New.
31234fee23f9Smrg
31244fee23f9Smrg2004-06-18  Benjamin Kosnik  <bkoz@redhat.com>
31254fee23f9Smrg
31264fee23f9Smrg	* include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
31274fee23f9Smrg	(__pool_base): Remove unused template parameter.  Add
31284fee23f9Smrg	protected. Move lock data into __pool_base::_Lock. Remove static
31294fee23f9Smrg	on member functions.
31304fee23f9Smrg	(__pool_base::_M_get_free_list): New.
31314fee23f9Smrg	(__pool_alloc): Move _S_force new here.
31324fee23f9Smrg	* src/allocator.cc: Move out of line __pool_base definitions here.
31334fee23f9Smrg	* config/linker-map.gnu: Export bits from __pool_base.
31344fee23f9Smrg
31354fee23f9Smrg2004-06-18  Paolo Carlini  <pcarlini@suse.de>
31364fee23f9Smrg
31374fee23f9Smrg	* config/locale/gnu/numeric_members.cc
31384fee23f9Smrg	(numpunct<wchar_t>::_M_initialize_numpunct): Clean up
31394fee23f9Smrg	assignments of _M_decimal_point and _M_thousands_sep.
31404fee23f9Smrg	* config/locale/gnu/time_members.cc
31414fee23f9Smrg	(__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
31424fee23f9Smrg	and reformat assignments of date and time fields.
31434fee23f9Smrg
31444fee23f9Smrg2004-06-16  Paolo Carlini  <pcarlini@suse.de>
31454fee23f9Smrg
31464fee23f9Smrg	* include/ext/rope (rope(_CharT, const allocator_type&)): Fix
31474fee23f9Smrg	to use _Data_allocate.
31484fee23f9Smrg	* include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
31494fee23f9Smrg	(rope<>::_S_substring): Likewise.
31504fee23f9Smrg	(rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
31514fee23f9Smrg	(rope<>::c_str()): Likewise.
31524fee23f9Smrg	(rope<>::replace_with_c_str()): Likewise.
31534fee23f9Smrg
31544fee23f9Smrg	* include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
31554fee23f9Smrg	Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
31564fee23f9Smrg	not _RopeRep.
31574fee23f9Smrg	(_Rope_iterator_base<>::_S_setcache): Likewise.
31584fee23f9Smrg	(_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
31594fee23f9Smrg	(rope<>::_S_substring): Likewise.
31604fee23f9Smrg	(rope<>::_S_dump): Likewise.
31614fee23f9Smrg	(rope<>::_S_fetch_ptr): Likewise.
31624fee23f9Smrg	(rope<>::_S_compare): Likewise.
31634fee23f9Smrg	(rope<>::replace_with_c_str()): Likewise.
31644fee23f9Smrg
31654fee23f9Smrg	* testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
31664fee23f9Smrg	* testsuite/ext/rope/2.cc: New.
31674fee23f9Smrg
31684fee23f9Smrg2004-06-16  Paolo Carlini  <pcarlini@suse.de>
31694fee23f9Smrg	    Matt Austern  <austern@apple.com>
31704fee23f9Smrg
31714fee23f9Smrg	* testsuite/ext/rope/3.cc: New.
31724fee23f9Smrg
31734fee23f9Smrg2004-06-15  Paolo Bonzini  <bonzini@gnu.org>
31744fee23f9Smrg
31754fee23f9Smrg	* acinclude.m4: Remove useless multilib configury.
31764fee23f9Smrg	* Makefile.am: Remove useless multilib rules.
31774fee23f9Smrg	* aclocal.m4: Regenerate.
31784fee23f9Smrg	* Makefile.in: Regenerate.
31794fee23f9Smrg	* configure: Regenerate.
31804fee23f9Smrg
31814fee23f9Smrg2004-06-15  Paolo Carlini  <pcarlini@suse.de>
31824fee23f9Smrg
31834fee23f9Smrg	* include/ext/hashtable.h: Trivial formatting fixes.
31844fee23f9Smrg	* include/ext/rb_tree: Likewise.
31854fee23f9Smrg
31864fee23f9Smrg2004-06-14  Paolo Carlini  <pcarlini@suse.de>
31874fee23f9Smrg
31884fee23f9Smrg	* include/ext/hash_map: Trivial formatting fixes.
31894fee23f9Smrg	* include/ext/hash_set: Likewise.
31904fee23f9Smrg	* include/ext/memory: Likewise.
31914fee23f9Smrg	* include/ext/numeric: Likewise.
31924fee23f9Smrg
31934fee23f9Smrg2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>
31944fee23f9Smrg
31954fee23f9Smrg	* Makefile.in: Regenerate with automake 1.8.5.
31964fee23f9Smrg	* aclocal.m4: Same.
31974fee23f9Smrg	* include/Makefile.in: Same.
31984fee23f9Smrg	* libmath/Makefile.in: Same.
31994fee23f9Smrg	* libsupc++/Makefile.in: Same.
32004fee23f9Smrg	* po/Makefile.in: Same.
32014fee23f9Smrg	* src/Makefile.in: Same.
32024fee23f9Smrg	* testsuite/Makefile.in: Same.
32034fee23f9Smrg
32044fee23f9Smrg2004-06-14  Paolo Carlini  <pcarlini@suse.de>
32054fee23f9Smrg
32064fee23f9Smrg	* include/ext/slist: Trivial formatting fixes.
32074fee23f9Smrg
32084fee23f9Smrg2004-06-14  Paolo Carlini  <pcarlini@suse.de>
32094fee23f9Smrg
32104fee23f9Smrg	* include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
32114fee23f9Smrg	Don't use the 'magic number' 10 in the computation of __minlen;
32124fee23f9Smrg	never access __name past __minlen; in the loop over __i3, don't
32134fee23f9Smrg	decrease __nmatches and increase __i3 at once, only either of
32144fee23f9Smrg	the two; tidy.
32154fee23f9Smrg
32164fee23f9Smrg2004-06-13  Paolo Carlini  <pcarlini@suse.de>
32174fee23f9Smrg
32184fee23f9Smrg	* include/bits/locale_facets.tcc (time_get<>::do_get_time,
32194fee23f9Smrg	time_get<>::do_get_date): Use only once _M_extract_via_format,
32204fee23f9Smrg	instead of going through "%X"/"%x" and calling it two times
32214fee23f9Smrg	(+ using widen).
32224fee23f9Smrg
32234fee23f9Smrg2004-06-12  Paolo Carlini  <pcarlini@suse.de>
32244fee23f9Smrg
32254fee23f9Smrg	* include/ext/algorithm: Trivial formatting fixes.
32264fee23f9Smrg	* include/ext/functional: Likewise.
32274fee23f9Smrg	* include/ext/hash_fun.h: Likewise.
32284fee23f9Smrg	* include/ext/iterator: Likewise.
32294fee23f9Smrg
32304fee23f9Smrg2004-06-12  Paolo Carlini  <pcarlini@suse.de>
32314fee23f9Smrg
32324fee23f9Smrg	* include/bits/basic_string.tcc (find(const _CharT*, size_type,
32334fee23f9Smrg	size_type)): Reimplement using std::search.
32344fee23f9Smrg	* src/string-inst.cc: Instantiate std::search for char/wchar_t.
32354fee23f9Smrg
32364fee23f9Smrg2004-06-12  Dhruv Matani  <dhruvbird@gmx.net>
32374fee23f9Smrg
32384fee23f9Smrg	* testsuite/performance/21_strings/string_find.cc: New.
32394fee23f9Smrg
32404fee23f9Smrg2004-06-10  Aaron W. LaFramboise  <aaronraolete36@aaronwl.com>
32414fee23f9Smrg
32424fee23f9Smrg	* include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized.
32434fee23f9Smrg
32444fee23f9Smrg2004-06-10  Jan van Dijk  <jan@etpmod.phys.tue.nl>
32454fee23f9Smrg
32464fee23f9Smrg	* include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make
32474fee23f9Smrg	this function return a value.
32484fee23f9Smrg
32494fee23f9Smrg2004-06-09  Paolo Carlini  <pcarlini@suse.de>
32504fee23f9Smrg
32514fee23f9Smrg	PR libstdc++/15775
32524fee23f9Smrg	* include/bits/stl_deque.h: Consistently with stl_set.h, define
32534fee23f9Smrg	pointer as allocator's pointer, likewise for reference,
32544fee23f9Smrg	const_pointer, and const_reference.
32554fee23f9Smrg	* include/bits/stl_list.h: Likewise.
32564fee23f9Smrg	* include/bits/stl_map.h: Likewise.
32574fee23f9Smrg	* include/bits/stl_multimap.h: Likewise.
32584fee23f9Smrg	* include/bits/stl_vector.h: Likewise.
32594fee23f9Smrg
32604fee23f9Smrg2004-06-09  Benjamin Kosnik  <bkoz@redhat.com>
32614fee23f9Smrg
32624fee23f9Smrg	* crossconfig.m4: Remove signbit, signbitf, signbitl.
32634fee23f9Smrg	* linkage.m4: Comment LIBMATHOBJS, tweak others.  AC_DEFINES for
32644fee23f9Smrg	builtin math functions instead of AC_DEFINE_UNQUOTED.
32654fee23f9Smrg	* configure: Regenerate.
32664fee23f9Smrg
32674fee23f9Smrg2004-06-08  Benjamin Kosnik  <bkoz@redhat.com>
32684fee23f9Smrg
32694fee23f9Smrg	* docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
32704fee23f9Smrg	* docs/doxygen/mainpage.html: Remove links.
32714fee23f9Smrg
32724fee23f9Smrg2004-06-08  Jason Merrill  <jason@redhat.com>
32734fee23f9Smrg
32744fee23f9Smrg	* config/linker-map.gnu: Use wildcards for
32754fee23f9Smrg	__basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
32764fee23f9Smrg
32774fee23f9Smrg2004-06-08  Paolo Carlini  <pcarlini@suse.de>
32784fee23f9Smrg
32794fee23f9Smrg	* include/ext/pool_allocator.h: Convert to a global free-list,
32804fee23f9Smrg	as per the original SGI/HP design: move the implementation
32814fee23f9Smrg	details to struct __pool_base, from which __pool_alloc derives.
32824fee23f9Smrg	* src/allocator.cc: Instantiate __pool_base.
32834fee23f9Smrg
32844fee23f9Smrg2004-06-07  Dhruv Matani  <dhruvbird@gmx.net>
32854fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
32864fee23f9Smrg
32874fee23f9Smrg	* testsuite/testsuite_performance.h
32884fee23f9Smrg	(resource_counter::allocated_memory): Make it return the right
32894fee23f9Smrg	number of bytes requested by the allocators/application. This is
32904fee23f9Smrg	the sbrk+mmaped memory.
32914fee23f9Smrg
32924fee23f9Smrg2004-06-02  Gabriel Dos Reis  <gdr@integrable-solutions.net>
32934fee23f9Smrg
32944fee23f9Smrg	* include/std/std_complex.h (log): Tidy.
32954fee23f9Smrg
32964fee23f9Smrg2004-05-31  Benjamin Kosnik  <bkoz@redhat.com>
32974fee23f9Smrg
32984fee23f9Smrg	* config/linker-map.gnu (GLIBCXX_3.4.1): Add.
32994fee23f9Smrg	* testsuite/testsuite_abi.cc: Same.
33004fee23f9Smrg	* configure.ac (libtool_VERSION): Bump to 6:1:0.
33014fee23f9Smrg	* configure: Regenerate.
33024fee23f9Smrg	* aclocal.m4: Regenerate.
33034fee23f9Smrg
33044fee23f9Smrg2004-05-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
33054fee23f9Smrg
33064fee23f9Smrg	* include/std/std_complex.h (complex<_Tp>): Properly indent
33074fee23f9Smrg	to follow C++STYLE.
33084fee23f9Smrg	(complex<>::__rep): New.
33094fee23f9Smrg	(__complex_abs): New.  Dispatch to built-ins.
33104fee23f9Smrg	(abs): Use them.
33114fee23f9Smrg	(__complex_arg): New. Dispatch to built-ins.
33124fee23f9Smrg	(arg): Use it.
33134fee23f9Smrg	(__complex_cos): New. Dispatch to built-ins.
33144fee23f9Smrg	(cos): Use it.
33154fee23f9Smrg	(__complex_cosh): New. Dispatch to built-ins.
33164fee23f9Smrg	(cosh): Use it.
33174fee23f9Smrg	(__complex_exp): New. Dispatch to built-ins.
33184fee23f9Smrg	(exp): Use it.
33194fee23f9Smrg	(__complex_log): New. Dispatch to built-ins.
33204fee23f9Smrg	(log): Use it.
33214fee23f9Smrg	(__complex_sin): New. Dispatch to built-ins.
33224fee23f9Smrg	(sin): Use it.
33234fee23f9Smrg	(__complex_sinh): New. Dispatch to built-ins.
33244fee23f9Smrg	(sinh): Use it.
33254fee23f9Smrg	(__complex_sqrt): New. Dispatch to built-ins.
33264fee23f9Smrg	(sqrt): Use it.
33274fee23f9Smrg	(__complex_tan): New. Dispatch to built-ins.
33284fee23f9Smrg	(tan): Use it.
33294fee23f9Smrg	(__complex_tanh): New. Dispatch to built-ins.
33304fee23f9Smrg	(tanh): Use it.
33314fee23f9Smrg	(__complex_pow): New. Dispatch to built-ins.
33324fee23f9Smrg	(pow): Use it.
33334fee23f9Smrg
33344fee23f9Smrg2004-05-29  Richard B. Kreckel  <Richard.Kreckel@Framatome-ANP.com>
33354fee23f9Smrg	    Benjamin Kosnik  <bkoz@redhat.com>
33364fee23f9Smrg
33374fee23f9Smrg	PR libstdc++/14600
33384fee23f9Smrg	* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
33394fee23f9Smrg	* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
33404fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file::file): New.
33414fee23f9Smrg	* config/io/basic_file_stdio.h: Define.
33424fee23f9Smrg
33434fee23f9Smrg2004-05-27  Benjamin Kosnik  <bkoz@redhat.com>
33444fee23f9Smrg
33454fee23f9Smrg	PR libstdc++/15675
33464fee23f9Smrg	* docs/html/documentation.html: Update doxygen links for 3.4.0.
33474fee23f9Smrg
33484fee23f9Smrg2004-05-27  Jan Beulich  <jbeulich@novell.com>
33494fee23f9Smrg
33504fee23f9Smrg	* scripts/create_testsuite_files: Tweak.
33514fee23f9Smrg
33524fee23f9Smrg2004-05-25  Benjamin Kosnik  <bkoz@redhat.com>
33534fee23f9Smrg
33544fee23f9Smrg	PR libstdc++/15489
33554fee23f9Smrg	* scripts/create_testsuite_files: Revert xtype change, add non-GNU
33564fee23f9Smrg	bits to do the same thing.
33574fee23f9Smrg
33584fee23f9Smrg2004-05-24  Paolo Carlini  <pcarlini@suse.de>
33594fee23f9Smrg
33604fee23f9Smrg	* include/bits/istream.tcc (ignore): Correctly deal with
33614fee23f9Smrg	n == numeric_limits<streamsize>::max().
33624fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/char/2.cc: New.
33634fee23f9Smrg
33644fee23f9Smrg	* include/bits/istream.tcc (basic_istream<>::getline): Prefer
33654fee23f9Smrg	'_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
33664fee23f9Smrg	__n == numeric_limits<>::min().
33674fee23f9Smrg
33684fee23f9Smrg	* include/bits/istream.tcc: Minor tweaks.
33694fee23f9Smrg
33704fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
33714fee23f9Smrg	Tighten.
33724fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
33734fee23f9Smrg	Likewise.
33744fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
33754fee23f9Smrg	Likewise.
33764fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
33774fee23f9Smrg	Likewise.
33784fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
33794fee23f9Smrg
33804fee23f9Smrg2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
33814fee23f9Smrg
33824fee23f9Smrg	PR libstdc++/12854
33834fee23f9Smrg	Fixups for -Weffc++.
33844fee23f9Smrg	* include/bits/basic_string.h (basic_string::operator=): Return
33854fee23f9Smrg	pointer to this instead of result of assign. Although redundant,
33864fee23f9Smrg	this doesn't impact resultant codegen.
33874fee23f9Smrg
33884fee23f9Smrg	* include/bits/locale_facets.h (__numpunct_cache): Declare
33894fee23f9Smrg	assignment opxserator and copy constructor private.
33904fee23f9Smrg	(__timepunct_cache): Same.
33914fee23f9Smrg	(__moneypunct_cache): Same.
33924fee23f9Smrg	(collate): Use member initialization list for _M_c_locale_collate.
33934fee23f9Smrg	* config/locale/gnu/messages_members.h: Same.
33944fee23f9Smrg	* config/locale/gnu/time_members.h (__timepunct): Same.
33954fee23f9Smrg	* src/codecvt.cc: Use member initialization list to initialize
33964fee23f9Smrg	_M_c_locale_codecvt.
33974fee23f9Smrg	* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
33984fee23f9Smrg	* config/os/gnu-linux/ctype_noninline.h: Same.
33994fee23f9Smrg	* src/locale.cc (_Impl): Same.
34004fee23f9Smrg	* src/locale_init.cc: Same.
34014fee23f9Smrg	* src/localename.cc: Same.
34024fee23f9Smrg
34034fee23f9Smrg	* include/bits/basic_ios.h (basic_ios): Complete member
34044fee23f9Smrg	initialization list.
34054fee23f9Smrg	* include/bits/istream.tcc (basic_istream::sentry): Same.
34064fee23f9Smrg	* include/bits/ostream.tcc (basic_ostream::sentry): Same.
34074fee23f9Smrg	* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
34084fee23f9Smrg	_M_pback to member initialization list.
34094fee23f9Smrg	* include/std/std_streambuf.h: Same.
34104fee23f9Smrg	* include/std/std_sstream.h: Same, for _M_mode.
34114fee23f9Smrg	* src/ios.cc (ios_base): Same.
34124fee23f9Smrg
34134fee23f9Smrg	* include/ext/rope: Make derived classes match exception
34144fee23f9Smrg
34154fee23f9Smrg	 specifications. Add copy constructors and assignment operators.
34164fee23f9Smrg
34174fee23f9Smrg	* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
34184fee23f9Smrg	constructor and assignment operator protected.
34194fee23f9Smrg	(_Safe_iterator_base): Same.
34204fee23f9Smrg	* include/debug/formatter.h (_Error_formatter): Define copy
34214fee23f9Smrg	constructor and assignment operator.
34224fee23f9Smrg
34234fee23f9Smrg	* include/backward/strstream: Declare assignment operator and copy
34244fee23f9Smrg	constructor private.
34254fee23f9Smrg
34264fee23f9Smrg2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
34274fee23f9Smrg
34284fee23f9Smrg	* testsuite/testsuite_hooks.h (func_callback): Declare copy
34294fee23f9Smrg	constructor and assignment operator private.
34304fee23f9Smrg	* testsuite/23_containers/deque/cons/clear_allocator.cc: Match
34314fee23f9Smrg	exception specifications of base class.
34324fee23f9Smrg	* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
34334fee23f9Smrg	* testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
34344fee23f9Smrg	* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
34354fee23f9Smrg
34364fee23f9Smrg2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
34374fee23f9Smrg
34384fee23f9Smrg	* libsupc++/cxxabi.h: Remove duplicated and useless public and
34394fee23f9Smrg	private keywords in class declarations. Format. Use
34404fee23f9Smrg	stddef.h. Expose declarations to "C" compilation.
34414fee23f9Smrg	* libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
34424fee23f9Smrg	assignment operator.
34434fee23f9Smrg	(__dyncast_result): Same.
34444fee23f9Smrg	* libsupc++/vec.cc (uncatch_exception): Same, use member
34454fee23f9Smrg	initialization list.
34464fee23f9Smrg
34474fee23f9Smrg2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
34484fee23f9Smrg
34494fee23f9Smrg	* testsuite/abi_check.cc: Add unistd.h.
34504fee23f9Smrg
34514fee23f9Smrg2004-05-22  Paolo Carlini  <pcarlini@suse.de>
34524fee23f9Smrg
34534fee23f9Smrg	PR libstdc++/15565
34544fee23f9Smrg	* include/bits/locale_facets.tcc (__int_to_char(unsigned long),
34554fee23f9Smrg	__int_to_char(unsigned long long)): Showpos is not relevant
34564fee23f9Smrg	for unsigned types.
34574fee23f9Smrg	* testsuite/22_locale/num_put/put/char/15565.cc: New.
34584fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
34594fee23f9Smrg
34604fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill
34614fee23f9Smrg	char.
34624fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
34634fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
34644fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
34654fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
34664fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
34674fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
34684fee23f9Smrg
34694fee23f9Smrg2004-05-21  Matthias Klose  <doko@debian.org>
34704fee23f9Smrg
34714fee23f9Smrg	* docs/doxygen/run_doxygen:  Bump required version.
34724fee23f9Smrg
34734fee23f9Smrg2004-05-21  Benjamin Kosnik  <bkoz@redhat.com>
34744fee23f9Smrg
34754fee23f9Smrg	* docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
34764fee23f9Smrg	* docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
34774fee23f9Smrg
34784fee23f9Smrg2004-05-21  Paolo Carlini  <pcarlini@suse.de>
34794fee23f9Smrg
34804fee23f9Smrg	* include/bits/istream.tcc (ignore): Remove redundant line.
34814fee23f9Smrg	(readsome): Tidy, closely following 27.6.1.3, p30.
34824fee23f9Smrg
34834fee23f9Smrg2004-05-20  Paolo Carlini  <pcarlini@suse.de>
34844fee23f9Smrg
34854fee23f9Smrg	* include/bits/istream.tcc (operator>>(basic_istream<>&,
34864fee23f9Smrg	basic_string<>&)): Use a temporary buffer, thus avoiding
34874fee23f9Smrg	reallocation for common case.
34884fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
34894fee23f9Smrg	New.
34904fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
34914fee23f9Smrg	Likewise.
34924fee23f9Smrg
34934fee23f9Smrg	* include/bits/istream.tcc: Const-ification of a few variables.
34944fee23f9Smrg
34954fee23f9Smrg	* include/bits/ostream.tcc: Trivial formatting fixes and
34964fee23f9Smrg	const-ification of some variables.
34974fee23f9Smrg
34984fee23f9Smrg2004-05-20  Benjamin Kosnik  <bkoz@redhat.com>
34994fee23f9Smrg
35004fee23f9Smrg	PR libstdc++/15123
35014fee23f9Smrg	PR libstdc++/13928
35024fee23f9Smrg	* docs/doxygen/Intro.3: Remove Allocators.3.
35034fee23f9Smrg	Add new extension headers, extension namespace list.
35044fee23f9Smrg	* docs/doxygen/run_doxygen (problematic): Remove Allocators.3
35054fee23f9Smrg	Rename GLIBCXXSTD names to std::. Rename __gnu_debug to
35064fee23f9Smrg	__gnu_debug::. Remove __policy_ renames.
35074fee23f9Smrg	* docs/doxygen/guide.html: Add dot note.
35084fee23f9Smrg	* docs/doxygen/stdheader.cc: Edit, add files.
35094fee23f9Smrg	* docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7.
35104fee23f9Smrg
35114fee23f9Smrg2004-05-18  Jonathan Wakely  <redi@gcc.gnu.org>
35124fee23f9Smrg
35134fee23f9Smrg	* include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
35144fee23f9Smrg
35154fee23f9Smrg2004-05-18  Jan Beulich  <jbeulich@novell.com>
35164fee23f9Smrg
35174fee23f9Smrg	PR libstdc++/15489
35184fee23f9Smrg	* scripts/create_testsuite_files: Also find source files through
35194fee23f9Smrg	symbolic links.
35204fee23f9Smrg
35214fee23f9Smrg2004-05-18  Jan Beulich  <jbeulich@novell.com>
35224fee23f9Smrg
35234fee23f9Smrg	PR libstdc++/15488
35244fee23f9Smrg	* testsuite/lib/libstdc++.exp: Make test files writable.
35254fee23f9Smrg
35264fee23f9Smrg2004-05-18  Paolo Carlini  <pcarlini@suse.de>
35274fee23f9Smrg
35284fee23f9Smrg	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
35294fee23f9Smrg	tweaks.
35304fee23f9Smrg
35314fee23f9Smrg2004-05-18  Dhruv Matani  <dhruvbird@gmx.net>
35324fee23f9Smrg
35334fee23f9Smrg	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
35344fee23f9Smrg	allocation loop which removes blocks from the global free list
35354fee23f9Smrg	from O(N) to O(1) when the required blocks are <= the number
35364fee23f9Smrg	available.
35374fee23f9Smrg
35384fee23f9Smrg2004-05-18  Jonathan Wakely  <redi@gcc.gnu.org>
35394fee23f9Smrg
35404fee23f9Smrg	* include/ext/enc_filebuf.h: Move concept-check macro to class scope.
35414fee23f9Smrg
35424fee23f9Smrg2004-05-17  Benjamin Kosnik  <bkoz@redhat.com>
35434fee23f9Smrg
35444fee23f9Smrg	* testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
35454fee23f9Smrg	* testsuite/23_containers/deque/14340.cc: New.
35464fee23f9Smrg	* testsuite/23_containers/list/14340.cc: New.
35474fee23f9Smrg	* testsuite/23_containers/map/14340.cc: New.
35484fee23f9Smrg	* testsuite/23_containers/multimap/14340.cc: New.
35494fee23f9Smrg	* testsuite/23_containers/multiset/14340.cc: New.
35504fee23f9Smrg	* testsuite/23_containers/set/14340.cc: New.
35514fee23f9Smrg	* testsuite/23_containers/vector/14340.cc: New.
35524fee23f9Smrg
35534fee23f9Smrg2004-05-17  Douglas Gregor   <gregod@cs.rpi.edu>
35544fee23f9Smrg
35554fee23f9Smrg	PR libstdc++/14340
35564fee23f9Smrg	* include/debug/safe_iterator.h (_Safe_iterator converting
35574fee23f9Smrg	constructor): Only allow declaration to instantiate when the
35584fee23f9Smrg	incoming _Safe_iterator has exactly the right iterator type.
35594fee23f9Smrg
35604fee23f9Smrg2004-05-17  Jonathan Wakely  <redi@gcc.gnu.org>
35614fee23f9Smrg
35624fee23f9Smrg	* include/bits/boost_concept_check.h: Fix old attribute syntax.
35634fee23f9Smrg	* testsuite/23_containers/map/modifiers/swap.cc: Define operator<
35644fee23f9Smrg	to pass concept-checks.
35654fee23f9Smrg	* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
35664fee23f9Smrg	* testsuite/23_containers/set/modifiers/swap.cc: Same.
35674fee23f9Smrg	* testsuite/23_containers/multiset/modifiers/swap.cc: Same.
35684fee23f9Smrg
35694fee23f9Smrg2004-05-16  Paolo Carlini  <pcarlini@suse.de>
35704fee23f9Smrg
35714fee23f9Smrg	* include/std/std_bitset.h: Minor formatting fixes.
35724fee23f9Smrg
35734fee23f9Smrg2004-05-16  Paolo Carlini  <pcarlini@suse.de>
35744fee23f9Smrg
35754fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
35764fee23f9Smrg	Consistently update __bin._M_free[0].
35774fee23f9Smrg	(__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
35784fee23f9Smrg	__bin._M_free[0] to simplify the while loop (i.e., the number
35794fee23f9Smrg	of iterations becomes known at the outset).
35804fee23f9Smrg
35814fee23f9Smrg2004-05-15  Paolo Carlini  <pcarlini@suse.de>
35824fee23f9Smrg
35834fee23f9Smrg	* include/std/std_bitset.h: Trivial formatting fixes.
35844fee23f9Smrg
35854fee23f9Smrg2004-05-14  Paolo Carlini  <pcarlini@suse.de>
35864fee23f9Smrg	    Ivan Godard  <igodard@pacbell.net>
35874fee23f9Smrg
35884fee23f9Smrg	PR libstdc++/15361
35894fee23f9Smrg	* include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
35904fee23f9Smrg	* testsuite/23_containers/bitset/ext/15361.cc: New.
35914fee23f9Smrg
35924fee23f9Smrg2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
35934fee23f9Smrg
35944fee23f9Smrg	PR libstdc++/15046
35954fee23f9Smrg	* crossconfig.m4: Add C99 math bits for linux crosses.
35964fee23f9Smrg	* configure: Regenerate.
35974fee23f9Smrg
35984fee23f9Smrg2004-05-13  Simon Marshall <simon.marshall@misys.com>
35994fee23f9Smrg	    Benjamin Kosnik  <bkoz@redhat.com>
36004fee23f9Smrg
36014fee23f9Smrg	PR libstdc++/15090
36024fee23f9Smrg	* include/bits/locale_facets.h: Fix for -fno-for-scope.
36034fee23f9Smrg	* include/debug/safe_sequence.h: Same.
36044fee23f9Smrg	* include/debug/safe_iterator.tcc: Same.
36054fee23f9Smrg	* src/debug.cc: Same.
36064fee23f9Smrg	* src/locale.cc: Same.
36074fee23f9Smrg	* src/locale_init.cc: Same.
36084fee23f9Smrg	* src/localename.cc: Same.
36094fee23f9Smrg	* config/locale/gnu/ctype_members.cc: Same.
36104fee23f9Smrg	* config/locale/gnu/numeric_members.cc: Same.
36114fee23f9Smrg	* testsuite/testsuite_abi.cc: Same.
36124fee23f9Smrg	* testsuite/testsuite_hooks.cc: Same.
36134fee23f9Smrg
36144fee23f9Smrg2004-05-13  Jonathan Wakely  <redi@gcc.gnu.org>
36154fee23f9Smrg
36164fee23f9Smrg	* docs/html/abi.html: Document effect of -fabi-version on value
36174fee23f9Smrg	of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
36184fee23f9Smrg	Fix markup.
36194fee23f9Smrg
36204fee23f9Smrg2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
36214fee23f9Smrg
36224fee23f9Smrg	PR libstdc++/15074
36234fee23f9Smrg	* docs/html/faq/index.html: Update docs for libsupc++ usage.
36244fee23f9Smrg
36254fee23f9Smrg2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
36264fee23f9Smrg
36274fee23f9Smrg	PR libstdc++/15412
36284fee23f9Smrg	* include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
36294fee23f9Smrg	__gnu_internal.
36304fee23f9Smrg	(_GLIBCXX_mutex_address): Same.
36314fee23f9Smrg	(_GLIBCXX_once): Same.
36324fee23f9Smrg	(_GLIBCXX_mutex_init): Same.
36334fee23f9Smrg	(_GLIBCXX_mutex_address_init): Same.
36344fee23f9Smrg
36354fee23f9Smrg2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
36364fee23f9Smrg
36374fee23f9Smrg	* docs/html/abi.html: New.
36384fee23f9Smrg	* docs/html/abi.txt: Remove.
36394fee23f9Smrg	* docs/html/documentation.html: Add link.
36404fee23f9Smrg	* testsuite/Makefile.am: Add files.
36414fee23f9Smrg	* testsuite/Makefile.in: Regenerated.
36424fee23f9Smrg	* testsuite/abi_check.cc: Move and modify code into...
36434fee23f9Smrg	* testsuite/testsuite_abi.cc: Add.
36444fee23f9Smrg	* testsuite/testsuite_abi.h: Add.
36454fee23f9Smrg
36464fee23f9Smrg	* docs/html/17_intro/TODO: Update.
36474fee23f9Smrg	* include/bits/stl_pair.h: Format.
36484fee23f9Smrg
36494fee23f9Smrg2004-05-06  Matthias Klose  <doko@debian.org>
36504fee23f9Smrg
36514fee23f9Smrg	* include/backward/iterator.h: 	Add GPL copyright info,
36524fee23f9Smrg	with exception clause.
36534fee23f9Smrg	* include/bits/boost_concept_check.h: Likewise.
36544fee23f9Smrg	* include
36554fee23f9Smrg	* libsupc++/tinfo.h: Likewise.
36564fee23f9Smrg	* po/string_literals.cc: Likewise.
36574fee23f9Smrg
36584fee23f9Smrg2004-05-03  Andreas Tobler  <a.tobler@schweiz.ch>
36594fee23f9Smrg
36604fee23f9Smrg	* acinclude.m4: Replace -W with more speaking -Wextra.
36614fee23f9Smrg	* configure: Rebuilt.
36624fee23f9Smrg
36634fee23f9Smrg2004-05-03  Paolo Carlini  <pcarlini@suse.de>
36644fee23f9Smrg
36654fee23f9Smrg	Optimize locale::_M_impl->_M_names for the most common cases:
36664fee23f9Smrg	!_M_names[0] means unnamed; !_M_names[1] means all the categories
36674fee23f9Smrg	the same name (_M_names[0] && _M_names[1] means that the full set
36684fee23f9Smrg	of _M_names must be processed, the general case).
36694fee23f9Smrg	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
36704fee23f9Smrg	Tweak, saving work when !_M_names[1].
36714fee23f9Smrg	(locale::locale(const locale&, _Facet*): Simplify: now just setting
36724fee23f9Smrg	_M_names[0] = 0 means unnamed.
36734fee23f9Smrg	* src/locale.cc (locale::operator==): Deal first with the common,
36744fee23f9Smrg	easy cases, otherwise fall back to locale::name().
36754fee23f9Smrg	(locale::name()): Tweak, if !_M_names[0] just return "*".
36764fee23f9Smrg	(locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
36774fee23f9Smrg	copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
36784fee23f9Smrg	* src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
36794fee23f9Smrg	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
36804fee23f9Smrg	Simplify when !std::strchr, just updating _M_names[0]; clean up.
36814fee23f9Smrg	(locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
36824fee23f9Smrg	for the general case (full set of names), then do the usual work;
36834fee23f9Smrg	clean up.
36844fee23f9Smrg
36854fee23f9Smrg	* src/locale.cc (locale::name()): Reserve space in __ret.
36864fee23f9Smrg	* src/locale_init.cc (locale::global(const locale&)): Save
36874fee23f9Smrg	the name in a temporary.
36884fee23f9Smrg	* src/localename.cc (locale::locale(const char*)): Reserve space
36894fee23f9Smrg	in __str.
36904fee23f9Smrg
36914fee23f9Smrg2004-04-29  Paolo Carlini  <pcarlini@suse.de>
36924fee23f9Smrg
36934fee23f9Smrg	* src/locale.cc (locale::operator==): Always avoid constructing
36944fee23f9Smrg	locale::name(), directly compare pairs of _M_names.
36954fee23f9Smrg
36964fee23f9Smrg2004-04-26  Paolo Carlini  <pcarlini@suse.de>
36974fee23f9Smrg
36984fee23f9Smrg	* include/bits/istream.tcc: Fix comment.
36994fee23f9Smrg
37004fee23f9Smrg2004-04-26  Paolo Carlini  <pcarlini@suse.de>
37014fee23f9Smrg
37024fee23f9Smrg	* include/bits/stl_vector.h: Trivial formatting fixes.
37034fee23f9Smrg	* include/bits/vector.tcc: Likewise.
37044fee23f9Smrg
37054fee23f9Smrg2004-04-25  Paolo Carlini  <pcarlini@suse.de>
37064fee23f9Smrg
37074fee23f9Smrg	PR libstdc++/15002 (continued again)
37084fee23f9Smrg	* include/bits/istream.tcc (getline(basic_istream<>&,
37094fee23f9Smrg	basic_string<>&, _CharT)): Use a temporary buffer, thus
37104fee23f9Smrg	avoiding reallocation for common case.
37114fee23f9Smrg
37124fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct(_InIterator,
37134fee23f9Smrg	_InIterator, const _Alloc&, input_iterator_tag)): Tweak size
37144fee23f9Smrg	of temporary buffer to a power of two.
37154fee23f9Smrg
37164fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
37174fee23f9Smrg
37184fee23f9Smrg2004-04-25  Paolo Carlini  <pcarlini@suse.de>
37194fee23f9Smrg
37204fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
37214fee23f9Smrg	New.
37224fee23f9Smrg	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
37234fee23f9Smrg	Likewise.
37244fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
37254fee23f9Smrg
37264fee23f9Smrg2004-04-24  Paolo Carlini  <pcarlini@suse.de>
37274fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
37284fee23f9Smrg
37294fee23f9Smrg	PR libstdc++/15002 (continued)
37304fee23f9Smrg	* include/bits/istream.tcc (basic_istream<>::getline(char_type*,
37314fee23f9Smrg	streamsize, char_type)): Use traits::find/copy in a loop to speed
37324fee23f9Smrg	up greatly the function in the common case (I/O buffer size >> 1).
37334fee23f9Smrg
37344fee23f9Smrg2004-04-24  Paolo Carlini  <pcarlini@suse.de>
37354fee23f9Smrg
37364fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/4.cc: New.
37374fee23f9Smrg
37384fee23f9Smrg	* include/bits/istream.tcc (getline(basic_istream<>&,
37394fee23f9Smrg	basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
37404fee23f9Smrg	of sbumpc(), consistently with the other functions, thus also
37414fee23f9Smrg	dealing correctly with the case of exceeded string::max_size().
37424fee23f9Smrg
37434fee23f9Smrg2004-04-24  Matthias Klose  <doko@debian.org>
37444fee23f9Smrg
37454fee23f9Smrg	Jonathan Wakely  <cow@compsoc.man.ac.uk>
37464fee23f9Smrg	* docs/html/configopts.html: Fix reference to allocator config option.
37474fee23f9Smrg
37484fee23f9Smrg2004-04-23  Andrew Pinski  <pinskia@physics.uc.edu>
37494fee23f9Smrg
37504fee23f9Smrg	* linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
37514fee23f9Smrg	* configure: Regenerate.
37524fee23f9Smrg
37534fee23f9Smrg2004-04-23  Daniel Jacobowitz  <drow@mvista.com>
37544fee23f9Smrg
37554fee23f9Smrg	PR libstdc++/15047, libstdc++/11610
37564fee23f9Smrg	* testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
37574fee23f9Smrg	(libstdc++_init): Don't pass outdir to v3-copy-files.
37584fee23f9Smrg
37594fee23f9Smrg2004-04-21  Paolo Carlini  <pcarlini@suse.de>
37604fee23f9Smrg
37614fee23f9Smrg	* include/bits/deque.tcc: Trivial formatting fixes.
37624fee23f9Smrg	* include/bits/stl_deque.h: Likewise.
37634fee23f9Smrg	* include/bits/stl_list.h: Likewise.
37644fee23f9Smrg	* include/bits/stl_tree.h: Likewise.
37654fee23f9Smrg
37664fee23f9Smrg2004-04-21  Paolo Carlini  <pcarlini@suse.de>
37674fee23f9Smrg	    Andrew Pinski  <pinskia@physics.uc.edu>
37684fee23f9Smrg
37694fee23f9Smrg	* include/bits/basic_string.tcc (_M_mutate): Don't compute
37704fee23f9Smrg	__src unnecessarily.
37714fee23f9Smrg
37724fee23f9Smrg2004-04-19  Benjamin Kosnik  <bkoz@redhat.com>
37734fee23f9Smrg
37744fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
37754fee23f9Smrg	Clarify assertion, set test variable to false before assert.
37764fee23f9Smrg	* testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
37774fee23f9Smrg	* testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
37784fee23f9Smrg	* testsuite/27_io/ios_base/storage/2.cc: Same.
37794fee23f9Smrg
37804fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
37814fee23f9Smrg	function returns.
37824fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
37834fee23f9Smrg	* testsuite/27_io/fpos/14320-3.cc: Same.
37844fee23f9Smrg
37854fee23f9Smrg	* testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
37864fee23f9Smrg	* testsuite/27_io/fpos/1.cc: Same.
37874fee23f9Smrg	* testsuite/27_io/basic_stringstream/2.cc: Same.
37884fee23f9Smrg	* testsuite/27_io/basic_stringbuf/4.cc: Same.
37894fee23f9Smrg	* testsuite/27_io/basic_stringbuf/1.cc: Same.
37904fee23f9Smrg	* testsuite/27_io/basic_stringbuf/2.cc: Same.
37914fee23f9Smrg	* testsuite/27_io/basic_streambuf/2.cc: Same.
37924fee23f9Smrg	* testsuite/27_io/basic_ostringstream/2.cc: Same.
37934fee23f9Smrg	* testsuite/27_io/basic_ostream/2.cc: Same.
37944fee23f9Smrg	* testsuite/27_io/basic_ofstream/2.cc: Same.
37954fee23f9Smrg	* testsuite/27_io/basic_istringstream/2.cc: Same.
37964fee23f9Smrg	* testsuite/27_io/basic_istream/2.cc: Same.
37974fee23f9Smrg	* testsuite/27_io/basic_iostream/2.cc: Same.
37984fee23f9Smrg	* testsuite/27_io/basic_ios/2.cc: Same.
37994fee23f9Smrg	* testsuite/27_io/basic_ifstream/2.cc: Same.
38004fee23f9Smrg	* testsuite/27_io/basic_fstream/2.cc: Same.
38014fee23f9Smrg	* testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
38024fee23f9Smrg
38034fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
38044fee23f9Smrg	unsigned against zero.
38054fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
38064fee23f9Smrg	* testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
38074fee23f9Smrg
38084fee23f9Smrg	* testsuite/18_support/new_delete_placement.cc: Initialize
38094fee23f9Smrg	variables before first use.
38104fee23f9Smrg	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
38114fee23f9Smrg	* testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
38124fee23f9Smrg	* testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
38134fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
38144fee23f9Smrg	Same.
38154fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
38164fee23f9Smrg	exceptions_badbit_throw.cc: Same.
38174fee23f9Smrg	* testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
38184fee23f9Smrg	Same.
38194fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
38204fee23f9Smrg	exceptions_failbit_throw.cc: Same.
38214fee23f9Smrg	* testsuite/27_io/types/2.cc: Same.
38224fee23f9Smrg
38234fee23f9Smrg	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
38244fee23f9Smrg	file name.
38254fee23f9Smrg	* testsuite/27_io/fpos/14775.cc: Same.
38264fee23f9Smrg
38274fee23f9Smrg2004-04-19  Paolo Carlini  <pcarlini@suse.de>
38284fee23f9Smrg
38294fee23f9Smrg	PR libstdc++/15002 (partial)
38304fee23f9Smrg	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
38314fee23f9Smrg	Special case __n2 == 1, not calling traits_type::assign/copy.
38324fee23f9Smrg
38334fee23f9Smrg2004-04-17  Benjamin Kosnik  <bkoz@redhat.com>
38344fee23f9Smrg
38354fee23f9Smrg	* include/bits/stl_bvector.h: Use _M_impl._M_start.
38364fee23f9Smrg
38374fee23f9Smrg2004-04-16  Benjamin Kosnik  <bkoz@redhat.com>
38384fee23f9Smrg
38394fee23f9Smrg	* include/bits/c++config (_GLIBCXX_STD): New.
38404fee23f9Smrg	* src/list.cc: Use it.
38414fee23f9Smrg	* include/std/std_bitset.h: Same.
38424fee23f9Smrg	* include/bits/vector.tcc: Same.
38434fee23f9Smrg	* include/bits/stl_set.h: Same.
38444fee23f9Smrg	* include/bits/stl_multiset.h: Same.
38454fee23f9Smrg	* include/bits/stl_multimap.h: Same.
38464fee23f9Smrg	* include/bits/stl_map.h: Same.
38474fee23f9Smrg	* include/bits/stl_list.h: Same.
38484fee23f9Smrg	* include/bits/stl_vector.h: Same.
38494fee23f9Smrg	* include/bits/stl_bvector.h: Same.
38504fee23f9Smrg	* include/bits/stl_deque.h: Same.
38514fee23f9Smrg	* include/bits/deque.tcc: Same.
38524fee23f9Smrg	* include/bits/list.tcc: Same.
38534fee23f9Smrg	* include/debug/vector: Same.
38544fee23f9Smrg	* include/debug/set.h: Same.
38554fee23f9Smrg	* include/debug/multiset.h: Same.
38564fee23f9Smrg	* include/debug/multimap.h: Same.
38574fee23f9Smrg	* include/debug/map.h: Same.
38584fee23f9Smrg	* include/debug/list: Same.
38594fee23f9Smrg	* include/debug/deque: Same.
38604fee23f9Smrg	* include/debug/bitset: Same.
38614fee23f9Smrg	* include/debug/formatter.h (__gnu_debug): Remove using directive.
38624fee23f9Smrg	Add using declaration for std::type_info.
38634fee23f9Smrg	* include/debug/safe_iterator.h: Add using declaration for
38644fee23f9Smrg	std::iterator_traits and std::pair.
38654fee23f9Smrg	* src/debug_list.cc: New.
38664fee23f9Smrg	* src/Makefile.am: Add debug_list.cc.
38674fee23f9Smrg	* src/Makefile.in: Regenerate.
38684fee23f9Smrg	* config/linker-map.gnu: Add _List_node_base exports for std and
38694fee23f9Smrg	__gnu_norm.
38704fee23f9Smrg
38714fee23f9Smrg	* include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
38724fee23f9Smrg	idiom that other containers use.
38734fee23f9Smrg	* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
38744fee23f9Smrg
38754fee23f9Smrg2004-04-16  Paolo Carlini  <pcarlini@suse.de>
38764fee23f9Smrg
38774fee23f9Smrg	PR libstdc++/14975
38784fee23f9Smrg	* include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
38794fee23f9Smrg	in case of error.
38804fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
38814fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
38824fee23f9Smrg
38834fee23f9Smrg2004-04-16  Paolo Carlini  <pcarlini@suse.de>
38844fee23f9Smrg
38854fee23f9Smrg	* acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
38864fee23f9Smrg	used anymore.
38874fee23f9Smrg	* config.h.in: Regenerate.
38884fee23f9Smrg
38894fee23f9Smrg2004-04-16  Paolo Carlini  <pcarlini@suse.de>
38904fee23f9Smrg
38914fee23f9Smrg	* config/locale/generic/monetary_members.cc
38924fee23f9Smrg	(moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
38934fee23f9Smrg	btowc unnecessarily, just cast to wchar_t (the concerned chars
38944fee23f9Smrg	all belong to the basic character set).
38954fee23f9Smrg	* config/locale/generic/numeric_members.cc
38964fee23f9Smrg	(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
38974fee23f9Smrg	* config/locale/gnu/monetary_members.cc
38984fee23f9Smrg	(moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
38994fee23f9Smrg	* config/locale/gnu/numeric_members.cc
39004fee23f9Smrg	(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
39014fee23f9Smrg
39024fee23f9Smrg2004-04-15  Paolo Carlini  <pcarlini@suse.de>
39034fee23f9Smrg
39044fee23f9Smrg	* src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
39054fee23f9Smrg	avoid constructing unnecessarily this->name().
39064fee23f9Smrg
39074fee23f9Smrg2004-04-14  Zack Weinberg  <zack@codesourcery.com>
39084fee23f9Smrg
39094fee23f9Smrg	* testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
39104fee23f9Smrg	Change definition of CXX to use $(shell) instead of backticks.
39114fee23f9Smrg	* testsuite/Makefile.in: Regenerate.
39124fee23f9Smrg
39134fee23f9Smrg2004-04-12  Dhruv Matani  <dhruvbird@gmx.net>
39144fee23f9Smrg
39154fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc:
39164fee23f9Smrg	Minor formatting fixes.
39174fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc:
39184fee23f9Smrg	Likewise.
39194fee23f9Smrg
39204fee23f9Smrg2004-04-12  Paolo Carlini <pcarlini@suse.de>
39214fee23f9Smrg
39224fee23f9Smrg	* config/locale/gnu/numeric_members.cc
39234fee23f9Smrg	(numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
39244fee23f9Smrg	in __uselocale, since btowc is called for chars belonging to
39254fee23f9Smrg	the basic character set.
39264fee23f9Smrg
39274fee23f9Smrg2004-04-09  Paolo Carlini  <pcarlini@suse.de>
39284fee23f9Smrg
39294fee23f9Smrg	* testsuite/22_locale/messages/members/char/1.cc: Remove junk.
39304fee23f9Smrg	* testsuite/22_locale/messages/members/char/2.cc: Ditto.
39314fee23f9Smrg	* testsuite/22_locale/messages/members/char/3.cc: Ditto.
39324fee23f9Smrg	* testsuite/22_locale/num_get/get/char/1.cc: Ditto.
39334fee23f9Smrg	* testsuite/22_locale/num_get/get/char/2.cc: Ditto.
39344fee23f9Smrg	* testsuite/22_locale/num_get/get/char/3.cc: Ditto.
39354fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
39364fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
39374fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
39384fee23f9Smrg	* testsuite/22_locale/num_put/put/char/1.cc: Ditto.
39394fee23f9Smrg	* testsuite/22_locale/num_put/put/char/2.cc: Ditto.
39404fee23f9Smrg	* testsuite/22_locale/num_put/put/char/3.cc: Ditto.
39414fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
39424fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
39434fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
39444fee23f9Smrg	* testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
39454fee23f9Smrg	* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
39464fee23f9Smrg
39474fee23f9Smrg2004-04-07  Paolo Carlini  <pcarlini@suse.de>
39484fee23f9Smrg
39494fee23f9Smrg	* config/locale/generic/time_members.cc
39504fee23f9Smrg	(__timepunct<char>::_M_initialize_timepunct,
39514fee23f9Smrg	__timepunct<wchar_t>::_M_initialize_timepunct): the correct
39524fee23f9Smrg	_M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
39534fee23f9Smrg	* config/locale/gnu/time_members.cc
39544fee23f9Smrg	(__timepunct<char>::_M_initialize_timepunct,
39554fee23f9Smrg	__timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
39564fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
39574fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
39584fee23f9Smrg
39594fee23f9Smrg	* testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
39604fee23f9Smrg	* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
39614fee23f9Smrg	* testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
39624fee23f9Smrg	* testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
39634fee23f9Smrg	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
39644fee23f9Smrg	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
39654fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
39664fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
39674fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
39684fee23f9Smrg	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
39694fee23f9Smrg	* testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
39704fee23f9Smrg	* testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
39714fee23f9Smrg	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
39724fee23f9Smrg	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
39734fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
39744fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
39754fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
39764fee23f9Smrg	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
39774fee23f9Smrg	* testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
39784fee23f9Smrg	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
39794fee23f9Smrg	* testsuite/22_locale/time_put/put/char/1.cc: Ditto.
39804fee23f9Smrg	* testsuite/22_locale/time_put/put/char/2.cc: Ditto.
39814fee23f9Smrg	* testsuite/22_locale/time_put/put/char/3.cc: Ditto.
39824fee23f9Smrg	* testsuite/22_locale/time_put/put/char/4.cc: Ditto.
39834fee23f9Smrg	* testsuite/22_locale/time_put/put/char/5.cc: Ditto.
39844fee23f9Smrg	* testsuite/22_locale/time_put/put/char/6.cc: Ditto.
39854fee23f9Smrg	* testsuite/22_locale/time_put/put/char/7.cc: Ditto.
39864fee23f9Smrg	* testsuite/22_locale/time_put/put/char/8.cc: Ditto.
39874fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
39884fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
39894fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
39904fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
39914fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
39924fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
39934fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
39944fee23f9Smrg	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
39954fee23f9Smrg
39964fee23f9Smrg	* testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
39974fee23f9Smrg
39984fee23f9Smrg2004-04-07  Paolo Carlini  <pcarlini@suse.de>
39994fee23f9Smrg
40004fee23f9Smrg	* config/locale/gnu/monetary_members.cc
40014fee23f9Smrg	(moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
40024fee23f9Smrg	_NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
40034fee23f9Smrg	and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
40044fee23f9Smrg	_NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
40054fee23f9Smrg	* config/locale/gnu/numeric_members.cc
40064fee23f9Smrg	(numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
40074fee23f9Smrg	and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
40084fee23f9Smrg
40094fee23f9Smrg2004-04-06  Benjamin Kosnik  <bkoz@redhat.com>
40104fee23f9Smrg
40114fee23f9Smrg	Fixups for EDG front end.
40124fee23f9Smrg	* include/ext/rope: Instead of non-existent function
40134fee23f9Smrg	_Data_allocate, use allocator's allocate. Use this.
40144fee23f9Smrg	(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
40154fee23f9Smrg	enumerations from _Rope_RopeRep here.
40164fee23f9Smrg	* include/ext/ropeimpl.h: Same.
40174fee23f9Smrg	* src/ext-inst.cc (_S_min_len): Fix up definition.
40184fee23f9Smrg
40194fee23f9Smrg	* config/locale/gnu/ctype_members.cc: Qualify base class members
40204fee23f9Smrg	with this.
40214fee23f9Smrg	* config/locale/generic/ctype_members.cc: Same.
40224fee23f9Smrg	* config/locale/gnu/messages_members.h: Same.
40234fee23f9Smrg	* config/locale/generic/messages_members.h: Same.
40244fee23f9Smrg	* src/ctype.cc: Same.
40254fee23f9Smrg	* include/bits/codecvt.h: Same.
40264fee23f9Smrg
40274fee23f9Smrg	* include/bits/boost_concept_check.h: Declare.
40284fee23f9Smrg	(__error_type_must_be_an_unsigned_integer_type): Remove this.
40294fee23f9Smrg	(__error_type_must_be_an_integer_type): Remove this.
40304fee23f9Smrg	(__error_type_must_be_a_signed_integer_type): Remove this.
40314fee23f9Smrg
40324fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
40334fee23f9Smrg
40344fee23f9Smrg	* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
40354fee23f9Smrg	specification to definition.
40364fee23f9Smrg	(__cxa_allocate_exception): Same.
40374fee23f9Smrg	* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
40384fee23f9Smrg	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
40394fee23f9Smrg	(__cxa_get_globals): Same.
40404fee23f9Smrg
40414fee23f9Smrg	* libsupc++/del_op.cc: Add comment about freestanding.
40424fee23f9Smrg
40434fee23f9Smrg2004-04-05  Paolo Carlini  <pcarlini@suse.de>
40444fee23f9Smrg
40454fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
40464fee23f9Smrg	The critical section is actually very small, only two assignments.
40474fee23f9Smrg
40484fee23f9Smrg2004-04-04  Paolo Carlini  <pcarlini@suse.de>
40494fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
40504fee23f9Smrg
40514fee23f9Smrg	* testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
40524fee23f9Smrg	adapted from libstdc++/11378.
40534fee23f9Smrg
40544fee23f9Smrg2004-04-03  Paolo Carlini  <pcarlini@suse.de>
40554fee23f9Smrg
40564fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
40574fee23f9Smrg	some duplicated code.
40584fee23f9Smrg	(__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
40594fee23f9Smrg	in the single threaded case.
40604fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc:
40614fee23f9Smrg	Reorder and renumber the tests consistently with the other testfiles.
40624fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
40634fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
40644fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
40654fee23f9Smrg
40664fee23f9Smrg2004-04-02  Paolo Carlini  <pcarlini@suse.de>
40674fee23f9Smrg
40684fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
40694fee23f9Smrg	Rearrange arithmetic to avoid computing two divisions at
40704fee23f9Smrg	each deallocation.
40714fee23f9Smrg
40724fee23f9Smrg2004-04-01  Paolo Carlini  <pcarlini@suse.de>
40734fee23f9Smrg
40744fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
40754fee23f9Smrg	Streamline the second half, wrapping it in a single
40764fee23f9Smrg	'#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
40774fee23f9Smrg	conditionals inside loops.
40784fee23f9Smrg
40794fee23f9Smrg2004-04-01  Paolo Carlini  <pcarlini@suse.de>
40804fee23f9Smrg
40814fee23f9Smrg	PR libstdc++/14775
40824fee23f9Smrg	* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
40834fee23f9Smrg	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
40844fee23f9Smrg	GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
40854fee23f9Smrg	to _GLIBCXX_RES_LIMITS.
40864fee23f9Smrg	(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
40874fee23f9Smrg	HAVE_LIMIT_*.
40884fee23f9Smrg	* testsuite/testsuite_hooks.h: Declare set_file_limit.
40894fee23f9Smrg	* testsuite/testsuite_hooks.cc: Define it, using getrlimit
40904fee23f9Smrg	and setrlimit(RLIMIT_FSIZE).
40914fee23f9Smrg	* testsuite/27_io/fpos/14775.cc: New.
40924fee23f9Smrg	* config.h.in: Regenerate.
40934fee23f9Smrg	* configure: Likewise.
40944fee23f9Smrg
40954fee23f9Smrg2004-03-31  Paolo Carlini  <pcarlini@suse.de>
40964fee23f9Smrg
40974fee23f9Smrg	* config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
40984fee23f9Smrg	In v3 uses of sscanf, the special floating-point numbers INF,
40994fee23f9Smrg	INFINITY, etc., cannot occur in input, therefore, if the latter
41004fee23f9Smrg	is too large, ERANGE is always stored in errno, no need of finitel.
41014fee23f9Smrg
41024fee23f9Smrg2004-03-30  Benjamin Kosnik  <bkoz@redhat.com>
41034fee23f9Smrg
41044fee23f9Smrg	PR libstdc++/14783
41054fee23f9Smrg	* include/bits/stl_tree.h: Adjust initialization list order.
41064fee23f9Smrg
41074fee23f9Smrg2004-03-29  Loren J. Rittle  <ljrittle@acm.org>
41084fee23f9Smrg
41094fee23f9Smrg	* testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
41104fee23f9Smrg
41114fee23f9Smrg2004-03-29  Paolo Carlini  <pcarlini@suse.de>
41124fee23f9Smrg
41134fee23f9Smrg	* testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
41144fee23f9Smrg	on allocator behavior, the memory pointed by data2 may well be not
41154fee23f9Smrg	trashed.
41164fee23f9Smrg
41174fee23f9Smrg2004-03-28  Chavdar Botev  <cbotev@yahoo.com>
41184fee23f9Smrg
41194fee23f9Smrg	PR libstdc++/14245
41204fee23f9Smrg	* include/bits/basic_string.tcc
41214fee23f9Smrg	(basic_string::basic_string(const basic_string&)): Pass to
41224fee23f9Smrg	_Rep::_M_grab the actual allocator of the string being constructed
41234fee23f9Smrg	not the default constructed one.
41244fee23f9Smrg
41254fee23f9Smrg2004-03-27  Benjamin Kosnik  <bkoz@redhat.com>
41264fee23f9Smrg
41274fee23f9Smrg	libstdc++ PR/13598
41284fee23f9Smrg	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
41294fee23f9Smrg	(__enc_traits::_M_destroy): New.
41304fee23f9Smrg	(__enc_traits::~__enc_traits): Use it.
41314fee23f9Smrg	(__enc_traits::operator=): Use _M_destroy, _M_init.
41324fee23f9Smrg	(__enc_traits::__enc_traits): Same.
41334fee23f9Smrg
41344fee23f9Smrg2004-03-27  Petur Runolfsson  <peturr02@ru.is>
41354fee23f9Smrg
41364fee23f9Smrg	* testsuite/ext/enc_filebuf/char/13598.cc: New.
41374fee23f9Smrg
41384fee23f9Smrg2004-03-27  Paolo Carlini  <pcarlini@suse.de>
41394fee23f9Smrg
41404fee23f9Smrg	* include/ext/mt_allocator.h: Uglify consistently names of
41414fee23f9Smrg	variables, members and classes; tidy.
41424fee23f9Smrg
41434fee23f9Smrg2004-03-27  Dhruv Matani  <dhruvbird@gmx.net>
41444fee23f9Smrg
41454fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
41464fee23f9Smrg	Deallocation loop rewrote.
41474fee23f9Smrg
41484fee23f9Smrg2004-03-26  Paolo Carlini  <pcarlini@suse.de>
41494fee23f9Smrg
41504fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
41514fee23f9Smrg	__mt_alloc<>::deallocate): Protect two instances of
41524fee23f9Smrg	block->thread_id with __GTHREADS.
41534fee23f9Smrg
41544fee23f9Smrg2004-03-25  Gawain Bolton  <gp.bolton@computer.org>
41554fee23f9Smrg
41564fee23f9Smrg	* include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
41574fee23f9Smrg	default argument in constructors.
41584fee23f9Smrg	(_Rb_tree::_M_empty_initialize): Remove.
41594fee23f9Smrg
41604fee23f9Smrg2004-03-25  Benjamin Kosnik  <bkoz@redhat.com>
41614fee23f9Smrg
41624fee23f9Smrg	* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
41634fee23f9Smrg	* testsuite/23_containers/set/operators/1_neg.cc: Same.
41644fee23f9Smrg
41654fee23f9Smrg2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>
41664fee23f9Smrg
41674fee23f9Smrg	* include/bits/cpp_type_traits.h: Changed __is_pod
41684fee23f9Smrg	completely. Now, it does not use any of the previous type_traits
41694fee23f9Smrg	to detect the pod types, and it also detects function pointers as
41704fee23f9Smrg	POD types.
41714fee23f9Smrg
41724fee23f9Smrg	* include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
41734fee23f9Smrg	which encapsulates the internal implementation of an rb_tree. Made
41744fee23f9Smrg	the allocator a base class of this class instead of the rb_tree,
41754fee23f9Smrg	which was not conforming. This _Rb_tree_impl class is also
41764fee23f9Smrg	specialized on whether the _Compare parameter is a POD type or
41774fee23f9Smrg	not. If so, then it maintains the comparison function as a data
41784fee23f9Smrg	member, otherwise it makes the _Compare parameter a base class of
41794fee23f9Smrg	itself. Also, _M_key_compare is now a function instead of a data
41804fee23f9Smrg	member, so that the above trick can work properly. Delegated the
41814fee23f9Smrg	initialization of the other data members to this newly created
41824fee23f9Smrg	class. Also, now other member functions of rb_tree must refer to
41834fee23f9Smrg	_M_key_compare as _M_impl._M_key_compare(). The other data members
41844fee23f9Smrg	(*) can be referenced to as _M_impl.(*), where
41854fee23f9Smrg	(*) includes _M_header, and _M_node_count.
41864fee23f9Smrg
41874fee23f9Smrg2004-03-25  Paolo Carlini  <pcarlini@suse.de>
41884fee23f9Smrg
41894fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::tune):
41904fee23f9Smrg	Add _M_min_bin, the size in bytes of the smallest bin.
41914fee23f9Smrg	(__mt_alloc<>::tune()): Tweak accordingly.
41924fee23f9Smrg	(__mt_alloc<>::tune(size_t, ...)): Likewise.
41934fee23f9Smrg	(__mt_alloc<>::block_record): Change to a union: members next
41944fee23f9Smrg	and thread_id are never used at the same time.
41954fee23f9Smrg	(__mt_alloc<>::allocate): Update consistently.
41964fee23f9Smrg	(__mt_alloc<>::deallocate): Likewise.
41974fee23f9Smrg	(__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
41984fee23f9Smrg	_S_bin_size for the configurable _M_min_size.
41994fee23f9Smrg
42004fee23f9Smrg2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>
42014fee23f9Smrg
42024fee23f9Smrg	* include/bits/stl_list.h: Created a _List_impl class and made it
42034fee23f9Smrg	derive from the allocator, instead of the list deriving from the
42044fee23f9Smrg	allocator class, which was not conformant. Changed all references
42054fee23f9Smrg	from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
42064fee23f9Smrg	as above (changed all references to the concerned variables).
42074fee23f9Smrg
42084fee23f9Smrg2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>
42094fee23f9Smrg
42104fee23f9Smrg	* include/bits/stl_deque.h: Created a _Deque_impl class and made
42114fee23f9Smrg	it derive from the allocator, instead of the deque deriving from
42124fee23f9Smrg	the allocator class, which was not conformant. Changed all
42134fee23f9Smrg	references to the _M_start, _M_finish, _M_map, and _M_map_size to
42144fee23f9Smrg	_M_impl.*.
42154fee23f9Smrg	(_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
42164fee23f9Smrg	qualification in 2 places where it was missing.
42174fee23f9Smrg	(_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
42184fee23f9Smrg	above.
42194fee23f9Smrg	* include/bits/deque.tcc: Same as above (changed all references to
42204fee23f9Smrg	the concerned variables).
42214fee23f9Smrg
42224fee23f9Smrg2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>
42234fee23f9Smrg
42244fee23f9Smrg	* include/bits/stl_vector.h: Created a _Vector_impl class and made
42254fee23f9Smrg	it derive from the allocator, instead of the _Vector_base class,
42264fee23f9Smrg	deriving from the allocator which was not conformant. Changed all
42274fee23f9Smrg	references to the _M_start, _M_finish, and _M_end_of_storage to
42284fee23f9Smrg	_M_impl.*.
42294fee23f9Smrg	* include/bits/vector.tcc: Same as above (changed all references
42304fee23f9Smrg	to the concerned variables).
42314fee23f9Smrg
42324fee23f9Smrg2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>
42334fee23f9Smrg
42344fee23f9Smrg	* testsuite/23_containers/deque/cons/clear_allocator.cc: New.
42354fee23f9Smrg	* testsuite/23_containers/list/cons/clear_allocator.cc: New.
42364fee23f9Smrg	* testsuite/23_containers/vector/cons/clear_allocator.cc: New.
42374fee23f9Smrg
42384fee23f9Smrg2004-03-24  Dhruv Matani  <dhruvbird@gmx.net>
42394fee23f9Smrg
42404fee23f9Smrg	* include/ext/malloc_allocator.h: Fixed the construct function to
42414fee23f9Smrg	call global placement new instead of assignment. Added a check
42424fee23f9Smrg	after the return from malloc to check whether returned pointer is
42434fee23f9Smrg	NULL, and if so, throw std::bad_alloc().
42444fee23f9Smrg	* include/ext/debug_allocator.h: Added a check in the deallocate
42454fee23f9Smrg	function to check whether the user has passed a NULL pointer or
42464fee23f9Smrg	not.
42474fee23f9Smrg
42484fee23f9Smrg2004-03-24  Benjamin Kosnik  <bkoz@redhat.com>
42494fee23f9Smrg
42504fee23f9Smrg	* docs/html/20_util/allocator.html: Add bitmap_allocator links.
42514fee23f9Smrg
42524fee23f9Smrg2004-03-24  Andreas Schwab  <schwab@suse.de>
42534fee23f9Smrg
42544fee23f9Smrg	* testsuite/lib/prune.exp (prune_g++_output): Ignore errata
42554fee23f9Smrg	warning from IA64 assembler.
42564fee23f9Smrg
42574fee23f9Smrg2004-03-24  Dhruv Matani  <dhruvbird@gmx.net>
42584fee23f9Smrg
42594fee23f9Smrg	* include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
42604fee23f9Smrg	function call __builtin_ctz instead of the while loop.
42614fee23f9Smrg	(allocate) -> If condition has __builtin_expect.
42624fee23f9Smrg	(deallocate) -> Ditto.
42634fee23f9Smrg	Renamed a few left-over variables and typedefs according to the
42644fee23f9Smrg	C++STYLE mentioned in the documentation.
42654fee23f9Smrg	Protected calls to __gthread* by __gthread_active_p(), whose value
42664fee23f9Smrg	is cached in the local variable __threads_active.
42674fee23f9Smrg
42684fee23f9Smrg2004-03-24  Felix Yen  <fwy@alumni.brown.edu>
42694fee23f9Smrg
42704fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc:
42714fee23f9Smrg	Use linear algorithm for producer.
42724fee23f9Smrg
42734fee23f9Smrg2004-03-24  Paolo Carlini  <pcarlini@suse.de>
42744fee23f9Smrg
42754fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
42764fee23f9Smrg	__mt_alloc<>::deallocate): Avoid redundant conditionals.
42774fee23f9Smrg
42784fee23f9Smrg2004-03-23  Benjamin Kosnik  <bkoz@redhat.com>
42794fee23f9Smrg
42804fee23f9Smrg	* include/bits/locale_facets.h: Tweaks for 80 column.
42814fee23f9Smrg	(__numpunct_cache::_M_cache): Move to locale_facets.tcc.
42824fee23f9Smrg	(__moneypunct_cache::_M_cache): Same.
42834fee23f9Smrg	(num_get): Don't inherit from __num_base.
42844fee23f9Smrg	(num_put): Same.
42854fee23f9Smrg	(money_get): Don't inherit from money_base.
42864fee23f9Smrg	(money_put): Same.
42874fee23f9Smrg	(__timepunct::_M_am_pm_format): New.
42884fee23f9Smrg	(time_get::_M_extract_num): Return iterator, use ios_base as argument.
42894fee23f9Smrg	(time_get::_M_extract_name): Same.
42904fee23f9Smrg	(time_get::_M_extract_via_format): Same.
42914fee23f9Smrg	* include/bits/locale_facets.tcc: Tweaks for 80 column.
42924fee23f9Smrg	Use _M_getloc instead of getloc.
42934fee23f9Smrg	* testsuite/22_locale/money_put/put/char/9780-3.cc: New.
42944fee23f9Smrg	* testsuite/22_locale/num_put/put/char/9780-2.cc: New.
42954fee23f9Smrg	* testsuite/22_locale/time_put/put/char/9780-1.cc: New.
42964fee23f9Smrg
42974fee23f9Smrg2004-03-22  Paolo Carlini  <pcarlini@suse.de>
42984fee23f9Smrg
42994fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
43004fee23f9Smrg	* configure: Regenerate.
43014fee23f9Smrg	* config/allocator/pool_allocator_base.h: New.
43024fee23f9Smrg	* include/ext/pool_allocator.h: Convert to a standard-conforming
43034fee23f9Smrg	allocator.
43044fee23f9Smrg	* src/allocator.cc: Tweak instantiations.
43054fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
43064fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
43074fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
43084fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
43094fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
43104fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
43114fee23f9Smrg
43124fee23f9Smrg2004-03-22  Hans-Peter Nilsson  <hp@axis.com>
43134fee23f9Smrg
43144fee23f9Smrg	* config/cpu/cris/atomicity.h (__atomic_add): Remove "static
43154fee23f9Smrg	inline" and attribute-unused.  Qualify parameter __mem with
43164fee23f9Smrg	"volatile".
43174fee23f9Smrg	(__exchange_and_add): Ditto.  Add back memory clobber to asm.
43184fee23f9Smrg
43194fee23f9Smrg2004-03-20  Paolo Carlini  <pcarlini@suse.de>
43204fee23f9Smrg
43214fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
43224fee23f9Smrg	Remove junk.
43234fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
43244fee23f9Smrg	Likewise.
43254fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
43264fee23f9Smrg	Likewise.
43274fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
43284fee23f9Smrg	Likewise.
43294fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
43304fee23f9Smrg	Likewise.
43314fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
43324fee23f9Smrg	Likewise.
43334fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
43344fee23f9Smrg	Likewise.
43354fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
43364fee23f9Smrg	Likewise.
43374fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
43384fee23f9Smrg	Likewise.
43394fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
43404fee23f9Smrg	Likewise.
43414fee23f9Smrg
43424fee23f9Smrg2004-03-20  Paolo Carlini  <pcarlini@suse.de>
43434fee23f9Smrg
43444fee23f9Smrg	* include/std/std_valarray.h: Document DR389 [Ready].
43454fee23f9Smrg	* docs/html/ext/howto.html: Add an entry for DR389.
43464fee23f9Smrg
43474fee23f9Smrg2004-03-19  Michael Eager  <eager@mvista.com>
43484fee23f9Smrg
43494fee23f9Smrg	* config/cpu/mips/atomicity.h:  Prevent reg loads between LL and
43504fee23f9Smrg	SC instructions.
43514fee23f9Smrg
43524fee23f9Smrg2004-03-19  Paolo Carlini  <pcarlini@suse.de>
43534fee23f9Smrg
43544fee23f9Smrg	* testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
43554fee23f9Smrg	static_cast-s.
43564fee23f9Smrg	* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
43574fee23f9Smrg	* testsuite/22_locale/num_get/get/char/13.cc: Likewise.
43584fee23f9Smrg	* testsuite/22_locale/num_get/get/char/14.cc: Likewise.
43594fee23f9Smrg	* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
43604fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
43614fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
43624fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
43634fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
43644fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
43654fee23f9Smrg
43664fee23f9Smrg2004-03-19  Paolo Carlini  <pcarlini@suse.de>
43674fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
43684fee23f9Smrg
43694fee23f9Smrg	PR libstdc++/12077
43704fee23f9Smrg	* include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
43714fee23f9Smrg	no way to find out the conversion used by the underlying FILE*.
43724fee23f9Smrg	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
43734fee23f9Smrg	* testsuite/27_io/objects/char/9.cc: Tweak.
43744fee23f9Smrg
43754fee23f9Smrg2004-03-19  Paolo Carlini  <pcarlini@suse.de>
43764fee23f9Smrg
43774fee23f9Smrg	PR libstdc++/14648
43784fee23f9Smrg	* include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
43794fee23f9Smrg	memory allocation/deallocation calls.
43804fee23f9Smrg	* testsuite/ext/14648.cc: New.
43814fee23f9Smrg
43824fee23f9Smrg2004-03-19  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>
43834fee23f9Smrg
43844fee23f9Smrg	PR libstdc++/14647
43854fee23f9Smrg	* include/backward/bvector.h (bit_vector): Allocator is in std
43864fee23f9Smrg	namespace.
43874fee23f9Smrg
43884fee23f9Smrg2004-03-19  Phil Edwards  <phil@codesourcery.com>
43894fee23f9Smrg
43904fee23f9Smrg	* acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT):  Set LIBICONV,
43914fee23f9Smrg	not libiconv.  SUBST this variable as well.
43924fee23f9Smrg	* testsuite/Makefile.am (site.exp):  New target, based on that
43934fee23f9Smrg	created by automake.  Also set libiconv.
43944fee23f9Smrg
43954fee23f9Smrg	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
43964fee23f9Smrg	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
43974fee23f9Smrg	testsuite/Makefile.in:  Regenerate.
43984fee23f9Smrg
43994fee23f9Smrg2004-03-16  Benjamin Kosnik  <bkoz@redhat.com>
44004fee23f9Smrg
44014fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
44024fee23f9Smrg	new_allocator for all hosts.
44034fee23f9Smrg	* configure: Regenerate.
44044fee23f9Smrg
44054fee23f9Smrg2004-03-16  Paolo Carlini  <pcarlini@suse.de>
44064fee23f9Smrg
44074fee23f9Smrg	* testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
44084fee23f9Smrg	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
44094fee23f9Smrg
44104fee23f9Smrg2004-03-15  Paolo Carlini  <pcarlini@suse.de>
44114fee23f9Smrg
44124fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
44134fee23f9Smrg	Adjust the logic underlying the parsing of symbol to deal
44144fee23f9Smrg	correctly with an optional sign component (i.e., when either
44154fee23f9Smrg	negative_sign or positive_sign is empty)
44164fee23f9Smrg	* testsuite/22_locale/money_get/get/char/19.cc: New.
44174fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
44184fee23f9Smrg
44194fee23f9Smrg2004-03-15  Paolo Carlini  <pcarlini@suse.de>
44204fee23f9Smrg
44214fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
44224fee23f9Smrg	Do not accept an incomplete currency symbol.
44234fee23f9Smrg	* testsuite/22_locale/money_get/get/char/18.cc: New.
44244fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
44254fee23f9Smrg
44264fee23f9Smrg2004-03-13  Benjamin Kosnik  <bkoz@redhat.com>
44274fee23f9Smrg
44284fee23f9Smrg	* config/allocator: New.
44294fee23f9Smrg	* config/allocator/bitmap_allocator_base.h: New.
44304fee23f9Smrg	* config/allocator/malloc_allocator_base.h: New.
44314fee23f9Smrg	* config/allocator/mt_allocator_base.h: New.
44324fee23f9Smrg	* config/allocator/new_allocator_base.h: New.
44334fee23f9Smrg	* include/bits/allocator.h: Include c++allocator.h.
44344fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
44354fee23f9Smrg	* aclocal.m4: Regenerate.
44364fee23f9Smrg	* configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
44374fee23f9Smrg	* configure: Regenerate.
44384fee23f9Smrg	* include/Makefile.am (host_headers_extra): Add c++allocator.h.
44394fee23f9Smrg	* include/Makefile.in: Regenerate.
44404fee23f9Smrg	* docs/html/configopts.html: Add enable-libstdcxx-allocator.
44414fee23f9Smrg
44424fee23f9Smrg2004-03-12  Benjamin Kosnik  <bkoz@redhat.com>
44434fee23f9Smrg
44444fee23f9Smrg	* include/bits/allocator.h: Revert.
44454fee23f9Smrg
44464fee23f9Smrg2004-03-12  Paolo Carlini  <pcarlini@suse.de>
44474fee23f9Smrg
44484fee23f9Smrg	* docs/html/ext/howto.html: Add entry for DR 253 [Ready].
44494fee23f9Smrg	* include/bits/gslice_array.h: Add comment about DR 253.
44504fee23f9Smrg	* include/bits/indirect_array.h: Likewise.
44514fee23f9Smrg	* include/bits/mask_array.h: Likewise.
44524fee23f9Smrg	* include/bits/slice_array.h: Likewise.
44534fee23f9Smrg
44544fee23f9Smrg2004-03-12  Benjamin Kosnik  <bkoz@redhat.com>
44554fee23f9Smrg
44564fee23f9Smrg	* testsuite/20_util/allocator/14176.cc: New.
44574fee23f9Smrg	* include/ext/mt_allocator.h: Formatting fixes.
44584fee23f9Smrg
44594fee23f9Smrg2004-03-11  Dhruv Matani  <dhruvbird@HotPOP.com>
44604fee23f9Smrg
44614fee23f9Smrg	* include/Makefile.am (ext_headers): Add
44624fee23f9Smrg	${ext_srcdir}/bitmap_allocator.h .
44634fee23f9Smrg	* include/Makefile.in: Regenerate.
44644fee23f9Smrg	* docs/html/ext/ballocator_doc.txt: New file.
44654fee23f9Smrg	* include/ext/bitmap_allocator.h: New file.
44664fee23f9Smrg	* testsuite/performance/20_util/allocator/list_sort_search.cc: Add
44674fee23f9Smrg	test.
44684fee23f9Smrg	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
44694fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc: Add
44704fee23f9Smrg	test for the bitmap_allocator<>.
44714fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc: Likewise.
44724fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
44734fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
44744fee23f9Smrg
44754fee23f9Smrg2004-03-11  Paolo Carlini  <pcarlini@suse.de>
44764fee23f9Smrg
44774fee23f9Smrg	* include/std/std_complex.h (pow(const complex&, const _Tp&),
44784fee23f9Smrg	pow(const _Tp&, const complex&), pow(const complex&,
44794fee23f9Smrg	const complex&)): Fully qualify with std:: a few calls.
44804fee23f9Smrg	* testsuite/26_numerics/complex/13450.cc: Minor tweak.
44814fee23f9Smrg
44824fee23f9Smrg2004-03-11  Steven Bosscher  <stevenb@suse.de>
44834fee23f9Smrg
44844fee23f9Smrg	PR libstdc++/11706
44854fee23f9Smrg	* include/c_std/cmath.tcc (__cmath_power): Define inline.
44864fee23f9Smrg
44874fee23f9Smrg2004-03-10  Kelley Cook  <kcook@gcc.gnu.org>
44884fee23f9Smrg
44894fee23f9Smrg	* configure.ac: Bump AC_PREREQ to 2.59.
44904fee23f9Smrg
44914fee23f9Smrg2004-03-10  Paolo Carlini  <pcarlini@suse.de>
44924fee23f9Smrg
44934fee23f9Smrg	* testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
44944fee23f9Smrg
44954fee23f9Smrg2004-03-10  Paul Kienzle  <pkienzle@nist.gov>
44964fee23f9Smrg	    Paolo Carlini  <pcarlini@suse.de>
44974fee23f9Smrg
44984fee23f9Smrg	PR libstdc++/13450
44994fee23f9Smrg	* include/std/std_complex.h (pow(const complex&, const _Tp&),
45004fee23f9Smrg	pow(const _Tp&, const complex&)): Use cmath pow only when safe.
45014fee23f9Smrg	* testsuite/26_numerics/complex/13450.cc: New.
45024fee23f9Smrg
45034fee23f9Smrg	* testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
45044fee23f9Smrg	* testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
45054fee23f9Smrg
45064fee23f9Smrg2004-03-10  Jerry Quinn  <jlquinn@optonline.net>
45074fee23f9Smrg
45084fee23f9Smrg	PR libstdc++/3247
45094fee23f9Smrg	* include/bits/gslice_array.h (gslice_array()): Make public.
45104fee23f9Smrg	(operator=(gslice_array)): Make public.  Implement.
45114fee23f9Smrg	* include/bits/indirect_array.h (indirect_array()): Make public.
45124fee23f9Smrg	* include/bits/mask_array.h (mask_array()): Make public.
45134fee23f9Smrg	(operator=(mask_array)): Make public.  Implement.
45144fee23f9Smrg	* include/bits/valarray_array.tcc (__valarray_copy):
45154fee23f9Smrg	Comment.  Add versions for gslice_array and mask_array.
45164fee23f9Smrg	* testsuite/26_numerics/valarray_subset_assignment.cc:  New test.
45174fee23f9Smrg
45184fee23f9Smrg2004-03-09  Benjamin Kosnik  <bkoz@redhat.com>
45194fee23f9Smrg
45204fee23f9Smrg	* testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
45214fee23f9Smrg	non-weak systems.
45224fee23f9Smrg	* testsuite/23_containers/vector/modifiers/swap.cc: Same.
45234fee23f9Smrg	* testsuite/23_containers/set/modifiers/swap.cc: Same.
45244fee23f9Smrg	* testsuite/23_containers/multiset/modifiers/swap.cc: Same.
45254fee23f9Smrg	* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
45264fee23f9Smrg	* testsuite/23_containers/map/modifiers/swap.cc: Same.
45274fee23f9Smrg	* testsuite/23_containers/list/modifiers/swap.cc: Same.
45284fee23f9Smrg
45294fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
45304fee23f9Smrg
45314fee23f9Smrg2004-03-08  Benjamin Kosnik  <bkoz@redhat.com>
45324fee23f9Smrg
45334fee23f9Smrg	PR c++/13658
45344fee23f9Smrg	* testsuite/23_containers/deque/modifiers/swap.cc: New.
45354fee23f9Smrg	* testsuite/23_containers/list/modifiers/swap.cc: New.
45364fee23f9Smrg	* testsuite/23_containers/map/modifiers/swap.cc: New.
45374fee23f9Smrg	* testsuite/23_containers/multimap/modifiers/swap.cc: New.
45384fee23f9Smrg	* testsuite/23_containers/multiset/modifiers/swap.cc: New.
45394fee23f9Smrg	* testsuite/23_containers/set/modifiers/swap.cc: New.
45404fee23f9Smrg	* testsuite/23_containers/vector/modifiers/swap.cc: New.
45414fee23f9Smrg
45424fee23f9Smrg2004-03-08  Petur Runolfsson  <peturr02@ru.is>
45434fee23f9Smrg
45444fee23f9Smrg	PR libstdc++/12658
45454fee23f9Smrg	* testsuite/22_locale/locale/cons/12658_thread.cc: New.
45464fee23f9Smrg
45474fee23f9Smrg2004-03-08  Paolo Carlini  <pcarlini@suse.de>
45484fee23f9Smrg
45494fee23f9Smrg	* docs/html/ext/howto.html: Add entry for DR 103 [WP].
45504fee23f9Smrg	* include/bits/stl_multiset.h: Add comment about DR 103.
45514fee23f9Smrg	* include/bits/stl_set.h: Likewise.
45524fee23f9Smrg
45534fee23f9Smrg2004-03-08  Paolo Carlini  <pcarlini@suse.de>
45544fee23f9Smrg
45554fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
45564fee23f9Smrg	The value _space_ indicates that at least one space is required
45574fee23f9Smrg	at that position.
45584fee23f9Smrg	* testsuite/22_locale/money_get/get/char/17.cc: New.
45594fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
45604fee23f9Smrg
45614fee23f9Smrg	* testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
45624fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
45634fee23f9Smrg
45644fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
45654fee23f9Smrg	Remove redundant conditional on __str.size().
45664fee23f9Smrg
45674fee23f9Smrg2004-03-08  Benjamin Kosnik  <bkoz@redhat.com>
45684fee23f9Smrg
45694fee23f9Smrg	* include/bits/allocator.h: Switch defaults to mt_alloc.
45704fee23f9Smrg
45714fee23f9Smrg2004-03-06  Benjamin Kosnik  <bkoz@redhat.com>
45724fee23f9Smrg
45734fee23f9Smrg	* include/ext/mt_allocator.h (_S_initialize): If
45744fee23f9Smrg	!__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
45754fee23f9Smrg
45764fee23f9Smrg2004-03-06  Benjamin Kosnik  <bkoz@redhat.com>
45774fee23f9Smrg
45784fee23f9Smrg	PR libstdc++/12658
45794fee23f9Smrg	* src/locale_init.cc (locale::locale): Lock critical regions with
45804fee23f9Smrg	external mutexes.
45814fee23f9Smrg	(locale::global): Same.
45824fee23f9Smrg	* include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
45834fee23f9Smrg	Add in once bits for cases without __GTHREAD_MUTEX_INIT.
45844fee23f9Smrg	(__glibcxx_mutex_lock): Same.
45854fee23f9Smrg
45864fee23f9Smrg	* config/cpu/generic/atomicity.h: Remove
45874fee23f9Smrg	_GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
45884fee23f9Smrg	* src/misc-inst.cc: Move all locking bits out of this file.
45894fee23f9Smrg
45904fee23f9Smrg	* config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
45914fee23f9Smrg	* src/misc-inst.cc: Same.
45924fee23f9Smrg	* config/cpu/hppa/atomicity.h: Same.
45934fee23f9Smrg
45944fee23f9Smrg	* config/linker-map.gnu: Remove types in the signature of atomic
45954fee23f9Smrg	exports, as they may vary.
45964fee23f9Smrg
45974fee23f9Smrg2004-03-06  Paolo Carlini  <pcarlini@suse.de>
45984fee23f9Smrg
45994fee23f9Smrg	* include/bits/locale_facets.tcc: Tweak the comment preceding
46004fee23f9Smrg	has_facet: doesn't throw.
46014fee23f9Smrg
46024fee23f9Smrg2004-03-06  Paolo Carlini  <pcarlini@suse.de>
46034fee23f9Smrg
46044fee23f9Smrg	* testsuite/22_locale/money_get/get/char/1.cc: Clean up.
46054fee23f9Smrg	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
46064fee23f9Smrg	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
46074fee23f9Smrg	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
46084fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
46094fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
46104fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
46114fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
46124fee23f9Smrg
46134fee23f9Smrg2004-03-06  Paolo Carlini  <pcarlini@suse.de>
46144fee23f9Smrg
46154fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
46164fee23f9Smrg	num_get<>::_M_extract_int, num_get<>::do_get(bool&),
46174fee23f9Smrg	__pad<>::_S_pad): Prefer plain operator== to traits::eq().
46184fee23f9Smrg	* testsuite/testsuite_character.h (struct __gnu_test::character):
46194fee23f9Smrg	Provide operator==.
46204fee23f9Smrg	* testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
46214fee23f9Smrg	Likewise.
46224fee23f9Smrg
46234fee23f9Smrg2004-03-05  Paolo Carlini  <pcarlini@suse.de>
46244fee23f9Smrg
46254fee23f9Smrg	* testsuite/27_io/fpos/14320-2.cc: Remove xfail.
46264fee23f9Smrg
46274fee23f9Smrg2004-03-04  Benjamin Kosnik  <bkoz@redhat.com>
46284fee23f9Smrg
46294fee23f9Smrg	* testsuite/23_containers/multiset/insert/1.cc: Test result string.
46304fee23f9Smrg
46314fee23f9Smrg	* testsuite/23_containers/bitset/invalidation/1.cc: Main always
46324fee23f9Smrg	returns 0.
46334fee23f9Smrg	* testsuite/23_containers/deque/invalidation/4.cc: Same.
46344fee23f9Smrg	* testsuite/23_containers/list/invalidation/1.cc: Same.
46354fee23f9Smrg	* testsuite/23_containers/list/invalidation/2.cc: Same.
46364fee23f9Smrg	* testsuite/23_containers/list/invalidation/3.cc: Same.
46374fee23f9Smrg	* testsuite/23_containers/list/invalidation/4.cc: Same.
46384fee23f9Smrg	* testsuite/23_containers/map/invalidation/2.cc: Same.
46394fee23f9Smrg	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
46404fee23f9Smrg	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
46414fee23f9Smrg	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
46424fee23f9Smrg	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
46434fee23f9Smrg	* testsuite/23_containers/set/invalidation/1.cc: Same.
46444fee23f9Smrg	* testsuite/23_containers/set/invalidation/2.cc: Same.
46454fee23f9Smrg	* testsuite/23_containers/vector/invalidation/1.cc: Same.
46464fee23f9Smrg	* testsuite/23_containers/vector/invalidation/2.cc: Same.
46474fee23f9Smrg	* testsuite/23_containers/vector/invalidation/3.cc: Same.
46484fee23f9Smrg	* testsuite/23_containers/vector/invalidation/4.cc: Same.
46494fee23f9Smrg
46504fee23f9Smrg2004-03-04  Paolo Carlini  <pcarlini@suse.de>
46514fee23f9Smrg
46524fee23f9Smrg	* scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
46534fee23f9Smrg	CXXFLAGS_save.
46544fee23f9Smrg	* testsuite/lib/libstdc++.exp: Don't add it conditionally to
46554fee23f9Smrg	DEFAULT_CXXFLAGS.
46564fee23f9Smrg	* testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
46574fee23f9Smrg	from the dg-options.
46584fee23f9Smrg	* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
46594fee23f9Smrg	* testsuite/23_containers/vector/invalidation/2.cc: Likewise.
46604fee23f9Smrg	* testsuite/23_containers/vector/invalidation/3.cc: Likewise.
46614fee23f9Smrg	* testsuite/23_containers/vector/invalidation/4.cc: Likewise.
46624fee23f9Smrg	* testsuite/23_containers/vector/resize/1.cc: Likewise.
46634fee23f9Smrg	* testsuite/26_numerics/complex_value.cc: Likewise.
46644fee23f9Smrg	* testsuite/27_io/ios_base/storage/1.cc: Likewise.
46654fee23f9Smrg	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
46664fee23f9Smrg	* testsuite/27_io/ios_base/storage/3.cc: Likewise.
46674fee23f9Smrg	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
46684fee23f9Smrg	* testsuite/27_io/objects/char/5.cc: Likewise.
46694fee23f9Smrg	* testsuite/27_io/objects/wchar_t/5.cc: Likewise.
46704fee23f9Smrg	* testsuite/backward/11460.cc: Likewise.
46714fee23f9Smrg	* testsuite/thread/pthread7-rope.cc: Likewise.
46724fee23f9Smrg
46734fee23f9Smrg	* testsuite/21_strings/basic_string/compare/char/1.cc: Add
46744fee23f9Smrg	missing test variable.
46754fee23f9Smrg	* testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
46764fee23f9Smrg	missing test variable.
46774fee23f9Smrg
46784fee23f9Smrg2004-03-04  Benjamin Kosnik  <bkoz@redhat.com>
46794fee23f9Smrg
46804fee23f9Smrg	* testsuite/20_util/allocator/1.cc: Provide explicit
46814fee23f9Smrg	instantiations for non-weak systems.
46824fee23f9Smrg	* testsuite/20_util/binders.cc: Same.
46834fee23f9Smrg	* testsuite/20_util/allocator/8230.cc: Same.
46844fee23f9Smrg	* testsuite/20_util/allocator/10378.cc: Same.
46854fee23f9Smrg	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
46864fee23f9Smrg	* testsuite/22_locale/ctype/is/char/2.cc: Same.
46874fee23f9Smrg	* testsuite/thread/pthread7-rope.cc: Same.
46884fee23f9Smrg	* testsuite/thread/pthread6.cc: Same.
46894fee23f9Smrg	* testsuite/thread/pthread5.cc: Same.
46904fee23f9Smrg	* testsuite/thread/pthread4.cc: Same.
46914fee23f9Smrg	* testsuite/thread/pthread1.cc: Same.
46924fee23f9Smrg	* testsuite/ext/rope.cc: Same.
46934fee23f9Smrg	* testsuite/ext/hash_set.cc: Same.
46944fee23f9Smrg	* testsuite/ext/hash_map.cc: Same.
46954fee23f9Smrg	* testsuite/ext/concept_checks.cc: Same.
46964fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
46974fee23f9Smrg	* testsuite/25_algorithms/unique/2.cc: Same.
46984fee23f9Smrg	* testsuite/25_algorithms/unique/1.cc: Same.
46994fee23f9Smrg	* testsuite/25_algorithms/rotate.cc: Same.
47004fee23f9Smrg	* testsuite/25_algorithms/min_max.cc: Same.
47014fee23f9Smrg	* testsuite/25_algorithms/equal.cc: Same.
47024fee23f9Smrg	* testsuite/24_iterators/rel_ops.cc: Same.
47034fee23f9Smrg	* testsuite/24_iterators/iterator.cc: Same.
47044fee23f9Smrg	* testsuite/24_iterators/insert_iterator.cc: Same.
47054fee23f9Smrg	* testsuite/24_iterators/front_insert_iterator.cc: Same.
47064fee23f9Smrg	* testsuite/24_iterators/back_insert_iterator.cc: Same.
47074fee23f9Smrg	* testsuite/23_containers/vector/resize/1.cc: Same.
47084fee23f9Smrg	* testsuite/23_containers/vector/modifiers/2.cc: Same.
47094fee23f9Smrg	* testsuite/23_containers/vector/modifiers/1.cc: Same.
47104fee23f9Smrg	* testsuite/23_containers/vector/invalidation/4.cc: Same.
47114fee23f9Smrg	* testsuite/23_containers/vector/invalidation/3.cc: Same.
47124fee23f9Smrg	* testsuite/23_containers/vector/invalidation/2.cc: Same.
47134fee23f9Smrg	* testsuite/23_containers/vector/invalidation/1.cc: Same.
47144fee23f9Smrg	* testsuite/23_containers/vector/element_access/1.cc: Same.
47154fee23f9Smrg	* testsuite/23_containers/vector/cons/6513.cc: Same.
47164fee23f9Smrg	* testsuite/23_containers/vector/cons/3.cc: Same.
47174fee23f9Smrg	* testsuite/23_containers/vector/cons/2.cc: Same.
47184fee23f9Smrg	* testsuite/23_containers/vector/cons/1.cc: Same.
47194fee23f9Smrg	* testsuite/23_containers/vector/capacity/8230.cc: Same.
47204fee23f9Smrg	* testsuite/23_containers/vector/capacity/1.cc: Same.
47214fee23f9Smrg	* testsuite/23_containers/vector/bool/6886.cc: Same.
47224fee23f9Smrg	* testsuite/23_containers/stack/members/7158.cc: Same.
47234fee23f9Smrg	* testsuite/23_containers/set/invalidation/2.cc: Same.
47244fee23f9Smrg	* testsuite/23_containers/set/invalidation/1.cc: Same.
47254fee23f9Smrg	* testsuite/23_containers/queue/members/7157.cc: Same.
47264fee23f9Smrg	* testsuite/23_containers/priority_queue/members/7161.cc: Same.
47274fee23f9Smrg	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
47284fee23f9Smrg	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
47294fee23f9Smrg	* testsuite/23_containers/multiset/insert/1.cc: Same.
47304fee23f9Smrg	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
47314fee23f9Smrg	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
47324fee23f9Smrg	* testsuite/23_containers/map/operators/1.cc: Same.
47334fee23f9Smrg	* testsuite/23_containers/map/invalidation/2.cc: Same.
47344fee23f9Smrg	* testsuite/23_containers/map/invalidation/1.cc: Same.
47354fee23f9Smrg	* testsuite/23_containers/map/insert/1.cc: Same.
47364fee23f9Smrg	* testsuite/23_containers/list/operators/4.cc: Same.
47374fee23f9Smrg	* testsuite/23_containers/list/operators/3.cc: Same.
47384fee23f9Smrg	* testsuite/23_containers/list/operators/2.cc: Same.
47394fee23f9Smrg	* testsuite/23_containers/list/operators/1.cc: Same.
47404fee23f9Smrg	* testsuite/23_containers/list/modifiers/3.cc: Same.
47414fee23f9Smrg	* testsuite/23_containers/list/modifiers/2.cc: Same.
47424fee23f9Smrg	* testsuite/23_containers/list/modifiers/1.cc: Same.
47434fee23f9Smrg	* testsuite/23_containers/list/invalidation/4.cc: Same.
47444fee23f9Smrg	* testsuite/23_containers/list/invalidation/3.cc: Same.
47454fee23f9Smrg	* testsuite/23_containers/list/invalidation/2.cc: Same.
47464fee23f9Smrg	* testsuite/23_containers/list/invalidation/1.cc: Same.
47474fee23f9Smrg	* testsuite/23_containers/list/cons/9.cc: Same.
47484fee23f9Smrg	* testsuite/23_containers/list/cons/8.cc: Same.
47494fee23f9Smrg	* testsuite/23_containers/list/cons/7.cc: Same.
47504fee23f9Smrg	* testsuite/23_containers/list/cons/6.cc: Same.
47514fee23f9Smrg	* testsuite/23_containers/list/cons/5.cc: Same.
47524fee23f9Smrg	* testsuite/23_containers/list/cons/4.cc: Same.
47534fee23f9Smrg	* testsuite/23_containers/list/cons/3.cc: Same.
47544fee23f9Smrg	* testsuite/23_containers/list/cons/2.cc: Same.
47554fee23f9Smrg	* testsuite/23_containers/list/cons/1.cc: Same.
47564fee23f9Smrg	* testsuite/23_containers/list/capacity/1.cc: Same.
47574fee23f9Smrg	* testsuite/23_containers/deque/operators/1.cc: Same.
47584fee23f9Smrg	* testsuite/23_containers/deque/invalidation/4.cc: Same.
47594fee23f9Smrg	* testsuite/23_containers/deque/invalidation/3.cc: Same.
47604fee23f9Smrg	* testsuite/23_containers/deque/invalidation/2.cc: Same.
47614fee23f9Smrg	* testsuite/23_containers/deque/invalidation/1.cc: Same.
47624fee23f9Smrg	* testsuite/23_containers/deque/cons/2.cc: Same.
47634fee23f9Smrg	* testsuite/23_containers/deque/cons/1.cc: Same.
47644fee23f9Smrg
47654fee23f9Smrg	* src/allocator.cc: Add char, wchar_t instantiations
47664fee23f9Smrg	to match extern template declarations in memory.h.
47674fee23f9Smrg
47684fee23f9Smrg2004-03-03  Paolo Carlini  <pcarlini@suse.de>
47694fee23f9Smrg
47704fee23f9Smrg	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
47714fee23f9Smrg	Fix warning regression.
47724fee23f9Smrg
47734fee23f9Smrg2004-03-03  Paolo Carlini  <pcarlini@suse.de>
47744fee23f9Smrg
47754fee23f9Smrg	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
47764fee23f9Smrg	Deal properly with empty __digits and negative frac_digits,
47774fee23f9Smrg	clean-up a bit.
47784fee23f9Smrg
47794fee23f9Smrg2004-03-03  Jonathan Wakely  <redi@gcc.gnu.org>
47804fee23f9Smrg
47814fee23f9Smrg	* docs/html/documentation.html: Regenerate.
47824fee23f9Smrg
47834fee23f9Smrg2004-03-02  Paolo Carlini  <pcarlini@suse.de>
47844fee23f9Smrg
47854fee23f9Smrg	PR libstdc++/14320
47864fee23f9Smrg	* include/bits/postypes.h (class streamoff): Remove, now
47874fee23f9Smrg	streamoff is just typedef a 64 bit signed integer type.
47884fee23f9Smrg	(class fpos): Tweak consistently.
47894fee23f9Smrg	* testsuite/27_io/fpos/14320-1.cc: New.
47904fee23f9Smrg	* testsuite/27_io/fpos/14320-2.cc: New.
47914fee23f9Smrg	* testsuite/27_io/fpos/14320-3.cc: New.
47924fee23f9Smrg	* testsuite/27_io/fpos/14320-4.cc: New.
47934fee23f9Smrg	* testsuite/27_io/fpos/14320-5.cc: New.
47944fee23f9Smrg	* testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
47954fee23f9Smrg
47964fee23f9Smrg2004-03-02  Paolo Carlini  <pcarlini@suse.de>
47974fee23f9Smrg
47984fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
47994fee23f9Smrg	Reorganize a bit the main parsing loop, thus early detecting
48004fee23f9Smrg	an empty value component.
48014fee23f9Smrg	* testsuite/22_locale/money_get/get/char/16.cc: New.
48024fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
48034fee23f9Smrg
48044fee23f9Smrg2004-03-02  Benjamin Kosnik  <bkoz@redhat.com>
48054fee23f9Smrg
48064fee23f9Smrg	Support automake 1.8.2
48074fee23f9Smrg	* configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
48084fee23f9Smrg	* po/Makefile.am (EXTRA_DIST): New.
48094fee23f9Smrg	* po/Makefile.in: Regenerate.
48104fee23f9Smrg	* Makefile.in: Same.
48114fee23f9Smrg	* include/Makefile.in: Same.
48124fee23f9Smrg	* libmath/Makefile.in: Same.
48134fee23f9Smrg	* libsupc++/Makefile.in: Same.
48144fee23f9Smrg	* src/Makefile.in: Same.
48154fee23f9Smrg	* testsuite/Makefile.in: Same.
48164fee23f9Smrg
48174fee23f9Smrg	* include/Makefile.am (${host_builddir}/gthr-posix.h): Use
48184fee23f9Smrg	__GXX_WEAK__ instead of SUPPORTS_WEAK.
48194fee23f9Smrg	(${host_builddir}/gthr-default.h): Same.
48204fee23f9Smrg	(${host_builddir}/gthr.h): Same.
48214fee23f9Smrg	* acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
48224fee23f9Smrg	_GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
48234fee23f9Smrg	-fno-weak.
48244fee23f9Smrg	* aclocal.m4: Regenerate.
48254fee23f9Smrg	* acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
48264fee23f9Smrg	* config.h.in: Regenerate.
48274fee23f9Smrg	* configure: Same.
48284fee23f9Smrg
48294fee23f9Smrg2004-03-01  Benjamin Kosnik  <bkoz@redhat.com>
48304fee23f9Smrg
48314fee23f9Smrg	Support autoconf 2.59
48324fee23f9Smrg	* acinclude.m4: Quote correctly.
48334fee23f9Smrg	* aclocal.m4: Regenerate.
48344fee23f9Smrg	* linkage.m4: Same.
48354fee23f9Smrg
48364fee23f9Smrg2004-03-01  Benjamin Kosnik  <bkoz@redhat.com>
48374fee23f9Smrg
48384fee23f9Smrg	* docs/html/test.html: Add multilib RUNTESTFLAGS example.
48394fee23f9Smrg
48404fee23f9Smrg	* docs/html/18_support/howto.html: Add bit about writing to
48414fee23f9Smrg	stderr, mostly by Zack.
48424fee23f9Smrg
48434fee23f9Smrg2004-03-01  Paolo Carlini  <pcarlini@suse.de>
48444fee23f9Smrg
48454fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract,
48464fee23f9Smrg	money_get<>::do_get(string_type&)): ... and two more.
48474fee23f9Smrg
48484fee23f9Smrg2004-03-01  Paolo Carlini  <pcarlini@suse.de>
48494fee23f9Smrg
48504fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
48514fee23f9Smrg	Fix thinkos in the switch from string_type& to string& as last
48524fee23f9Smrg	argument.
48534fee23f9Smrg
48544fee23f9Smrg2004-03-01  Paolo Carlini  <pcarlini@suse.de>
48554fee23f9Smrg
48564fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
48574fee23f9Smrg	Also when parsing exponent sign, first look for thousands_sep
48584fee23f9Smrg	and decimal_point; tweak a bit.
48594fee23f9Smrg	* testsuite/22_locale/num_get/get/char/15.cc: New.
48604fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
48614fee23f9Smrg
48624fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
48634fee23f9Smrg	num_get<>::_M_extract_int): Reorder some conditionals.
48644fee23f9Smrg
48654fee23f9Smrg2004-03-01  Paolo Carlini  <pcarlini@suse.de>
48664fee23f9Smrg
48674fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
48684fee23f9Smrg	Consistently with numpunct, enforce the requirements in
48694fee23f9Smrg	22.2.6.3, p3 for the thousands separators; tweak a bit.
48704fee23f9Smrg	* testsuite/22_locale/money_get/get/char/15.cc: New.
48714fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
48724fee23f9Smrg
48734fee23f9Smrg2004-03-01  David Billinghurst <David.Billinghurst@riotinto.com>
48744fee23f9Smrg
48754fee23f9Smrg	* testsuite/lib/libstdc++.exp (v3-list-tests): Use
48764fee23f9Smrg	testsuite_files from correct multilib blddir when running
48774fee23f9Smrg	testsuite.
48784fee23f9Smrg
48794fee23f9Smrg2004-02-29  Phil Edwards  <phil@codesourcery.com>
48804fee23f9Smrg
48814fee23f9Smrg	* testsuite/Makefile.am (check-abi, check-abi-verbose):  Copy
48824fee23f9Smrg	the summary file to the logfile.
48834fee23f9Smrg	* testsuite/Makefile.in:  Regenerate.
48844fee23f9Smrg
48854fee23f9Smrg2004-02-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
48864fee23f9Smrg
48874fee23f9Smrg	* config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
48884fee23f9Smrg	volatile.
48894fee23f9Smrg	* config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
48904fee23f9Smrg	__GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
48914fee23f9Smrg
48924fee23f9Smrg2004-02-28  Paolo Carlini  <pcarlini@suse.de>
48934fee23f9Smrg
48944fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
48954fee23f9Smrg	According to 22.2.3.1, p2, 'units' may be followed by 'e' with
48964fee23f9Smrg	no 'decimal-point' in the middle: in this case too we must fix
48974fee23f9Smrg	up __found_grouping; slightly tweak.
48984fee23f9Smrg	* testsuite/22_locale/num_get/get/char/14.cc: New.
48994fee23f9Smrg	* testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
49004fee23f9Smrg
49014fee23f9Smrg2004-02-27  Eric Christopher  <echristo@redhat.com>
49024fee23f9Smrg	    Phil Edwards  <phil@codesourcery.com>
49034fee23f9Smrg
49044fee23f9Smrg	* testsuite/22_locale/collate/compare/wchar_t/2.cc,
49054fee23f9Smrg	testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
49064fee23f9Smrg	testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
49074fee23f9Smrg	testsuite/22_locale/collate/hash/wchar_t/2.cc,
49084fee23f9Smrg	testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
49094fee23f9Smrg	testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
49104fee23f9Smrg	testsuite/22_locale/collate/transform/wchar_t/2.cc,
49114fee23f9Smrg	testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
49124fee23f9Smrg	testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
49134fee23f9Smrg	Use dg-require-iconv.
49144fee23f9Smrg	* testsuite/lib/libstdc++.exp:  Load target-supports.exp.
49154fee23f9Smrg
49164fee23f9Smrg2004-02-27  Phil Edwards  <phil@codesourcery.com>
49174fee23f9Smrg	    Eric Christopher  <echristo@redhat.com>
49184fee23f9Smrg
49194fee23f9Smrg	* testsuite/config/default.exp:  Update with comments.
49204fee23f9Smrg	(${tool}_target_compile):  New wrapper routine.
49214fee23f9Smrg	* testsuite/lib/dg-options.exp:  New file, with dg-require-iconv.
49224fee23f9Smrg	* testsuite/lib/libstdc++.exp:  Update with comments and cosmetic
49234fee23f9Smrg	fixes.
49244fee23f9Smrg	(load_gcc_lib, v3track):  New routines.
49254fee23f9Smrg	(v3-init):  Rename to libstdc++_init.
49264fee23f9Smrg	* testsuite/libstdc++-dg/normal.exp:  No longer call v3-init.
49274fee23f9Smrg	Move DEFAULT_CXXFLAGS handling into libstdc++_init.
49284fee23f9Smrg
49294fee23f9Smrg2004-02-27  Benjamin Kosnik  <bkoz@redhat.com>
49304fee23f9Smrg
49314fee23f9Smrg	* config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
49324fee23f9Smrg
49334fee23f9Smrg	* src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
49344fee23f9Smrg
49354fee23f9Smrg	* config/os/irix/irix5.2/atomicity.h: Merge..
49364fee23f9Smrg	* config/os/irix/irix6.5/atomicity.h: Merge..
49374fee23f9Smrg	* config/os/irix/atomicity.h: ...into this.
49384fee23f9Smrg	* config/os/irix/atomic_word.h: New.
49394fee23f9Smrg	* configure.host: Set atomic_word_dir for irix.
49404fee23f9Smrg
49414fee23f9Smrg	* hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
49424fee23f9Smrg	* i386/atomicity.h: Same.
49434fee23f9Smrg	* m68k/atomicity.h: Same.
49444fee23f9Smrg	* sparc/atomicity.h: Same.
49454fee23f9Smrg
49464fee23f9Smrg2004-02-27  David Edelsohn  <edelsohn@gnu.org>
49474fee23f9Smrg
49484fee23f9Smrg	* config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
49494fee23f9Smrg	static, and inline keywords.
49504fee23f9Smrg
49514fee23f9Smrg2004-02-27  Paolo Carlini  <pcarlini@suse.de>
49524fee23f9Smrg
49534fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
49544fee23f9Smrg	num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
49554fee23f9Smrg	call reserve on the __tmp_gruping string.
49564fee23f9Smrg	(num_get<>::_M_extract_float): Don't append unnecessarily a
49574fee23f9Smrg	char() to the returned string.
49584fee23f9Smrg	* include/bits/locale_facets.tcc: Trivial reformattings.
49594fee23f9Smrg
49604fee23f9Smrg2004-02-27  Paolo Carlini  <pcarlini@suse.de>
49614fee23f9Smrg
49624fee23f9Smrg	* include/bits/locale_facets.h (money_get<>::_M_extract):
49634fee23f9Smrg	Change signature: now takes a plain string&.
49644fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
49654fee23f9Smrg	Update consistently the definition; use the moneypunct cache
49664fee23f9Smrg	to parse the value; use swap to change __units.
49674fee23f9Smrg	(money_get<>::do_get(long double&)): Update call of _M_extract,
49684fee23f9Smrg	avoid ctype::narrow, not correct wrt the standard.
49694fee23f9Smrg	(money_get<>::do_get(string_type&)): Likewise, update call
49704fee23f9Smrg	of _M_extract, use ctype::widen.
49714fee23f9Smrg	* src/locale-inst.cc: Tweak instantiations of _M_extract.
49724fee23f9Smrg
49734fee23f9Smrg2004-02-26  Ian Lance Taylor  <ian@wasabisystems.com>
49744fee23f9Smrg
49754fee23f9Smrg	* testsuite/demangle/abi_examples/01.cc: Expect error -2.
49764fee23f9Smrg	* testsuite/demangle/abi_examples/02.cc: Likewise.
49774fee23f9Smrg	* testsuite/demangle/regression/cw-11.cc: Likewise.
49784fee23f9Smrg	* testsuite/demangle/regression/cw-16.cc: Change two expected
49794fee23f9Smrg	results to match libiberty demangler output.
49804fee23f9Smrg
49814fee23f9Smrg2004-02-26  Benjamin Kosnik  <bkoz@redhat.com>
49824fee23f9Smrg
49834fee23f9Smrg	PR libstdc++/10246
49844fee23f9Smrg	* libsupc++/Makefile.am: Use libiberty demangler.
49854fee23f9Smrg	(c_sources): Add cp-demangle.c.
49864fee23f9Smrg	* libsupc++/Makefile.in: Regenerate.
49874fee23f9Smrg	* src/Makefile.am (sources): Remove demangle.cc.
49884fee23f9Smrg	* src/Makefile.in: Regenerate.
49894fee23f9Smrg	* include/Makefile.am (bits_headers): Move demangle.h.
49904fee23f9Smrg	(ext_headers): ...here.
49914fee23f9Smrg	* include/Makefile.in: Regenerate.
49924fee23f9Smrg	* include/bits/demangle.h: Move...
49934fee23f9Smrg	* include/ext/demangle.h: ...here.
49944fee23f9Smrg	* src/demangle.cc: Remove.
49954fee23f9Smrg
49964fee23f9Smrg2004-02-26  Benjamin Kosnik  <bkoz@redhat.com>
49974fee23f9Smrg
49984fee23f9Smrg	* include/bits/demangle.h: Add type template parameter to all
49994fee23f9Smrg	templates with just an Allocator template parameter.
50004fee23f9Smrg
50014fee23f9Smrg2004-02-25  Benjamin Kosnik  <bkoz@redhat.com>
50024fee23f9Smrg
50034fee23f9Smrg	* include/bits/atomicity.h: New, forward declarations for __atomic_add
50044fee23f9Smrg	and __exchange_and_add.
50054fee23f9Smrg	* config/cpu/generic/atomic_word.h: New, typdef for atomic word.
50064fee23f9Smrg	* config/cpu/cris/atomic_word.h: Same.
50074fee23f9Smrg	* config/cpu/sparc/atomic_word.h: Same.
50084fee23f9Smrg	* include/bits/ios_base.h (_Callback_list::_M_remove_reference):
50094fee23f9Smrg	Qualifiy with __gnu_cxx.
50104fee23f9Smrg	(_Callback_list::_M_add_reference): Same.
50114fee23f9Smrg	* include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
50124fee23f9Smrg	(locale::facet::_M_remove_reference): Same.
50134fee23f9Smrg	(locale::_Impl::_M_add_reference): Add.
50144fee23f9Smrg	(locale::_Impl::_M_remove_reference): Same.
50154fee23f9Smrg	* include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
50164fee23f9Smrg	(basic_string::_Rep::_M_dispose): Same.
50174fee23f9Smrg	* src/ios.cc (ios_base::xalloc): Same.
50184fee23f9Smrg	* src/ios_init.cc (ios_base::Init::Init): Same.
50194fee23f9Smrg	(ios_base::Init::~Init): Same.
50204fee23f9Smrg	* src/locale.cc (locale::id::_M_id): Same.
50214fee23f9Smrg	* config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
50224fee23f9Smrg	static, and inline keywords.
50234fee23f9Smrg	* config/cpu/alpha/atomicity.h: Same.
50244fee23f9Smrg	* config/cpu/cris/atomicity.h: Same.
50254fee23f9Smrg	* config/cpu/generic/atomicity.h: Same.
50264fee23f9Smrg	* config/cpu/hppa/atomicity.h: Same.
50274fee23f9Smrg	* config/cpu/i386/atomicity.h: Same.
50284fee23f9Smrg	* config/cpu/ia64/atomicity.h: Same.
50294fee23f9Smrg	* config/cpu/m68k/atomicity.h: Same.
50304fee23f9Smrg	* config/cpu/mips/atomicity.h: Same.
50314fee23f9Smrg	* config/cpu/powerpc/atomicity.h: Same.
50324fee23f9Smrg	* config/cpu/s390/atomicity.h: Same.
50334fee23f9Smrg	* config/cpu/sparc/atomicity.h: Same.
50344fee23f9Smrg
50354fee23f9Smrg	* src/Makefile.am (host_sources): Add atomicity.cc.
50364fee23f9Smrg	(atomicity.cc): New rule.
50374fee23f9Smrg	* src/Makefile.in: Regenerate.
50384fee23f9Smrg	* include/Makefile.am (host_headers): Remove host atomicity.h.
50394fee23f9Smrg	(host_headers): Add atomic_word.h.
50404fee23f9Smrg	(bits_headers): Add bits atomicity.h.
50414fee23f9Smrg	Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
50424fee23f9Smrg	* include/Makefile.in: Regenerate.
50434fee23f9Smrg	* configure.host (atomic_word_dir): Add.
50444fee23f9Smrg	* configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
50454fee23f9Smrg	ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
50464fee23f9Smrg	* configure: Regenerate.
50474fee23f9Smrg	* config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
50484fee23f9Smrg
50494fee23f9Smrg	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
50504fee23f9Smrg	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
50514fee23f9Smrg
50524fee23f9Smrg2004-02-25  Jonathan Wakely  <redi@gcc.gnu.org>
50534fee23f9Smrg
50544fee23f9Smrg	* docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
50554fee23f9Smrg	docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
50564fee23f9Smrg	Fix markup, more <link> tags.
50574fee23f9Smrg
50584fee23f9Smrg2004-02-25  Carlo Wood  <carlo@alinoe.com>
50594fee23f9Smrg
50604fee23f9Smrg	* bits/demangle.h
50614fee23f9Smrg	namespace __gnu_cxx::demangler
50624fee23f9Smrg	(session<Allocator>::qualifier_list_Allocator): Add
50634fee23f9Smrg	(session<Allocator>::M_qualifier_list_alloc): Add
50644fee23f9Smrg	(session<Allocator>::decode_type_with_postfix):
50654fee23f9Smrg	Use M_qualifier_list_alloc instead of calling operator new/delete.
50664fee23f9Smrg
50674fee23f9Smrg2004-02-24  Paolo Carlini  <pcarlini@suse.de>
50684fee23f9Smrg
50694fee23f9Smrg	PR libstdc++/14252
50704fee23f9Smrg	* include/bits/postypes.h (class streamoff): Add operator++(),
50714fee23f9Smrg	operator++(int), operator--() and operator--(int).
50724fee23f9Smrg	* testsuite/27_io/fpos/14252.cc: New.
50734fee23f9Smrg
50744fee23f9Smrg2004-02-24  Richard Sandiford  <rsandifo@redhat.com>
50754fee23f9Smrg
50764fee23f9Smrg	* include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
50774fee23f9Smrg	error in handling of hex constants.
50784fee23f9Smrg
50794fee23f9Smrg2004-02-24  Paolo Carlini  <pcarlini@suse.de>
50804fee23f9Smrg
50814fee23f9Smrg	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
50824fee23f9Smrg	Prefer basic_string::append to operator+= and a temporary.
50834fee23f9Smrg
50844fee23f9Smrg2004-02-23  Benjamin Kosnik  <bkoz@redhat.com>
50854fee23f9Smrg
50864fee23f9Smrg	* libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
50874fee23f9Smrg	Only use fputs, not write.
50884fee23f9Smrg
50894fee23f9Smrg2004-02-23  Benjamin Kosnik  <bkoz@redhat.com>
50904fee23f9Smrg
50914fee23f9Smrg	* include/ext/malloc_allocator.h: Add operators ==, !=.
50924fee23f9Smrg	* include/ext/new_allocator.h: Add operators ==, !=.
50934fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc::tune): New.
50944fee23f9Smrg	(__mt_alloc::_S_get_options): New.
50954fee23f9Smrg	(__mt_alloc::_S_set_options): New.
50964fee23f9Smrg	(__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
50974fee23f9Smrg	(__mt_alloc::_S_no_of_bins): To _S_bin_size.
50984fee23f9Smrg	Move functions out of line, simplify, format.
50994fee23f9Smrg	* src/allocator.cc: Simplify explicit instantiations.
51004fee23f9Smrg	* include/bits/allocator.h: Tweak.
51014fee23f9Smrg
51024fee23f9Smrg2004-02-22  Paolo Carlini  <pcarlini@suse.de>
51034fee23f9Smrg
51044fee23f9Smrg	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
51054fee23f9Smrg	Restructure formatting of value component, first dealing with
51064fee23f9Smrg	the non-decimal digits; use reserve.
51074fee23f9Smrg
51084fee23f9Smrg2004-02-22  Paolo Carlini  <pcarlini@suse.de>
51094fee23f9Smrg
51104fee23f9Smrg	* include/bits/locale_facets.h (class money_get): Inherit
51114fee23f9Smrg	from money_base too; tweak declaration of _M_extract, now
51124fee23f9Smrg	parameterized on _Intl too.
51134fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
51144fee23f9Smrg	Update definition to use the cache; call reserve on __res to
51154fee23f9Smrg	avoid multiple reallocations; fix parsing of sign component
51164fee23f9Smrg	according to 22.2.6.1.2, p3.
51174fee23f9Smrg	(money_get<>::do_get(long double&),
51184fee23f9Smrg	money_get<>::do_get(string_type&)): Update calls of _M_extract.
51194fee23f9Smrg	* src/locale-inst.cc:  Add instantiations of
51204fee23f9Smrg	money_get::_M_extract<false> and money_get::_M_extract<true>.
51214fee23f9Smrg	* testsuite/22_locale/money_get/get/char/14.cc: New.
51224fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
51234fee23f9Smrg
51244fee23f9Smrg2004-02-21  Mark Mitchell  <mark@codesourcery.com>
51254fee23f9Smrg
51264fee23f9Smrg	* libsupc++/vterminate.cc
51274fee23f9Smrg	(__gnu_cxx::__verbose_terminate_handler): Guard against recursive
51284fee23f9Smrg	calls to terminate.
51294fee23f9Smrg	* src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
51304fee23f9Smrg
51314fee23f9Smrg	* testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
51324fee23f9Smrg	not set RLIMIT_AS on HP-UX.
51334fee23f9Smrg
51344fee23f9Smrg2004-02-21  Mark Mitchell  <mark@codesourcery.com>
51354fee23f9Smrg
51364fee23f9Smrg	* testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
51374fee23f9Smrg	not set RLIMIT_AS on HP-UX.
51384fee23f9Smrg
51394fee23f9Smrg2004-02-21  Paolo Carlini  <pcarlini@suse.de>
51404fee23f9Smrg
51414fee23f9Smrg	* include/bits/locale_facets.h (class money_base): Add { _S_minus,
51424fee23f9Smrg	_S_zero, _S_end } enum, _S_atoms.
51434fee23f9Smrg	(struct __moneypunct_cache<>): Parameterize on _Intl too; add
51444fee23f9Smrg	_M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
51454fee23f9Smrg	_M_negative_sign_size, _M_atoms; tweak constructor consistently.
51464fee23f9Smrg	(__moneypunct_cache<>::~__moneypunct_cache): Update.
51474fee23f9Smrg	(__moneypunct_cache<>::_M_cache): Fill the cache.
51484fee23f9Smrg	(class moneypunct): Tweak __cache_type typedef.
51494fee23f9Smrg	(class money_put): Inherit from money_base too; tweak declaration
51504fee23f9Smrg	of _M_insert, now parameterized on _Intl.
51514fee23f9Smrg	* include/bits/locale_facets.tcc
51524fee23f9Smrg	(struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
51534fee23f9Smrg	(money_put<>::_M_insert): Update definition to use the cache;
51544fee23f9Smrg	call reserve on __res to avoid multiple reallocations.
51554fee23f9Smrg	(money_put<>::do_put(long double),
51564fee23f9Smrg	money_put<>::do_put(const string_type&): Update calls of _M_insert.
51574fee23f9Smrg	* config/locale/generic/monetary_members.cc
51584fee23f9Smrg	(moneypunct<char, true>::_M_initialize_moneypunct,
51594fee23f9Smrg	moneypunct<char, false>::_M_initialize_moneypunct,
51604fee23f9Smrg	moneypunct<wchar_t, true>::_M_initialize_moneypunct,
51614fee23f9Smrg	moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
51624fee23f9Smrg	* config/locale/gnu/monetary_members.cc: Likewise.
51634fee23f9Smrg	* config/locale/gnu/monetary_members.cc
51644fee23f9Smrg	(moneypunct<wchar_t, true>::~moneypunct(),
51654fee23f9Smrg	moneypunct<wchar_t, false>::~moneypunct()): Likewise.
51664fee23f9Smrg	* src/globals_locale.cc: Tweak fake_money_cache_c.
51674fee23f9Smrg	* src/locale-inst.cc: Add instantiations for
51684fee23f9Smrg	money_put::_M_insert<false> and money_put::_M_insert<true> and
51694fee23f9Smrg	__moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
51704fee23f9Smrg	* src/locale_facets.cc: Define money_base::_S_atoms.
51714fee23f9Smrg	* src/locale_init.cc: Update placement new of
51724fee23f9Smrg	__moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
51734fee23f9Smrg	__moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
51744fee23f9Smrg
51754fee23f9Smrg	* config/locale/generic/numeric_members.cc: Clean up.
51764fee23f9Smrg	* config/locale/gnu/numeric_members.cc: Likewise.
51774fee23f9Smrg	* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
51784fee23f9Smrg	* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
51794fee23f9Smrg	* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
51804fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
51814fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
51824fee23f9Smrg	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
51834fee23f9Smrg
51844fee23f9Smrg2004-02-20  Mark Mitchell  <mark@codesourcery.com>
51854fee23f9Smrg
51864fee23f9Smrg	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
51874fee23f9Smrg	FIFO for writing with ios_base::in|ios_base::out.
51884fee23f9Smrg	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
51894fee23f9Smrg	* testsuite/27_io/objects/char/7.cc: Likewise.
51904fee23f9Smrg	* testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
51914fee23f9Smrg	with "r+".
51924fee23f9Smrg
51934fee23f9Smrg2004-02-19  David Edelsohn  <edelsohn@gnu.org>
51944fee23f9Smrg
51954fee23f9Smrg	* 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
51964fee23f9Smrg	from iso-8859-1 to ISO8859-1.
51974fee23f9Smrg	* 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
51984fee23f9Smrg	* 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
51994fee23f9Smrg	* 22_locale/collate/hash/wchar_t/2.cc: Same.
52004fee23f9Smrg	* 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
52014fee23f9Smrg	* 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
52024fee23f9Smrg	* 22_locale/collate/transform/wchar_t/2.cc: Same.
52034fee23f9Smrg	* 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
52044fee23f9Smrg	* 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
52054fee23f9Smrg
52064fee23f9Smrg2004-02-18  Paolo Carlini  <pcarlini@suse.de>
52074fee23f9Smrg
52084fee23f9Smrg	* include/bits/locale_facets.h (money_get<>::_M_extract):
52094fee23f9Smrg	New, helper for do_get.
52104fee23f9Smrg	(money_put<>::_M_insert): Likewise, for do_put.
52114fee23f9Smrg	* include/bits/locale_facets.tcc (money_get<>::_M_extract,
52124fee23f9Smrg	money_put<>::_M_insert): Define.
52134fee23f9Smrg	(money_get<>::do_get(long double&), money_get<>::do_get(
52144fee23f9Smrg	string_type&), money_put::do_put(long double),
52154fee23f9Smrg	money_put::do_put(const string_type&)): Use the helpers.
52164fee23f9Smrg
52174fee23f9Smrg2004-02-18  Paolo Carlini  <pcarlini@suse.de>
52184fee23f9Smrg
52194fee23f9Smrg	* config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
52204fee23f9Smrg	Rewrite, avoiding recursion.
52214fee23f9Smrg	(__gnu_internal::xwrite): Minor tweaks.
52224fee23f9Smrg
52234fee23f9Smrg2004-02-17  Stefan Olsson  <stefan@xapa.se>
52244fee23f9Smrg
52254fee23f9Smrg	* include/ext/mt_allocator.h: Removed the last
52264fee23f9Smrg	pointer. Deallocated blocks are now added to the front of
52274fee23f9Smrg	freelists as proposed by Felix Yen.  This gives roughly 10%
52284fee23f9Smrg	performance boost and saves some memory.
52294fee23f9Smrg	* docs/html/ext/mt_allocator.html: Change due to that deallocated
52304fee23f9Smrg	blocks now are added to the front of freelists. The reason to this
52314fee23f9Smrg	approach is also explained.
52324fee23f9Smrg
52334fee23f9Smrg2004-02-17  Paolo Carlini  <pcarlini@suse.de>
52344fee23f9Smrg
52354fee23f9Smrg	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
52364fee23f9Smrg	num_get<>::_M_extract_int, money_get<>::do_get): Simplify
52374fee23f9Smrg	grouping fidelity conditional.
52384fee23f9Smrg
52394fee23f9Smrg2004-02-16  Paolo Carlini  <pcarlini@suse.de>
52404fee23f9Smrg
52414fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
52424fee23f9Smrg	Qualify exception with std::.
52434fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
52444fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
52454fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
52464fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
52474fee23f9Smrg	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
52484fee23f9Smrg
52494fee23f9Smrg2004-02-16  Paolo Carlini  <pcarlini@suse.de>
52504fee23f9Smrg
52514fee23f9Smrg	* testsuite/ext/enc_filebuf/char/13189.cc: Don't check
52524fee23f9Smrg	for now that the catch block is not reached.
52534fee23f9Smrg	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
52544fee23f9Smrg
52554fee23f9Smrg2004-02-16  Paolo Carlini  <pcarlini@suse.de>
52564fee23f9Smrg
52574fee23f9Smrg	* include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
52584fee23f9Smrg	Fix parsing of the remaining sign characters.
52594fee23f9Smrg	* 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
52604fee23f9Smrg	the input is scanned 'til eof.
52614fee23f9Smrg	* 22_locale/money_get/get/char/4.cc: Likewise.
52624fee23f9Smrg	* 22_locale/money_get/get/wchar_t/2.cc: Likewise.
52634fee23f9Smrg	* 22_locale/money_get/get/wchar_t/4.cc: Likewise.
52644fee23f9Smrg	* 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
52654fee23f9Smrg	not do_pos_format: the former is the only one that matters during
52664fee23f9Smrg	input.
52674fee23f9Smrg	* 22_locale/money_get/get/wchar_t/8.cc: Likewise.
52684fee23f9Smrg
52694fee23f9Smrg	* 22_locale/money_get/get/char/6.cc: Minor tweak.
52704fee23f9Smrg	* 22_locale/money_get/get/wchar_t/6.cc: Likewise.
52714fee23f9Smrg
52724fee23f9Smrg2004-02-15  David Asher  <david.asher@cavium.com>
52734fee23f9Smrg
52744fee23f9Smrg	PR libstdc++/11352
52754fee23f9Smrg	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
52764fee23f9Smrg	access __olds beyond __oldlen.
52774fee23f9Smrg
52784fee23f9Smrg2004-02-14  Paolo Carlini  <pcarlini@suse.de>
52794fee23f9Smrg
52804fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
52814fee23f9Smrg	sure the exception is actually thrown.
52824fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
52834fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
52844fee23f9Smrg	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
52854fee23f9Smrg
52864fee23f9Smrg2004-02-14  Paolo Carlini  <pcarlini@suse.de>
52874fee23f9Smrg
52884fee23f9Smrg	PR libstdc++/13858
52894fee23f9Smrg	* include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
52904fee23f9Smrg	In case of conversion errors, throw ios_failure; simplify.
52914fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
52924fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
52934fee23f9Smrg	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
52944fee23f9Smrg	previously we didn't throw in case of conversion errors, instead
52954fee23f9Smrg	just returned eof().
52964fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
52974fee23f9Smrg	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
52984fee23f9Smrg	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
52994fee23f9Smrg
53004fee23f9Smrg	* include/bits/fstream.tcc (basic_filebuf<>::overflow):
53014fee23f9Smrg	Trivial simplification of a conditional.
53024fee23f9Smrg
53034fee23f9Smrg2004-02-12  Paolo Carlini  <pcarlini@suse.de>
53044fee23f9Smrg
53054fee23f9Smrg	PR libstdc++/13731 (final part: writev)
53064fee23f9Smrg	* config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
53074fee23f9Smrg	New, a wrapper around writev() handling partial writes.
53084fee23f9Smrg	(__basic_file<char>::xwrite): Move to __gnu_internal and make
53094fee23f9Smrg	static.
53104fee23f9Smrg	(__basic_file<char>::xsputn): Update call.
53114fee23f9Smrg	(__basic_file<char>::xsputn_2): Likewise.
53124fee23f9Smrg	* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
53134fee23f9Smrg	Don't declare, now static.
53144fee23f9Smrg
53154fee23f9Smrg2004-02-11  Stefan Olsson  <stefan@xapa.se>
53164fee23f9Smrg
53174fee23f9Smrg	* docs/html/ext/mt_allocator.html: New.
53184fee23f9Smrg
53194fee23f9Smrg2004-02-11  Benjamin Kosnik  <bkoz@redhat.com>
53204fee23f9Smrg
53214fee23f9Smrg	* docs/html/20_util/allocator.html: New file, consolidate
53224fee23f9Smrg	allocator information here. Revamp.
53234fee23f9Smrg	* docs/html/documentation.html: Change links.
53244fee23f9Smrg	* docs/html/20_util/howto.html: Same.
53254fee23f9Smrg	* docs/html/ext/howto.html: Same.
53264fee23f9Smrg
53274fee23f9Smrg2004-02-11  Paolo Carlini  <pcarlini@suse.de>
53284fee23f9Smrg
53294fee23f9Smrg	PR libstdc++/13731 (first part: write)
53304fee23f9Smrg	* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
53314fee23f9Smrg	New, declare.
53324fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
53334fee23f9Smrg	Define it: a wrapper around write() handling partial write.
53344fee23f9Smrg	(__basic_file<char>::xsputn): Use it.
53354fee23f9Smrg	(__basic_file<char>::xsputn_2): Likewise.
53364fee23f9Smrg
53374fee23f9Smrg2004-02-11  Paolo Carlini  <pcarlini@suse.de>
53384fee23f9Smrg	    Petur Runolfsson  <peturr02@ru.is>
53394fee23f9Smrg
53404fee23f9Smrg	PR libstdc++/14078
53414fee23f9Smrg	* include/std/std_istream.h (operator>>(__istream_type& (*)
53424fee23f9Smrg	(__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
53434fee23f9Smrg	operator>>(ios_base& (*)(ios_base&))): Declare inline.
53444fee23f9Smrg	* include/std/std_ostream.h (operator<<(__ostream_type& (*)
53454fee23f9Smrg	(__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
53464fee23f9Smrg	operator<<(ios_base& (*) (ios_base&))): Likewise.
53474fee23f9Smrg	* testsuite/performance/27_io/fmtflags_manipulators.cc: New.
53484fee23f9Smrg
53494fee23f9Smrg2004-02-10  Loren J. Rittle  <ljrittle@acm.org>
53504fee23f9Smrg
53514fee23f9Smrg	PR libstdc++/14098
53524fee23f9Smrg	* config/linker-map.gnu: Add typeinfo and typeinfo name for
53534fee23f9Smrg	__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
53544fee23f9Smrg
53554fee23f9Smrg	PR libstdc++/14097
53564fee23f9Smrg	* config/linker-map.gnu: Add typeinfo and typeinfo name for
53574fee23f9Smrg	__gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
53584fee23f9Smrg
53594fee23f9Smrg2004-02-09  Loren J. Rittle  <ljrittle@acm.org>
53604fee23f9Smrg
53614fee23f9Smrg	* include/ext/pool_allocator.h: Include c++config.h.
53624fee23f9Smrg
53634fee23f9Smrg2004-02-09  Stefan Olsson  <stefan@xapa.se>
53644fee23f9Smrg
53654fee23f9Smrg	* include/ext/mt_allocator.h: thread_id is unused in non threaded
53664fee23f9Smrg	applications and now has a ifdef to remove it completely on
53674fee23f9Smrg	compilers without thread support. Include stdlib.h due to a
53684fee23f9Smrg	compiler warning on getenv().
53694fee23f9Smrg
53704fee23f9Smrg2004-02-09  Paul Brook  <paul@codesourcery.com>
53714fee23f9Smrg
53724fee23f9Smrg	* libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
53734fee23f9Smrg
53744fee23f9Smrg2004-02-09  Paolo Carlini  <pcarlini@suse.de>
53754fee23f9Smrg
53764fee23f9Smrg	PR libstdc++/14071
53774fee23f9Smrg	* src/locale_init.cc (locale::global(const locale&)): Use
53784fee23f9Smrg	locale::name() in order to decide whether calling setlocale.
53794fee23f9Smrg	* testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
53804fee23f9Smrg
53814fee23f9Smrg	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
53824fee23f9Smrg	Avoid computing &= unnecessarily.
53834fee23f9Smrg
53844fee23f9Smrg2004-02-09  James E Wilson  <wilson@specifixinc.com>
53854fee23f9Smrg
53864fee23f9Smrg	PR libstdc++/5625
53874fee23f9Smrg	* libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
53884fee23f9Smrg	__builtin_extend_pointer.
53894fee23f9Smrg
53904fee23f9Smrg2004-02-09  Paolo Carlini  <pcarlini@suse.de>
53914fee23f9Smrg
53924fee23f9Smrg	PR libstdc++/14072
53934fee23f9Smrg	* include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
53944fee23f9Smrg	Don't leave dangling pointers.
53954fee23f9Smrg	* testsuite/27_io/basic_ios/imbue/14072.cc: New.
53964fee23f9Smrg	* testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
53974fee23f9Smrg	facet is needed in the final test.
53984fee23f9Smrg
53994fee23f9Smrg2004-02-09  Bernardo Innocenti  <bernie@develer.com>
54004fee23f9Smrg
54014fee23f9Smrg	* crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
54024fee23f9Smrg	* configure: Regenerate.
54034fee23f9Smrg
54044fee23f9Smrg2004-02-08  Richard Henderson  <rth@redhat.com>
54054fee23f9Smrg
54064fee23f9Smrg	PR libstdc++/14026
54074fee23f9Smrg	* libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
54084fee23f9Smrg	uncaughtExceptions during nested catch rethrow.
54094fee23f9Smrg	* testsuite/18_support/14026.cc: New.
54104fee23f9Smrg
54114fee23f9Smrg2004-02-08  Paolo Carlini  <pcarlini@suse.de>
54124fee23f9Smrg
54134fee23f9Smrg	* include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
54144fee23f9Smrg	When working in place remember to set the state to sharable
54154fee23f9Smrg	(otherwise, _M_mutate does it).
54164fee23f9Smrg
54174fee23f9Smrg2004-02-08  Bernardo Innocenti  <bernie@develer.com>
54184fee23f9Smrg
54194fee23f9Smrg	* include/bits/allocator.h, include/bits/basic_ios.h,
54204fee23f9Smrg	include/bits/basic_ios.tcc, include/bits/basic_string.h,
54214fee23f9Smrg	include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
54224fee23f9Smrg	include/bits/char_traits.h, include/bits/codecvt.h,
54234fee23f9Smrg	include/bits/concurrence.h, include/bits/cpp_type_traits.h,
54244fee23f9Smrg	include/bits/demangle.h, include/bits/deque.tcc,
54254fee23f9Smrg	include/bits/fstream.tcc, include/bits/functexcept.h,
54264fee23f9Smrg	include/bits/gslice.h, include/bits/gslice_array.h,
54274fee23f9Smrg	include/bits/indirect_array.h, include/bits/ios_base.h,
54284fee23f9Smrg	include/bits/istream.tcc, include/bits/list.tcc,
54294fee23f9Smrg	include/bits/locale_classes.h, include/bits/locale_facets.h,
54304fee23f9Smrg	include/bits/locale_facets.tcc, include/bits/localefwd.h,
54314fee23f9Smrg	include/bits/mask_array.h, include/bits/ostream.tcc,
54324fee23f9Smrg	include/bits/postypes.h, include/bits/slice_array.h,
54334fee23f9Smrg	include/bits/sstream.tcc, include/bits/stl_algo.h,
54344fee23f9Smrg	include/bits/stl_algobase.h, include/bits/stl_bvector.h,
54354fee23f9Smrg	include/bits/stl_construct.h, include/bits/stl_deque.h,
54364fee23f9Smrg	include/bits/stl_function.h, include/bits/stl_heap.h,
54374fee23f9Smrg	include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
54384fee23f9Smrg	include/bits/stl_list.h, include/bits/stl_map.h,
54394fee23f9Smrg	include/bits/stl_multimap.h, include/bits/stl_multiset.h,
54404fee23f9Smrg	include/bits/stl_numeric.h, include/bits/stl_pair.h,
54414fee23f9Smrg	include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
54424fee23f9Smrg	include/bits/stl_relops.h, include/bits/stl_set.h,
54434fee23f9Smrg	include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
54444fee23f9Smrg	include/bits/stl_threads.h, include/bits/stl_tree.h,
54454fee23f9Smrg	include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
54464fee23f9Smrg	include/bits/stream_iterator.h, include/bits/streambuf.tcc,
54474fee23f9Smrg	include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
54484fee23f9Smrg	include/bits/type_traits.h, include/bits/valarray_after.h,
54494fee23f9Smrg	include/bits/valarray_array.h, include/bits/valarray_array.tcc,
54504fee23f9Smrg	include/bits/valarray_before.h, include/bits/vector.tcc: Remove
54514fee23f9Smrg	trailing whitespace.
54524fee23f9Smrg
54534fee23f9Smrg2004-02-06  Paolo Carlini  <pcarlini@suse.de>
54544fee23f9Smrg
54554fee23f9Smrg	* include/bits/basic_string.h: Fix comment.
54564fee23f9Smrg
54574fee23f9Smrg2004-02-06  Paolo Carlini  <pcarlini@suse.de>
54584fee23f9Smrg
54594fee23f9Smrg	* include/bits/stl_construct.h: Wrap overlong lines, reformat
54604fee23f9Smrg	according to the coding standards.
54614fee23f9Smrg	* include/bits/stl_pair.h: Likewise.
54624fee23f9Smrg	* include/bits/stl_raw_storage_iter.h: Likewise.
54634fee23f9Smrg	* include/bits/stl_stack.h: Likewise.
54644fee23f9Smrg	* include/bits/stl_uninitialized.h: Likewise.
54654fee23f9Smrg	* include/bits/stream_iterator.h: Likewise.
54664fee23f9Smrg	* include/bits/streambuf_iterator.h: Likewise.
54674fee23f9Smrg	* include/bits/type_traits.h: Likewise.
54684fee23f9Smrg
54694fee23f9Smrg2004-02-06  Paolo Carlini  <pcarlini@suse.de>
54704fee23f9Smrg
54714fee23f9Smrg	* testsuite/27_io/basic_filebuf/open/char/9507.cc:
54724fee23f9Smrg	Adjust timings.
54734fee23f9Smrg
54744fee23f9Smrg2004-02-05  Loren J. Rittle  <ljrittle@acm.org>
54754fee23f9Smrg
54764fee23f9Smrg	* scripts/check_performance: Support PCH.
54774fee23f9Smrg
54784fee23f9Smrg	* scripts/check_performance (CXX): Add -DNOTHREAD.
54794fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc: Integrate
54804fee23f9Smrg	threaded tests from insert_insert.cc.  Tweak iterations,
54814fee23f9Smrg	remove special cases.
54824fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc:
54834fee23f9Smrg	Make all tests single-threaded. Tweak iterations.
54844fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc:
54854fee23f9Smrg	Tweak iterations.
54864fee23f9Smrg	* testsuite/performance/20_util/allocator/producer_consumer.cc:
54874fee23f9Smrg	Likewise.
54884fee23f9Smrg
54894fee23f9Smrg2004-02-05  Geoffrey Keating  <geoffk@apple.com>
54904fee23f9Smrg
54914fee23f9Smrg	PR 12179
54924fee23f9Smrg	* .cvsignore: New.
54934fee23f9Smrg	* acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
54944fee23f9Smrg	'gcc-lib'.  Add comment about poorly-named variables.
54954fee23f9Smrg	* aclocal.m4: Regenerate.
54964fee23f9Smrg	* configure: Regenerate.
54974fee23f9Smrg
54984fee23f9Smrg2004-02-05  Paolo Carlini  <pcarlini@suse.de>
54994fee23f9Smrg
55004fee23f9Smrg	* include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
55014fee23f9Smrg	Thousands-sep are always optional; thousands-sep are not allowed
55024fee23f9Smrg	after the decimal_point.
55034fee23f9Smrg	* testsuite/22_locale/money_get/get/char/12.cc: New.
55044fee23f9Smrg	* testsuite/22_locale/money_get/get/char/13.cc: New.
55054fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
55064fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
55074fee23f9Smrg
55084fee23f9Smrg	* testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
55094fee23f9Smrg	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
55104fee23f9Smrg	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
55114fee23f9Smrg	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
55124fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
55134fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
55144fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
55154fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
55164fee23f9Smrg
55174fee23f9Smrg	* testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
55184fee23f9Smrg	the standard.
55194fee23f9Smrg	* testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
55204fee23f9Smrg
55214fee23f9Smrg2004-02-05  Richard Sandiford  <rsandifo@redhat.com>
55224fee23f9Smrg
55234fee23f9Smrg	* config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
55244fee23f9Smrg	Define.
55254fee23f9Smrg	* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
55264fee23f9Smrg	it to decide whether FIONREAD should take an off_t or int argument.
55274fee23f9Smrg
55284fee23f9Smrg2004-02-05  Paolo Carlini  <pcarlini@suse.de>
55294fee23f9Smrg
55304fee23f9Smrg	* include/bits/stl_function.h: Minor formatting changes.
55314fee23f9Smrg
55324fee23f9Smrg2004-02-04  Zack Weinberg  <zack@codesourcery.com>
55334fee23f9Smrg
55344fee23f9Smrg	Revert previous change to config/abi/*/baseline_symbols.txt.
55354fee23f9Smrg
55364fee23f9Smrg2004-02-04  Benjamin Kosnik  <bkoz@redhat.com>
55374fee23f9Smrg	    Zack Weinberg  <zack@codesourcery.com>
55384fee23f9Smrg
55394fee23f9Smrg	* config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
55404fee23f9Smrg	New function.
55414fee23f9Smrg	(__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
55424fee23f9Smrg	(__basic_file<char>::_M_open_mode): Delete.
55434fee23f9Smrg	* config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
55444fee23f9Smrg
55454fee23f9Smrg	* testsuite/27_io/basic_filebuf/close/char/9964.cc
55464fee23f9Smrg	* testsuite/27_io/basic_filebuf/open/char/9507.cc:
55474fee23f9Smrg	Correct flags to filebuf::open calls.
55484fee23f9Smrg
55494fee23f9Smrg	* config/abi/alpha-freebsd5/baseline_symbols.txt
55504fee23f9Smrg	* config/abi/alpha-linux-gnu/baseline_symbols.txt
55514fee23f9Smrg	* config/abi/hppa-linux-gnu/baseline_symbols.txt
55524fee23f9Smrg	* config/abi/i386-freebsd4/baseline_symbols.txt
55534fee23f9Smrg	* config/abi/i386-freebsd5/baseline_symbols.txt
55544fee23f9Smrg	* config/abi/i486-linux-gnu/baseline_symbols.txt
55554fee23f9Smrg	* config/abi/ia64-linux-gnu/baseline_symbols.txt
55564fee23f9Smrg	* config/abi/mips-linux-gnu/baseline_symbols.txt
55574fee23f9Smrg	* config/abi/sparc-freebsd5/baseline_symbols.txt
55584fee23f9Smrg	* config/abi/sparc-linux-gnu/baseline_symbols.txt
55594fee23f9Smrg	* config/abi/x86_64-linux-gnu/baseline_symbols.txt:
55604fee23f9Smrg	Remove entry for __basic_file<char>::_M_open_mode.
55614fee23f9Smrg
55624fee23f9Smrg2004-02-04  Loren J. Rittle  <ljrittle@acm.org>
55634fee23f9Smrg
55644fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
55654fee23f9Smrg
55664fee23f9Smrg2004-02-04  Felix Yen  <fwy@alumni.brown.edu>
55674fee23f9Smrg
55684fee23f9Smrg	* testsuite/performance/20_util/producer_consumer.cc: New.
55694fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
55704fee23f9Smrg
55714fee23f9Smrg2004-02-04  Benjamin Kosnik  <bkoz@redhat.com>
55724fee23f9Smrg
55734fee23f9Smrg	* testsuite/performance/20_util/allocator.cc: Move to..
55744fee23f9Smrg	* testsuite/performance/20_util/allocator/insert.cc: ...here.
55754fee23f9Smrg	* testsuite/performance/20_util/allocator_thread.cc: Move to...
55764fee23f9Smrg	* testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
55774fee23f9Smrg	* testsuite/performance/20_util/allocator_map_thread.cc: Move to...
55784fee23f9Smrg	* testsuite/performance/20_util/allocator/map_thread.cc: ...here.
55794fee23f9Smrg
55804fee23f9Smrg2004-02-04  Jonathan Wakely  <redi@gcc.gnu.org>
55814fee23f9Smrg
55824fee23f9Smrg	* docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
55834fee23f9Smrg	* docs/html/faq/index.txt: Regenerate.
55844fee23f9Smrg
55854fee23f9Smrg2004-02-04  Dhruv Matani  <dhruvbird@gmx.net>
55864fee23f9Smrg
55874fee23f9Smrg	* include/ext/debug_allocator.h: _M_extra now stands for the
55884fee23f9Smrg	number of extra objects instead of the number of extra bytes.
55894fee23f9Smrg	(debug_allocator::allocate): Adjust.
55904fee23f9Smrg	(debug_allocator::deallocate): Adjust.
55914fee23f9Smrg
55924fee23f9Smrg	* include/ext/pool_allocator.h: Fix typo.
55934fee23f9Smrg
55944fee23f9Smrg2004-02-03  Felix Yen  <fwy@alumni.brown.edu>
55954fee23f9Smrg	    Benjamin Kosnik  <bkoz@redhat.com>
55964fee23f9Smrg
55974fee23f9Smrg	* testsuite/performance/20_util/allocator.cc: Add map,
55984fee23f9Smrg	deque, set tests.
55994fee23f9Smrg	* testsuite/performance/20_util/allocator_thread.cc: Same.
56004fee23f9Smrg
56014fee23f9Smrg2004-02-03  Paolo Carlini  <pcarlini@suse.de>
56024fee23f9Smrg
56034fee23f9Smrg	* include/bits/basic_string.h (insert(iterator)): Remove,
56044fee23f9Smrg	non-standard and already scheduled for removal.
56054fee23f9Smrg
56064fee23f9Smrg2004-02-03  Paolo Carlini  <pcarlini@suse.de>
56074fee23f9Smrg
56084fee23f9Smrg	* include/bits/stl_iterator_base_funcs.h: Minor formatting
56094fee23f9Smrg	and indentation tweaks.
56104fee23f9Smrg	* include/bits/stl_iterator_base_types.h: Likewise.
56114fee23f9Smrg	* include/bits/stl_list.h: Likewise.
56124fee23f9Smrg	* include/bits/stl_map.h: Likewise.
56134fee23f9Smrg	* include/bits/stl_tempbuf.h: Likewise.
56144fee23f9Smrg
56154fee23f9Smrg2004-02-02  Jerry Quinn  <jlquinn@optonline.net>
56164fee23f9Smrg
56174fee23f9Smrg	* include/bits/gslice.h, include/bits/gslice_array.h,
56184fee23f9Smrg	include/bits/indirect_array.h, include/bits/mask_array.h,
56194fee23f9Smrg	include/bits/slice_array.h, include/bits/stl_numeric.h,
56204fee23f9Smrg	include/std/std_valarray.h:  Update copyright years.
56214fee23f9Smrg
56224fee23f9Smrg2004-02-02  Jerry Quinn  <jlquinn@optonline.net>
56234fee23f9Smrg
56244fee23f9Smrg	* include/bits/gslice.h (gslice):  Document.
56254fee23f9Smrg	* include/bits/gslice_array.h (gslice_array):  Document.
56264fee23f9Smrg	* include/bits/indirect_array (indirect_array):  Document.
56274fee23f9Smrg	* include/bits/mask_array (mask_array):  Document.
56284fee23f9Smrg	* include/bits/slice_array.h (slice,slice_array):  Document.
56294fee23f9Smrg	* include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
56304fee23f9Smrg	adjacent_difference):  Document
56314fee23f9Smrg	* include/std/std_valarray.h (valarray):  Document.
56324fee23f9Smrg
56334fee23f9Smrg2004-02-02  Benjamin Kosnik  <bkoz@redhat.com>
56344fee23f9Smrg
56354fee23f9Smrg	* docs/html/19_diagnostics/howto.html: Move verbose terminate
56364fee23f9Smrg	documentation...
56374fee23f9Smrg	* docs/html/18_support/howto.html: Here.
56384fee23f9Smrg	* docs/html/documentation.html: Add reference here.
56394fee23f9Smrg
56404fee23f9Smrg2004-02-02  Paolo Carlini  <pcarlini@suse.de>
56414fee23f9Smrg
56424fee23f9Smrg	* config/locale/gnu/c++locale_internal.h: Remove prototypes
56434fee23f9Smrg	of no longer used GLIBC thread locale functions.
56444fee23f9Smrg
56454fee23f9Smrg2004-02-02  Eric Christopher  <echristo@redhat.com>
56464fee23f9Smrg	    Zack Weinberg  <zack@codesourcery.com>
56474fee23f9Smrg
56484fee23f9Smrg	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
56494fee23f9Smrg	-finput-charset.
56504fee23f9Smrg	* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
56514fee23f9Smrg	* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
56524fee23f9Smrg	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
56534fee23f9Smrg	* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
56544fee23f9Smrg	* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
56554fee23f9Smrg	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
56564fee23f9Smrg	* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
56574fee23f9Smrg	* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
56584fee23f9Smrg	Ditto.
56594fee23f9Smrg
56604fee23f9Smrg2004-02-02  Paolo Carlini  <pcarlini@suse.de>
56614fee23f9Smrg
56624fee23f9Smrg	* include/bits/stl_function.h: Additional minor tweaks.
56634fee23f9Smrg	* include/bits/stl_multiset.h: Likewise.
56644fee23f9Smrg
56654fee23f9Smrg	* include/bits/stl_queue.h: Minor tweaks.
56664fee23f9Smrg
56674fee23f9Smrg2004-02-02  Paolo Carlini  <pcarlini@suse.de>
56684fee23f9Smrg
56694fee23f9Smrg	PR libstdc++/13976 (continued)
56704fee23f9Smrg	* include/ext/malloc_allocator.h (malloc_allocator::deallocate):
56714fee23f9Smrg	Make the second parameter unnamed, to void unused parameter
56724fee23f9Smrg	warnings.
56734fee23f9Smrg	* include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
56744fee23f9Smrg
56754fee23f9Smrg2004-02-02  Paolo Carlini  <pcarlini@suse.de>
56764fee23f9Smrg
56774fee23f9Smrg	PR libstdc++/13976
56784fee23f9Smrg	* include/ext/malloc_allocator.h (malloc_allocator::allocate):
56794fee23f9Smrg	Make the second parameter unnamed, to void unused parameter
56804fee23f9Smrg	warnings.
56814fee23f9Smrg	* include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
56824fee23f9Smrg	* include/ext/new_allocator.h (new_allocator::allocate): Ditto.
56834fee23f9Smrg
56844fee23f9Smrg2004-02-01  Paolo Carlini  <pcarlini@suse.de>
56854fee23f9Smrg
56864fee23f9Smrg	* include/bits/stl_algo.h: Additional minor tweaks.
56874fee23f9Smrg	* include/bits/stl_map.h: Likewise.
56884fee23f9Smrg	* include/bits/stl_multimap.h: Likewise.
56894fee23f9Smrg	* include/bits/stl_multiset.h: Likewise.
56904fee23f9Smrg	* include/bits/stl_set.h: Likewise.
56914fee23f9Smrg	* include/bits/stl_tree.h: Likewise.
56924fee23f9Smrg
56934fee23f9Smrg2004-02-01  Paolo Carlini  <pcarlini@suse.de>
56944fee23f9Smrg
56954fee23f9Smrg	* include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
56964fee23f9Smrg	Remove, unused.
56974fee23f9Smrg
56984fee23f9Smrg2004-02-01  Paolo Carlini  <pcarlini@suse.de>
56994fee23f9Smrg
57004fee23f9Smrg	* include/bits/stl_function.h: Additional minor tweaks.
57014fee23f9Smrg
57024fee23f9Smrg2004-02-01  Paolo Carlini  <pcarlini@suse.de>
57034fee23f9Smrg
57044fee23f9Smrg	* include/bits/deque.tcc: Wrap overlong lines, constify
57054fee23f9Smrg	a few variables, reformat according to the coding standards.
57064fee23f9Smrg	* include/bits/list.tcc: Likewise.
57074fee23f9Smrg	* include/bits/stl_deque.h: Likewise.
57084fee23f9Smrg	* include/bits/stl_function.h: Likewise.
57094fee23f9Smrg	* include/bits/stl_iterator.h: Likewise.
57104fee23f9Smrg	* include/bits/stl_iterator_base_funcs.h: Likewise.
57114fee23f9Smrg	* include/bits/stl_iterator_base_types.h: Likewise.
57124fee23f9Smrg	* include/bits/stl_list.h: Likewise.
57134fee23f9Smrg	* include/bits/stl_map.h: Likewise.
57144fee23f9Smrg	* include/bits/stl_multimap.h: Likewise.
57154fee23f9Smrg	* include/bits/stl_multiset.h: Likewise.
57164fee23f9Smrg	* include/bits/stl_relops.h: Likewise.
57174fee23f9Smrg	* include/bits/stl_set.h: Likewise.
57184fee23f9Smrg
57194fee23f9Smrg2004-02-01  Paolo Carlini  <pcarlini@suse.de>
57204fee23f9Smrg
57214fee23f9Smrg	* include/bits/stl_bvector.h: Wrap overlong lines, constify
57224fee23f9Smrg	a few variables, reformat according to the coding standards.
57234fee23f9Smrg	* include/bits/stl_tree.h: Likewise.
57244fee23f9Smrg
57254fee23f9Smrg2004-01-31  Paolo Carlini  <pcarlini@suse.de>
57264fee23f9Smrg
57274fee23f9Smrg	* include/bits/stl_algo.h: Minor additional reformat, add
57284fee23f9Smrg	copyright year.
57294fee23f9Smrg	* include/bits/stl_algobase.h: Add copyright year.
57304fee23f9Smrg
57314fee23f9Smrg2004-01-31  Paolo Carlini  <pcarlini@suse.de>
57324fee23f9Smrg
57334fee23f9Smrg	* include/bits/stl_algo.h: Wrap overlong lines, constify
57344fee23f9Smrg	a few variables, reformat according to the coding standards.
57354fee23f9Smrg	* include/bits/stl_algobase.h: Likewise.
57364fee23f9Smrg	* include/bits/stl_heap.h: Likewise.
57374fee23f9Smrg
57384fee23f9Smrg2004-01-31  Paolo Carlini  <pcarlini@suse.de>
57394fee23f9Smrg
57404fee23f9Smrg	* include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
57414fee23f9Smrg
57424fee23f9Smrg	* include/bits/basic_string.h: Fix two comments.
57434fee23f9Smrg
57444fee23f9Smrg2004-01-31  Per Bothner  <per@bothner.com>
57454fee23f9Smrg
57464fee23f9Smrg	* include/ext/mt_allocator.h
57474fee23f9Smrg	(__mt_alloc::_S_thread_freelist_mutex): Guard with
57484fee23f9Smrg	__GTHREAD_MUTEX_INIT.
57494fee23f9Smrg
57504fee23f9Smrg2004-01-31  Paolo Carlini  <pcarlini@suse.de>
57514fee23f9Smrg
57524fee23f9Smrg	* include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
57534fee23f9Smrg
57544fee23f9Smrg2004-01-30  Paolo Carlini  <pcarlini@suse.de>
57554fee23f9Smrg
57564fee23f9Smrg	* testsuite/21_strings/basic_string/cons/char/6.cc: New.
57574fee23f9Smrg	* testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
57584fee23f9Smrg	* testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
57594fee23f9Smrg
57604fee23f9Smrg2004-01-30  Felix Yen  <fwy@alumni.brown.edu>
57614fee23f9Smrg
57624fee23f9Smrg	* testsuite/performance/20_util/allocator_thread.cc (do_loop):
57634fee23f9Smrg	Don't use clear, but instead assign. Use insert.
57644fee23f9Smrg
57654fee23f9Smrg2004-01-30  Benjamin Kosnik  <bkoz@redhat.com>
57664fee23f9Smrg
57674fee23f9Smrg	* src/demangle.cc: Add instantiations.
57684fee23f9Smrg	* src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
57694fee23f9Smrg	* src/Makefile.in: Regenerate.
57704fee23f9Smrg
57714fee23f9Smrg2004-01-30  David Edelsohn  <edelsohn@gnu.org>
57724fee23f9Smrg
57734fee23f9Smrg	* src/allocator.cc: Protect _S_get_thread_id() and
57744fee23f9Smrg	_S_thread_key_destr() with #ifdef __GTHREADS.
57754fee23f9Smrg
57764fee23f9Smrg2004-01-30  Paolo Carlini  <pcarlini@suse.de>
57774fee23f9Smrg
57784fee23f9Smrg	Reshuffle performance testsuite.
57794fee23f9Smrg	* testsuite/performance/allocator.cc, allocator_map_thread.cc,
57804fee23f9Smrg	allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
57814fee23f9Smrg	cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
57824fee23f9Smrg	fstream_seek_write.cc, ifstream_extract_float.cc,
57834fee23f9Smrg	ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
57844fee23f9Smrg	list_create_fill_sort.cc, map_create_fill.cc,
57854fee23f9Smrg	narrow_widen_char.cc, narrow_widen_wchar_t.cc,
57864fee23f9Smrg	ofstream_insert_float.cc, ofstream_insert_int.cc,
57874fee23f9Smrg	string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
57884fee23f9Smrg	wchar_t_out.cc: Split into...
57894fee23f9Smrg	* testsuite/performance/20_util/allocator.cc: New.
57904fee23f9Smrg	* testsuite/performance/20_util/allocator_map_thread.cc: New.
57914fee23f9Smrg	* testsuite/performance/20_util/allocator_thread.cc: New.
57924fee23f9Smrg	* testsuite/performance/21_strings/string_append: New.
57934fee23f9Smrg	* testsuite/performance/22_locale/is_wchar_t.cc: New.
57944fee23f9Smrg	* testsuite/performance/22_locale/narrow_widen_char.cc: New.
57954fee23f9Smrg	* testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
57964fee23f9Smrg	* testsuite/performance/22_locale/wchar_t_in.cc: New.
57974fee23f9Smrg	* testsuite/performance/22_locale/wchar_t_length.cc: New.
57984fee23f9Smrg	* testsuite/performance/22_locale/wchar_t_out.cc: New.
57994fee23f9Smrg	* testsuite/performance/23_containers/container_benchmark.cc: New.
58004fee23f9Smrg	* testsuite/performance/23_containers/list_create_fill_sort.cc: New.
58014fee23f9Smrg	* testsuite/performance/23_containers/map_create_fill.cc: New.
58024fee23f9Smrg	* testsuite/performance/26_numerics/complex_norm.cc: New.
58034fee23f9Smrg	* testsuite/performance/27_io/cout_insert_int.cc: New.
58044fee23f9Smrg	* testsuite/performance/27_io/filebuf_copy.cc: New.
58054fee23f9Smrg	* testsuite/performance/27_io/filebuf_sputc.cc: New.
58064fee23f9Smrg	* testsuite/performance/27_io/fstream_seek_write.cc: New.
58074fee23f9Smrg	* testsuite/performance/27_io/ifstream_extract_float.cc: New.
58084fee23f9Smrg	* testsuite/performance/27_io/ifstream_extract_int.cc: New.
58094fee23f9Smrg	* testsuite/performance/27_io/ifstream_getline.cc: New.
58104fee23f9Smrg	* testsuite/performance/27_io/ofstream_insert_float.cc: New.
58114fee23f9Smrg	* testsuite/performance/27_io/ofstream_insert_int.cc: New.
58124fee23f9Smrg
58134fee23f9Smrg2004-01-30  Paolo Carlini  <pcarlini@suse.de>
58144fee23f9Smrg
58154fee23f9Smrg	* include/bits/basic_string.tcc (_Rep::_S_create):
58164fee23f9Smrg	Never allocate a string bigger than max_size(); always keep
58174fee23f9Smrg	__capacity and __size in sync to avoid memory leaks at
58184fee23f9Smrg	deallocation time.
58194fee23f9Smrg
58204fee23f9Smrg2004-01-30  Paolo Carlini  <pcarlini@suse.de>
58214fee23f9Smrg
58224fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct(_InIterator,
58234fee23f9Smrg	_InIterator, const _Alloc&, input_iterator_tag)): Simplify
58244fee23f9Smrg	the double loop, streamline.
58254fee23f9Smrg
58264fee23f9Smrg	* include/bits/basic_string.tcc: Very minor tweaks.
58274fee23f9Smrg
58284fee23f9Smrg2004-01-30  Loren J. Rittle  <ljrittle@acm.org>
58294fee23f9Smrg
58304fee23f9Smrg	* scripts/check_performance: Only compile with $THREAD_FLAG
58314fee23f9Smrg	when test is marked to require it.  Allow multiple
58324fee23f9Smrg	compilations/executions of marked tests.
58334fee23f9Smrg	* testsuite/testsuite_performance.h (report_performance):
58344fee23f9Smrg	Report dynamic thread support status.
58354fee23f9Smrg	(report_header): Likewise.
58364fee23f9Smrg	* testsuite/performance/allocator.cc: Stabilize iteration
58374fee23f9Smrg	count.  Support more allocators.  Mark each allocator test to
58384fee23f9Smrg	run and report independently.
58394fee23f9Smrg	* testsuite/performance/allocator_map_thread.cc: Likewise.
58404fee23f9Smrg	* testsuite/performance/allocator_thread.cc: Likewise.
58414fee23f9Smrg
58424fee23f9Smrg2004-01-29  Stephen M. Webb  <stephen.webb@bregmasoft.com>
58434fee23f9Smrg
58444fee23f9Smrg	* config/local/generic/c_locale.h: Change ::malloc() to new char[].
58454fee23f9Smrg	* config/local/gnu/c_locale.h: Change ::malloc() to new char[].
58464fee23f9Smrg	* include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
58474fee23f9Smrg	std::get_temporary_buffer() instead of duplicating its code.
58484fee23f9Smrg	Update to C++STYLE conventions.
58494fee23f9Smrg	* include/std/std_memory.h (get_temporary_buffer): Use ::operator
58504fee23f9Smrg	new() instead of std::malloc().
58514fee23f9Smrg	(return_temporary_buffer): Use ::operator delete() instead of
58524fee23f9Smrg	std::free().
58534fee23f9Smrg
58544fee23f9Smrg2004-01-29  Benjamin Kosnik  <bkoz@redhat.com>
58554fee23f9Smrg
58564fee23f9Smrg	* include/bits/allocator.h: Temporary switch to new_allocator as
58574fee23f9Smrg	the default to unjam bootstraps.
58584fee23f9Smrg
58594fee23f9Smrg2004-01-28  Benjamin Kosnik  <bkoz@redhat.com>
58604fee23f9Smrg
58614fee23f9Smrg	* include/Makefile.am (bits_headers): Remove allocator_traits.h.
58624fee23f9Smrg	* include/Makefile.in: Regenerate.
58634fee23f9Smrg	* include/bits/allocator_traits.h: Remove.
58644fee23f9Smrg	* include/bits/allocator.h: Remove allocator_traits.h include, and
58654fee23f9Smrg	relevant comments.
58664fee23f9Smrg	(allocator): Empty base class, inherit from the underlying allocator.
58674fee23f9Smrg	* src/allocator-inst.cc: Move __pool_alloc instantiation to...
58684fee23f9Smrg	* src/allocator.cc: ...here. New. For the underlying allocators.
58694fee23f9Smrg	Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
58704fee23f9Smrg	* config/linker-map.gnu: Remove __pool_alloc bits.
58714fee23f9Smrg	* src/Makefile.am (sources): Add allocator.cc.
58724fee23f9Smrg	* src/Makefile.in: Regenerate.
58734fee23f9Smrg	* testsuite/20_util/allocator/1.cc: Split second test into...
58744fee23f9Smrg	* testsuite/20_util/allocator/8230.cc: ...this.
58754fee23f9Smrg	* include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
58764fee23f9Smrg	typedef to use std::allocatore. Format.
58774fee23f9Smrg	* include/ext/pool_allocator.h: Remove allocator_traits.h include,
58784fee23f9Smrg	_Alloc_traits.
58794fee23f9Smrg	* include/ext/mt_allocator.h (__gnu_cxx): Qualify
58804fee23f9Smrg	__throw_bad_alloc calls. Don't include <memory>.
58814fee23f9Smrg	* include/ext/malloc_allocator.h: Remove <memory> include.
58824fee23f9Smrg	* include/ext/new_allocator.h (new_allocator): Same.
58834fee23f9Smrg	* include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
58844fee23f9Smrg	declaration. Switch __alloc to _Alloc.
58854fee23f9Smrg	* include/ext/hashtable.h: Remove __alloc.
58864fee23f9Smrg	* include/backward/alloc.h: Only inject allocator, not
58874fee23f9Smrg	implementation details.
58884fee23f9Smrg
58894fee23f9Smrg	* include/ext/mt_allocator.h: Replace free with delete.
58904fee23f9Smrg
58914fee23f9Smrg2004-01-28  Benjamin Kosnik  <bkoz@redhat.com>
58924fee23f9Smrg
58934fee23f9Smrg	* src/globals_io.cc: Change to __gnu_internal namespace.
58944fee23f9Smrg	* src/globals_locale.cc: Same.
58954fee23f9Smrg	* src/locale_init.cc: Same.
58964fee23f9Smrg	* src/ios_init.cc: Same.
58974fee23f9Smrg
58984fee23f9Smrg2004-01-28  Stefan Olsson  <stefan@snon.net>
58994fee23f9Smrg
59004fee23f9Smrg	* include/ext/mt_allocator.h: Replaced all malloc() calls with
59014fee23f9Smrg	operator new(). Added support for the env variable
59024fee23f9Smrg	GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
59034fee23f9Smrg	one in allocate() as well). Fix typos.
59044fee23f9Smrg
59054fee23f9Smrg2004-01-28  Paolo Carlini  <pcarlini@suse.de>
59064fee23f9Smrg
59074fee23f9Smrg	* include/bits/basic_string.h (_S_create(size_t,
59084fee23f9Smrg	const _Alloc&): Change signature to take two size_type
59094fee23f9Smrg	arguments.
59104fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct(_InIterator,
59114fee23f9Smrg	_InIterator, const _Alloc&, input_iterator_tag)): Update
59124fee23f9Smrg	call, tweak a bit.
59134fee23f9Smrg	(_S_construct(_InIterator, _InIterator, const _Alloc&,
59144fee23f9Smrg	forward_iterator_tag)): Likewise.
59154fee23f9Smrg	(_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
59164fee23f9Smrg	(_M_mutate(size_type, size_type, size_type)): Don't
59174fee23f9Smrg	implement the exponential growth policy, demand it to
59184fee23f9Smrg	_S_create, update call and simplify.
59194fee23f9Smrg	(_M_clone(const _Alloc&, size_type)): Likewise.
59204fee23f9Smrg	(_S_create(size_type, size_type, const _Alloc&)): Implement
59214fee23f9Smrg	the growth policy, simplify otherwise.
59224fee23f9Smrg
59234fee23f9Smrg	* include/bits/basic_string.h (_Rep::operator[]): Tweak
59244fee23f9Smrg	signature to take a size_type, consistently with the other
59254fee23f9Smrg	members.
59264fee23f9Smrg
59274fee23f9Smrg2004-01-27  Benjamin Kosnik  <bkoz@redhat.com>
59284fee23f9Smrg
59294fee23f9Smrg	* testsuite/27_io/ios_base/storage/11584.cc: Correct new and
59304fee23f9Smrg	delete declarations, add include and test variable.
59314fee23f9Smrg
59324fee23f9Smrg2003-01-27  Jerry Quinn  <jlquinn@optonline.net>
59334fee23f9Smrg
59344fee23f9Smrg	* include/bits/codecvt.h, include/bits/locale_facets.h,
59354fee23f9Smrg	include/bits/postypes.h, include/bits/stl_bvector.h,
59364fee23f9Smrg	include/bits/stl_multiset.h, include/bits/stl_set.h,
59374fee23f9Smrg	include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
59384fee23f9Smrg	include/std/std_complex.h:  Document.
59394fee23f9Smrg
59404fee23f9Smrg2004-01-27  Jerry Quinn  <jlquinn@optonline.net>
59414fee23f9Smrg
59424fee23f9Smrg	PR libstdc++/11584
59434fee23f9Smrg	* include/bits/ios_base.h (ios_base::_M_grow_words):  Add
59444fee23f9Smrg	iword/pword selector.
59454fee23f9Smrg	(ios_base::iword, ios_base::pword):  Use it.
59464fee23f9Smrg	* src/ios.cc (ios_base::_M_grow_words):  Clear _M_word_zero
59474fee23f9Smrg	iword or pword member on alloc failure.
59484fee23f9Smrg	* testsuite/27_io/ios_base/storage/11584.cc:  New test.
59494fee23f9Smrg
59504fee23f9Smrg2004-01-27  Ulrich Weigand  <uweigand@de.ibm.com>
59514fee23f9Smrg	    PJ Darcy  <darcypj@us.ibm.com>
59524fee23f9Smrg
59534fee23f9Smrg	* configure.host: Add support for *-tpf.
59544fee23f9Smrg	* crossconfig.m4: Likewise.
59554fee23f9Smrg	* configure: Regenerate.
59564fee23f9Smrg	* config/os/tpf: New directory.
59574fee23f9Smrg	* config/os/tpf/os_defines.h: New file.
59584fee23f9Smrg	* config/os/tpf/ctype_base.h: Likewise.
59594fee23f9Smrg	* config/os/tpf/ctype_inline.h: Likewise.
59604fee23f9Smrg	* config/os/tpf/ctype_noninline.h: Likewise.
59614fee23f9Smrg
59624fee23f9Smrg2004-01-27  Paolo Carlini  <pcarlini@suse.de>
59634fee23f9Smrg
59644fee23f9Smrg	PR libstdc++/13884
59654fee23f9Smrg	* include/bits/sstream.tcc: Guard use of extern template.
59664fee23f9Smrg
59674fee23f9Smrg2004-01-27  Paolo Carlini  <pcarlini@suse.de>
59684fee23f9Smrg
59694fee23f9Smrg	* include/bits/basic_string.tcc
59704fee23f9Smrg	(basic_string(const basic_string&, size_type, size_type),
59714fee23f9Smrg	basic_string(const basic_string&, size_type, size_type,
59724fee23f9Smrg	const _Alloc&)): Avoid unnecessarily constructing iterators.
59734fee23f9Smrg
59744fee23f9Smrg2004-01-26  Paolo Carlini  <pcarlini@suse.de>
59754fee23f9Smrg
59764fee23f9Smrg	* config/locale/generic/c_locale.cc: Fix throw messages
59774fee23f9Smrg	to use the __N marker.
59784fee23f9Smrg	* config/locale/gnu/c_locale.cc: Likewise.
59794fee23f9Smrg	* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
59804fee23f9Smrg	Likewise.
59814fee23f9Smrg	* docs/html/17_intro/C++STYLE: Likewise.
59824fee23f9Smrg	* include/bits/basic_ios.tcc: Likewise.
59834fee23f9Smrg	* include/bits/fstream.tcc: Likewise.
59844fee23f9Smrg	* include/bits/vector.tcc: Likewise.
59854fee23f9Smrg	* include/ext/ropeimpl.h: Likewise.
59864fee23f9Smrg	* include/std/std_bitset.h: Likewise.
59874fee23f9Smrg	* src/ios.cc: Likewise.
59884fee23f9Smrg	* src/locale.cc: Likewise.
59894fee23f9Smrg	* src/localename.cc: Likewise.
59904fee23f9Smrg
59914fee23f9Smrg2004-01-26  Paolo Carlini  <pcarlini@suse.de>
59924fee23f9Smrg
59934fee23f9Smrg	* include/bits/basic_string.h (_M_replace_aux): Use the
59944fee23f9Smrg	__N marker in throw message.
59954fee23f9Smrg	* include/bits/basic_string.tcc (assign(const _CharT*,
59964fee23f9Smrg	size_type), insert(size_type, const _CharT*, size_type),
59974fee23f9Smrg	replace(size_type, size_type, const _CharT*, size_type),
59984fee23f9Smrg	reserve, _Rep::_S_create, resize, _M_replace_dispatch):
59994fee23f9Smrg	Likewise.
60004fee23f9Smrg
60014fee23f9Smrg	* include/bits/basic_string.h, include/bits/basic_string.tcc:
60024fee23f9Smrg	Fold overlong lines, minor formatting changes.
60034fee23f9Smrg
60044fee23f9Smrg2004-01-26  Paolo Carlini  <pcarlini@suse.de>
60054fee23f9Smrg
60064fee23f9Smrg	* include/bits/basic_string.h (replace(iterator, iterator,
60074fee23f9Smrg	const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
60084fee23f9Smrg	(replace(iterator, iterator, const _CharT*)): Ditto.
60094fee23f9Smrg	(replace(iterator, iterator, const _CharT*, size_type)):
60104fee23f9Smrg	Add missing _GLIBCXX_DEBUG_PEDASSERT.
60114fee23f9Smrg
60124fee23f9Smrg2004-01-26  Paolo Carlini  <pcarlini@suse.de>
60134fee23f9Smrg
60144fee23f9Smrg	* include/bits/basic_string.tcc (replace(size_type,
60154fee23f9Smrg	size_type, const _CharT*, size_type)): Implement optimized
60164fee23f9Smrg	in-place algorithm for non-overlapping ranges.
60174fee23f9Smrg	* testsuite/21_strings/basic_string/replace/char/6.cc: New.
60184fee23f9Smrg	* testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
60194fee23f9Smrg
60204fee23f9Smrg	* include/bits/basic_string.tcc (insert(size_type,
60214fee23f9Smrg	const _CharT*, size_type)): Tweak slightly.
60224fee23f9Smrg
60234fee23f9Smrg2004-01-26  Andreas Schwab  <schwab@suse.de>
60244fee23f9Smrg
60254fee23f9Smrg	* config/locale/gnu/monetary_members.cc: Restore locale before
60264fee23f9Smrg	rethrowing exception.
60274fee23f9Smrg
60284fee23f9Smrg2004-01-25  Paolo Carlini  <pcarlini@suse.de>
60294fee23f9Smrg
60304fee23f9Smrg	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
60314fee23f9Smrg	Define inline here.
60324fee23f9Smrg	* include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
60334fee23f9Smrg	Move inline.
60344fee23f9Smrg
60354fee23f9Smrg	* include/bits/basic_string.tcc: Very minor tweaks.
60364fee23f9Smrg
60374fee23f9Smrg2004-01-25  Paolo Carlini  <pcarlini@suse.de>
60384fee23f9Smrg
60394fee23f9Smrg	* testsuite/performance/string_append.cc: Increase number
60404fee23f9Smrg	of iterations.
60414fee23f9Smrg
60424fee23f9Smrg2004-01-25  Paolo Carlini  <pcarlini@suse.de>
60434fee23f9Smrg
60444fee23f9Smrg	* include/bits/basic_string.h (erase(size_type, size_type),
60454fee23f9Smrg	erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
60464fee23f9Smrg	instead, thus avoiding redundant check for length_error.
60474fee23f9Smrg
60484fee23f9Smrg	* include/bits/basic_string.h: Tweak some comments.
60494fee23f9Smrg
60504fee23f9Smrg2004-01-24  Paolo Carlini  <pcarlini@suse.de>
60514fee23f9Smrg
60524fee23f9Smrg	* include/bits/basic_string.tcc (operator+(const _CharT*,
60534fee23f9Smrg	const basic_string&)): No need to go through the append
60544fee23f9Smrg	taking two iterators.
60554fee23f9Smrg
60564fee23f9Smrg2004-01-24  Paolo Carlini  <pcarlini@suse.de>
60574fee23f9Smrg
60584fee23f9Smrg	* include/bits/basic_string.tcc (rfind(_CharT, size_type)):
60594fee23f9Smrg	Revert last change to use std::min: machine language is worse.
60604fee23f9Smrg	(find_last_of(const _CharT*, size_type, size_type)): Ditto.
60614fee23f9Smrg	(find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
60624fee23f9Smrg	(find_last_not_of(_CharT, size_type)): Ditto.
60634fee23f9Smrg
60644fee23f9Smrg	* include/bits/basic_string.tcc (insert(size_type, const _CharT*,
60654fee23f9Smrg	size_type)): Discard the value returned by _M_check.
60664fee23f9Smrg	(replace(size_type, size_type, const _CharT*, size_type)): Ditto.
60674fee23f9Smrg	(append(const basic_string&, size_type, size_type)): Ditto.
60684fee23f9Smrg	(copy(_CharT*, size_type, size_type)): Ditto.
60694fee23f9Smrg	(compare(size_type, size_type, const basic_string&)): Ditto.
60704fee23f9Smrg	(compare(size_type, size_type, const basic_string&,
60714fee23f9Smrg	size_type, size_type)): Ditto.
60724fee23f9Smrg	(compare(size_type, size_type, const _CharT*)): Ditto.
60734fee23f9Smrg	(compare(size_type, size_type, const _CharT*, size_type)): Ditto.
60744fee23f9Smrg
60754fee23f9Smrg2004-01-24  Paolo Carlini  <pcarlini@suse.de>
60764fee23f9Smrg
60774fee23f9Smrg	* include/bits/basic_string.h (insert(size_type,
60784fee23f9Smrg	const basic_string&, size_type, size_type)): Define inline here.
60794fee23f9Smrg	* include/bits/basic_string.tcc (insert(size_type,
60804fee23f9Smrg	const basic_string&, size_type, size_type)): Move inline.
60814fee23f9Smrg
60824fee23f9Smrg2004-01-24  Paolo Carlini  <pcarlini@suse.de>
60834fee23f9Smrg
60844fee23f9Smrg	* include/bits/basic_string.h (assign(const basic_string&,
60854fee23f9Smrg	size_type, size_type)): Define inline here.
60864fee23f9Smrg	(replace(size_type, size_type, const basic_string&,
60874fee23f9Smrg	size_type, size_type)): Ditto.
60884fee23f9Smrg	(_M_replace_dispatch(iterator, iterator, _InputIterator,
60894fee23f9Smrg	_InputIterator, __false_type)): Only declare.
60904fee23f9Smrg	(_M_replace(iterator, iterator, _InputIterator,
60914fee23f9Smrg	_InputIterator)): Remove.
60924fee23f9Smrg	* include/bits/basic_string.tcc (assign(const basic_string&,
60934fee23f9Smrg	size_type, size_type)): Move inline.
60944fee23f9Smrg	(replace(size_type, size_type, const basic_string&,
60954fee23f9Smrg	size_type, size_type)): Ditto.
60964fee23f9Smrg	(_M_replace_dispatch(iterator, iterator, _InputIterator,
60974fee23f9Smrg	_InputIterator, __false_type)): Define, now does also what
60984fee23f9Smrg	_M_replace did before.
60994fee23f9Smrg	* src/string-inst.cc (_M_replace): Don't instantiate.
61004fee23f9Smrg
61014fee23f9Smrg	* include/bits/basic_string.tcc (find(const _CharT*,
61024fee23f9Smrg	size_type, size_type)): Tidy.
61034fee23f9Smrg	(rfind(_CharT, size_type)): Ditto.
61044fee23f9Smrg	(find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
61054fee23f9Smrg	(find_first_not_of(_CharT, size_type)): Ditto.
61064fee23f9Smrg	(find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
61074fee23f9Smrg	(find_last_not_of(_CharT, size_type)): Ditto.
61084fee23f9Smrg
61094fee23f9Smrg2004-01-23  Paolo Carlini  <pcarlini@suse.de>
61104fee23f9Smrg
61114fee23f9Smrg	PR libstdc++/13838
61124fee23f9Smrg	* include/debug/bitset (operator|=): Fix typo.
61134fee23f9Smrg	* testsuite/23_containers/bitset/operations/13838.cc: New.
61144fee23f9Smrg
61154fee23f9Smrg2004-01-23  Paolo Carlini  <pcarlini@suse.de>
61164fee23f9Smrg
61174fee23f9Smrg	* include/bits/basic_string.tcc (insert(size_type,
61184fee23f9Smrg	const _CharT*, size_type __n)): Fix length_error check.
61194fee23f9Smrg	(replace(size_type, size_type, const _CharT*, size_type):
61204fee23f9Smrg	Ditto; call _M_replace_safe.
61214fee23f9Smrg	(_M_replace_aux(size_type, size_type, size_type, _CharT):
61224fee23f9Smrg	Fix length_error check.
61234fee23f9Smrg	(_M_replace(iterator, iterator, _InputIterator,
61244fee23f9Smrg	_InputIterator)): Ditto, tweak.
61254fee23f9Smrg	(_M_replace_safe(size_type, size_type, const _CharT*,
61264fee23f9Smrg	size_type)): Remove length_error check.
61274fee23f9Smrg
61284fee23f9Smrg	* include/bits/basic_string.tcc (append(const basic_string&),
61294fee23f9Smrg	append(const basic_string&, size_type, size_type)): Tweak
61304fee23f9Smrg	comment.
61314fee23f9Smrg
61324fee23f9Smrg	* include/bits/basic_string.tcc (copy(_CharT*, size_type,
61334fee23f9Smrg	size_type)): If __n == 0 don't call traits::copy.
61344fee23f9Smrg
61354fee23f9Smrg2004-01-23  Stefan Olsson  <stefan@snon.net>
61364fee23f9Smrg
61374fee23f9Smrg	* include/ext/mt_allocator.h: Reduce lock contention.
61384fee23f9Smrg
61394fee23f9Smrg2004-01-23  Paolo Carlini  <pcarlini@suse.de>
61404fee23f9Smrg
61414fee23f9Smrg	PR libstdc++/13831
61424fee23f9Smrg	* include/bits/fstream.tcc (underflow): Remove unused
61434fee23f9Smrg	variable.
61444fee23f9Smrg	* include/bits/streambuf_iterator.h (equal): Ditto.
61454fee23f9Smrg	* include/bits/locale_facets.h (_M_convert_from_char):
61464fee23f9Smrg	Ditto.
61474fee23f9Smrg
61484fee23f9Smrg2004-01-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
61494fee23f9Smrg
61504fee23f9Smrg	PR c/13814
61514fee23f9Smrg	* config/linker-map.gnu (nan): Delete.
61524fee23f9Smrg	* libmath/mathconf.h (NAN, nan): Delete.
61534fee23f9Smrg	* linkage.m4 (nan): Don't check for it.
61544fee23f9Smrg	* libmath/nan.c: Delete file.
61554fee23f9Smrg
61564fee23f9Smrg	* config.h.in, configure: Regenerate.
61574fee23f9Smrg
61584fee23f9Smrg2004-01-23  Paolo Carlini  <pcarlini@suse.de>
61594fee23f9Smrg
61604fee23f9Smrg	* include/bits/basic_string.h (push_back(_CharT)):
61614fee23f9Smrg	Call _M_replace_aux.
61624fee23f9Smrg	(insert(size_type, const basic_string&)): Trivial tweak.
61634fee23f9Smrg	(insert(size_type, size_type, _CharT)): Call _M_replace_aux.
61644fee23f9Smrg	(insert(iterator, _CharT)): Ditto.
61654fee23f9Smrg	(erase(size_type, size_type)): Ditto.
61664fee23f9Smrg	(erase(iterator)): Ditto.
61674fee23f9Smrg	(erase(iterator, iterator)): Ditto.
61684fee23f9Smrg	(replace(size_type, size_type, size_type, _CharT)): Ditto.
61694fee23f9Smrg
61704fee23f9Smrg2004-01-23  Loren J. Rittle  <ljrittle@acm.org>
61714fee23f9Smrg
61724fee23f9Smrg	libstdc++/13823
61734fee23f9Smrg	* testsuite/performance/allocator_map_thread.cc: New test.
61744fee23f9Smrg
61754fee23f9Smrg2004-01-22  Paolo Carlini  <pcarlini@suse.de>
61764fee23f9Smrg
61774fee23f9Smrg	* include/bits/locale_facets.tcc
61784fee23f9Smrg	(money_put::do_put(..., long double)): Use the basic_string
61794fee23f9Smrg	constructor for char arrays, not that for C-strings, to pass
61804fee23f9Smrg	__digits to do_put(..., const string_type&): __ws isn't
61814fee23f9Smrg	null-terminated.
61824fee23f9Smrg
61834fee23f9Smrg2004-01-22  Paolo Carlini  <pcarlini@suse.de>
61844fee23f9Smrg
61854fee23f9Smrg	* include/bits/basic_string.h (_M_replace_safe): Change
61864fee23f9Smrg	signatures to take size_types and const _CharT*.
61874fee23f9Smrg	(_M_replace_aux): Likewise, takes size_types instead of
61884fee23f9Smrg	iterators.
61894fee23f9Smrg	(append(size_type, _CharT)): Update call.
61904fee23f9Smrg	(assign(size_type, _CharT)): Ditto.
61914fee23f9Smrg	(replace(iterator, iterator, size_type, _CharT)): Ditto.
61924fee23f9Smrg	(_M_replace_dispatch(iterator, iterator, _Integer,
61934fee23f9Smrg	_Integer, __true_type)): Ditto.
61944fee23f9Smrg	* include/bits/basic_string.tcc (assign(const _CharT*,
61954fee23f9Smrg	size_type)): Ditto.
61964fee23f9Smrg	(insert(size_type, const _CharT*, size_type)): Ditto.
61974fee23f9Smrg	(replace(size_type, size_type, const _CharT*,
61984fee23f9Smrg	size_type)): Ditto.
61994fee23f9Smrg	(_M_replace(iterator, iterator, _InputIterator,
62004fee23f9Smrg	_InputIterator)): Ditto.
62014fee23f9Smrg	(append(const basic_string&)): Ditto.
62024fee23f9Smrg	(append(const basic_string&, size_type, size_type): Ditto.
62034fee23f9Smrg	(append(const _CharT*, size_type): Ditto.
62044fee23f9Smrg	(_M_replace_safe, _M_replace_safe): Change definitions
62054fee23f9Smrg	accordingly, simplify.
62064fee23f9Smrg	* string-inst.cc (_M_replace_safe): Don't instantiate.
62074fee23f9Smrg
62084fee23f9Smrg2004-01-21  Paolo Carlini  <pcarlini@suse.de>
62094fee23f9Smrg
62104fee23f9Smrg	* include/bits/basic_string.tcc (append(const basic_string&)):
62114fee23f9Smrg	Revert previous change.
62124fee23f9Smrg	(append(const basic_string&, size_type, size_type)): Revert
62134fee23f9Smrg	previous change, use _M_check and _M_limit.
62144fee23f9Smrg
62154fee23f9Smrg2004-01-21  Paolo Carlini  <pcarlini@suse.de>
62164fee23f9Smrg
62174fee23f9Smrg	* include/bits/basic_string.h (_M_check): Change to return
62184fee23f9Smrg	a checked __pos and take an additional const char* argument.
62194fee23f9Smrg	(_M_fold): Rename to _M_limit, change to return a size_type,
62204fee23f9Smrg	corresponding to the __off limited to the actual length.
62214fee23f9Smrg	(insert(size_type, size_type, _CharT)): Update call, call
62224fee23f9Smrg	replace.
62234fee23f9Smrg	(insert(iterator, _CharT)): Call replace(iterator, iterator,
62244fee23f9Smrg	size_type, _CharT) instead.
62254fee23f9Smrg	(erase(size_type, size_type)): Update calls.
62264fee23f9Smrg	(replace(size_type, size_type, size_type, _CharT)): Ditto.
62274fee23f9Smrg	(substr(size_type, size_type)): Use _M_check.
62284fee23f9Smrg	* include/bits/basic_string.tcc (basic_string(const basic_string&,
62294fee23f9Smrg	size_type, size_type)): Update calls.
62304fee23f9Smrg	(basic_string(const basic_string&, size_type, size_type,
62314fee23f9Smrg	const _Alloc&)): Ditto.
62324fee23f9Smrg	(assign(const basic_string&, size_type, size_type)): Use the
62334fee23f9Smrg	new _M_check and _M_limit.
62344fee23f9Smrg	(insert(size_type, const basic_string&, size_type, size_type):
62354fee23f9Smrg	Ditto.
62364fee23f9Smrg	(insert(size_type, const _CharT*, size_type)): Ditto.
62374fee23f9Smrg	(replace(size_type, size_type, const _CharT*, size_type): Ditto.
62384fee23f9Smrg	(replace(size_type, size_type, const basic_string&,
62394fee23f9Smrg	size_type, size_type)): Ditto.
62404fee23f9Smrg	(append(const basic_string&)): Ditto.
62414fee23f9Smrg	(append(const basic_string&, size_type, size_type)): Ditto.
62424fee23f9Smrg	(copy(_CharT*, size_type, size_type)): Ditto.
62434fee23f9Smrg	(compare(size_type, size_type, const basic_string&)): Ditto.
62444fee23f9Smrg	(compare(size_type, size_type, const basic_string&,size_type,
62454fee23f9Smrg	size_type)): Ditto.
62464fee23f9Smrg	(compare(size_type, size_type, const _CharT*)): Ditto.
62474fee23f9Smrg	(compare(size_type, size_type, const _CharT*, size_type)): Ditto.
62484fee23f9Smrg
62494fee23f9Smrg2004-01-19  Stefan Olsson  <stefan@snon.net>
62504fee23f9Smrg
62514fee23f9Smrg	* include/ext/mt_allocator.h: If a thread, when it dies, still has
62524fee23f9Smrg	memory on it's freelist this memory is not returned to global
62534fee23f9Smrg	list. Simplification of deallocate so that memory is always
62544fee23f9Smrg	returned to the calling thread id's freelist instead of to
62554fee23f9Smrg	global. Fix typos. Add volatile where appropriate.
62564fee23f9Smrg
62574fee23f9Smrg2004-01-19  Loren J. Rittle  <ljrittle@acm.org>
62584fee23f9Smrg
62594fee23f9Smrg	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
62604fee23f9Smrg	* testsuite/ext/stdio_filebuf/char/10063-3.cc: New test.  Like -2 but
62614fee23f9Smrg	use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
62624fee23f9Smrg
62634fee23f9Smrg2004-01-19  Paolo Carlini  <pcarlini@suse.de>
62644fee23f9Smrg
62654fee23f9Smrg	* src/debug.cc: Make sure all the names are prefixed with
62664fee23f9Smrg	double (or single) underscore.
62674fee23f9Smrg
62684fee23f9Smrg2004-01-19  Paolo Carlini  <pcarlini@suse.de>
62694fee23f9Smrg
62704fee23f9Smrg	* src/debug.cc: Trivial formatting change.
62714fee23f9Smrg
62724fee23f9Smrg2004-01-19  Paolo Carlini  <pcarlini@suse.de>
62734fee23f9Smrg
62744fee23f9Smrg	* include/bits/basic_string.tcc (_S_construct(size_type,
62754fee23f9Smrg	_CharT, const _Alloc&)): Remove redundant try/catch.
62764fee23f9Smrg	(_M_mutate(size_type, size_type, size_type)): Ditto.
62774fee23f9Smrg	(_M_clone(const _Alloc&, size_type)): Ditto.
62784fee23f9Smrg
62794fee23f9Smrg2004-01-18  Paolo Carlini  <pcarlini@suse.de>
62804fee23f9Smrg
62814fee23f9Smrg	* include/bits/basic_string.h (c_str()): Simplify, due to
62824fee23f9Smrg	21.3.4 the internal representation is always kept null-terminated.
62834fee23f9Smrg	* include/bits/basic_string.tcc (_M_clone): Null-terminate.
62844fee23f9Smrg	* testsuite/21_strings/basic_string/element_access/char/4.cc: New.
62854fee23f9Smrg	* testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
62864fee23f9Smrg	Ditto.
62874fee23f9Smrg
62884fee23f9Smrg2004-01-18  Paolo Carlini  <pcarlini@suse.de>
62894fee23f9Smrg
62904fee23f9Smrg	* include/bits/basic_string.h (append(size_type, _CharT)):
62914fee23f9Smrg	Moved inline, just call _M_replace_aux, no source iterators at
62924fee23f9Smrg	risk of being clobbered.
62934fee23f9Smrg	(assign(size_type, _CharT)): Call directly _M_replace_aux.
62944fee23f9Smrg	(_M_replace(iterator, iterator, _InputIterator, _InputIterator,
62954fee23f9Smrg	input_iterator_tag)): Remove fifth unused argument.
62964fee23f9Smrg	(_M_replace_dispatch(iterator, iterator, _InputIterator,
62974fee23f9Smrg	_InputIterator, __false_type)): Update call.
62984fee23f9Smrg	* include/bits/basic_string.tcc (replace(size_type, size_type,
62994fee23f9Smrg	const _CharT*, size_type)): Update call.
63004fee23f9Smrg	(_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
63014fee23f9Smrg	throw string literal.
63024fee23f9Smrg	(_M_replace_safe(iterator, iterator, _ForwardIterator,
63034fee23f9Smrg	_ForwardIterator)): Likewise.
63044fee23f9Smrg	(_M_replace(iterator, iterator, _InputIterator, _InputIterator,
63054fee23f9Smrg	input_iterator_tag)): Remove fifth unused argument.
63064fee23f9Smrg	(append(size_type __n, _CharT __c)): Move inline.
63074fee23f9Smrg	* src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
63084fee23f9Smrg	const C*, const C*, input_iterator_tag)): Remove fifth unused
63094fee23f9Smrg	argument.
63104fee23f9Smrg
63114fee23f9Smrg2004-01-16  Benjamin Kosnik  <bkoz@redhat.com>
63124fee23f9Smrg
63134fee23f9Smrg	* testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
63144fee23f9Smrg	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
63154fee23f9Smrg
63164fee23f9Smrg2004-01-16  Danny Smith  <dannysmith@users.sourceforge.net>
63174fee23f9Smrg
63184fee23f9Smrg	* testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
63194fee23f9Smrg	mkfifo for mingw32.
63204fee23f9Smrg
63214fee23f9Smrg2004-01-15  Stefan Olsson  <stefan@snon.net>
63224fee23f9Smrg
63234fee23f9Smrg	* include/ext/mt_allocator.h: Reuse thread id's as soon as
63244fee23f9Smrg	possible by changing the behaviour of thread_freelist to do
63254fee23f9Smrg	push_front when threads die instead of push_back.
63264fee23f9Smrg
63274fee23f9Smrg2004-01-14  Paolo Carlini  <pcarlini@suse.de>
63284fee23f9Smrg
63294fee23f9Smrg	* include/bits/locale_facets.h (struct __numpunct_cache):
63304fee23f9Smrg	Add member _M_grouping_size, caching the length of _M_grouping.
63314fee23f9Smrg	(__numpunct_cache<>::_M_cache): Assign the latter.
63324fee23f9Smrg	(__verify_grouping): Move declaration...
63334fee23f9Smrg	* include/bits/locale_facets.tcc (__verify_grouping):
63344fee23f9Smrg	... here, change signature to take a const char* and a size_t
63354fee23f9Smrg	for the grouping; not a template anymore.
63364fee23f9Smrg	(__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
63374fee23f9Smrg	Likewise change signature and tweak consistently.
63384fee23f9Smrg	(num_get::_M_extract_float, num_get::_M_extract_int,
63394fee23f9Smrg	num_put::_M_insert_int, num_put::_M_insert_float,
63404fee23f9Smrg	money_get::do_get(string_type&), money_get::do_put(string_type)):
63414fee23f9Smrg	Update callers.
63424fee23f9Smrg	* config/locale/generic/numeric_members.cc
63434fee23f9Smrg	(numpunct<>::_M_initialize_numpunct): Assign the new member.
63444fee23f9Smrg	* config/locale/gnu/numeric_members.cc
63454fee23f9Smrg	(numpunct<>::_M_initialize_numpunct): Likewise.
63464fee23f9Smrg	* src/locale-inst.cc (__add_grouping): Tweak signature.
63474fee23f9Smrg	(__verify_grouping): Don't instantiate, not a template anymore.
63484fee23f9Smrg
63494fee23f9Smrg	* include/bits/locale_facets.h: Rename _M_truename_len ->
63504fee23f9Smrg	_M_truename_size, _M_falsename_len -> _M_falsename_size.
63514fee23f9Smrg	* include/bits/locale_facets.tcc: Likewise.
63524fee23f9Smrg	* config/locale/generic/numeric_members.cc: Likewise.
63534fee23f9Smrg	* config/locale/gnu/numeric_members.cc: Likewise.
63544fee23f9Smrg
63554fee23f9Smrg2004-01-14  Stefan Olsson  <stefan@snon.net>
63564fee23f9Smrg
63574fee23f9Smrg	* include/ext/mt_allocator.h: Fixups.
63584fee23f9Smrg	* testsuite/performance/allocator.cc: Enable __mt_alloc tests.
63594fee23f9Smrg	* testsuite/performance/allocator_thread.cc: Same.
63604fee23f9Smrg
63614fee23f9Smrg2004-01-13  Benjamin Kosnik  <bkoz@redhat.com>
63624fee23f9Smrg
63634fee23f9Smrg	* testsuite/performance/ifstream_extract_float.cc: Add higher
63644fee23f9Smrg	precision tests.
63654fee23f9Smrg	* testsuite/performance/ofstream_insert_float.cc: Same.
63664fee23f9Smrg
63674fee23f9Smrg2004-01-13  Paolo Carlini  <pcarlini@suse.de>
63684fee23f9Smrg
63694fee23f9Smrg	* src/locale-misc-inst.cc (__convert_from_v(long),
63704fee23f9Smrg	__convert_from_v(unsigned long), __convert_from_v(long long),
63714fee23f9Smrg	__convert_from_v(unsigned long long)): Remove, unused.
63724fee23f9Smrg
63734fee23f9Smrg2004-01-13  Benjamin Kosnik  <bkoz@redhat.com>
63744fee23f9Smrg
63754fee23f9Smrg	* testsuite/performance/ifstream_extract_float.cc: New.
63764fee23f9Smrg	* testsuite/performance/ofstream_insert_float.cc: Float generation
63774fee23f9Smrg	matches above.
63784fee23f9Smrg
63794fee23f9Smrg	* 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
63804fee23f9Smrg	* 20_util/auto_ptr/1.cc: ...this.
63814fee23f9Smrg	* 20_util/auto_ptr/2.cc: Same.
63824fee23f9Smrg	* 20_util/auto_ptr/3.cc: Same.
63834fee23f9Smrg	* 20_util/auto_ptr/3946.cc: Same.
63844fee23f9Smrg	* 20_util/auto_ptr/4.cc: Same.
63854fee23f9Smrg	* 20_util/auto_ptr/5.cc: Same.
63864fee23f9Smrg	* 20_util/auto_ptr/6.cc: Same.
63874fee23f9Smrg	* 20_util/auto_ptr/7.cc: Same.
63884fee23f9Smrg	* 20_util/auto_ptr/assign_neg.cc
63894fee23f9Smrg	* 20_util/pairs.cc: Break into...
63904fee23f9Smrg	* 20_util/pair/1.cc: ...this.
63914fee23f9Smrg	* 20_util/pair/2.cc: Same.
63924fee23f9Smrg	* 20_util/pair/3.cc: Same.
63934fee23f9Smrg	* 20_util/pair/4.cc: Same.
63944fee23f9Smrg
63954fee23f9Smrg2004-01-13  Paolo Carlini  <pcarlini@suse.de>
63964fee23f9Smrg
63974fee23f9Smrg	* include/bits/locale_facets.tcc (num_get::do_get(void*&)):
63984fee23f9Smrg	Set correctly just basefield, the only group that matters.
63994fee23f9Smrg
64004fee23f9Smrg2004-01-13  Paolo Carlini  <pcarlini@suse.de>
64014fee23f9Smrg
64024fee23f9Smrg	* include/ext/rope (_Rope_rep_alloc_base): Eliminate.
64034fee23f9Smrg	(_Rope_rep_base): Inherit directly from the rope allocator;
64044fee23f9Smrg	use rebinding instead of _Alloc_traits; pick up data member
64054fee23f9Smrg	from _Rope_rep_alloc_base.
64064fee23f9Smrg	(_Rope_alloc_base): Eliminate.
64074fee23f9Smrg	(_Rope_base): Inherit directly from the rope allocator; use
64084fee23f9Smrg	rebinding instead of _Alloc_traits; pick up data member from
64094fee23f9Smrg	_Rope_alloc_base.
64104fee23f9Smrg	(rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
64114fee23f9Smrg	rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
64124fee23f9Smrg
64134fee23f9Smrg2004-01-13  Paolo Carlini  <pcarlini@suse.de>
64144fee23f9Smrg
64154fee23f9Smrg	PR libstdc++/13650
64164fee23f9Smrg	* include/bits/basic_string.tcc (compare(size_type, size_type,
64174fee23f9Smrg	const _CharT*, size_type)): Implement correctly the resolution
64184fee23f9Smrg	of DR 5: basically, s is a char array, -not- a C string.
64194fee23f9Smrg	* include/bits/basic_string.h: Tweak some comments.
64204fee23f9Smrg	* testsuite/21_strings/basic_string/compare/char/13650.cc: New.
64214fee23f9Smrg	* testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
64224fee23f9Smrg
64234fee23f9Smrg2004-01-12  Andreas Tobler  <a.tobler@schweiz.ch>
64244fee23f9Smrg
64254fee23f9Smrg	* testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
64264fee23f9Smrg	Solaris.
64274fee23f9Smrg
64284fee23f9Smrg2004-01-12  Paolo Carlini  <pcarlini@suse.de>
64294fee23f9Smrg
64304fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
64314fee23f9Smrg	Use try_mkfifo.
64324fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
64334fee23f9Smrg	Likewise.
64344fee23f9Smrg
64354fee23f9Smrg2004-01-12  Paolo Carlini  <pcarlini@suse.de>
64364fee23f9Smrg
64374fee23f9Smrg	* include/bits/locale_facets.h (struct __numpunct_cache):
64384fee23f9Smrg	Add members _M_truename_len and _M_falsename_len, caching
64394fee23f9Smrg	the lengths of _M_truename and _M_falsename.
64404fee23f9Smrg	(__numpunct_cache<>::_M_cache): Assign the latter.
64414fee23f9Smrg	* include/bits/locale_facets.tcc (num_get::do_get(bool&),
64424fee23f9Smrg	num_put::do_put(bool)): Use the new members, thus avoiding
64434fee23f9Smrg	computing string lengths again and again.
64444fee23f9Smrg	* config/locale/generic/numeric_members.cc
64454fee23f9Smrg	(numpunct<>::_M_initialize_numpunct): Assign the new members.
64464fee23f9Smrg	* config/locale/gnu/numeric_members.cc
64474fee23f9Smrg	(numpunct<>::_M_initialize_numpunct): Likewise.
64484fee23f9Smrg
64494fee23f9Smrg2004-01-12  Mark Mitchell  <mark@codesourcery.com>
64504fee23f9Smrg
64514fee23f9Smrg	* testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
64524fee23f9Smrg	* testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
64534fee23f9Smrg	it.
64544fee23f9Smrg	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
64554fee23f9Smrg	and remove Cygwin XFAIL.
64564fee23f9Smrg	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
64574fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
64584fee23f9Smrg	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
64594fee23f9Smrg	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
64604fee23f9Smrg	Likewise.
64614fee23f9Smrg	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
64624fee23f9Smrg	* testsuite/27_io/objects/char/7.cc: Likewise.
64634fee23f9Smrg	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
64644fee23f9Smrg	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
64654fee23f9Smrg	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
64664fee23f9Smrg
64674fee23f9Smrg2004-01-11  Gabriel Dos Reis  <gdr@integrable-solutions.net>
64684fee23f9Smrg
64694fee23f9Smrg	* include/std/std_complex.h (std::complex<>::real): Return a
64704fee23f9Smrg	reference. Add non-const overload.
64714fee23f9Smrg	(std::complex<>::real): Likewise.
64724fee23f9Smrg	(std::real): Likewise.
64734fee23f9Smrg	(std::imag): Likewise.
64744fee23f9Smrg	(std::operator+): Tidy.
64754fee23f9Smrg	(std::operator-): Likewise.
64764fee23f9Smrg	(std::operator*): Likewise.
64774fee23f9Smrg	(std::operator/): Likewise.
64784fee23f9Smrg	(std::operator>>): Likewise.
64794fee23f9Smrg
64804fee23f9Smrg2004-01-11  Paolo Carlini  <pcarlini@suse.de>
64814fee23f9Smrg
64824fee23f9Smrg	PR libstdc++/13582
64834fee23f9Smrg	* include/bits/fstream.tcc (imbue): Exploit the external
64844fee23f9Smrg	buffer to imbue 'on the fly' a new locale and convert its
64854fee23f9Smrg	remainder with the new codecvt facet.
64864fee23f9Smrg	(underflow): Tweak slightly to deal with this special case.
64874fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
64884fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
64894fee23f9Smrg	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
64904fee23f9Smrg	* testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
64914fee23f9Smrg	* testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
64924fee23f9Smrg
64934fee23f9Smrg2004-01-10  Paolo Carlini  <pcarlini@suse.de>
64944fee23f9Smrg
64954fee23f9Smrg	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
64964fee23f9Smrg	Import Revision 28.
64974fee23f9Smrg
64984fee23f9Smrg2004-01-10  Paolo Carlini  <pcarlini@suse.de>
64994fee23f9Smrg
65004fee23f9Smrg	PR libstdc++/13630
65014fee23f9Smrg	* include/bits/locale_classes.h (class locale): Fix category
65024fee23f9Smrg	typedef.
65034fee23f9Smrg	* testsuite/22_locale/locale/13630.cc: Add.
65044fee23f9Smrg
65054fee23f9Smrg2004-01-10  Giovanni Bajo  <giovannibajo@gcc.gnu.org>
65064fee23f9Smrg
65074fee23f9Smrg	* include/bits/locale_facets.h: Make a name really dependent. This
65084fee23f9Smrg	will be needed when Core Issue 224 is implemented.
65094fee23f9Smrg
65104fee23f9Smrg2004-01-09  Paolo Carlini  <pcarlini@suse.de>
65114fee23f9Smrg
65124fee23f9Smrg	* testsuite/performance/allocator.cc: Demangle typeid(obj).name().
65134fee23f9Smrg	* testsuite/performance/allocator_thread.cc: Likewise.
65144fee23f9Smrg
65154fee23f9Smrg2004-01-07  Benjamin Kosnik  <bkoz@redhat.com>
65164fee23f9Smrg
65174fee23f9Smrg	* crossconfig.m4: Add LFS, io bits to linux cross config.
65184fee23f9Smrg	* acconfig.h: Remove obsolete bits, reorder.
65194fee23f9Smrg	* config.h.in: Regenerate.
65204fee23f9Smrg	* aclocal.m4: Same.
65214fee23f9Smrg	* configure: Same.
65224fee23f9Smrg
65234fee23f9Smrg2004-01-07  Gawain Bolton  <gp.bolton@computer.org>
65244fee23f9Smrg
65254fee23f9Smrg	* include/bits/stl_list.h:
65264fee23f9Smrg	* include/bits/list.tc:
65274fee23f9Smrg	* src/list.cc:
65284fee23f9Smrg	Performance enhancements for destructor, push_front(),
65294fee23f9Smrg	push_back(), pop_front(), pop_back(), sort()
65304fee23f9Smrg	Eliminated static_casts where possible.
65314fee23f9Smrg	Moved code out of header files into new src/list.cc
65324fee23f9Smrg	implementation file for library where possible.
65334fee23f9Smrg	Remove inheritance from iterator class and create separate
65344fee23f9Smrg	classes for non-constant and constant iterators.
65354fee23f9Smrg	* include/bits/stl_tree.h (_Rb_tree class):
65364fee23f9Smrg	* src/tree.cc:
65374fee23f9Smrg	Only erase contents in destructor.
65384fee23f9Smrg	Eliminate unnecessary initialization in assignment operator.
65394fee23f9Smrg	Optimize for the nominal case by not checking whether
65404fee23f9Smrg	container is empty in clear().
65414fee23f9Smrg	Re-order test in _M_insert() to improve performance.
65424fee23f9Smrg	Move initialization of new node's left & right pointers to
65434fee23f9Smrg	src/tree.cc to where new node's colour is initialized
65444fee23f9Smrg	and to reduce the amount of inline code.
65454fee23f9Smrg	Use  _M_leftmost() and _M_end() to improve readability where
65464fee23f9Smrg	appropriate.
65474fee23f9Smrg	Create separate classes for non-constant and constant
65484fee23f9Smrg	iterators to clarify code, avoid extra template parameters and
65494fee23f9Smrg	casting away constness.
65504fee23f9Smrg
65514fee23f9Smrg2004-01-07  Benjamin Kosnik  <bkoz@redhat.com>
65524fee23f9Smrg
65534fee23f9Smrg	* src/Makefile.am (sources): Add list.cc, tree.cc.
65544fee23f9Smrg	* src/stl_tree.cc: Move to...
65554fee23f9Smrg	* src/tree.cc: ...here.
65564fee23f9Smrg	* src/list.cc: Add.
65574fee23f9Smrg	* config/linker-map.gnu: Tweaks.
65584fee23f9Smrg	* testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
65594fee23f9Smrg	* testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
65604fee23f9Smrg
65614fee23f9Smrg	* bits/stl_vector.h: Column wrap comments.
65624fee23f9Smrg
65634fee23f9Smrg2004-01-07  Loren J. Rittle  <ljrittle@acm.org>
65644fee23f9Smrg
65654fee23f9Smrg	(re-open) PR libstdc++/12658
65664fee23f9Smrg	* src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
65674fee23f9Smrg	(locale::global): Likewise.
65684fee23f9Smrg
65694fee23f9Smrg2004-01-07  Paolo Carlini  <pcarlini@suse.de>
65704fee23f9Smrg
65714fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
65724fee23f9Smrg	Remove redundant #include.
65734fee23f9Smrg	* testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
65744fee23f9Smrg	* testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
65754fee23f9Smrg	re-enable normal testing.
65764fee23f9Smrg	* testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
65774fee23f9Smrg	#include.
65784fee23f9Smrg	* testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
65794fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
65804fee23f9Smrg	Likewise.
65814fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
65824fee23f9Smrg	Likewise.
65834fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
65844fee23f9Smrg	Likewise.
65854fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
65864fee23f9Smrg	Likewise.
65874fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
65884fee23f9Smrg	Likewise.
65894fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
65904fee23f9Smrg	Likewise.
65914fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
65924fee23f9Smrg	Likewise.
65934fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
65944fee23f9Smrg	More properly, #include <locale>.
65954fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
65964fee23f9Smrg	Remove redundant #include.
65974fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
65984fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
65994fee23f9Smrg	redundant DejaGnu directive.
66004fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
66014fee23f9Smrg	redundant #include.
66024fee23f9Smrg
66034fee23f9Smrg2004-01-06  Benjamin Kosnik  <bkoz@redhat.com>
66044fee23f9Smrg	    Stefan Olsson  <stefan@snon.net>
66054fee23f9Smrg
66064fee23f9Smrg	* scripts/check_performance: Use -pthread.
66074fee23f9Smrg	* testsuite/performance/allocator.cc: Tweaks, add list.
66084fee23f9Smrg	* testsuite/performance/allocator_thread.cc: New.
66094fee23f9Smrg
66104fee23f9Smrg2004-01-06  Jerry Quinn  <jlquinn@optonline.net>
66114fee23f9Smrg
66124fee23f9Smrg	* include/bits/locale_facets.h: Document public classes and
66134fee23f9Smrg	functions.
66144fee23f9Smrg	* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
66154fee23f9Smrg	Add comment.
66164fee23f9Smrg
66174fee23f9Smrg2004-01-06  Paolo Carlini  <pcarlini@suse.de>
66184fee23f9Smrg
66194fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/char/1.cc:
66204fee23f9Smrg	Remove redundant #includes.
66214fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/char/2.cc:
66224fee23f9Smrg	Likewise.
66234fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_other/char/3.cc:
66244fee23f9Smrg	Likewise.
66254fee23f9Smrg	* testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
66264fee23f9Smrg	* testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
66274fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
66284fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
66294fee23f9Smrg	* testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
66304fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
66314fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
66324fee23f9Smrg	* testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
66334fee23f9Smrg	* testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
66344fee23f9Smrg	* testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
66354fee23f9Smrg	* testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
66364fee23f9Smrg	* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
66374fee23f9Smrg	* testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
66384fee23f9Smrg	* testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
66394fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
66404fee23f9Smrg	Likewise.
66414fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
66424fee23f9Smrg	Likewise.
66434fee23f9Smrg	* testsuite/27_io/basic_istream/readsome/char/8258.cc:
66444fee23f9Smrg	Likewise.
66454fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
66464fee23f9Smrg	Likewise.
66474fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
66484fee23f9Smrg	Likewise.
66494fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
66504fee23f9Smrg	* testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
66514fee23f9Smrg	* testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
66524fee23f9Smrg
66534fee23f9Smrg2004-01-04  Paolo Carlini  <pcarlini@suse.de>
66544fee23f9Smrg
66554fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
66564fee23f9Smrg	Remove redundant #includes.
66574fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
66584fee23f9Smrg	Likewise.
66594fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
66604fee23f9Smrg	Likewise.
66614fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
66624fee23f9Smrg	Likewise.
66634fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
66644fee23f9Smrg	Likewise.
66654fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
66664fee23f9Smrg	Likewise.
66674fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
66684fee23f9Smrg	Likewise.
66694fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
66704fee23f9Smrg	Likewise.
66714fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
66724fee23f9Smrg	Likewise.
66734fee23f9Smrg	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
66744fee23f9Smrg	Likewise.
66754fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
66764fee23f9Smrg	Likewise.
66774fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
66784fee23f9Smrg	Likewise.
66794fee23f9Smrg	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
66804fee23f9Smrg	Likewise.
66814fee23f9Smrg
66824fee23f9Smrg2004-01-04  Mark Mitchell  <mark@codesourcery.com>
66834fee23f9Smrg
66844fee23f9Smrg	PR c++/12226
66854fee23f9Smrg	* testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
66864fee23f9Smrg	constructor.
66874fee23f9Smrg	* testsuite/27_io/basic_fstream/4.cc: Likewise.
66884fee23f9Smrg	* testsuite/27_io/basic_ifstream/4.cc: Likewise.
66894fee23f9Smrg	* testsuite/27_io/basic_ios/4.cc: Likewise.
66904fee23f9Smrg	* testsuite/27_io/basic_iostream/4.cc: Likewise.
66914fee23f9Smrg	* testsuite/27_io/basic_istream/4.cc: Likewise.
66924fee23f9Smrg	* testsuite/27_io/basic_istingstream/4.cc: Likewise.
66934fee23f9Smrg	* testsuite/27_io/basic_ofstream/4.cc: Likewise.
66944fee23f9Smrg	* testsuite/27_io/basic_ostream/4.cc: Likewise.
66954fee23f9Smrg	* testsuite/27_io/basic_ostringstream/4.cc: Likewise.
66964fee23f9Smrg	* testsuite/27_io/basic_stringbuf/5.cc: Likewise.
66974fee23f9Smrg	* testsuite/27_io/basic_stringstream/4.cc: Likewise.
66984fee23f9Smrg
66994fee23f9Smrg2004-01-04  Paolo Carlini  <pcarlini@suse.de>
67004fee23f9Smrg
67014fee23f9Smrg	* config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
67024fee23f9Smrg	Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
67034fee23f9Smrg	always use double underscored names.
67044fee23f9Smrg	* config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
67054fee23f9Smrg	Likewise.
67064fee23f9Smrg	* include/bits/locale_facets.h (struct __numpunct_cache):
67074fee23f9Smrg	Dimension _M_atoms_out and _M_atoms_in one position smaller.
67084fee23f9Smrg	(__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
67094fee23f9Smrg	and _M_atoms_in.
6710*48fb7bfaSmrg
6711*48fb7bfaSmrgCopyright (C) 2004 Free Software Foundation, Inc.
6712*48fb7bfaSmrg
6713*48fb7bfaSmrgCopying and distribution of this file, with or without modification,
6714*48fb7bfaSmrgare permitted in any medium without royalty provided the copyright
6715*48fb7bfaSmrgnotice and this notice are preserved.
6716