1*f8a1b7d9SAlexander Kabaev2004-12-31  Paolo Carlini  <[email protected]>
2*f8a1b7d9SAlexander Kabaev
3*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits (is_member_function_pointer): Provide a
4*f8a1b7d9SAlexander Kabaev	workaround for c++/19076, correct for functions with up to 15
5*f8a1b7d9SAlexander Kabaev	arguments.
6*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
7*f8a1b7d9SAlexander Kabaev	is_member_pointer/is_member_pointer.cc: Uncomment "XFAILed" tests;
8*f8a1b7d9SAlexander Kabaev	add a test for variadic functions.
9*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
10*f8a1b7d9SAlexander Kabaev	is_scalar/is_scalar.cc: Uncomment "XFAILed" tests.
11*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
12*f8a1b7d9SAlexander Kabaev	is_enum/is_enum.cc: Likewise.
13*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
14*f8a1b7d9SAlexander Kabaev	is_member_function_pointer/is_member_function_pointer.cc: Likewise;
15*f8a1b7d9SAlexander Kabaev	add a test for variadic functions.
16*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
17*f8a1b7d9SAlexander Kabaev	is_member_object_pointer/is_member_object_pointer.cc: Likewise.
18*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
19*f8a1b7d9SAlexander Kabaev	has_nothrow_assign/has_nothrow_assign.cc: Uncomment "XFAILed" tests.
20*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
21*f8a1b7d9SAlexander Kabaev	has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
22*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
23*f8a1b7d9SAlexander Kabaev	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
24*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
25*f8a1b7d9SAlexander Kabaev	has_trivial_assign/has_trivial_assign.cc: Likewise.
26*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
27*f8a1b7d9SAlexander Kabaev	has_trivial_constructor/has_trivial_constructor.cc: Likewise.
28*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
29*f8a1b7d9SAlexander Kabaev	has_trivial_copy/has_trivial_copy.cc: Likewise.
30*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
31*f8a1b7d9SAlexander Kabaev	has_trivial_destructor/has_trivial_destructor.cc: Likewise.
32*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
33*f8a1b7d9SAlexander Kabaev	is_pod/is_pod.cc: Likewise.
34*f8a1b7d9SAlexander Kabaev
35*f8a1b7d9SAlexander Kabaev2004-12-30  Paolo Carlini  <[email protected]>
36*f8a1b7d9SAlexander Kabaev
37*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Add has_trivial_copy, has_trivial_assign,
38*f8a1b7d9SAlexander Kabaev	has_nothrow_copy, has_nothrow_assign.
39*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h: Add test_copy_property and
40*f8a1b7d9SAlexander Kabaev	test_assign_property.
41*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
42*f8a1b7d9SAlexander Kabaev	has_nothrow_assign/has_nothrow_assign.cc: New.
43*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
44*f8a1b7d9SAlexander Kabaev	has_nothrow_assign/typedefs.cc: Likewise.
45*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
46*f8a1b7d9SAlexander Kabaev	has_nothrow_copy/has_nothrow_copy.cc: Likewise.
47*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
48*f8a1b7d9SAlexander Kabaev	has_nothrow_copy/typedefs.cc: Likewise.
49*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
50*f8a1b7d9SAlexander Kabaev	has_trivial_assign/has_trivial_assign.cc: Likewise.
51*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
52*f8a1b7d9SAlexander Kabaev	has_trivial_assign/typedefs.cc: Likewise.
53*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
54*f8a1b7d9SAlexander Kabaev	has_trivial_copy/has_trivial_copy.cc: Likewise.
55*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
56*f8a1b7d9SAlexander Kabaev	has_trivial_copy/typedefs.cc: Likewise.
57*f8a1b7d9SAlexander Kabaev
58f260e61bSAlexander Kabaev2004-12-29  Jonathan Wakely  <[email protected]>
59f260e61bSAlexander Kabaev
60f260e61bSAlexander Kabaev	* include/bits/vector.tcc (erase(iterator, iterator),
61f260e61bSAlexander Kabaev	operator=, _M_assign_aux(_ForwardIterator, _ForwardIterator,
62f260e61bSAlexander Kabaev	forward_iterator_tag)): Qualify all calls to std::copy().
63f260e61bSAlexander Kabaev
64*f8a1b7d9SAlexander Kabaev2004-12-29  Paolo Carlini  <[email protected]>
65f260e61bSAlexander Kabaev
66f260e61bSAlexander Kabaev	Minimal fixes for -fno-exceptions.
67*f8a1b7d9SAlexander Kabaev	* src/bitmap_allocator.cc (free_list::_M_get): Use
68*f8a1b7d9SAlexander Kabaev	__throw_exception_again, instead of plain throw.
69f260e61bSAlexander Kabaev	* testsuite/testsuite_abi.cc (get_symbol, examine_symbol,
70*f8a1b7d9SAlexander Kabaev	create_symbols): Likewise.
71f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc (verify_demangle,
72f260e61bSAlexander Kabaev	run_tests_wrapped_locale, run_tests_wrapped_env): Likewise.
73f260e61bSAlexander Kabaev	(try_named_locale): Wrap the whole catch in __EXCEPTIONS.
74f260e61bSAlexander Kabaev
75*f8a1b7d9SAlexander Kabaev2004-12-29  Paolo Carlini  <[email protected]>
76*f8a1b7d9SAlexander Kabaev
77*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Add has_nothrow_constructor.
78*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
79*f8a1b7d9SAlexander Kabaev	has_nothrow_constructor/has_nothrow_constructor.cc: New.
80*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
81*f8a1b7d9SAlexander Kabaev	has_nothrow_constructor/typedefs.cc: Likewise.
82*f8a1b7d9SAlexander Kabaev
83*f8a1b7d9SAlexander Kabaev2004-12-28  David Edelsohn  <[email protected]>
84*f8a1b7d9SAlexander Kabaev
85*f8a1b7d9SAlexander Kabaev	* configure.host (aix4*|aix5*): Add atomic_word_dir.
86*f8a1b7d9SAlexander Kabaev	* config/os/aix/atomic_word.h: New file.
87*f8a1b7d9SAlexander Kabaev
88*f8a1b7d9SAlexander Kabaev2004-12-27  Jason Merrill  <[email protected]>
89*f8a1b7d9SAlexander Kabaev
90*f8a1b7d9SAlexander Kabaev	Add memory barriers to the double-checked locking used for static
91*f8a1b7d9SAlexander Kabaev	initialization.
92*f8a1b7d9SAlexander Kabaev	* libsupc++/guard.cc (__test_and_acquire): Define default.
93*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
94*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
95*f8a1b7d9SAlexander Kabaev	(recursion_push, recursion_pop): New abstraction functions.
96*f8a1b7d9SAlexander Kabaev	(__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
97*f8a1b7d9SAlexander Kabaev	(__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
98*f8a1b7d9SAlexander Kabaev	* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
99*f8a1b7d9SAlexander Kabaev	from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
100*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
101*f8a1b7d9SAlexander Kabaev	* config/cpu/arm/cxxabi_tweaks.h: Likewise.
102*f8a1b7d9SAlexander Kabaev	* config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
103*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_WRITE_MEM_BARRIER): Define.
104*f8a1b7d9SAlexander Kabaev	* config/cpu/powerpc/atomic_word.h: Likewise.
105*f8a1b7d9SAlexander Kabaev	* config/cpu/sparc/atomic_word.h: Likewise.
106*f8a1b7d9SAlexander Kabaev	* config/cpu/generic/atomic_word.h: Define them, commented out.
107*f8a1b7d9SAlexander Kabaev	* include/bits/atomicity.h: Define defaults.
108*f8a1b7d9SAlexander Kabaev	* config/cpu/ia64/atomic_word.h (__test_and_acquire)
109*f8a1b7d9SAlexander Kabaev	(__set_and_release): New inlines.
110*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
111*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_GUARD_SET_AND_RELEASE): Define.
112*f8a1b7d9SAlexander Kabaev
113*f8a1b7d9SAlexander Kabaev	* libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
114*f8a1b7d9SAlexander Kabaev	abort();
115*f8a1b7d9SAlexander Kabaev
116*f8a1b7d9SAlexander Kabaev2004-12-27  Paolo Carlini  <[email protected]>
117*f8a1b7d9SAlexander Kabaev
118*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Rework the _DEFINE_SPEC* macros.
119*f8a1b7d9SAlexander Kabaev
120*f8a1b7d9SAlexander Kabaev2004-12-26  Paolo Carlini  <[email protected]>
121*f8a1b7d9SAlexander Kabaev
122*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits (__is_enum_helper): Slightly simplify,
123*f8a1b7d9SAlexander Kabaev	make __convert non template.
124*f8a1b7d9SAlexander Kabaev
125*f8a1b7d9SAlexander Kabaev2004-12-26  Paolo Carlini  <[email protected]>
126*f8a1b7d9SAlexander Kabaev
127*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_pod, has_trivial_constructor,
128*f8a1b7d9SAlexander Kabaev	and has_trivial_destructor.
129*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
130*f8a1b7d9SAlexander Kabaev	has_trivial_constructor/has_trivial_constructor.cc: New.
131*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
132*f8a1b7d9SAlexander Kabaev	has_trivial_constructor/typedefs.cc: Likewise.
133*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
134*f8a1b7d9SAlexander Kabaev	has_trivial_destructor/has_trivial_destructor.cc: Likewise.
135*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
136*f8a1b7d9SAlexander Kabaev	has_trivial_destructor/typedefs.cc: Likewise.
137*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
138*f8a1b7d9SAlexander Kabaev	is_pod/is_pod.cc: Likewise.
139*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
140*f8a1b7d9SAlexander Kabaev	is_pod/typedefs.cc: Likewise.
141*f8a1b7d9SAlexander Kabaev
142*f8a1b7d9SAlexander Kabaev2004-12-25  Paolo Carlini  <[email protected]>
143*f8a1b7d9SAlexander Kabaev
144*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits (is_enum): Minor tweak.
145*f8a1b7d9SAlexander Kabaev
146*f8a1b7d9SAlexander Kabaev2004-12-25  Paolo Carlini  <[email protected]>
147*f8a1b7d9SAlexander Kabaev
148*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_enum (usual caveats about
149*f8a1b7d9SAlexander Kabaev	the nasty consequences of c++/19076...).
150*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h: Add ConvType.
151*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
152*f8a1b7d9SAlexander Kabaev	is_scalar/is_scalar.cc: New.
153*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
154*f8a1b7d9SAlexander Kabaev	is_scalar/typedefs.cc: Likewise.
155*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
156*f8a1b7d9SAlexander Kabaev	is_enum/is_enum.cc: Likewise.
157*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
158*f8a1b7d9SAlexander Kabaev	is_enum/typedefs.cc: Likewise.
159*f8a1b7d9SAlexander Kabaev
160*f8a1b7d9SAlexander Kabaev2004-12-24  Paolo Carlini  <[email protected]>
161*f8a1b7d9SAlexander Kabaev
162*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Add missing undef.
163*f8a1b7d9SAlexander Kabaev
164*f8a1b7d9SAlexander Kabaev2004-12-24  Paolo Carlini  <[email protected]>
165*f8a1b7d9SAlexander Kabaev
166*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_member_object_pointer,
167*f8a1b7d9SAlexander Kabaev	is_member_function_pointer. N.B. Due to c++/19076, the latter
168*f8a1b7d9SAlexander Kabaev	doesn't really work at the moment (a rather ugly work around
169*f8a1b7d9SAlexander Kabaev	will be provided in case the front-end bug doesn't get fixed
170*f8a1b7d9SAlexander Kabaev	soon); generalize and extend the _DEFINE_SPEC macros.
171*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
172*f8a1b7d9SAlexander Kabaev	is_member_pointer/is_member_pointer.cc: New.
173*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
174*f8a1b7d9SAlexander Kabaev	is_member_pointer/typedefs.cc: Likewise.
175*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
176*f8a1b7d9SAlexander Kabaev	is_member_function_pointer/is_member_function_pointer.cc: Likewise.
177*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
178*f8a1b7d9SAlexander Kabaev	is_member_function_pointer/typedefs.cc: Likewise.
179*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
180*f8a1b7d9SAlexander Kabaev	is_member_object_pointer/is_member_object_pointer.cc: Likewise.
181*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
182*f8a1b7d9SAlexander Kabaev	is_member_object_pointer/typedefs.cc: Likewise.
183*f8a1b7d9SAlexander Kabaev
184*f8a1b7d9SAlexander Kabaev2004-12-22  Paolo Carlini  <[email protected]>
185*f8a1b7d9SAlexander Kabaev
186*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits_fwd.h: New, forward declarations.
187*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Clean-up.
188*f8a1b7d9SAlexander Kabaev	* include/Makefile.am: Add.
189*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
190*f8a1b7d9SAlexander Kabaev
191*f8a1b7d9SAlexander Kabaev2004-12-20  Paolo Carlini  <[email protected]>
192*f8a1b7d9SAlexander Kabaev
193*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/peek/wchar_t/1.cc: New.
194*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/peek/wchar_t/12296.cc: Likewise.
195*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/peek/wchar_t/6414.cc: Likewise.
196*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/putback/wchar_t/1.cc: Likewise.
197*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/read/wchar_t/1.cc: Likewise.
198*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/read/wchar_t/2.cc: Likewise.
199*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/read/wchar_t/3.cc: Likewise.
200*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-1.cc: Likewise.
201*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Likewise.
202*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/wchar_t/8258.cc: Likewise.
203*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/2.cc: Likewise.
204*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-1.cc: Likewise.
205*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/8348-2.cc: Likewise.
206*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/
207*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Likewise.
208*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
209*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/wchar_t/sstream.cc: Likewise.
210*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/sentry/wchar_t/1.cc: Likewise.
211*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
212*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/sentry/wchar_t/2.cc: Likewise.
213*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/sentry/wchar_t/3.cc: Likewise.
214*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
215*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/2.cc: Likewise.
216*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
217*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/
218*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Likewise.
219*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
220*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/wchar_t/sstream.cc: Likewise.
221*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ws/wchar_t/1.cc: Likewise.
222*f8a1b7d9SAlexander Kabaev
223*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_extractor_other-1.tst: New.
224*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_extractor_other-1.txt: Likewise.
225*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_extractor_other-2.tst: Likewise.
226*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_seeks-1.tst: Likewise.
227*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_seeks-1.txt: Likewise.
228*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_unformatted-1.tst: Likewise.
229*f8a1b7d9SAlexander Kabaev	* testsuite/data/wistream_unformatted-1.txt: Likewise.
230*f8a1b7d9SAlexander Kabaev
231*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/2.cc:
232*f8a1b7d9SAlexander Kabaev	Use wistream_extractor_other-1.txt.
233*f8a1b7d9SAlexander Kabaev
234*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/peek/char/6414.cc: Minor clean-up.
235*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
236*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
237*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
238*f8a1b7d9SAlexander Kabaev
239*f8a1b7d9SAlexander Kabaev2004-12-19  Paolo Carlini  <[email protected]>
240*f8a1b7d9SAlexander Kabaev
241*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/exceptions/wchar_t/9561.cc: New.
242*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
243*f8a1b7d9SAlexander Kabaev	01.cc: Likewise.
244*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
245*f8a1b7d9SAlexander Kabaev	02.cc: Likewise.
246*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
247*f8a1b7d9SAlexander Kabaev	03.cc: Likewise.
248*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
249*f8a1b7d9SAlexander Kabaev	06.cc: Likewise.
250*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
251*f8a1b7d9SAlexander Kabaev	07.cc: Likewise.
252*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
253*f8a1b7d9SAlexander Kabaev	08.cc: Likewise.
254*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
255*f8a1b7d9SAlexander Kabaev	09.cc: Likewise.
256*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
257*f8a1b7d9SAlexander Kabaev	10.cc: Likewise.
258*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
259*f8a1b7d9SAlexander Kabaev	11.cc: Likewise.
260*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
261*f8a1b7d9SAlexander Kabaev	12.cc: Likewise.
262*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
263*f8a1b7d9SAlexander Kabaev	13.cc: Likewise.
264*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
265*f8a1b7d9SAlexander Kabaev	9555-ia.cc: Likewise.
266*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
267*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Likewise.
268*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
269*f8a1b7d9SAlexander Kabaev	exceptions_failbit.cc: Likewise.
270*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
271*f8a1b7d9SAlexander Kabaev	exceptions_failbit_throw.cc: Likewise.
272*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
273*f8a1b7d9SAlexander Kabaev	1.cc: Likewise.
274*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
275*f8a1b7d9SAlexander Kabaev	11095-i.cc: Likewise.
276*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
277*f8a1b7d9SAlexander Kabaev	2.cc: Likewise.
278*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
279*f8a1b7d9SAlexander Kabaev	3.cc: Likewise.
280*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/wchar_t/
281*f8a1b7d9SAlexander Kabaev	9555-ic.cc: Likewise.
282*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
283*f8a1b7d9SAlexander Kabaev	1.cc: Likewise.
284*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
285*f8a1b7d9SAlexander Kabaev	2.cc: Likewise.
286*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
287*f8a1b7d9SAlexander Kabaev	3.cc: Likewise.
288*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
289*f8a1b7d9SAlexander Kabaev	9318-in.cc: Likewise.
290*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
291*f8a1b7d9SAlexander Kabaev	9424-in.cc: Likewise.
292*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
293*f8a1b7d9SAlexander Kabaev	9555-io.cc: Likewise.
294*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
295*f8a1b7d9SAlexander Kabaev	error_failbit.cc: Likewise.
296*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
297*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Likewise.
298*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
299*f8a1b7d9SAlexander Kabaev	exceptions_failbit_throw.cc: Likewise.
300*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/wchar_t/
301*f8a1b7d9SAlexander Kabaev	exceptions_null.cc: Likewise.
302*f8a1b7d9SAlexander Kabaev
303*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/char/2.cc: Minor
304*f8a1b7d9SAlexander Kabaev	tweaks.
305*f8a1b7d9SAlexander Kabaev
306*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_io.h (struct fail_buf): Fix type of
307*f8a1b7d9SAlexander Kabaev	dummy return values.
308*f8a1b7d9SAlexander Kabaev
309*f8a1b7d9SAlexander Kabaev2004-12-19  Dhruv Matani  <[email protected]>
310*f8a1b7d9SAlexander Kabaev
311*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h: Make doxygen style comments for
312*f8a1b7d9SAlexander Kabaev	internal functions and classes.
313*f8a1b7d9SAlexander Kabaev
314*f8a1b7d9SAlexander Kabaev2004-12-19  Dhruv Matani  <[email protected]>
315*f8a1b7d9SAlexander Kabaev
316*f8a1b7d9SAlexander Kabaev	* docs/html/20_util/allocator.html: Correct link.
317*f8a1b7d9SAlexander Kabaev	* docs/html/ext/ballocator_doc.txt: Remove.
318*f8a1b7d9SAlexander Kabaev	* docs/html/ext/ballocator_doc.html: Add.
319*f8a1b7d9SAlexander Kabaev
320*f8a1b7d9SAlexander Kabaev2004-12-16  Danny Smith  <[email protected]>
321*f8a1b7d9SAlexander Kabaev
322*f8a1b7d9SAlexander Kabaev	PR target/18997
323*f8a1b7d9SAlexander Kabaev	* config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
324*f8a1b7d9SAlexander Kabaev	Define to 0 for __CYGWIN__.
325*f8a1b7d9SAlexander Kabaev
326*f8a1b7d9SAlexander Kabaev2004-12-16  Paolo Carlini  <[email protected]>
327*f8a1b7d9SAlexander Kabaev
328*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement add_const, add_volatile,
329*f8a1b7d9SAlexander Kabaev	and add_cv.
330*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
331*f8a1b7d9SAlexander Kabaev	add_const.cc: New.
332*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
333*f8a1b7d9SAlexander Kabaev	add_cv.cc: Likewise.
334*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
335*f8a1b7d9SAlexander Kabaev	add_volatile.cc: Likewise.
336*f8a1b7d9SAlexander Kabaev
337*f8a1b7d9SAlexander Kabaev2004-12-16  Paolo Carlini  <[email protected]>
338*f8a1b7d9SAlexander Kabaev
339*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_function.
340*f8a1b7d9SAlexander Kabaev	(struct __sfinae_types, struct __is_function_helper): New.
341*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
342*f8a1b7d9SAlexander Kabaev	is_object/is_object.cc: New.
343*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
344*f8a1b7d9SAlexander Kabaev	is_object/typedefs.cc: Likewise.
345*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
346*f8a1b7d9SAlexander Kabaev	is_function/is_function.cc: Likewise.
347*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
348*f8a1b7d9SAlexander Kabaev	is_function/typedefs.cc: Likewise.
349*f8a1b7d9SAlexander Kabaev
350*f8a1b7d9SAlexander Kabaev2004-12-13  Paolo Carlini  <[email protected]>
351*f8a1b7d9SAlexander Kabaev
352*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits (extent): Minor tweak (i.e., public).
353*f8a1b7d9SAlexander Kabaev
354*f8a1b7d9SAlexander Kabaev2004-12-12  Paolo Carlini  <[email protected]>
355*f8a1b7d9SAlexander Kabaev
356*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Minor tweak.
357*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/extent/
358*f8a1b7d9SAlexander Kabaev	typedefs.cc: Fix date.
359*f8a1b7d9SAlexander Kabaev
360*f8a1b7d9SAlexander Kabaev2004-12-12  Paolo Carlini  <[email protected]>
361*f8a1b7d9SAlexander Kabaev
362*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement extent.
363*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/extent/
364*f8a1b7d9SAlexander Kabaev	extent.cc: New.
365*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/extent/
366*f8a1b7d9SAlexander Kabaev	typedefs.cc: Likewise.
367*f8a1b7d9SAlexander Kabaev
368*f8a1b7d9SAlexander Kabaev2004-12-12  Paolo Carlini  <[email protected]>
369*f8a1b7d9SAlexander Kabaev
370*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_pointer, remove_pointer,
371*f8a1b7d9SAlexander Kabaev	and add_pointer; reformat.
372*f8a1b7d9SAlexander Kabaev	(_DEFINE_PRIMARY_SPEC_HELPER, _DEFINE_PRIMARY_SPEC): Generalize
373*f8a1b7d9SAlexander Kabaev	and rename to _DEFINE_SPEC_HELPER and _DEFINE_SPEC; update uses.
374*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/pointer_modifications/
375*f8a1b7d9SAlexander Kabaev	add_pointer.cc: New.
376*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/pointer_modifications/
377*f8a1b7d9SAlexander Kabaev	remove_pointer.cc: Likewise.
378*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
379*f8a1b7d9SAlexander Kabaev	is_pointer/is_pointer.cc: Likewise.
380*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
381*f8a1b7d9SAlexander Kabaev	is_pointer/typedefs.cc: Likewise.
382*f8a1b7d9SAlexander Kabaev
383*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
384*f8a1b7d9SAlexander Kabaev	is_reference/is_reference.cc: Slightly tweak consistently.
385*f8a1b7d9SAlexander Kabaev
386*f8a1b7d9SAlexander Kabaev2004-12-11  Paolo Carlini  <[email protected]>
387*f8a1b7d9SAlexander Kabaev
388*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement rank.
389*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h (test_property): Generalize to any
390*f8a1b7d9SAlexander Kabaev	value_type.
391*f8a1b7d9SAlexander Kabaev	(test_category, test_relationship): Slightly tweak consistently.
392*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/rank/
393*f8a1b7d9SAlexander Kabaev	rank.cc: New.
394*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/rank/
395*f8a1b7d9SAlexander Kabaev	typedefs.cc: Likewise.
396*f8a1b7d9SAlexander Kabaev
397*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
398*f8a1b7d9SAlexander Kabaev	is_compound/is_compound.cc: New.
399*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
400*f8a1b7d9SAlexander Kabaev	is_compound/typedefs.cc: Likewise.
401*f8a1b7d9SAlexander Kabaev
402*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
403*f8a1b7d9SAlexander Kabaev	is_arithmetic/is_arithmetic.cc: Tweak consistently with the
404*f8a1b7d9SAlexander Kabaev	testsuite_tr1.h changes.
405*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
406*f8a1b7d9SAlexander Kabaev	is_fundamental/is_fundamental.cc: Likewise.
407*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
408*f8a1b7d9SAlexander Kabaev	is_array/is_array.cc: Likewise.
409*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
410*f8a1b7d9SAlexander Kabaev	is_floating_point/is_floating_point.cc: Likewise.
411*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
412*f8a1b7d9SAlexander Kabaev	is_integral/is_integral.cc: Likewise.
413*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
414*f8a1b7d9SAlexander Kabaev	is_reference/is_reference.cc: Likewise.
415*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
416*f8a1b7d9SAlexander Kabaev	is_void/is_void.cc: Likewise.
417*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/relationships_between_types/
418*f8a1b7d9SAlexander Kabaev	is_same/is_same.cc: Likewise.
419*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/is_const/
420*f8a1b7d9SAlexander Kabaev	is_const.cc: Likewise.
421*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/is_volatile/
422*f8a1b7d9SAlexander Kabaev	is_volatile.cc: Likewise.
423*f8a1b7d9SAlexander Kabaev
424*f8a1b7d9SAlexander Kabaev2004-12-10  Paolo Carlini  <[email protected]>
425*f8a1b7d9SAlexander Kabaev
426*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement remove_const, remove_volatile,
427*f8a1b7d9SAlexander Kabaev	and remove_cv.
428*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
429*f8a1b7d9SAlexander Kabaev	remove_const.cc: New.
430*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
431*f8a1b7d9SAlexander Kabaev	remove_cv.cc: Likewise.
432*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/const_volatile_modifications/
433*f8a1b7d9SAlexander Kabaev	remove_volatile.cc: Likewise.
434*f8a1b7d9SAlexander Kabaev
435*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
436*f8a1b7d9SAlexander Kabaev	is_array/is_array.cc: Slightly tweak consistently, remove typedefs,
437*f8a1b7d9SAlexander Kabaev	add a few tests.
438*f8a1b7d9SAlexander Kabaev
439*f8a1b7d9SAlexander Kabaev2004-12-09  Paolo Carlini  <[email protected]>
440*f8a1b7d9SAlexander Kabaev
441*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement remove_extent and
442*f8a1b7d9SAlexander Kabaev	remove_all_extents.
443*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/array_modifications/
444*f8a1b7d9SAlexander Kabaev	remove_all_extents.cc: New.
445*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/array_modifications/
446*f8a1b7d9SAlexander Kabaev	remove_extent.cc: Likewise.
447*f8a1b7d9SAlexander Kabaev
448*f8a1b7d9SAlexander Kabaev2004-12-08  Paolo Carlini  <[email protected]>
449*f8a1b7d9SAlexander Kabaev
450*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_same, add_reference and
451*f8a1b7d9SAlexander Kabaev	remove_reference.
452*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h (test_relationship): New.
453*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/reference_modifications/
454*f8a1b7d9SAlexander Kabaev	add_reference.cc: New.
455*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/reference_modifications/
456*f8a1b7d9SAlexander Kabaev	remove_reference.cc: Likewise.
457*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/relationships_between_types/
458*f8a1b7d9SAlexander Kabaev	is_same/is_same.cc: Likewise.
459*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/relationships_between_types/
460*f8a1b7d9SAlexander Kabaev	is_same/typedefs.cc: Likewise.
461*f8a1b7d9SAlexander Kabaev
462*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/is_const/
463*f8a1b7d9SAlexander Kabaev	is_const.cc: Minor tweaks.
464*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/is_volatile/
465*f8a1b7d9SAlexander Kabaev	is_volatile.cc: Likewise.
466*f8a1b7d9SAlexander Kabaev
467*f8a1b7d9SAlexander Kabaev2004-12-08  David Edelsohn  <[email protected]>
468*f8a1b7d9SAlexander Kabaev
469*f8a1b7d9SAlexander Kabaev	* Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and
470*f8a1b7d9SAlexander Kabaev	PICFLAG.
471*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerated.
472*f8a1b7d9SAlexander Kabaev
473*f8a1b7d9SAlexander Kabaev2004-12-07  Paolo Carlini  <[email protected]>
474*f8a1b7d9SAlexander Kabaev
475*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_const and is_volatile.
476*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h (test_property): New.
477*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
478*f8a1b7d9SAlexander Kabaev	is_const/is_const.c: New.
479*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
480*f8a1b7d9SAlexander Kabaev	is_const/typedefs.cc: Likewise.
481*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
482*f8a1b7d9SAlexander Kabaev	is_volatile/is_volatile.cc: Likewise.
483*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/type_properties/
484*f8a1b7d9SAlexander Kabaev	is_volatile/typedefs.cc: Likewise.
485*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
486*f8a1b7d9SAlexander Kabaev	is_arithmetic/is_arithmetic.cc: Slightly tweak to use ClassType
487*f8a1b7d9SAlexander Kabaev	from testsuite_tr1.h.
488*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
489*f8a1b7d9SAlexander Kabaev	is_fundamental/is_fundamental.cc: Likewise.
490*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
491*f8a1b7d9SAlexander Kabaev	is_array/is_array.cc: Likewise.
492*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
493*f8a1b7d9SAlexander Kabaev	is_floating_point/is_floating_point.cc: Likewise.
494*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
495*f8a1b7d9SAlexander Kabaev	is_integral/is_integral.cc: Likewise.
496*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
497*f8a1b7d9SAlexander Kabaev	is_reference/is_reference.cc: Likewise.
498*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
499*f8a1b7d9SAlexander Kabaev	is_void/is_void.cc: Likewise.
500*f8a1b7d9SAlexander Kabaev
501f260e61bSAlexander Kabaev2004-12-06  Paolo Carlini  <[email protected]>
502f260e61bSAlexander Kabaev
503*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: Implement is_reference.
504*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
505*f8a1b7d9SAlexander Kabaev	is_reference/is_reference.cc: New.
506*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
507*f8a1b7d9SAlexander Kabaev	is_reference/typedefs.cc: Likewise.
508*f8a1b7d9SAlexander Kabaev
509*f8a1b7d9SAlexander Kabaev2004-12-05  Paolo Carlini  <[email protected]>
510*f8a1b7d9SAlexander Kabaev
511f260e61bSAlexander Kabaev	PR libstdc++/18837
512f260e61bSAlexander Kabaev	* testsuite/testsuite_performance.h: Fix mallinfo macros for
513f260e61bSAlexander Kabaev	hpux.
514f260e61bSAlexander Kabaev
515*f8a1b7d9SAlexander Kabaev2004-12-04  Richard Henderson  <[email protected]>
516f260e61bSAlexander Kabaev
517*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/complex/pow.cc: Use -mieee on alpha.
518*f8a1b7d9SAlexander Kabaev
519*f8a1b7d9SAlexander Kabaev2004-12-04  Richard Henderson  <[email protected]>
520*f8a1b7d9SAlexander Kabaev
521*f8a1b7d9SAlexander Kabaev	* include/ext/malloc_allocator.h: Include cstdlib.
522*f8a1b7d9SAlexander Kabaev
523*f8a1b7d9SAlexander Kabaev2004-12-04  Paolo Carlini  <[email protected]>
524*f8a1b7d9SAlexander Kabaev
525*f8a1b7d9SAlexander Kabaev	* include/tr1/type_traits: New.
526*f8a1b7d9SAlexander Kabaev	* include/Makefile.am: Add.
527*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
528*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_tr1.h: New.
529*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
530*f8a1b7d9SAlexander Kabaev	is_arithmetic/is_arithmetic.cc: New.
531*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
532*f8a1b7d9SAlexander Kabaev	is_arithmetic/typedefs.cc: Likewise.
533*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
534*f8a1b7d9SAlexander Kabaev	is_fundamental/is_fundamental.cc: Likewise.
535*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/composite_type_traits/
536*f8a1b7d9SAlexander Kabaev	is_fundamental/typedefs.cc: Likewise.
537*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/helper_classes/
538*f8a1b7d9SAlexander Kabaev	true_false_type.cc: Likewise.
539*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/helper_classes/
540*f8a1b7d9SAlexander Kabaev	true_false_type_typedefs.cc: Likewise.
541*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/helper_classes/
542*f8a1b7d9SAlexander Kabaev	typedefs.cc: Likewise.
543*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
544*f8a1b7d9SAlexander Kabaev	is_array/is_array.cc: Likewise.
545*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
546*f8a1b7d9SAlexander Kabaev	is_array/typedefs.cc: Likewise.
547*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
548*f8a1b7d9SAlexander Kabaev	is_floating_point/is_floating_point.cc: Likewise.
549*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
550*f8a1b7d9SAlexander Kabaev	is_floating_point/typedefs.cc: Likewise.
551*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
552*f8a1b7d9SAlexander Kabaev	is_integral/is_integral.cc: Likewise.
553*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
554*f8a1b7d9SAlexander Kabaev	is_integral/typedefs.cc: Likewise.
555*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
556*f8a1b7d9SAlexander Kabaev	is_void/is_void.cc: Likewise.
557*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/4_metaprogramming/primary_type_categories/
558*f8a1b7d9SAlexander Kabaev	is_void/typedefs.cc: Likewise.
559*f8a1b7d9SAlexander Kabaev
560*f8a1b7d9SAlexander Kabaev2004-12-02  Paolo Carlini  <[email protected]>
561*f8a1b7d9SAlexander Kabaev
562*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_io.h (class sync_buf): New, templatized
563*f8a1b7d9SAlexander Kabaev	version of sync_streambuf; add typedefs for streambuf/wstreambuf.
564*f8a1b7d9SAlexander Kabaev	(class fail_buf): Likewise, for fail_streambuf.
565*f8a1b7d9SAlexander Kabaev	(class fail_num_get): Templatize and add char/wchar_t typedefs.
566*f8a1b7d9SAlexander Kabaev	(class fail_num_put): Likewise.
567*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
568*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Use the latter.
569*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/
570*f8a1b7d9SAlexander Kabaev	exceptions_failbit_throw.cc: Likewise.
571*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
572*f8a1b7d9SAlexander Kabaev	exceptions_badbit_throw.cc: Likewise.
573*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/
574*f8a1b7d9SAlexander Kabaev	exceptions_failbit_throw.cc: Likewise.
575*f8a1b7d9SAlexander Kabaev
576*f8a1b7d9SAlexander Kabaev2004-12-01  Paolo Carlini  <[email protected]>
577*f8a1b7d9SAlexander Kabaev
578*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/get/wchar_t/1.cc: New.
579*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/get/wchar_t/2.cc: Likewise.
580*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/get/wchar_t/3.cc: Likewise.
581*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/wchar_t/1.cc: Likewise.
582*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/wchar_t/2.cc: Likewise.
583*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/wchar_t/3.cc: Likewise.
584*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/wchar_t/6360.cc: Likewise.
585*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/wchar_t/7220.cc: Likewise.
586*f8a1b7d9SAlexander Kabaev
587*f8a1b7d9SAlexander Kabaev2004-11-29  Paolo Carlini  <[email protected]>
588*f8a1b7d9SAlexander Kabaev
589*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/char/18654.cc: Use
590*f8a1b7d9SAlexander Kabaev        better names.
591*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: Same.
592*f8a1b7d9SAlexander Kabaev
593*f8a1b7d9SAlexander Kabaev2004-11-29  Paolo Carlini  <[email protected]>
594*f8a1b7d9SAlexander Kabaev
595*f8a1b7d9SAlexander Kabaev	PR libstdc++/18654
596*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (_Rep::_S_create): When shrinking,
597*f8a1b7d9SAlexander Kabaev	do not round to pagesize.
598*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/char/18654.cc: New.
599*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/wchar_t/18654.cc: New.
600*f8a1b7d9SAlexander Kabaev
601*f8a1b7d9SAlexander Kabaev2004-11-27  Paolo Carlini  <[email protected]>
602*f8a1b7d9SAlexander Kabaev
603*f8a1b7d9SAlexander Kabaev	PR libstdc++/18690
604*f8a1b7d9SAlexander Kabaev	* include/tr1/utility (get(pair), get(const pair)): Change
605*f8a1b7d9SAlexander Kabaev	occurrences of _I to _Int.
606*f8a1b7d9SAlexander Kabaev
607*f8a1b7d9SAlexander Kabaev2004-11-27  Paolo Carlini  <[email protected]>
608*f8a1b7d9SAlexander Kabaev
609*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: Fix typo.
610*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: Likewise.
611*f8a1b7d9SAlexander Kabaev
612*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/17038.cc: Use VERIFY.
613*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: Likewise.
614*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: Likewise.
615*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ios/exceptions/char/2.cc: Likewise.
616*f8a1b7d9SAlexander Kabaev
617*f8a1b7d9SAlexander Kabaev2004-11-26  Paolo Carlini  <[email protected]>
618*f8a1b7d9SAlexander Kabaev
619*f8a1b7d9SAlexander Kabaev	DR 243. get and getline when sentry reports failure [WP]
620*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (istream<>::get, istream<>::getline):
621*f8a1b7d9SAlexander Kabaev	Store a null character only if the array has a non-zero size.
622*f8a1b7d9SAlexander Kabaev	* src/istream.cc (istream<char>::getline, istream<wchar_t>::getline):
623*f8a1b7d9SAlexander Kabaev	Likewise.
624*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/get/char/3.cc: New.
625*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/6.cc: New.
626*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/6.cc: New.
627*f8a1b7d9SAlexander Kabaev	* docs/html/ext/howto.html: Add an entry for DR 243.
628*f8a1b7d9SAlexander Kabaev
629*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: New.
630*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: New.
631*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/3.cc: New.
632*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: New.
633*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: New.
634*f8a1b7d9SAlexander Kabaev
635*f8a1b7d9SAlexander Kabaev2004-11-24  Kelley Cook  <[email protected]>
636*f8a1b7d9SAlexander Kabaev
637*f8a1b7d9SAlexander Kabaev	* configure: Regenerate for libtool change.
638*f8a1b7d9SAlexander Kabaev
639*f8a1b7d9SAlexander Kabaev2004-11-24  Kelley Cook  <[email protected]>
640*f8a1b7d9SAlexander Kabaev
641*f8a1b7d9SAlexander Kabaev	* Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
642*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Likewise.
643*f8a1b7d9SAlexander Kabaev	* libmath/Makefile.in: Likewise.
644*f8a1b7d9SAlexander Kabaev	* libsupc++/Makefile.in: Likewise.
645*f8a1b7d9SAlexander Kabaev	* po/Makefile.in: Likewise.
646*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Likewise.
647*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Likewise.
648f260e61bSAlexander Kabaev
649f260e61bSAlexander Kabaev2004-11-24  Jonathan Wakely  <[email protected]>
650f260e61bSAlexander Kabaev
651f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Fix incorrect link.
652f260e61bSAlexander Kabaev	* docs/html/documentation.html: Regenerate.
653f260e61bSAlexander Kabaev
654*f8a1b7d9SAlexander Kabaev2004-11-24  Nathan Myers  <[email protected]>
655*f8a1b7d9SAlexander Kabaev
656*f8a1b7d9SAlexander Kabaev	* include/bits/streambuf_iterator.h
657*f8a1b7d9SAlexander Kabaev	(istreambuf_iterator<>::operator++(), operator++(int)): Don't
658*f8a1b7d9SAlexander Kabaev	check unnecessarily the return value of _M_sbuf->sbumpc().
659*f8a1b7d9SAlexander Kabaev
660*f8a1b7d9SAlexander Kabaev2004-11-24  Benjamin Kosnik  <[email protected]>
661*f8a1b7d9SAlexander Kabaev
662*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (tr1_headers): Add utility, functional.
663*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
664*f8a1b7d9SAlexander Kabaev
665*f8a1b7d9SAlexander Kabaev2004-11-24  Chris Jefferson  <[email protected]>
666*f8a1b7d9SAlexander Kabaev
667*f8a1b7d9SAlexander Kabaev	* include/tr1/tuple(operator!=): Change operator
668*f8a1b7d9SAlexander Kabaev	definition to match (draft) technical report.
669*f8a1b7d9SAlexander Kabaev	(operator>): Same.
670*f8a1b7d9SAlexander Kabaev	(operator<=): Same.
671*f8a1b7d9SAlexander Kabaev	(operator>=): Same.
672*f8a1b7d9SAlexander Kabaev	(ref): Move to include/tr1/functional.
673*f8a1b7d9SAlexander Kabaev	(cref): Same.
674*f8a1b7d9SAlexander Kabaev	(tuple_size<pair>): Move to include/tr1/utility.
675*f8a1b7d9SAlexander Kabaev	(tuple_element<,pair>): Same.
676*f8a1b7d9SAlexander Kabaev	* include/tr1/functional: New.
677*f8a1b7d9SAlexander Kabaev	* include/tr1/utility: New.
678*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_container/utility/pair.cc: New.
679*f8a1b7d9SAlexander Kabaev
680*f8a1b7d9SAlexander Kabaev2004-11-24  Volker Reichelt  <[email protected]>
681*f8a1b7d9SAlexander Kabaev
682*f8a1b7d9SAlexander Kabaev	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
683*f8a1b7d9SAlexander Kabaev	(do_out, do_unshift, do_in): Remove redundant typedef.
684*f8a1b7d9SAlexander Kabaev
685*f8a1b7d9SAlexander Kabaev2004-11-23  Chris Jefferson  <[email protected]>
686*f8a1b7d9SAlexander Kabaev
687*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_iterators.h: New.
688*f8a1b7d9SAlexander Kabaev        * testsuite/25_algorithms/search_n/iterator.cc: New.
689*f8a1b7d9SAlexander Kabaev        * testsuite/performance/25_algorithms/search_n.cc: New.
690*f8a1b7d9SAlexander Kabaev
691*f8a1b7d9SAlexander Kabaev2004-11-23  John David Anglin  <[email protected]>
692*f8a1b7d9SAlexander Kabaev
693*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp.
694*f8a1b7d9SAlexander Kabaev
695*f8a1b7d9SAlexander Kabaev2004-11-23  Benjamin Kosnik  <[email protected]>
696*f8a1b7d9SAlexander Kabaev
697*f8a1b7d9SAlexander Kabaev	* docs/doxygen/doxygroups.cc: Add std::tr1 namespace.
698*f8a1b7d9SAlexander Kabaev	* docs/doxygen/run_doxygen: Renames for std::tr1.
699*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Add cxxabi.h.
700*f8a1b7d9SAlexander Kabaev	* include/bits/*.tcc: Add file markup.
701*f8a1b7d9SAlexander Kabaev	* include/bits/allocator.h: Add link to allocator.html.
702*f8a1b7d9SAlexander Kabaev	* include/bits/atomicity.h: Add file markup.
703*f8a1b7d9SAlexander Kabaev	* include/bits/concurrence.h: Same.
704*f8a1b7d9SAlexander Kabaev	* include/bits/functexcept.h: Same.
705*f8a1b7d9SAlexander Kabaev	* include/ext*: Adjust file markup, remove GCC3 bits.
706*f8a1b7d9SAlexander Kabaev	* include/std/*: Adjust file markup, remove bits about renamed files.
707*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h: Add file markup.
708*f8a1b7d9SAlexander Kabaev	* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers.
709*f8a1b7d9SAlexander Kabaev
710*f8a1b7d9SAlexander Kabaev2004-11-22  Benjamin Kosnik  <[email protected]>
711*f8a1b7d9SAlexander Kabaev
712*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.h (isspace, isprint, isupper,
713*f8a1b7d9SAlexander Kabaev	islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph,
714*f8a1b7d9SAlexander Kabaev	toupper, tolower): Add doxygen markup.
715*f8a1b7d9SAlexander Kabaev	(codecvt_byname, ctype_byname, numpunct_byname, collate_byname,
716*f8a1b7d9SAlexander Kabaev	time_get_byname, time_put_byname, moneypunct_byname,
717*f8a1b7d9SAlexander Kabaev	messages_byname): Same.
718*f8a1b7d9SAlexander Kabaev	* include/std/std_fstream.h: Remove superfluous markup.
719*f8a1b7d9SAlexander Kabaev	* include/std/std_sstream.h: Same.
720*f8a1b7d9SAlexander Kabaev	* include/std/std_streambuf.h: Same.
721*f8a1b7d9SAlexander Kabaev	* include/ext/enc_filebuf.h: Adjust markup.
722*f8a1b7d9SAlexander Kabaev	* include/ext/stdio_filebuf.h: Same.
723*f8a1b7d9SAlexander Kabaev	* include/ext/stdio_sync_filebuf.h: Same.
724*f8a1b7d9SAlexander Kabaev	* include/bits/codecvt.h: Same.
725*f8a1b7d9SAlexander Kabaev	* config/os/gnu-linux/ctype_base.h: Same.
726*f8a1b7d9SAlexander Kabaev	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
727*f8a1b7d9SAlexander Kabaev	* include/tr1/array: Add markup.
728*f8a1b7d9SAlexander Kabaev	* include/tr1/tuple: Same.
729*f8a1b7d9SAlexander Kabaev
730*f8a1b7d9SAlexander Kabaev	* docs/doxygen/run_doxygen: Print arguments.
731*f8a1b7d9SAlexander Kabaev
732*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Tweaks.
733*f8a1b7d9SAlexander Kabaev
734*f8a1b7d9SAlexander Kabaev2004-11-19  Jonathan Wakely  <[email protected]>
735*f8a1b7d9SAlexander Kabaev
736*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h, include/bits/locale_classes.h,
737*f8a1b7d9SAlexander Kabaev	include/bits/valarray_after.h, include/bits/valarray_before.h,
738*f8a1b7d9SAlexander Kabaev	include/ext/stdio_sync_filebuf.h, include/std/std_algorithm.h,
739*f8a1b7d9SAlexander Kabaev	include/std/std_functional.h, include/std/std_memory.h,
740*f8a1b7d9SAlexander Kabaev	include/std/std_numeric.h: Doxygen fixes.
741*f8a1b7d9SAlexander Kabaev
742*f8a1b7d9SAlexander Kabaev2004-11-19  Paolo Carlini  <[email protected]>
743*f8a1b7d9SAlexander Kabaev
744*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/char/1.cc: In the checks
745*f8a1b7d9SAlexander Kabaev	use, more correctly (and consistently with other testcases) the
746*f8a1b7d9SAlexander Kabaev	return value of the facet (the iterator arguments are by value).
747*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/char/12791.cc: Likewise.
748*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Likewise.
749*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: Likewise.
750*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Likewise.
751*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
752*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/char/1.cc: Likewise.
753*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Likewise.
754*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
755*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
756*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_year/char/1.cc: Likewise.
757*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Likewise.
758*f8a1b7d9SAlexander Kabaev
759*f8a1b7d9SAlexander Kabaev2004-11-19  Jonathan Wakely  <[email protected]>
760*f8a1b7d9SAlexander Kabaev
761*f8a1b7d9SAlexander Kabaev	* Makefile.am (doxygen, doxygen-maint, doxygen-man): Remove extra '$'
762*f8a1b7d9SAlexander Kabaev	from host_alias variable.
763*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerate.
764*f8a1b7d9SAlexander Kabaev
765*f8a1b7d9SAlexander Kabaev2004-11-19  Chris Jefferson  <[email protected]>
766*f8a1b7d9SAlexander Kabaev
767*f8a1b7d9SAlexander Kabaev	* include/bits/stl_list.h (list::back, list::back const):
768*f8a1b7d9SAlexander Kabaev	Don't decrement temporary.
769*f8a1b7d9SAlexander Kabaev
770*f8a1b7d9SAlexander Kabaev2004-11-19  Paolo Carlini  <[email protected]>
771*f8a1b7d9SAlexander Kabaev
772*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h (deque::front, deque::front const,
773*f8a1b7d9SAlexander Kabaev	deque::back, deque::back const): Slightly tweak for stylistic
774*f8a1b7d9SAlexander Kabaev	consistency.
775*f8a1b7d9SAlexander Kabaev
776f260e61bSAlexander Kabaev2004-11-18  Paolo Carlini  <[email protected]>
777f260e61bSAlexander Kabaev
778*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/numeric/sum_diff.cc: Use VERIFY.
779*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/1.cc: Likewise.
780*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/2.cc: Likewise.
781*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/3.cc: Likewise.
782*f8a1b7d9SAlexander Kabaev	* testsuite/ext/enc_filebuf/char/13598.cc: Likewise.
783*f8a1b7d9SAlexander Kabaev
784*f8a1b7d9SAlexander Kabaev2004-11-18  Paolo Carlini  <[email protected]>
785*f8a1b7d9SAlexander Kabaev
786*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::do_get(void*&)):
787*f8a1b7d9SAlexander Kabaev	If the failbit is set, don't set it again.
788*f8a1b7d9SAlexander Kabaev	(money_get<>::_M_extract): Minor stylistic tweak: consistently
789*f8a1b7d9SAlexander Kabaev	with the other functions, take care of eofbit at the end.
790*f8a1b7d9SAlexander Kabaev
791*f8a1b7d9SAlexander Kabaev2004-11-18  Paolo Carlini  <[email protected]>
792*f8a1b7d9SAlexander Kabaev
793*f8a1b7d9SAlexander Kabaev	DR 434. bitset::to_string() hard to use [Ready]
794*f8a1b7d9SAlexander Kabaev	* include/std/std_bitset.h (to_string): Add three overloads, taking
795*f8a1b7d9SAlexander Kabaev	fewer template arguments.
796*f8a1b7d9SAlexander Kabaev	* docs/html/ext/howto.html: Add an entry for DR 434.
797*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/bitset/to_string/1.cc: New.
798*f8a1b7d9SAlexander Kabaev
799*f8a1b7d9SAlexander Kabaev2004-11-17  Paolo Carlini  <[email protected]>
800*f8a1b7d9SAlexander Kabaev
801*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
802*f8a1b7d9SAlexander Kabaev	_CharT)): Remove temporary kludge for libstdc++/15002.
803*f8a1b7d9SAlexander Kabaev	* include/std/std_streambuf.h (class basic_streambuf): Declare
804*f8a1b7d9SAlexander Kabaev	getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
805*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (getline(basic_istream<>&,
806*f8a1b7d9SAlexander Kabaev	basic_string<>&, _CharT)): Declare optimized specializations for
807*f8a1b7d9SAlexander Kabaev	char and wchar_t, using protected members of basic_streambuf.
808*f8a1b7d9SAlexander Kabaev	* src/istream.cc: Define the latter.
809*f8a1b7d9SAlexander Kabaev
810*f8a1b7d9SAlexander Kabaev2004-11-16  Jonathan Wakely  <[email protected]>
811*f8a1b7d9SAlexander Kabaev
812*f8a1b7d9SAlexander Kabaev	* docs/html/19_diagnostics/howto.html: Document change from
813*f8a1b7d9SAlexander Kabaev	_GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.
814*f8a1b7d9SAlexander Kabaev
815*f8a1b7d9SAlexander Kabaev2004-11-16  Matthias Klose  <[email protected]>
816*f8a1b7d9SAlexander Kabaev
817*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Set HAVE_DOT to NO.
818*f8a1b7d9SAlexander Kabaev
819*f8a1b7d9SAlexander Kabaev2004-11-16  Matthias Klose  <[email protected]>
820*f8a1b7d9SAlexander Kabaev
821*f8a1b7d9SAlexander Kabaev	* Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias
822*f8a1b7d9SAlexander Kabaev	instead of build_alias.
823*f8a1b7d9SAlexander Kabaev	* docs/doxygen/run_doxygen: Likewise.
824*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Likewise.
825*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerate.
826*f8a1b7d9SAlexander Kabaev
827*f8a1b7d9SAlexander Kabaev2004-11-15  Paolo Carlini  <[email protected]>
828*f8a1b7d9SAlexander Kabaev
829*f8a1b7d9SAlexander Kabaev	* include/bits/streambuf.tcc (__copy_streambufs): Provide
830*f8a1b7d9SAlexander Kabaev	a generic version of the function, not using the protected
831*f8a1b7d9SAlexander Kabaev	members of basic_streambuf.
832*f8a1b7d9SAlexander Kabaev	* include/std/std_streambuf.h (__copy_streambufs): Declare
833*f8a1b7d9SAlexander Kabaev	optimized specializations for char and wchar_t.
834*f8a1b7d9SAlexander Kabaev	* src/streambuf.cc: New file, define the latter.
835*f8a1b7d9SAlexander Kabaev	* src/Makefile.am: Add.
836*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Regenerate.
837*f8a1b7d9SAlexander Kabaev
838*f8a1b7d9SAlexander Kabaev2004-11-15  Matthias Klose  <[email protected]>
839*f8a1b7d9SAlexander Kabaev
840*f8a1b7d9SAlexander Kabaev	* docs/doxygen/run_doxygen: Add --build_alias option,
841*f8a1b7d9SAlexander Kabaev	substitute it in docs/doxygen/user.cfg.in.
842*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Use build_alias.
843*f8a1b7d9SAlexander Kabaev	* Makefile.am: Pass --build_alias to run_doxygen
844*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerate.
845*f8a1b7d9SAlexander Kabaev
846*f8a1b7d9SAlexander Kabaev2004-11-15  Benjamin Kosnik  <[email protected]>
847*f8a1b7d9SAlexander Kabaev
848*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4.
849*f8a1b7d9SAlexander Kabaev
850*f8a1b7d9SAlexander Kabaev2004-11-15  Paolo Carlini  <[email protected]>
851*f8a1b7d9SAlexander Kabaev
852*f8a1b7d9SAlexander Kabaev	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33.
853*f8a1b7d9SAlexander Kabaev
854*f8a1b7d9SAlexander Kabaev2004-11-14  Paolo Carlini  <[email protected]>
855*f8a1b7d9SAlexander Kabaev
856*f8a1b7d9SAlexander Kabaev	* include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get):
857*f8a1b7d9SAlexander Kabaev	Slightly tweak for clarity (also leads to measurably better code).
858*f8a1b7d9SAlexander Kabaev
859*f8a1b7d9SAlexander Kabaev2004-11-12  Andrew Pinski  <[email protected]>
860*f8a1b7d9SAlexander Kabaev
861*f8a1b7d9SAlexander Kabaev	PR other/14264
862*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C.
863*f8a1b7d9SAlexander Kabaev
864*f8a1b7d9SAlexander Kabaev2004-11-09  Paolo Carlini  <[email protected]>
865*f8a1b7d9SAlexander Kabaev
866f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (time_get<>::do_get_weekday,
867f260e61bSAlexander Kabaev	time_get<>::do_get_monthname): Absolutely avoid dereferencing
868f260e61bSAlexander Kabaev	end iterators.
869f260e61bSAlexander Kabaev
870f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
871f260e61bSAlexander Kabaev	Minor tweak.
872f260e61bSAlexander Kabaev
873f260e61bSAlexander Kabaev2004-11-08  Benjamin Kosnik  <[email protected]>
874f260e61bSAlexander Kabaev	    Doug Gregor  <[email protected]>
875f260e61bSAlexander Kabaev
876f260e61bSAlexander Kabaev	PR libstdc++/17664
877f260e61bSAlexander Kabaev	* src/debug.cc : Just use one mutex.
878f260e61bSAlexander Kabaev
879f260e61bSAlexander Kabaev2004-11-08  Benjamin Kosnik  <[email protected]>
880*f8a1b7d9SAlexander Kabaev
881*f8a1b7d9SAlexander Kabaev	* configure.ac (libtool_VERSION): To 6:4:0.
882*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
883*f8a1b7d9SAlexander Kabaev
884*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4.
885*f8a1b7d9SAlexander Kabaev
886*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Add more extension files.
887*f8a1b7d9SAlexander Kabaev
888*f8a1b7d9SAlexander Kabaev2004-11-08  Paolo Carlini  <[email protected]>
889*f8a1b7d9SAlexander Kabaev
890*f8a1b7d9SAlexander Kabaev	* include/bits/streambuf_iterator.h (class istreambuf_iterator):
891*f8a1b7d9SAlexander Kabaev	Consistently use _M_c to cache the current char, i.e., not only
892*f8a1b7d9SAlexander Kabaev	when operator++(int) is involved; change _M_c to mutable.
893*f8a1b7d9SAlexander Kabaev	(_M_get()): Always save the return value of _M_sbuf->sgetc() into
894*f8a1b7d9SAlexander Kabaev	_M_c.
895*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix
896*f8a1b7d9SAlexander Kabaev	(long standing) typo.
897*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
898*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
899*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
900*f8a1b7d9SAlexander Kabaev
901*f8a1b7d9SAlexander Kabaev2004-11-08  Paolo Carlini  <[email protected]>
902*f8a1b7d9SAlexander Kabaev
903*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (getline(char_type*, streamsize,
904*f8a1b7d9SAlexander Kabaev	char_type), ignore(streamsize), ignore(streamsize, int_type)):
905*f8a1b7d9SAlexander Kabaev	Restore a generic version of the functions, not using the
906*f8a1b7d9SAlexander Kabaev	protected members of basic_streambuf.
907*f8a1b7d9SAlexander Kabaev	* include/std/std_istream.h (getline(char_type*, streamsize,
908*f8a1b7d9SAlexander Kabaev	char_type), ignore(streamsize), ignore(streamsize, int_type)):
909*f8a1b7d9SAlexander Kabaev	Declare optimized specializations for char and wchar_t.
910*f8a1b7d9SAlexander Kabaev	* src/istream.cc: New file, define the latter.
911*f8a1b7d9SAlexander Kabaev	* src/Makefile.am: Add.
912*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Regenerate.
913*f8a1b7d9SAlexander Kabaev
914*f8a1b7d9SAlexander Kabaev2004-11-07  Paolo Carlini  <[email protected]>
915*f8a1b7d9SAlexander Kabaev
916*f8a1b7d9SAlexander Kabaev	* testsuite/performance/27_io/ifstream_getline-2.cc: New.
917*f8a1b7d9SAlexander Kabaev
918*f8a1b7d9SAlexander Kabaev2004-11-05  Benjamin Kosnik  <[email protected]>
919*f8a1b7d9SAlexander Kabaev
920*f8a1b7d9SAlexander Kabaev	PR libstdc++/17218
921*f8a1b7d9SAlexander Kabaev	PR libstdc++/17223
922*f8a1b7d9SAlexander Kabaev	* docs/doxygen/filter: Remove.
923*f8a1b7d9SAlexander Kabaev	* docs/doxygen/filter.sed: Remove.
924*f8a1b7d9SAlexander Kabaev	* docs/doxygen/mainpage.html: Add link to functions.
925*f8a1b7d9SAlexander Kabaev	* docs/doxygen/run_doxygen: Changes due to new source filtering.
926*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
927*f8a1b7d9SAlexander Kabaev	* include/bits/allocator.h: Tweaks for doxygen.
928*f8a1b7d9SAlexander Kabaev	* include/bits/char_traits.h: Same.
929*f8a1b7d9SAlexander Kabaev	* include/bits/codecvt.h: Same.
930*f8a1b7d9SAlexander Kabaev	* include/bits/concurrence.h: Same.
931*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.h: Same.
932*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h: Same.
933*f8a1b7d9SAlexander Kabaev	* include/ext/debug_allocator.h: Same.
934*f8a1b7d9SAlexander Kabaev	* include/ext/malloc_allocator.h: Same.
935*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h: Same.
936*f8a1b7d9SAlexander Kabaev	* include/ext/new_allocator.h: Same.
937*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Same.
938*f8a1b7d9SAlexander Kabaev	* include/ext/stdio_sync_filebuf.h: Same.
939*f8a1b7d9SAlexander Kabaev	* include/std/std_memory.h: Same.
940*f8a1b7d9SAlexander Kabaev	* include/tr1/array: Same.
941*f8a1b7d9SAlexander Kabaev	* include/tr1/tuple: Same.
942*f8a1b7d9SAlexander Kabaev	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
943*f8a1b7d9SAlexander Kabaev	* config/os/gnu-linux/ctype_base.h: Same.
944*f8a1b7d9SAlexander Kabaev
945*f8a1b7d9SAlexander Kabaev2004-11-04  Paolo Carlini  <[email protected]>
946*f8a1b7d9SAlexander Kabaev
947*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::do_get(bool&)):
948*f8a1b7d9SAlexander Kabaev	Evaluate __beg == __end the exact strict minimum number of times.
949*f8a1b7d9SAlexander Kabaev
950*f8a1b7d9SAlexander Kabaev2004-11-03  Jonathan Wakely  <[email protected]>
951*f8a1b7d9SAlexander Kabaev
952*f8a1b7d9SAlexander Kabaev	* include/bits/stl_numeric.h (partial_sum, adjacent_difference):
953*f8a1b7d9SAlexander Kabaev	Avoid dereferencing two times __first in the prologue.
954*f8a1b7d9SAlexander Kabaev
955*f8a1b7d9SAlexander Kabaev2004-11-03  Paolo Carlini  <[email protected]>
956*f8a1b7d9SAlexander Kabaev
957*f8a1b7d9SAlexander Kabaev	* include/bits/stl_numeric.h: Trivial formatting fixes.
958*f8a1b7d9SAlexander Kabaev
959*f8a1b7d9SAlexander Kabaev2004-11-03  Benjamin Kosnik  <[email protected]>
960*f8a1b7d9SAlexander Kabaev
961*f8a1b7d9SAlexander Kabaev	* include/bits/c++config: Spacing.
962*f8a1b7d9SAlexander Kabaev	* libsupc++/del_op.cc: Include c++config.h.
963*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opnt.cc: Same.
964*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opv.cc: Same.
965*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opvnt.cc: Same.
966*f8a1b7d9SAlexander Kabaev	* libsupc++/new_op.cc: Same.
967*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opnt.cc: Same.
968*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opv.cc: Same.
969*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opvnt.cc: Same.
970*f8a1b7d9SAlexander Kabaev
971*f8a1b7d9SAlexander Kabaev2004-11-03  Aaron W. LaFramboise  <[email protected]>
972*f8a1b7d9SAlexander Kabaev
973*f8a1b7d9SAlexander Kabaev	* config/os/bsd/darwin/os_defines.h
974*f8a1b7d9SAlexander Kabaev	(_GLIBCXX_WEAK_DEFINITION): Define.
975*f8a1b7d9SAlexander Kabaev	* include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
976*f8a1b7d9SAlexander Kabaev	* libsupc++/del_op.cc (operator delete(void *)): Use
977*f8a1b7d9SAlexander Kabaev	_GLIBCXX_WEAK_DEFINITION.
978*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opnt.cc
979*f8a1b7d9SAlexander Kabaev	(operator delete(void *, const std::nothrow_t&)): Same.
980*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opv.cc (operator delete[](void *)): Same.
981*f8a1b7d9SAlexander Kabaev	* libsupc++/del_opvnt.cc
982*f8a1b7d9SAlexander Kabaev	(operator delete[](void *, const std::nothrow_t&)): Same.
983*f8a1b7d9SAlexander Kabaev	* libsupc++/new_op.cc (operator new(std::size_t)): Same.
984*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opnt.cc
985*f8a1b7d9SAlexander Kabaev	(operator new(std::size_t, const std::nothrow_t&)): Same
986*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
987*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opvnt.cc
988*f8a1b7d9SAlexander Kabaev	(operator new[](std::size_t, const std::nothrow_t&)): Same.
989*f8a1b7d9SAlexander Kabaev
990*f8a1b7d9SAlexander Kabaev2004-11-02  Paolo Carlini  <[email protected]>
991*f8a1b7d9SAlexander Kabaev
992*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int):
993*f8a1b7d9SAlexander Kabaev	Evaluate *__beg the exact strict minimum number of times; likewise
994*f8a1b7d9SAlexander Kabaev	for __beg != __end; slightly simplify main parsing loop.
995*f8a1b7d9SAlexander Kabaev
996*f8a1b7d9SAlexander Kabaev2004-11-02  Benjamin Kosnik  <[email protected]>
997f260e61bSAlexander Kabaev  	    Lothar Werzinger  <[email protected]>
998f260e61bSAlexander Kabaev
999f260e61bSAlexander Kabaev	PR libstdc++/17664
1000f260e61bSAlexander Kabaev	* src/debug.cc: Include concurrence, use mutexes.
1001f260e61bSAlexander Kabaev	(_Safe_iterator_base::_M_attach): Here.
1002f260e61bSAlexander Kabaev	(_Safe_iterator_base::_M_detach): Here.
1003f260e61bSAlexander Kabaev
1004*f8a1b7d9SAlexander Kabaev2004-11-02  Benjamin Kosnik  <[email protected]>
1005f260e61bSAlexander Kabaev
1006f260e61bSAlexander Kabaev	PR libstdc++/17922
1007f260e61bSAlexander Kabaev	* include/bits/ios_base.h : Add enum values.
1008f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.h (bitmask_operators): Add function.
1009f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
1010f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
1011f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
1012f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
1013f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
1014f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
1015f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
1016f260e61bSAlexander Kabaev
1017f260e61bSAlexander Kabaev	* config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
1018f260e61bSAlexander Kabaev	* src/ios.cc: Same.
1019f260e61bSAlexander Kabaev
1020f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1021f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1022f260e61bSAlexander Kabaev
1023*f8a1b7d9SAlexander Kabaev2004-11-01  Momchil Velikov  <[email protected]>
1024f260e61bSAlexander Kabaev
1025f260e61bSAlexander Kabaev	PR libstdc++/18185
1026f260e61bSAlexander Kabaev	* libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
1027f260e61bSAlexander Kabaev	exceptions.
1028f260e61bSAlexander Kabaev	* testsuite/thread/18185.cc: New.
1029f260e61bSAlexander Kabaev
1030*f8a1b7d9SAlexander Kabaev2004-11-01  Chris Jefferson  <[email protected]>
1031f260e61bSAlexander Kabaev
1032*f8a1b7d9SAlexander Kabaev	PR libstdc++/18159
1033*f8a1b7d9SAlexander Kabaev	* include/tr1/tuple (get(pair)): Change occurrences of _I to _Int.
1034*f8a1b7d9SAlexander Kabaev	(get(const pair)): Likewise.
1035f260e61bSAlexander Kabaev
1036*f8a1b7d9SAlexander Kabaev2004-11-01  Paolo Carlini  <[email protected]>
1037f260e61bSAlexander Kabaev
1038*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1039*f8a1b7d9SAlexander Kabaev	Evaluate *__beg the exact strict minimum number of times; likewise
1040*f8a1b7d9SAlexander Kabaev	for __beg != __end; in the main parsing loop, call ++__beg in two
1041*f8a1b7d9SAlexander Kabaev	places only. The former is also a correctness issue, because,
1042*f8a1b7d9SAlexander Kabaev	according to the standard (22.2.2.1.2, Stage 2), 'in' shall be
1043*f8a1b7d9SAlexander Kabaev	dereferenced only one time for each increment.
1044f260e61bSAlexander Kabaev
1045*f8a1b7d9SAlexander Kabaev2004-10-31  Benjamin Kosnik  <[email protected]>
1046f260e61bSAlexander Kabaev
1047*f8a1b7d9SAlexander Kabaev	PR c++/16728
1048*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/set/modifiers/16728.cc: New.
1049*f8a1b7d9SAlexander Kabaev
1050*f8a1b7d9SAlexander Kabaev2004-10-30  Paolo Carlini  <[email protected]>
1051*f8a1b7d9SAlexander Kabaev
1052*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak.
1053*f8a1b7d9SAlexander Kabaev
1054*f8a1b7d9SAlexander Kabaev	* testsuite/ext/bitmap_allocator/check_delete.cc: New.
1055*f8a1b7d9SAlexander Kabaev	* testsuite/ext/bitmap_allocator/check_new.cc: Likewise.
1056*f8a1b7d9SAlexander Kabaev
1057*f8a1b7d9SAlexander Kabaev2004-10-29  Geoffrey Keating  <[email protected]>
1058*f8a1b7d9SAlexander Kabaev
1059*f8a1b7d9SAlexander Kabaev	* configure.host (darwin*): Set os_include_dir to a separate directory
1060*f8a1b7d9SAlexander Kabaev	for Darwin.
1061*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
1062*f8a1b7d9SAlexander Kabaev	'darwin'.
1063*f8a1b7d9SAlexander Kabaev	* config/locale/darwin/ctype_members.cc: New.
1064*f8a1b7d9SAlexander Kabaev	* config/os/bsd/darwin/ctype_base.h: New.
1065*f8a1b7d9SAlexander Kabaev	* config/os/bsd/darwin/ctype_inline.h: New.
1066*f8a1b7d9SAlexander Kabaev	* config/os/bsd/darwin/ctype_noninline.h: New.
1067*f8a1b7d9SAlexander Kabaev	* config/os/bsd/darwin/os_defines.h: New.
1068*f8a1b7d9SAlexander Kabaev
1069*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail
1070*f8a1b7d9SAlexander Kabaev	on Linux.
1071f260e61bSAlexander Kabaev
1072f260e61bSAlexander Kabaev2004-10-29  Chris Jefferson  <[email protected]>
1073f260e61bSAlexander Kabaev
1074f260e61bSAlexander Kabaev	* include/bit/stl_algo.h (find_first_of(,,,,pred)):
1075f260e61bSAlexander Kabaev	Remove invalid EqualOpConcept.
1076f260e61bSAlexander Kabaev	* testsuite/25_algorithms/find_first_of/concept_check_1.cc: New.
1077f260e61bSAlexander Kabaev
1078*f8a1b7d9SAlexander Kabaev2004-10-29  Benjamin Kosnik  <[email protected]>
1079*f8a1b7d9SAlexander Kabaev
1080*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_delete): New.
1081*f8a1b7d9SAlexander Kabaev	(check_new): Simplify.
1082*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/check_delete.cc: New.
1083*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/check_new.cc: Simplify.
1084*f8a1b7d9SAlexander Kabaev	* testsuite/ext/debug_allocator/check_delete.cc: New.
1085*f8a1b7d9SAlexander Kabaev	* testsuite/ext/debug_allocator/check_new.cc: Simplify.
1086*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/check_delete.cc: New.
1087*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/check_new.cc: Simplify.
1088*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_delete.cc: New.
1089*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_new.cc: Simplify.
1090*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/check_delete.cc: New.
1091*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/check_new.cc: Simplify.
1092*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/check_delete.cc: New.
1093*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/check_new.cc: Simplify.
1094*f8a1b7d9SAlexander Kabaev
1095*f8a1b7d9SAlexander Kabaev2004-10-28  Chris Jefferson  <[email protected]>
1096*f8a1b7d9SAlexander Kabaev
1097*f8a1b7d9SAlexander Kabaev	PR libstdc++/18159
1098*f8a1b7d9SAlexander Kabaev	* include/tr1/tuple: Fix, change formatting.
1099*f8a1b7d9SAlexander Kabaev
1100*f8a1b7d9SAlexander Kabaev2004-10-28  Benjamin Kosnik  <[email protected]>
1101*f8a1b7d9SAlexander Kabaev
1102*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__common_pool_policy): Add template
1103*f8a1b7d9SAlexander Kabaev	template parameter for pool class type.
1104*f8a1b7d9SAlexander Kabaev	(__per_type_pool_policy): Same.
1105*f8a1b7d9SAlexander Kabaev	(__mt_allocator): Don't inherit policy. Qualify policy_type calls.
1106*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix.
1107*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same.
1108*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
1109*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
1110*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
1111*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
1112*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
1113*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
1114*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
1115*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
1116*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/instantiate.cc: Same.
1117*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-1.cc: Same.
1118*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-2.cc: Same.
1119*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-3.cc: Same.
1120*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-4.cc: Same.
1121*f8a1b7d9SAlexander Kabaev
1122f260e61bSAlexander Kabaev2004-10-28  Paolo Carlini  <[email protected]>
1123f260e61bSAlexander Kabaev
1124*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
1125*f8a1b7d9SAlexander Kabaev	Cache *__beg in __c when parsing exponent sign too.
1126*f8a1b7d9SAlexander Kabaev	(num_get<>::do_get(..., bool&)): Cache *__beg.
1127*f8a1b7d9SAlexander Kabaev	(money_get<>::_M_extract)): Likewise, in money_base::value.
1128*f8a1b7d9SAlexander Kabaev
1129*f8a1b7d9SAlexander Kabaev2004-10-27  Paolo Carlini  <[email protected]>
1130*f8a1b7d9SAlexander Kabaev
1131*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (assign(const basic_string&)):
1132*f8a1b7d9SAlexander Kabaev	Move out of line...
1133*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc: ... here.
1134*f8a1b7d9SAlexander Kabaev
1135*f8a1b7d9SAlexander Kabaev2004-10-27  Paolo Carlini  <[email protected]>
1136*f8a1b7d9SAlexander Kabaev
1137*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
1138*f8a1b7d9SAlexander Kabaev	Move out of line...
1139*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc: ... here.
1140*f8a1b7d9SAlexander Kabaev
1141*f8a1b7d9SAlexander Kabaev2004-10-26  Paolo Carlini  <[email protected]>
1142*f8a1b7d9SAlexander Kabaev
1143*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (append(const basic_string&),
1144*f8a1b7d9SAlexander Kabaev	append(size_type, _CharT)): Move out of line...
1145*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc: ... here.
1146*f8a1b7d9SAlexander Kabaev
1147*f8a1b7d9SAlexander Kabaev2004-10-26  Paolo Carlini  <[email protected]>
1148*f8a1b7d9SAlexander Kabaev
1149*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (erase(size_type, size_type),
1150*f8a1b7d9SAlexander Kabaev	erase(iterator), erase(iterator, iterator)): Call _M_mutate
1151*f8a1b7d9SAlexander Kabaev	instead of _M_replace_safe, equivalent when the fourth argument
1152*f8a1b7d9SAlexander Kabaev	is zero and simpler.
1153*f8a1b7d9SAlexander Kabaev
1154*f8a1b7d9SAlexander Kabaev2004-10-26  Benjamin Kosnik  <[email protected]>
1155*f8a1b7d9SAlexander Kabaev
1156*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h (array::allocate): Check for valid
1157*f8a1b7d9SAlexander Kabaev	array object, use its size member function directly.
1158*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/3.cc: New.
1159*f8a1b7d9SAlexander Kabaev	* docs/html/20_util/allocator.html: Add docs.
1160*f8a1b7d9SAlexander Kabaev
1161*f8a1b7d9SAlexander Kabaev2004-10-25  Geoffrey Keating  <[email protected]>
1162*f8a1b7d9SAlexander Kabaev
1163*f8a1b7d9SAlexander Kabaev	* configure.host (darwin*): Build libstdc++ single module
1164*f8a1b7d9SAlexander Kabaev	and flat namespace.
1165*f8a1b7d9SAlexander Kabaev	* libsupc++/new_op.cc (new): Make weak.
1166*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opnt.cc (new): Make weak.
1167*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opv.cc (new): Make weak.
1168*f8a1b7d9SAlexander Kabaev	* libsupc++/new_opvnt.cc (new): Make weak.
1169*f8a1b7d9SAlexander Kabaev	* libsupc++/delete_op.cc (delete): Make weak.
1170*f8a1b7d9SAlexander Kabaev	* libsupc++/delete_opnt.cc (delete): Make weak.
1171*f8a1b7d9SAlexander Kabaev	* libsupc++/delete_opv.cc (delete): Make weak.
1172*f8a1b7d9SAlexander Kabaev	* libsupc++/delete_opvnt.cc (delete): Make weak.
1173*f8a1b7d9SAlexander Kabaev
1174*f8a1b7d9SAlexander Kabaev2004-10-25  Benjamin Kosnik  <[email protected]>
1175*f8a1b7d9SAlexander Kabaev
1176*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.am (GLIBCXX_INCLUDES): Add.
1177*f8a1b7d9SAlexander Kabaev	(AUTOMAKE_OPTIONS): Add nostdinc.
1178*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Regenerate.
1179*f8a1b7d9SAlexander Kabaev	* scripts/testsuite_flags.in (build-includes): Remove redundant
1180*f8a1b7d9SAlexander Kabaev	search for libsupc++.
1181*f8a1b7d9SAlexander Kabaev	* fragment.am: Clean.
1182*f8a1b7d9SAlexander Kabaev
1183*f8a1b7d9SAlexander Kabaev2004-10-25  Benjamin Kosnik  <[email protected]>
1184*f8a1b7d9SAlexander Kabaev
1185*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (tr1_headers): Add tuple.
1186*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
1187*f8a1b7d9SAlexander Kabaev
1188*f8a1b7d9SAlexander Kabaev2004-10-25  Chris Jefferson  <[email protected]>
1189*f8a1b7d9SAlexander Kabaev
1190*f8a1b7d9SAlexander Kabaev        * include/tr1/tuple: Implementation of tuple from library TR.
1191*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/tuple_element.cc: New.
1192*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/tuple_size.cc: New.
1193*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
1194*f8a1b7d9SAlexander Kabaev	New.
1195*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/cons/assignment.cc: New.
1196*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: New.
1197*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/cons/constructor.cc: New.
1198*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc:
1199*f8a1b7d9SAlexander Kabaev	New.
1200*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: New.
1201*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/tuple/element_access/get.cc: New.
1202*f8a1b7d9SAlexander Kabaev
1203*f8a1b7d9SAlexander Kabaev2004-10-25  Paolo Carlini  <[email protected]>
1204*f8a1b7d9SAlexander Kabaev
1205*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (_Rep::_M_is_safe): Move to
1206*f8a1b7d9SAlexander Kabaev	basic_string as _M_disjunct, adjust to take only __s.
1207*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc: Adjust consistently callers.
1208*f8a1b7d9SAlexander Kabaev
1209*f8a1b7d9SAlexander Kabaev2004-10-25  Paolo Carlini  <[email protected]>
1210*f8a1b7d9SAlexander Kabaev
1211*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
1212*f8a1b7d9SAlexander Kabaev	Adjust bit missing from the previous commit.
1213*f8a1b7d9SAlexander Kabaev
1214*f8a1b7d9SAlexander Kabaev2004-10-25  Eric Botcazou  <[email protected]>
1215*f8a1b7d9SAlexander Kabaev
1216*f8a1b7d9SAlexander Kabaev	PR other/18138
1217*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc.
1218*f8a1b7d9SAlexander Kabaev
1219*f8a1b7d9SAlexander Kabaev2004-10-25  Paolo Carlini  <[email protected]>
1220*f8a1b7d9SAlexander Kabaev
1221*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (_Rep::_M_is_safe, _M_check_length,
1222*f8a1b7d9SAlexander Kabaev	_M_move, _M_copy, _M_assign): New, use througout.
1223*f8a1b7d9SAlexander Kabaev	(operator+=(_CharT)): Define in terms of push_back.
1224*f8a1b7d9SAlexander Kabaev	(append(const basic_string&)): Define here, inline, and simplify,
1225*f8a1b7d9SAlexander Kabaev	don't use the full _M_replace_safe.
1226*f8a1b7d9SAlexander Kabaev	(append(size_type, _CharT)): Likewise, don't use _M_replace_aux.
1227*f8a1b7d9SAlexander Kabaev	(push_back): Likewise.
1228*f8a1b7d9SAlexander Kabaev	(assign(const basic_string&)): Define here, inline.
1229*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (append(const _CharT* s, size_type):
1230*f8a1b7d9SAlexander Kabaev	Fix: when s points inside the _Rep, upon reallocation (reserve) we
1231*f8a1b7d9SAlexander Kabaev	were copying from deallocated memory.
1232*f8a1b7d9SAlexander Kabaev	(append(const basic_string&, size_type, size_type)): Simplify,
1233*f8a1b7d9SAlexander Kabaev	don't use _M_replace_safe.
1234*f8a1b7d9SAlexander Kabaev	(replace(size_type, size_type, const _CharT*, size_type)): Slightly
1235*f8a1b7d9SAlexander Kabaev	tweak.
1236*f8a1b7d9SAlexander Kabaev	(reserve): Likewise.
1237*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/append/char/2.cc: New.
1238*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/append/char/3.cc: Likewise.
1239*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/append/wchar_t/2.cc: Likewise.
1240*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/append/wchar_t/3.cc: Likewise.
1241*f8a1b7d9SAlexander Kabaev
1242*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/assign/char/3.cc: Remove junk.
1243*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/assign/wchar_t/3.cc: Likewise.
1244*f8a1b7d9SAlexander Kabaev
1245*f8a1b7d9SAlexander Kabaev2004-10-23  Andrew Pinski  <[email protected]>
1246*f8a1b7d9SAlexander Kabaev
1247*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-2.c:
1248*f8a1b7d9SAlexander Kabaev	s/value_t/value_type/. s/traits_t/traits_type/.
1249*f8a1b7d9SAlexander Kabaev	s/policy_t/policy_type/. s/allocator_t/allocator_type/.
1250*f8a1b7d9SAlexander Kabaev	s/string_t/string_type/. s/list_t/list_type/.
1251*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
1252*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
1253*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
1254*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
1255*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
1256*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
1257*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
1258*f8a1b7d9SAlexander Kabaev
1259*f8a1b7d9SAlexander Kabaev2004-10-21  Benjamin Kosnik  <[email protected]>
1260*f8a1b7d9SAlexander Kabaev
1261*f8a1b7d9SAlexander Kabaev	* include/tr1/array (array): Make safe for zero-sized arrays.
1262*f8a1b7d9SAlexander Kabaev	(array::end): Return one past the end.
1263*f8a1b7d9SAlexander Kabaev	(array::at): Use __throw_out_of_range, include functexcept.h.
1264*f8a1b7d9SAlexander Kabaev	(operator==): Implement.
1265*f8a1b7d9SAlexander Kabaev	(operator!=): Same.
1266*f8a1b7d9SAlexander Kabaev	(operator<): Same.
1267*f8a1b7d9SAlexander Kabaev	(operator>): Same.
1268*f8a1b7d9SAlexander Kabaev	(operator>=): Same.
1269*f8a1b7d9SAlexander Kabaev	(operator<=): Same.
1270*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/capacity/(empty.cc,
1271*f8a1b7d9SAlexander Kabaev	max_size.cc, size.cc): New.
1272*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/comparison_operators/(equal.cc,
1273*f8a1b7d9SAlexander Kabaev	greater.cc, greater_or_equal.cc, less.cc, less_or_equal.cc,
1274*f8a1b7d9SAlexander Kabaev	not_equal): New.
1275*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc:
1276*f8a1b7d9SAlexander Kabaev	New.
1277*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc:
1278*f8a1b7d9SAlexander Kabaev	New.
1279*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc: New.
1280*f8a1b7d9SAlexander Kabaev	* testsuite/tr1/6_containers/array/requirements/(contiguous.cc,
1281*f8a1b7d9SAlexander Kabaev	instantiate, typedefs, zero_size_arrays): New.
1282*f8a1b7d9SAlexander Kabaev
1283*f8a1b7d9SAlexander Kabaev2004-10-21  Paolo Carlini  <[email protected]>
1284*f8a1b7d9SAlexander Kabaev	    Benjamin Kosnik  <[email protected]>
1285*f8a1b7d9SAlexander Kabaev
1286*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (_M_set_length_and_sharable): New.
1287*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct, assign(const _CharT*,
1288*f8a1b7d9SAlexander Kabaev	size_type), _M_mutate, _M_clone): Use it.
1289*f8a1b7d9SAlexander Kabaev	(_Rep::_S_create): Don't set/call _M_length/_M_set_sharable here.
1290*f8a1b7d9SAlexander Kabaev
1291*f8a1b7d9SAlexander Kabaev2004-10-21  Paolo Carlini  <[email protected]>
1292*f8a1b7d9SAlexander Kabaev	    Dhruv Matani  <[email protected]>
1293*f8a1b7d9SAlexander Kabaev	    Nathan Myers  <[email protected]>
1294*f8a1b7d9SAlexander Kabaev
1295*f8a1b7d9SAlexander Kabaev	* include/bits/vector.tcc (_M_insert_aux, _M_fill_insert,
1296*f8a1b7d9SAlexander Kabaev	_M_range_insert): Check at the outset that we are not trying
1297*f8a1b7d9SAlexander Kabaev	to exceed max_size, then deal properly with __len overflows.
1298*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/vector/modifiers/insert/1.cc: New.
1299*f8a1b7d9SAlexander Kabaev
1300*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h: Remove redundant include.
1301*f8a1b7d9SAlexander Kabaev
1302*f8a1b7d9SAlexander Kabaev2004-10-20  Paolo Carlini  <[email protected]>
1303*f8a1b7d9SAlexander Kabaev
1304*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc
1305*f8a1b7d9SAlexander Kabaev	when n > max_size().
1306*f8a1b7d9SAlexander Kabaev	* include/ext/malloc_allocator.h (allocate): Likewise.
1307*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (allocate): Likewise.
1308*f8a1b7d9SAlexander Kabaev	* include/ext/new_allocator.h (allocate): Likewise.
1309*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h: Use __throw_bad_alloc().
1310*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Use __builtin_expect.
1311*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/check_allocate_max_size.cc: New.
1312*f8a1b7d9SAlexander Kabaev	* testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise.
1313*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise.
1314*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise.
1315*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise.
1316*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise.
1317*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_allocate_max_size): New test.
1318*f8a1b7d9SAlexander Kabaev
1319*f8a1b7d9SAlexander Kabaev2004-10-19  Paolo Carlini  <[email protected]>
1320*f8a1b7d9SAlexander Kabaev
1321*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc:
1322*f8a1b7d9SAlexander Kabaev	Include <ext/new_allocator.h>.
1323*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
1324*f8a1b7d9SAlexander Kabaev
1325*f8a1b7d9SAlexander Kabaev2004-10-18  Paolo Carlini  <[email protected]>
1326*f8a1b7d9SAlexander Kabaev
1327f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_M_mutate): Do not reallocate
1328f260e61bSAlexander Kabaev	unnecessarily when _M_rep() == &_S_empty_rep() and __new_size
1329f260e61bSAlexander Kabaev	== capacity() (== 0): is ok to just leave everything unchanged.
1330f260e61bSAlexander Kabaev
1331*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h: Minor formatting fixes.
1332*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc: Likewise.
1333*f8a1b7d9SAlexander Kabaev
1334*f8a1b7d9SAlexander Kabaev2004-10-17  Benjamin Kosnik  <[email protected]>
1335*f8a1b7d9SAlexander Kabaev
1336*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__pool::_M_get_align): New.
1337*f8a1b7d9SAlexander Kabaev	(__mt_alloc::allocate): Use it.
1338*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc (__pool::_M_reclaim_block): Use it.
1339*f8a1b7d9SAlexander Kabaev	(__pool::_M_reserve_block): Simplify block allocation.
1340*f8a1b7d9SAlexander Kabaev
1341*f8a1b7d9SAlexander Kabaev2004-10-17  Dhruv Matani  <[email protected]>
1342*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
1343*f8a1b7d9SAlexander Kabaev
1344*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
1345*f8a1b7d9SAlexander Kabaev	makes the code 64-bit correct and also fixes (together with using at
1346*f8a1b7d9SAlexander Kabaev	the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
1347*f8a1b7d9SAlexander Kabaev	8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
1348*f8a1b7d9SAlexander Kabaev	Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
1349*f8a1b7d9SAlexander Kabaev	* src/bitmap_allocator.cc: Change to size_t.
1350*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Adjust.
1351*f8a1b7d9SAlexander Kabaev
1352*f8a1b7d9SAlexander Kabaev2004-10-16  Benjamin Kosnik  <[email protected]>
1353*f8a1b7d9SAlexander Kabaev
1354*f8a1b7d9SAlexander Kabaev	* include/tr1/array: Don't use layout_type.
1355*f8a1b7d9SAlexander Kabaev
1356*f8a1b7d9SAlexander Kabaev2004-10-16  Sashan Govender  <[email protected]>
1357*f8a1b7d9SAlexander Kabaev
1358*f8a1b7d9SAlexander Kabaev	* include/tr1/array (array::end const): Fix casting from iterator
1359*f8a1b7d9SAlexander Kabaev	to const_iterator.
1360*f8a1b7d9SAlexander Kabaev
1361*f8a1b7d9SAlexander Kabaev2004-10-15  Paolo Carlini  <[email protected]>
1362*f8a1b7d9SAlexander Kabaev
1363*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h: Qualify ::operator delete.
1364*f8a1b7d9SAlexander Kabaev	* src/bitmap_allocator.cc: Likewise.
1365*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc: Use ::operator delete, not delete,
1366*f8a1b7d9SAlexander Kabaev	consistently with ::operator new.
1367*f8a1b7d9SAlexander Kabaev
1368*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h (deallocate): Check for null
1369*f8a1b7d9SAlexander Kabaev	pointer.
1370*f8a1b7d9SAlexander Kabaev	* testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New.
1371*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_deallocate_null): Add test.
1372*f8a1b7d9SAlexander Kabaev
1373*f8a1b7d9SAlexander Kabaev2004-10-14  Benjamin Kosnik  <[email protected]>
1374*f8a1b7d9SAlexander Kabaev
1375*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for
1376*f8a1b7d9SAlexander Kabaev	null pointer.
1377*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h (debug_allocator::deallocate):
1378*f8a1b7d9SAlexander Kabaev	Check pointer value.
1379*f8a1b7d9SAlexander Kabaev	* include/ext/debug_allocator.h (debug_allocator::deallocate):
1380*f8a1b7d9SAlexander Kabaev	Throw exceptions, don't abort.
1381*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h
1382*f8a1b7d9SAlexander Kabaev	(array_allocator_base::deallocate): Remove unused parameters.
1383*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_deallocate_null): New.
1384*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_deallocate_null.cc: New.
1385*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New.
1386*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/check_deallocate_null.cc: New.
1387*f8a1b7d9SAlexander Kabaev	* testsuite/ext/debug_allocator/check_deallocate_null.cc: New.
1388*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/check_deallocate_null.cc: New.
1389*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/check_deallocate_null.cc: New.
1390*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/check_deallocate_null.cc: New.
1391*f8a1b7d9SAlexander Kabaev
1392*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_new): Add instance argument.
1393*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/check_new.cc: New.
1394*f8a1b7d9SAlexander Kabaev
1395*f8a1b7d9SAlexander Kabaev2004-10-14  Paolo Carlini  <[email protected]>
1396*f8a1b7d9SAlexander Kabaev
1397*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block):
1398*f8a1b7d9SAlexander Kabaev	Rename __unused to __M_unused.
1399*f8a1b7d9SAlexander Kabaev
1400*f8a1b7d9SAlexander Kabaev2004-10-14  Benjamin Kosnik  <[email protected]>
1401*f8a1b7d9SAlexander Kabaev
1402*f8a1b7d9SAlexander Kabaev	* testsuite/ext/headers.cc: Add includes, compile only.
1403*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_map.cc: Move to...
1404*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_map/1.cc: ...here.
1405*f8a1b7d9SAlexander Kabaev	* testsuite/ext/14648.cc: Move to...
1406*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_map/14648.cc: ...here.
1407*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_map/instantiate.cc: Add.
1408*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set.cc: Move to...
1409*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set/1.cc: ...here.
1410*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set_explicit_instantiation.cc: Move to...
1411*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set/instantiate.cc: ...here.
1412*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_check_construct_destroy.cc: Move to...
1413*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set/check_construct_destroy.cc: ...here.
1414*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist_check_construct_destroy.cc: Move to...
1415*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist/check_construct_destroy.cc: ...here.
1416*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist_explicit_instantiation.cc: Move to...
1417*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist/instantiate.cc: ...here.
1418*f8a1b7d9SAlexander Kabaev
1419*f8a1b7d9SAlexander Kabaev2004-10-14  Benjamin Kosnik  <[email protected]>
1420*f8a1b7d9SAlexander Kabaev
1421*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h: Tweaks.
1422*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc: Same.
1423*f8a1b7d9SAlexander Kabaev
1424*f8a1b7d9SAlexander Kabaev2004-10-14  Dhruv Matani  <[email protected]>
1425*f8a1b7d9SAlexander Kabaev
1426*f8a1b7d9SAlexander Kabaev	* ext/bitmap_allocator.h: Clean-up add/remove functions.
1427*f8a1b7d9SAlexander Kabaev	* src/bitmap_allocator.cc: New file. Contains the out-of-line
1428*f8a1b7d9SAlexander Kabaev	function definitions, static initialization of variables, and
1429*f8a1b7d9SAlexander Kabaev	explicit instantiations needed for the allocator.
1430*f8a1b7d9SAlexander Kabaev	* src/Makefile.am: Add.
1431*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Regenerate.
1432*f8a1b7d9SAlexander Kabaev	* config/linker.map.gnu: Add the necessary symbols.
1433*f8a1b7d9SAlexander Kabaev
1434*f8a1b7d9SAlexander Kabaev2004-10-13  Paolo Carlini  <[email protected]>
1435*f8a1b7d9SAlexander Kabaev
1436*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (_S_create): Use consistently
1437*f8a1b7d9SAlexander Kabaev	the exponential policy, simplify.
1438*f8a1b7d9SAlexander Kabaev	* testsuite/performance/21_strings/string_append_2.cc: New.
1439*f8a1b7d9SAlexander Kabaev
1440*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h (allocate): Fix bad_alloc check.
1441*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in
1442*f8a1b7d9SAlexander Kabaev	that case sizeof(_Rep) == 24).
1443*f8a1b7d9SAlexander Kabaev
1444*f8a1b7d9SAlexander Kabaev2004-10-12  Paolo Carlini  <[email protected]>
1445*f8a1b7d9SAlexander Kabaev
1446*f8a1b7d9SAlexander Kabaev	PR libstdc++/17948
1447*f8a1b7d9SAlexander Kabaev	* include/bits/stl_tree.h (erase(iterator, iterator)): Revert
1448*f8a1b7d9SAlexander Kabaev	wrong commit of 2004-10-07.
1449*f8a1b7d9SAlexander Kabaev
1450*f8a1b7d9SAlexander Kabaev2004-10-12  Scott Snyder  <[email protected]>
1451*f8a1b7d9SAlexander Kabaev
1452*f8a1b7d9SAlexander Kabaev	PR libstdc++/17948
1453*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/set/modifiers/17948.cc: New.
1454*f8a1b7d9SAlexander Kabaev
1455*f8a1b7d9SAlexander Kabaev2004-10-11  Benjamin Kosnik  <[email protected]>
1456*f8a1b7d9SAlexander Kabaev
1457*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h: Correct for over-long lines.
1458*f8a1b7d9SAlexander Kabaev
1459*f8a1b7d9SAlexander Kabaev2004-10-11  Benjamin Kosnik  <[email protected]>
1460*f8a1b7d9SAlexander Kabaev
1461*f8a1b7d9SAlexander Kabaev	PR libstdc++/17937
1462*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__pool::_M_destroy): New.
1463*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc (__pool::~__pool): Change definitions to
1464*f8a1b7d9SAlexander Kabaev	_M_destroy.
1465*f8a1b7d9SAlexander Kabaev	* acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
1466*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
1467*f8a1b7d9SAlexander Kabaev	* configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
1468*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1469*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Tweak exports.
1470*f8a1b7d9SAlexander Kabaev	* docs/html/ext/mt_allocator.html: Update docs.
1471*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
1472*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.
1473*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
1474*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
1475*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
1476*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
1477*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
1478*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.
1479*f8a1b7d9SAlexander Kabaev
1480*f8a1b7d9SAlexander Kabaev2004-10-11  Benjamin Kosnik  <[email protected]>
1481*f8a1b7d9SAlexander Kabaev
1482*f8a1b7d9SAlexander Kabaev	PR libstdc++/16614 continued.
1483*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h
1484*f8a1b7d9SAlexander Kabaev	(__per_type_pool_policy::_S_get_pool): Use saner defaults based on
1485*f8a1b7d9SAlexander Kabaev	specific type characteristics.
1486*f8a1b7d9SAlexander Kabaev	(__pool_base): Add constructor that takes a _Tune argument.
1487*f8a1b7d9SAlexander Kabaev	(__pool): Same.
1488*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-2.cc: Adjust default.
1489*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-4.cc: Same.
1490*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-3.cc: Same.
1491*f8a1b7d9SAlexander Kabaev
1492*f8a1b7d9SAlexander Kabaev2004-10-11  Joachim Kuebart  <[email protected]>
1493*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
1494*f8a1b7d9SAlexander Kabaev
1495*f8a1b7d9SAlexander Kabaev	* src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk):
1496*f8a1b7d9SAlexander Kabaev	Deal properly with exceptions thrown by ::operator new(size_t).
1497*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/allocate_chunk.cc: New.
1498*f8a1b7d9SAlexander Kabaev
1499*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Include <cstdlib>.
1500*f8a1b7d9SAlexander Kabaev
1501*f8a1b7d9SAlexander Kabaev2004-10-10  Benjamin Kosnik  <[email protected]>
1502*f8a1b7d9SAlexander Kabaev
1503*f8a1b7d9SAlexander Kabaev	* include/bits/functexcept.h: Add guards.
1504*f8a1b7d9SAlexander Kabaev
1505*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test.
1506*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1507*f8a1b7d9SAlexander Kabaev
1508*f8a1b7d9SAlexander Kabaev2004-10-10  Paolo Carlini  <[email protected]>
1509*f8a1b7d9SAlexander Kabaev
1510*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/monetary_members.cc (_S_construct_pattern):
1511*f8a1b7d9SAlexander Kabaev	Give __ret a default value, thus avoiding spurious warnings.
1512*f8a1b7d9SAlexander Kabaev
1513*f8a1b7d9SAlexander Kabaev	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
1514*f8a1b7d9SAlexander Kabaev	words or linux.words, otherwise exit.
1515*f8a1b7d9SAlexander Kabaev	* testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
1516*f8a1b7d9SAlexander Kabaev
1517*f8a1b7d9SAlexander Kabaev2004-10-09  Paolo Carlini  <[email protected]>
1518*f8a1b7d9SAlexander Kabaev
1519*f8a1b7d9SAlexander Kabaev	* include/std/std_memory.h (__get_temporary_buffer): Don't use
1520*f8a1b7d9SAlexander Kabaev	INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit
1521*f8a1b7d9SAlexander Kabaev	platforms too.
1522*f8a1b7d9SAlexander Kabaev	* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error
1523*f8a1b7d9SAlexander Kabaev	line numbers.
1524*f8a1b7d9SAlexander Kabaev
1525*f8a1b7d9SAlexander Kabaev2004-10-08  Benjamin Kosnik  <[email protected]>
1526*f8a1b7d9SAlexander Kabaev
1527*f8a1b7d9SAlexander Kabaev	* acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
1528*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New.
1529*f8a1b7d9SAlexander Kabaev	* configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT.
1530*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1531*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc (__pool::~__pool): Make conditional on
1532*f8a1b7d9SAlexander Kabaev	_GLIBCXX_USE___CXA_ATEXIT macro.
1533*f8a1b7d9SAlexander Kabaev	* docs/html/ext/mt_allocator.html: Add note about deallocation.
1534*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks
1535*f8a1b7d9SAlexander Kabaev	with _GLIBCXX_USE___CXA_ATEXIT.
1536*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
1537*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
1538*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
1539*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
1540*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
1541*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
1542*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
1543*f8a1b7d9SAlexander Kabaev
1544*f8a1b7d9SAlexander Kabaev2004-10-07  Phil Edwards  <[email protected]>
1545*f8a1b7d9SAlexander Kabaev
1546*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp:  Update list of undefined functions.
1547*f8a1b7d9SAlexander Kabaev
1548*f8a1b7d9SAlexander Kabaev2004-10-07  Paolo Carlini  <[email protected]>
1549*f8a1b7d9SAlexander Kabaev
1550*f8a1b7d9SAlexander Kabaev	* include/bits/list.tcc (operator=): Avoid iterator postincrement.
1551*f8a1b7d9SAlexander Kabaev	* include/bits/stl_tree.h (erase(iterator, iterator)): Likewise.
1552*f8a1b7d9SAlexander Kabaev
1553*f8a1b7d9SAlexander Kabaev2004-10-07  Benjamin Kosnik  <[email protected]>
1554*f8a1b7d9SAlexander Kabaev
1555*f8a1b7d9SAlexander Kabaev	* include/tr1: New.
1556*f8a1b7d9SAlexander Kabaev	* include/tr1/array: New.
1557*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (tr1_headers): New.
1558*f8a1b7d9SAlexander Kabaev	(stamp-tr1): New.
1559*f8a1b7d9SAlexander Kabaev	(install-headers): New.
1560*f8a1b7d9SAlexander Kabaev	(allstamped): Add stamp-tr1.
1561*f8a1b7d9SAlexander Kabaev
1562*f8a1b7d9SAlexander Kabaev	* include/ext/array_allocator.h: New.
1563*f8a1b7d9SAlexander Kabaev	* include/Makefile.am: Add.
1564*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
1565*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/1.cc: New.
1566*f8a1b7d9SAlexander Kabaev	* testsuite/ext/array_allocator/2.cc: New.
1567*f8a1b7d9SAlexander Kabaev
1568*f8a1b7d9SAlexander Kabaev2004-10-07  Richard Earnshaw  <[email protected]>
1569*f8a1b7d9SAlexander Kabaev
1570*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp (libstdc++_exit): New proc.
1571*f8a1b7d9SAlexander Kabaev
1572*f8a1b7d9SAlexander Kabaev2004-10-07  Roger Sayle  <[email protected]>
1573*f8a1b7d9SAlexander Kabaev
1574*f8a1b7d9SAlexander Kabaev	PR libstdc++/17850
1575*f8a1b7d9SAlexander Kabaev	* configure.ac: Newlib does not provide strtold.
1576*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1577*f8a1b7d9SAlexander Kabaev
1578*f8a1b7d9SAlexander Kabaev2004-10-06  Benjamin Kosnik  <[email protected]>
1579*f8a1b7d9SAlexander Kabaev
1580*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
1581*f8a1b7d9SAlexander Kabaev	(GLIBCXX_CONFIGURE_TESTSUITE): Use it.
1582*f8a1b7d9SAlexander Kabaev	* configure: Regenerated.
1583*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.am (CLEANFILES): Add TEST for
1584*f8a1b7d9SAlexander Kabaev	check-performance executables.
1585*f8a1b7d9SAlexander Kabaev	(stamp_thread): New.
1586*f8a1b7d9SAlexander Kabaev	(all-local): Use it.
1587*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Regenerate.
1588*f8a1b7d9SAlexander Kabaev	* scripts/create_testsuite_files: Filter thread tests.
1589*f8a1b7d9SAlexander Kabaev
1590*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread1.cc: Remove macro conditionals: this
1591*f8a1b7d9SAlexander Kabaev	file will only be run by thread enabled configurations.
1592*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
1593*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread6.cc: Same.
1594*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread5.cc: Same.
1595*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread4.cc: Same.
1596*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread3.cc: Same.
1597*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread2.cc: Same.
1598*f8a1b7d9SAlexander Kabaev
1599*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
1600*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
1601*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
1602*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
1603*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here.
1604*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
1605*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
1606*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
1607*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.
1608*f8a1b7d9SAlexander Kabaev
1609*f8a1b7d9SAlexander Kabaev2004-10-06  Benjamin Kosnik  <[email protected]>
1610*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
1611*f8a1b7d9SAlexander Kabaev
1612*f8a1b7d9SAlexander Kabaev	PR libstdc++/17780
1613*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
1614*f8a1b7d9SAlexander Kabaev	to old locking order.
1615*f8a1b7d9SAlexander Kabaev
1616*f8a1b7d9SAlexander Kabaev2004-10-06  Paolo Carlini  <[email protected]>
1617*f8a1b7d9SAlexander Kabaev
1618*f8a1b7d9SAlexander Kabaev	* include/std/std_sstream.h (_M_sync): When the caller is
1619*f8a1b7d9SAlexander Kabaev	setbuf, don't trust _M_string.capacity() to be the size of
1620*f8a1b7d9SAlexander Kabaev	the buffer area, use _M_string.size() in this case.
1621*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New.
1622*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
1623*f8a1b7d9SAlexander Kabaev
1624*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (overflow): Avoid calling string::assign
1625*f8a1b7d9SAlexander Kabaev	unnecessarily when the current _M_string is empty.
1626*f8a1b7d9SAlexander Kabaev
1627*f8a1b7d9SAlexander Kabaev2004-10-06  Paolo Carlini  <[email protected]>
1628*f8a1b7d9SAlexander Kabaev
1629*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)):
1630*f8a1b7d9SAlexander Kabaev	Avoid iterator postincrement.
1631*f8a1b7d9SAlexander Kabaev	(__rotate): Likewise.
1632*f8a1b7d9SAlexander Kabaev
1633*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algo.h: Minor formatting tweaks.
1634*f8a1b7d9SAlexander Kabaev
1635*f8a1b7d9SAlexander Kabaev2004-10-06  Christopher Jefferson <[email protected]>
1636*f8a1b7d9SAlexander Kabaev
1637*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algo.h (__reverse(random_access_iterator_tag)):
1638*f8a1b7d9SAlexander Kabaev	Avoid iterator postincrement; fix swapping middle element with
1639*f8a1b7d9SAlexander Kabaev	itself on odd-length inputs.
1640*f8a1b7d9SAlexander Kabaev
1641*f8a1b7d9SAlexander Kabaev2004-10-05  Benjamin Kosnik  <[email protected]>
1642*f8a1b7d9SAlexander Kabaev
1643*f8a1b7d9SAlexander Kabaev	PR libstdc++/17780
1644*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__pool_base::_Tune): Add default
1645*f8a1b7d9SAlexander Kabaev	options as compile-time constant enums.
1646*f8a1b7d9SAlexander Kabaev	(__pool_base::_Tune::is_default): New.
1647*f8a1b7d9SAlexander Kabaev	(__pool_base::_Block_address): New.
1648*f8a1b7d9SAlexander Kabaev	(__pool_base): Rearrange data members.
1649*f8a1b7d9SAlexander Kabaev	(__pool::_M_reserve_memory): To _M_reserve_block.
1650*f8a1b7d9SAlexander Kabaev	(__pool::_M_reclaim_memory): To _M_reclaim_block.
1651*f8a1b7d9SAlexander Kabaev	(__pool::_Bin_record): Add _Block_address data member.
1652*f8a1b7d9SAlexander Kabaev	(__pool<false>): Add _M_thread_freelist_initial.
1653*f8a1b7d9SAlexander Kabaev	(__pool::~__pool): Declare.
1654*f8a1b7d9SAlexander Kabaev	(__common_pool_policy): Move static data member to...
1655*f8a1b7d9SAlexander Kabaev	(__common_pool_policy::_S_get_pool): ...here, make static local.
1656*f8a1b7d9SAlexander Kabaev	(__per_type_pool_policy): Move static data member to...
1657*f8a1b7d9SAlexander Kabaev	(__per_type_pool_policy::_S_get_pool): ...here, make static local.
1658*f8a1b7d9SAlexander Kabaev	(__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
1659*f8a1b7d9SAlexander Kabaev	Remove static member definitions. Use define for __default_policy.
1660*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc: Same.
1661*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Don't export _S_get_pool. Renames.
1662*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator: New.
1663*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/instantiate.cc: New.
1664*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/check_new.cc: New.
1665*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/deallocate_global.cc: New.
1666*f8a1b7d9SAlexander Kabaev	* testsuite/ext/new_allocator/deallocate_local.cc: New.
1667*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
1668*f8a1b7d9SAlexander Kabaev	template arguments.
1669*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
1670*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
1671*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
1672*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
1673*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
1674*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
1675*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
1676*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
1677*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/deallocate.cc: New.
1678*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/deallocate.cc: New.
1679*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/deallocate_global.cc: New.
1680*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/deallocate_local.cc: New.
1681*f8a1b7d9SAlexander Kabaev
1682*f8a1b7d9SAlexander Kabaev2004-10-05  Ulrich Weigand  <[email protected]>
1683*f8a1b7d9SAlexander Kabaev
1684*f8a1b7d9SAlexander Kabaev	* configure.host (abi_baseline_pair): Define for s390-*-linux* and
1685*f8a1b7d9SAlexander Kabaev	s390x-*-linux*.
1686*f8a1b7d9SAlexander Kabaev	* config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
1687*f8a1b7d9SAlexander Kabaev	* config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
1688*f8a1b7d9SAlexander Kabaev
1689*f8a1b7d9SAlexander Kabaev2004-10-05  Christopher Jefferson  <[email protected]>
1690*f8a1b7d9SAlexander Kabaev
1691*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (iter_swap): delegate to swap via
1692*f8a1b7d9SAlexander Kabaev	__iter_swap when iterator's value_types are equal.
1693*f8a1b7d9SAlexander Kabaev	(struct __iter_swap): New.
1694*f8a1b7d9SAlexander Kabaev
1695*f8a1b7d9SAlexander Kabaev2004-10-04  Benjamin Kosnik  <[email protected]>
1696*f8a1b7d9SAlexander Kabaev
1697*f8a1b7d9SAlexander Kabaev	* configure.ac (libtool_VERSION): To 6:3:0.
1698*f8a1b7d9SAlexander Kabaev	* configure: Regnerate.
1699*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_abi.cc (check_version): Add 3.4.3.
1700*f8a1b7d9SAlexander Kabaev
1701*f8a1b7d9SAlexander Kabaev2004-10-04  Roger Sayle  <[email protected]>
1702*f8a1b7d9SAlexander Kabaev	    Eric Botcazou  <[email protected]>
1703*f8a1b7d9SAlexander Kabaev
1704*f8a1b7d9SAlexander Kabaev	PR libstdc++/17505
1705*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Synchronize the current list of stub
1706*f8a1b7d9SAlexander Kabaev	functions from libmath.
1707*f8a1b7d9SAlexander Kabaev
1708*f8a1b7d9SAlexander Kabaev2004-10-03  Roger Sayle  <[email protected]>
1709*f8a1b7d9SAlexander Kabaev
1710*f8a1b7d9SAlexander Kabaev	* config/locale/generic/c_locale.cc (__convert_to_v): Use
1711*f8a1b7d9SAlexander Kabaev	_GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
1712*f8a1b7d9SAlexander Kabaev	Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
1713*f8a1b7d9SAlexander Kabaev	to check for presence of strtold.
1714*f8a1b7d9SAlexander Kabaev
1715*f8a1b7d9SAlexander Kabaev2004-10-03  Paolo Carlini  <[email protected]>
1716*f8a1b7d9SAlexander Kabaev
1717*f8a1b7d9SAlexander Kabaev	* include/bits/stl_list.h: Trivial formatting fixes.
1718*f8a1b7d9SAlexander Kabaev	* include/bits/stl_tree.h: Likewise.
1719*f8a1b7d9SAlexander Kabaev
1720*f8a1b7d9SAlexander Kabaev2004-10-03  Paolo Carlini  <[email protected]>
1721*f8a1b7d9SAlexander Kabaev
1722*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (seekpos): In case of success, just
1723*f8a1b7d9SAlexander Kabaev	return __sp.
1724*f8a1b7d9SAlexander Kabaev
1725*f8a1b7d9SAlexander Kabaev2004-10-01  Paolo Carlini  <[email protected]>
1726*f8a1b7d9SAlexander Kabaev
1727*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (pbackfail): Implement correctly
1728*f8a1b7d9SAlexander Kabaev	27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
1729*f8a1b7d9SAlexander Kabaev	write in the buffer.
1730*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
1731*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
1732*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
1733*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
1734*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
1735*f8a1b7d9SAlexander Kabaev
1736*f8a1b7d9SAlexander Kabaev2004-10-01  Paolo Carlini  <[email protected]>
1737*f8a1b7d9SAlexander Kabaev
1738*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (seekpos): Minor rearrangement of two
1739*f8a1b7d9SAlexander Kabaev	conditionals consistently with seekoff.
1740*f8a1b7d9SAlexander Kabaev	* include/std/std_sstream.h (setbuf): Avoid a string temporary.
1741*f8a1b7d9SAlexander Kabaev	(_M_sync): Simplify a bit, clean-up comment.
1742*f8a1b7d9SAlexander Kabaev
1743*f8a1b7d9SAlexander Kabaev2004-09-30  Paolo Carlini  <[email protected]>
1744*f8a1b7d9SAlexander Kabaev
1745*f8a1b7d9SAlexander Kabaev	PR libstdc++/10975 (DR 453)
1746*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
1747*f8a1b7d9SAlexander Kabaev	and __off == 0.
1748*f8a1b7d9SAlexander Kabaev	* docs/html/ext/howto.html: Add an entry for DR 453.
1749*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
1750*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
1751*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
1752*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
1753*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
1754*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
1755*f8a1b7d9SAlexander Kabaev	move to...
1756*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
1757*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
1758*f8a1b7d9SAlexander Kabaev	move to...
1759*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
1760*f8a1b7d9SAlexander Kabaev
1761*f8a1b7d9SAlexander Kabaev2004-09-29  Paolo Carlini  <[email protected]>
1762*f8a1b7d9SAlexander Kabaev
1763*f8a1b7d9SAlexander Kabaev	* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
1764*f8a1b7d9SAlexander Kabaev	Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
1765*f8a1b7d9SAlexander Kabaev	(str()): Slightly tweak, protect from pptr() == 0.
1766*f8a1b7d9SAlexander Kabaev	(_M_update_egptr()): Likewise.
1767*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
1768*f8a1b7d9SAlexander Kabaev	for an empty buffer use __beg instead of _M_string.capacity().
1769*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
1770*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
1771*f8a1b7d9SAlexander Kabaev
1772*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
1773*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
1774*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
1775*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
1776*f8a1b7d9SAlexander Kabaev
1777*f8a1b7d9SAlexander Kabaev2004-09-29  Paolo Carlini  <[email protected]>
1778*f8a1b7d9SAlexander Kabaev	    Benjamin Kosnik  <[email protected]>
1779*f8a1b7d9SAlexander Kabaev
1780*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_io.h (class constraint_buf): New, extended
1781*f8a1b7d9SAlexander Kabaev	and templatized version of constraint_filebuf; add typedefs for
1782*f8a1b7d9SAlexander Kabaev	streambuf/stringbuf/filebuf and wchar_t counterparts.
1783*f8a1b7d9SAlexander Kabaev
1784*f8a1b7d9SAlexander Kabaev2004-09-28  Paolo Carlini  <[email protected]>
1785f260e61bSAlexander Kabaev
1786f260e61bSAlexander Kabaev	PR libstdc++/16612
1787f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_dispose, _M_refcopy,
1788f260e61bSAlexander Kabaev	basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined,
1789f260e61bSAlexander Kabaev	don't deal with _S_empty_rep.
1790f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct, _M_destroy,
1791f260e61bSAlexander Kabaev	_M_leak_hard, _M_mutate): Likewise.
1792f260e61bSAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New.
1793f260e61bSAlexander Kabaev	* acconfig.h: Add corresponding undef.
1794f260e61bSAlexander Kabaev	* configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING.
1795f260e61bSAlexander Kabaev	* docs/html/configopts.html: Document --enable-fully-dynamic-string.
1796*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1797f260e61bSAlexander Kabaev	* config.h.in: Likewise.
1798f260e61bSAlexander Kabaev
1799*f8a1b7d9SAlexander Kabaev2004-09-28  Benjamin Kosnik  <[email protected]>
1800f260e61bSAlexander Kabaev            Paolo Carlini  <[email protected]>
1801f260e61bSAlexander Kabaev
1802*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/operations/char/1.cc: New.
1803*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New.
1804*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/element_access/char/empty.cc: New.
1805*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc:
1806*f8a1b7d9SAlexander Kabaev	New.
1807f260e61bSAlexander Kabaev
1808*f8a1b7d9SAlexander Kabaev2004-09-28  Paolo Carlini  <[email protected]>
1809f260e61bSAlexander Kabaev
1810*f8a1b7d9SAlexander Kabaev	* README: Remove obsolete entry about include/c_shadow.
1811f260e61bSAlexander Kabaev
1812f260e61bSAlexander Kabaev2004-09-24  H.J. Lu  <[email protected]>
1813f260e61bSAlexander Kabaev
1814f260e61bSAlexander Kabaev	PR libstdc++/17469
1815f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp: Don't use global ld_library_path.
1816f260e61bSAlexander Kabaev
1817f260e61bSAlexander Kabaev2004-09-24  Paolo Carlini  <[email protected]>
1818*f8a1b7d9SAlexander Kabaev
1819*f8a1b7d9SAlexander Kabaev	* src/localename.cc (locale::locale(const char*)): Minor tweaks:
1820*f8a1b7d9SAlexander Kabaev	rename a variable, move an assignment.
1821*f8a1b7d9SAlexander Kabaev	(locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak.
1822*f8a1b7d9SAlexander Kabaev
1823*f8a1b7d9SAlexander Kabaev2004-09-24  Paul Brook  <[email protected]>
1824*f8a1b7d9SAlexander Kabaev
1825*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm
1826*f8a1b7d9SAlexander Kabaev	simulator targets.
1827*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
1828*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto.
1829*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto.
1830*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto.
1831*f8a1b7d9SAlexander Kabaev	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto.
1832*f8a1b7d9SAlexander Kabaev	* testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto.
1833*f8a1b7d9SAlexander Kabaev
1834*f8a1b7d9SAlexander Kabaev2004-09-23  Zack Weinberg  <[email protected]>
1835*f8a1b7d9SAlexander Kabaev
1836*f8a1b7d9SAlexander Kabaev	* testsuite/20_util/memory/auto_ptr/assign_neg.cc
1837*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/map/operators/1_neg.cc
1838*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/set/operators/1_neg.cc:
1839*f8a1b7d9SAlexander Kabaev	Update locations and/or regexps of dg-error markers.
1840*f8a1b7d9SAlexander Kabaev
1841*f8a1b7d9SAlexander Kabaev2004-09-23  P.J. Darcy  <[email protected]>
1842*f8a1b7d9SAlexander Kabaev
1843*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (thread_host_headers): Add gthr-tpf.h.
1844*f8a1b7d9SAlexander Kabaev	Add rule to build ${host_builddir}/gthr-tpf.h.
1845*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
1846*f8a1b7d9SAlexander Kabaev
1847*f8a1b7d9SAlexander Kabaev2004-09-23  Paolo Carlini  <[email protected]>
1848f260e61bSAlexander Kabaev	    Magnus Fromreide  <[email protected]>
1849f260e61bSAlexander Kabaev
1850f260e61bSAlexander Kabaev	* include/bits/boost_concept_check.h (struct _SequenceConcept):
1851f260e61bSAlexander Kabaev	Remove wrong requirement, i.e., not present in Table 67.
1852f260e61bSAlexander Kabaev
1853*f8a1b7d9SAlexander Kabaev2004-09-21  Paolo Carlini  <[email protected]>
1854f260e61bSAlexander Kabaev
1855*f8a1b7d9SAlexander Kabaev	PR libstdc++/12882 (cont)
1856*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
1857*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1858*f8a1b7d9SAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
1859*f8a1b7d9SAlexander Kabaev	_GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
1860*f8a1b7d9SAlexander Kabaev	trivial showmanyc for large files too.
1861f260e61bSAlexander Kabaev
1862*f8a1b7d9SAlexander Kabaev2004-09-17  Jonathan Wakely  <[email protected]>
1863f260e61bSAlexander Kabaev
1864f260e61bSAlexander Kabaev	* include/bits/stl_algo.h (remove): Remove too restrictive
1865f260e61bSAlexander Kabaev	concept-check.
1866f260e61bSAlexander Kabaev
1867*f8a1b7d9SAlexander Kabaev2004-09-17  Paolo Carlini  <[email protected]>
1868f260e61bSAlexander Kabaev
1869f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
1870f260e61bSAlexander Kabaev	as per Nathan's original suggestion.
1871f260e61bSAlexander Kabaev
1872*f8a1b7d9SAlexander Kabaev2004-09-17  Paolo Carlini  <[email protected]>
1873*f8a1b7d9SAlexander Kabaev
1874*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean
1875*f8a1b7d9SAlexander Kabaev	up a bit.
1876*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-2.cc: Likewise.
1877*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-3.cc: Likewise.
1878*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-4.cc: Likewise.
1879*f8a1b7d9SAlexander Kabaev
1880*f8a1b7d9SAlexander Kabaev2004-09-17  Paolo Carlini  <[email protected]>
1881*f8a1b7d9SAlexander Kabaev	    Andrea Arcangeli  <[email protected]>
1882*f8a1b7d9SAlexander Kabaev
1883*f8a1b7d9SAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't
1884*f8a1b7d9SAlexander Kabaev	call unnecessarily sync, that is fflush: the library, since 3.4.0
1885*f8a1b7d9SAlexander Kabaev	does not use buffered fread/fwrite.
1886*f8a1b7d9SAlexander Kabaev	* include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise.
1887*f8a1b7d9SAlexander Kabaev
1888*f8a1b7d9SAlexander Kabaev2004-09-15  Mark Mitchell  <[email protected]>
1889*f8a1b7d9SAlexander Kabaev
1890*f8a1b7d9SAlexander Kabaev	* config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
1891*f8a1b7d9SAlexander Kabaev	Define.
1892*f8a1b7d9SAlexander Kabaev	* config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
1893*f8a1b7d9SAlexander Kabaev	Define.
1894*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
1895*f8a1b7d9SAlexander Kabaev	(__cxa_vec_new): Use it.
1896*f8a1b7d9SAlexander Kabaev	(__cxa_vec_new2): Likewise.
1897*f8a1b7d9SAlexander Kabaev	(__cxa_vec_new3): Likewise.
1898*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cdtor): Likewise.
1899*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cctor): Likeiwse.
1900*f8a1b7d9SAlexander Kabaev	(__cxa_vec_dtor): Likewise.
1901*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cleanup): Likewise.
1902*f8a1b7d9SAlexander Kabaev	(__cxa_vec_delete2): Likewise.
1903*f8a1b7d9SAlexander Kabaev	(__cxa_vec_delete3): Likewise.
1904*f8a1b7d9SAlexander Kabaev	* libsupc++/vec.cc (__cxa_vec_new): Likewise.
1905*f8a1b7d9SAlexander Kabaev	(__cxa_vec_new2): Likewise.
1906*f8a1b7d9SAlexander Kabaev	(__cxa_vec_new3): Likewise.
1907*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cdtor): Likewise.
1908*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cctor): Likeiwse.
1909*f8a1b7d9SAlexander Kabaev	(__cxa_vec_dtor): Likewise.
1910*f8a1b7d9SAlexander Kabaev	(__cxa_vec_cleanup): Likewise.
1911*f8a1b7d9SAlexander Kabaev	(__cxa_vec_delete2): Likewise.
1912*f8a1b7d9SAlexander Kabaev	(__cxa_vec_delete3): Likewise.
1913*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_ctor_nocookie_nodtor): New function.
1914*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_ctor_cookie_nodtor): Likewise.
1915*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_cctor_nocookie_nodtor): Likewise.
1916*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_new_cookie_noctor): Likewise.
1917*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_new_nocookie): Likewise.
1918*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_new_cookie_nodtor): Likewise.
1919*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_new_cookie): Likewise.
1920*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_dtor): Likewise.
1921*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_dtor_cookie): Likewise.
1922*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_delete): Likewise.
1923*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_delete3): Likewise.
1924*f8a1b7d9SAlexander Kabaev	(__aeabi_vec_delete3_nodtor): Likewise.
1925*f8a1b7d9SAlexander Kabaev	(__aeabi_atexit): Likewise.
1926*f8a1b7d9SAlexander Kabaev
1927*f8a1b7d9SAlexander Kabaev2004-09-14  Nathan Myers  <[email protected]>
1928f260e61bSAlexander Kabaev
1929f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
1930f260e61bSAlexander Kabaev	for 11722: copy can replace move; the common case is __avail == 0.
1931f260e61bSAlexander Kabaev
1932*f8a1b7d9SAlexander Kabaev2004-09-14  Paolo Carlini  <[email protected]>
1933*f8a1b7d9SAlexander Kabaev
1934*f8a1b7d9SAlexander Kabaev	* include/bits/cpp_type_traits.h: Rename __is_trivially_copyable
1935*f8a1b7d9SAlexander Kabaev	to __is_scalar, more clear and consistent with "tr1" naming.
1936*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h: Update consistently throughout.
1937*f8a1b7d9SAlexander Kabaev
1938*f8a1b7d9SAlexander Kabaev2004-09-13  Paolo Carlini  <[email protected]>
1939f260e61bSAlexander Kabaev
1940f260e61bSAlexander Kabaev	PR libstdc++/11722
1941f260e61bSAlexander Kabaev	* include/std/std_fstream.h (xsgetn): Declare only.
1942f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (xsgetn): Define, optimize for the
1943f260e61bSAlexander Kabaev	always_noconv() case: when __n > __buflen, copy the available
1944f260e61bSAlexander Kabaev	buffer and issue a direct read.
1945f260e61bSAlexander Kabaev	* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.
1946f260e61bSAlexander Kabaev
1947f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
1948f260e61bSAlexander Kabaev	conditional.
1949f260e61bSAlexander Kabaev
1950*f8a1b7d9SAlexander Kabaev2004-09-13  Hans-Peter Nilsson  <[email protected]>
1951f260e61bSAlexander Kabaev
1952*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call
1953*f8a1b7d9SAlexander Kabaev	libstdc++_maybe_build_wrapper instead of using local code.
1954f260e61bSAlexander Kabaev
1955f260e61bSAlexander Kabaev2004-09-08  Benjamin Kosnik  <[email protected]>
1956*f8a1b7d9SAlexander Kabaev
1957*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
1958*f8a1b7d9SAlexander Kabaev
1959*f8a1b7d9SAlexander Kabaev2004-09-03  Jan Beulich  <[email protected]>
1960*f8a1b7d9SAlexander Kabaev
1961*f8a1b7d9SAlexander Kabaev	* crossconfig.m4: Add NetWare as a target.
1962*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
1963*f8a1b7d9SAlexander Kabaev
1964*f8a1b7d9SAlexander Kabaev2004-09-02  Mark Mitchell  <[email protected]>
1965*f8a1b7d9SAlexander Kabaev
1966*f8a1b7d9SAlexander Kabaev	* libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
1967*f8a1b7d9SAlexander Kabaev	defined.
1968*f8a1b7d9SAlexander Kabaev
1969*f8a1b7d9SAlexander Kabaev2004-09-02  Benjamin Kosnik  <[email protected]>
1970f260e61bSAlexander Kabaev	    Simon Richter  <[email protected]>
1971f260e61bSAlexander Kabaev
1972f260e61bSAlexander Kabaev	PR libstdc++/16715
1973f260e61bSAlexander Kabaev	* include/bits/istream.tcc: Add extern template for iostream
1974f260e61bSAlexander Kabaev	char and wchar_t instantiations.
1975f260e61bSAlexander Kabaev
1976*f8a1b7d9SAlexander Kabaev2004-09-02  Benjamin Kosnik  <[email protected]>
1977f260e61bSAlexander Kabaev	    Leland Wang  <[email protected]>
1978f260e61bSAlexander Kabaev
1979f260e61bSAlexander Kabaev	PR libstdc++/17259
1980f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h (rope::_S_compare): Use
1981f260e61bSAlexander Kabaev	_Rope_constants::_S_leaf.
1982f260e61bSAlexander Kabaev
1983*f8a1b7d9SAlexander Kabaev2004-09-02  Benjamin Kosnik  <[email protected]>
1984f260e61bSAlexander Kabaev
1985*f8a1b7d9SAlexander Kabaev	PR libstdc++/16848
1986*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (ext_headers): Remove demangle.h.
1987*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
1988*f8a1b7d9SAlexander Kabaev	* include/ext/demangle.h: Remove.
1989*f8a1b7d9SAlexander Kabaev
1990*f8a1b7d9SAlexander Kabaev2004-09-01  Benjamin Kosnik  <[email protected]>
1991*f8a1b7d9SAlexander Kabaev
1992*f8a1b7d9SAlexander Kabaev	PR libstdc++/16614
1993*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_base): Not type dependent,
1994*f8a1b7d9SAlexander Kabaev	split into..
1995*f8a1b7d9SAlexander Kabaev	(__pool): New, specialize.
1996*f8a1b7d9SAlexander Kabaev	(__common_pool): New, static bits here.
1997*f8a1b7d9SAlexander Kabaev	(__per_type_pool): New, and here.
1998*f8a1b7d9SAlexander Kabaev	(__mt_alloc_base): New.
1999*f8a1b7d9SAlexander Kabaev	(__mt_alloc): Add template parameter, inherit from it.
2000*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Split this...
2001*f8a1b7d9SAlexander Kabaev	* src/allocator-inst.cc: And this...
2002*f8a1b7d9SAlexander Kabaev	* src/pool_allocator.cc: ...into this.
2003*f8a1b7d9SAlexander Kabaev	* src/mt_allocator.cc: ... and this. Add definitions for
2004*f8a1b7d9SAlexander Kabaev	__mt_base.
2005*f8a1b7d9SAlexander Kabaev	* src/Makefile.am (sources): Split allocator.cc to
2006*f8a1b7d9SAlexander Kabaev	pool_allocator.cc and mt_allocator.cc.
2007*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Regenerate.
2008*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Add symbols.
2009*f8a1b7d9SAlexander Kabaev	* docs/html/ext/mt_allocator.html: Document new design.
2010*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-1.cc: New.
2011*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-2.cc: New.
2012*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-3.cc: New.
2013*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/tune-4.cc: New.
2014*f8a1b7d9SAlexander Kabaev
2015*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
2016*f8a1b7d9SAlexander Kabaev	* testsuite/ext/allocators.cc: Use check_new, split into...
2017*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/check_new.cc: this.
2018*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/check_new.cc: this.
2019*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/check_new.cc: this.
2020*f8a1b7d9SAlexander Kabaev	* testsuite/ext/debug_allocator/check_new.cc: this.
2021*f8a1b7d9SAlexander Kabaev	* testsuite/ext/mt_allocator/instantiate.cc: this.
2022*f8a1b7d9SAlexander Kabaev	* testsuite/ext/pool_allocator/instantiate.cc: this.
2023*f8a1b7d9SAlexander Kabaev	* testsuite/ext/malloc_allocator/instantiate.cc: this.
2024*f8a1b7d9SAlexander Kabaev	* testsuite/ext/debug_allocator/instantiate.cc: this.
2025*f8a1b7d9SAlexander Kabaev
2026*f8a1b7d9SAlexander Kabaev2004-08-30  Phil Edwards  <[email protected]>
2027*f8a1b7d9SAlexander Kabaev
2028*f8a1b7d9SAlexander Kabaev	* docs/html/install.html:  Update locales list (from Paolo).
2029*f8a1b7d9SAlexander Kabaev	Remove other redundant information and point to the GCC install
2030*f8a1b7d9SAlexander Kabaev	documentation.
2031f260e61bSAlexander Kabaev
2032f260e61bSAlexander Kabaev2004-08-30  Benjamin Kosnik  <[email protected]>
2033f260e61bSAlexander Kabaev
2034f260e61bSAlexander Kabaev	* include/ext/pool_allocator.h: Rename __pool_base to
2035f260e61bSAlexander Kabaev	__pool_alloc_base.
2036f260e61bSAlexander Kabaev	* src/allocator.cc: Same.
2037f260e61bSAlexander Kabaev	* config/linker-map.gnu: Same.
2038f260e61bSAlexander Kabaev
2039*f8a1b7d9SAlexander Kabaev2004-08-30  Paolo Carlini  <[email protected]>
2040*f8a1b7d9SAlexander Kabaev	    Kenneth C. Schalk  <[email protected]>
2041f260e61bSAlexander Kabaev
2042*f8a1b7d9SAlexander Kabaev	PR libstdc++/17215
2043*f8a1b7d9SAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file<char>::close()):
2044*f8a1b7d9SAlexander Kabaev	Check the return value of fclose/sync, loop on EINTR.
2045*f8a1b7d9SAlexander Kabaev	(__basic_file<char>::sys_open): Likewise, for sync.
2046*f8a1b7d9SAlexander Kabaev
2047*f8a1b7d9SAlexander Kabaev2004-08-29  Paolo Carlini  <[email protected]>
2048*f8a1b7d9SAlexander Kabaev
2049*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format,
2050*f8a1b7d9SAlexander Kabaev	case 'S'): Allow for at least one leap-second (as per C99, 7.23.1
2051*f8a1b7d9SAlexander Kabaev	and 7.23.3.5), two if !_GLIBCXX_USE_C99.
2052*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/char/4.cc: New.
2053*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
2054*f8a1b7d9SAlexander Kabaev
2055*f8a1b7d9SAlexander Kabaev2004-08-27  Jason Merrill  <[email protected]>
2056*f8a1b7d9SAlexander Kabaev
2057*f8a1b7d9SAlexander Kabaev	PR c++/13684
2058*f8a1b7d9SAlexander Kabaev	* libsupc++/guard.cc (static_mutex): Internal class implementing a
2059*f8a1b7d9SAlexander Kabaev	recursive mutex which controls initialization of local statics.
2060*f8a1b7d9SAlexander Kabaev	(__gnu_cxx::recursive_init): New exception class.
2061*f8a1b7d9SAlexander Kabaev	(__cxa_guard_acquire): Deal with locking and recursion detection.
2062*f8a1b7d9SAlexander Kabaev	(acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
2063f260e61bSAlexander Kabaev
2064f260e61bSAlexander Kabaev2004-08-27  Matthias Klose  <[email protected]>
2065f260e61bSAlexander Kabaev
2066f260e61bSAlexander Kabaev	* configure.host: For mips*-*-linux* update cpu_include_dir
2067f260e61bSAlexander Kabaev	after atomicity_dir is set.
2068f260e61bSAlexander Kabaev
2069f260e61bSAlexander Kabaev2004-08-27  Matthias Klose  <[email protected]>
2070f260e61bSAlexander Kabaev
2071f260e61bSAlexander Kabaev	* config/abi/arm-linux-gnu/baseline_symbols.txt: New.
2072f260e61bSAlexander Kabaev	* config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2073f260e61bSAlexander Kabaev	* configure.host: Set abi_baseline_pair for arm*-*-linux* and
2074f260e61bSAlexander Kabaev	mips*-*-linux*.
2075f260e61bSAlexander Kabaev
2076*f8a1b7d9SAlexander Kabaev2004-08-27  Paolo Carlini  <[email protected]>
2077*f8a1b7d9SAlexander Kabaev
2078*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New.
2079*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
2080*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
2081*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
2082*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
2083*f8a1b7d9SAlexander Kabaev
2084*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor
2085*f8a1b7d9SAlexander Kabaev	formatting fixes.
2086*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise.
2087*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
2088*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
2089*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
2090*f8a1b7d9SAlexander Kabaev
2091*f8a1b7d9SAlexander Kabaev2004-08-25  Paolo Carlini  <[email protected]>
2092*f8a1b7d9SAlexander Kabaev
2093*f8a1b7d9SAlexander Kabaev	PR libstdc++/17038 (partial)
2094*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (time_put<>::do_put): Increase
2095*f8a1b7d9SAlexander Kabaev	__maxlen to 128.
2096*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.h (class __timepunct): Add FIXME
2097*f8a1b7d9SAlexander Kabaev	comment about _M_put.
2098*f8a1b7d9SAlexander Kabaev	* config/locale/generic/time_members.cc (_M_put): Always null
2099*f8a1b7d9SAlexander Kabaev	terminate __s.
2100*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/time_members.cc (_M_put): Likewise.
2101*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/17038.cc: New.
2102*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
2103*f8a1b7d9SAlexander Kabaev
2104*f8a1b7d9SAlexander Kabaev2004-08-24  Paolo Carlini  <[email protected]>
2105*f8a1b7d9SAlexander Kabaev
2106*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
2107*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
2108*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
2109*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
2110*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
2111*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
2112*f8a1b7d9SAlexander Kabaev
2113*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
2114*f8a1b7d9SAlexander Kabaev	newlines.
2115*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
2116*f8a1b7d9SAlexander Kabaev
2117f260e61bSAlexander Kabaev2004-08-22  Matthias Klose  <[email protected]>
2118f260e61bSAlexander Kabaev
2119f260e61bSAlexander Kabaev	* config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
2120f260e61bSAlexander Kabaev	* config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2121f260e61bSAlexander Kabaev
2122*f8a1b7d9SAlexander Kabaev2004-08-23  Paolo Carlini  <[email protected]>
2123*f8a1b7d9SAlexander Kabaev
2124*f8a1b7d9SAlexander Kabaev	* configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
2125*f8a1b7d9SAlexander Kabaev	* aclocal.m4: Regenerate with automake-1.9.1.
2126*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
2127*f8a1b7d9SAlexander Kabaev	* Makefile.in: Likewise.
2128*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Likewise.
2129*f8a1b7d9SAlexander Kabaev	* libmath/Makefile.in: Likewise.
2130*f8a1b7d9SAlexander Kabaev	* libsupc++/Makefile.in: Likewise.
2131*f8a1b7d9SAlexander Kabaev	* po/Makefile.in: Likewise.
2132*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Likewise.
2133*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Likewise.
2134*f8a1b7d9SAlexander Kabaev
2135f260e61bSAlexander Kabaev2004-08-22  Paolo Carlini  <[email protected]>
2136f260e61bSAlexander Kabaev
2137f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast
2138f260e61bSAlexander Kabaev	to a signed type, long according to the resolution of DR 359.
2139f260e61bSAlexander Kabaev	* testsuite/22_locale/num_put/put/char/9.cc: New.
2140f260e61bSAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/9.cc: New.
2141f260e61bSAlexander Kabaev
2142f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_put<>::do_put(const void*)):
2143f260e61bSAlexander Kabaev	Simplify a bit: no need to clear showpos.
2144f260e61bSAlexander Kabaev
2145*f8a1b7d9SAlexander Kabaev2004-08-21  Paolo Carlini  <[email protected]>
2146*f8a1b7d9SAlexander Kabaev
2147*f8a1b7d9SAlexander Kabaev	* include/bits/char_traits.h (struct _Char_traits_match): Remove,
2148*f8a1b7d9SAlexander Kabaev	unused.
2149*f8a1b7d9SAlexander Kabaev
2150*f8a1b7d9SAlexander Kabaev2004-08-21  Paolo Carlini  <[email protected]>
2151*f8a1b7d9SAlexander Kabaev
2152*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper
2153*f8a1b7d9SAlexander Kabaev	wchar_t	type for the fill argument; minor formatting tweaks.
2154*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
2155*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
2156*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
2157*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
2158*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
2159*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
2160*f8a1b7d9SAlexander Kabaev
2161*f8a1b7d9SAlexander Kabaev2004-08-21  Paolo Carlini  <[email protected]>
2162*f8a1b7d9SAlexander Kabaev
2163*f8a1b7d9SAlexander Kabaev	* include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal
2164*f8a1b7d9SAlexander Kabaev	with _M_word != _M_local_word two times, redundantly.
2165*f8a1b7d9SAlexander Kabaev
2166*f8a1b7d9SAlexander Kabaev2004-08-20  Jason Merrill  <[email protected]>
2167*f8a1b7d9SAlexander Kabaev
2168*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (${host_builddir}/gthr.h): Don't add
2169*f8a1b7d9SAlexander Kabaev	_GLIBCXX_ to #pragma lines.
2170*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Update.
2171*f8a1b7d9SAlexander Kabaev
2172*f8a1b7d9SAlexander Kabaev2004-08-20  Paolo Carlini  <[email protected]>
2173*f8a1b7d9SAlexander Kabaev
2174*f8a1b7d9SAlexander Kabaev	PR libstdc++/7219 (continued)
2175*f8a1b7d9SAlexander Kabaev	* include/bits/ios_base.h (class ios_base): Expose Annex D.6
2176*f8a1b7d9SAlexander Kabaev	typedefs by default.
2177*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED.
2178*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error
2179*f8a1b7d9SAlexander Kabaev	line number.
2180*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2181*f8a1b7d9SAlexander Kabaev
2182*f8a1b7d9SAlexander Kabaev2004-08-20  John David Anglin  <[email protected]>
2183*f8a1b7d9SAlexander Kabaev
2184*f8a1b7d9SAlexander Kabaev	* cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory
2185*f8a1b7d9SAlexander Kabaev	barrier to locking asm.
2186*f8a1b7d9SAlexander Kabaev
2187*f8a1b7d9SAlexander Kabaev2004-08-20  Paolo Carlini  <[email protected]>
2188*f8a1b7d9SAlexander Kabaev
2189*f8a1b7d9SAlexander Kabaev	* include/c_std/cmath.tcc (__cmath_power): Revert previous commit:
2190*f8a1b7d9SAlexander Kabaev	actually the warning is a front-end bug (c++/17120).
2191*f8a1b7d9SAlexander Kabaev
2192f260e61bSAlexander Kabaev2004-08-20  Matthias Klose  <[email protected]>
2193f260e61bSAlexander Kabaev
2194f260e61bSAlexander Kabaev	* config/abi/s390-linux-gnu/baseline_symbols.txt: New.
2195f260e61bSAlexander Kabaev
2196f260e61bSAlexander Kabaev2004-08-20  Paolo Carlini  <[email protected]>
2197f260e61bSAlexander Kabaev
2198*f8a1b7d9SAlexander Kabaev	* include/c_std/cmath.tcc (__cmath_power): Suppress assignment
2199*f8a1b7d9SAlexander Kabaev	used as truth value warning.
2200*f8a1b7d9SAlexander Kabaev
2201*f8a1b7d9SAlexander Kabaev2004-08-20  Paolo Carlini  <[email protected]>
2202*f8a1b7d9SAlexander Kabaev
2203f260e61bSAlexander Kabaev	* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit
2204f260e61bSAlexander Kabaev	baseline.
2205f260e61bSAlexander Kabaev
2206f260e61bSAlexander Kabaev2004-08-20  Paolo Carlini  <[email protected]>
2207f260e61bSAlexander Kabaev
2208f260e61bSAlexander Kabaev	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it.
2209f260e61bSAlexander Kabaev
2210*f8a1b7d9SAlexander Kabaev2004-08-19  Benjamin Kosnik  <[email protected]>
2211*f8a1b7d9SAlexander Kabaev
2212*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check
2213*f8a1b7d9SAlexander Kabaev	timezone.
2214*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same.
2215*f8a1b7d9SAlexander Kabaev
2216f260e61bSAlexander Kabaev2004-08-19  Paolo Carlini  <[email protected]>
2217f260e61bSAlexander Kabaev
2218f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc: For std::map
2219f260e61bSAlexander Kabaev	instantiate the allocator for a correct pair type.
2220f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
2221f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
2222f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc:
2223f260e61bSAlexander Kabaev	Likewise.
2224f260e61bSAlexander Kabaev
2225f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc: Very
2226f260e61bSAlexander Kabaev	minor formatting fixes.
2227*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
2228*f8a1b7d9SAlexander Kabaev
2229*f8a1b7d9SAlexander Kabaev2004-08-19  Paolo Carlini  <[email protected]>
2230*f8a1b7d9SAlexander Kabaev
2231*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the
2232*f8a1b7d9SAlexander Kabaev	results.
2233*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/2.cc: Likewise.
2234*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/3.cc: Likewise.
2235*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/4.cc: Likewise.
2236*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
2237*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
2238*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
2239*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
2240f260e61bSAlexander Kabaev
2241f260e61bSAlexander Kabaev2004-08-19  Paolo Carlini  <[email protected]>
2242f260e61bSAlexander Kabaev
2243f260e61bSAlexander Kabaev	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2244f260e61bSAlexander Kabaev
2245f260e61bSAlexander Kabaev2004-08-18  Matthias Klose  <[email protected]>
2246f260e61bSAlexander Kabaev
2247f260e61bSAlexander Kabaev	* config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2248f260e61bSAlexander Kabaev	* config/abi/i386-linux-gnu/baseline_symbols.txt: New.
2249f260e61bSAlexander Kabaev	* config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
2250f260e61bSAlexander Kabaev
2251f260e61bSAlexander Kabaev2004-08-17  Paolo Carlini  <[email protected]>
2252f260e61bSAlexander Kabaev
2253f260e61bSAlexander Kabaev	* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2254f260e61bSAlexander Kabaev
2255f260e61bSAlexander Kabaev2004-08-17  Paolo Carlini  <[email protected]>
2256f260e61bSAlexander Kabaev
2257f260e61bSAlexander Kabaev	* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2258f260e61bSAlexander Kabaev
2259f260e61bSAlexander Kabaev2004-08-17  Benjamin Kosnik  <[email protected]>
2260f260e61bSAlexander Kabaev
2261f260e61bSAlexander Kabaev	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
2262f260e61bSAlexander Kabaev
2263f260e61bSAlexander Kabaev2004-08-16  Paolo Carlini  <[email protected]>
2264f260e61bSAlexander Kabaev
2265*f8a1b7d9SAlexander Kabaev	* include/bits/indirect_array.h: Trivial formatting fixes.
2266*f8a1b7d9SAlexander Kabaev	* include/bits/valarray_after.h: Likewise.
2267*f8a1b7d9SAlexander Kabaev	* include/bits/valarray_array.h: Likewise.
2268*f8a1b7d9SAlexander Kabaev	* src/valarray-inst.cc: Likewise.
2269*f8a1b7d9SAlexander Kabaev
2270*f8a1b7d9SAlexander Kabaev2004-08-15  Paolo Carlini  <[email protected]>
2271*f8a1b7d9SAlexander Kabaev
2272*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk.
2273*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
2274*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
2275*f8a1b7d9SAlexander Kabaev
2276*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New.
2277*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
2278*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
2279*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
2280*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
2281*f8a1b7d9SAlexander Kabaev
2282*f8a1b7d9SAlexander Kabaev2004-08-15  Paolo Carlini  <[email protected]>
2283*f8a1b7d9SAlexander Kabaev
2284*f8a1b7d9SAlexander Kabaev	* include/bits/deque.tcc: Trivial formatting fixes.
2285*f8a1b7d9SAlexander Kabaev
2286*f8a1b7d9SAlexander Kabaev2004-08-15  Paolo Carlini  <[email protected]>
2287*f8a1b7d9SAlexander Kabaev
2288*f8a1b7d9SAlexander Kabaev	* include/bits/deque.tcc: Trivial formatting fixes.
2289*f8a1b7d9SAlexander Kabaev
2290*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::do_get(&bool)):
2291*f8a1b7d9SAlexander Kabaev	Remove unneded typedef.
2292*f8a1b7d9SAlexander Kabaev
2293*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc: Very minor tweaks.
2294*f8a1b7d9SAlexander Kabaev
2295*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper
2296*f8a1b7d9SAlexander Kabaev	type for the fill argument.
2297*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
2298*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
2299*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
2300*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
2301*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
2302*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
2303*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
2304*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
2305f260e61bSAlexander Kabaev
2306f260e61bSAlexander Kabaev2004-08-13  Paolo Carlini  <[email protected]>
2307f260e61bSAlexander Kabaev
2308f260e61bSAlexander Kabaev	* src/debug.cc (_Error_formatter::_M_print_string): Fix thinko,
2309f260e61bSAlexander Kabaev	memmove is not needed, memcpy suffices.
2310f260e61bSAlexander Kabaev
2311*f8a1b7d9SAlexander Kabaev2004-08-13  Paolo Carlini  <[email protected]>
2312*f8a1b7d9SAlexander Kabaev
2313*f8a1b7d9SAlexander Kabaev	* include/std/std_fstream.h (class basic_ifstream,
2314*f8a1b7d9SAlexander Kabaev	class basic_ofstream, class basic_fstream): Add const overloads
2315*f8a1b7d9SAlexander Kabaev	of is_open, as per DR 365 [WP].
2316*f8a1b7d9SAlexander Kabaev	* docs/html/ext/howto.html: Add an entry for DR 365.
2317*f8a1b7d9SAlexander Kabaev
2318f260e61bSAlexander Kabaev2004-08-12  Paolo Carlini  <[email protected]>
2319*f8a1b7d9SAlexander Kabaev
2320*f8a1b7d9SAlexander Kabaev	* configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE.
2321*f8a1b7d9SAlexander Kabaev
2322*f8a1b7d9SAlexander Kabaev2004-08-12  Paolo Carlini  <[email protected]>
2323*f8a1b7d9SAlexander Kabaev
2324*f8a1b7d9SAlexander Kabaev	PR libstdc++/16956
2325*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off
2326*f8a1b7d9SAlexander Kabaev	to the returned value, reorganize a bit.
2327*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New.
2328*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New.
2329*f8a1b7d9SAlexander Kabaev
2330*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk.
2331*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
2332*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
2333*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
2334*f8a1b7d9SAlexander Kabaev
2335*f8a1b7d9SAlexander Kabaev2004-08-12  Paul Brook  <[email protected]>
2336*f8a1b7d9SAlexander Kabaev
2337*f8a1b7d9SAlexander Kabaev	* config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
2338*f8a1b7d9SAlexander Kabaev	_GLIBCXX_CXA_VEC_CTOR_RETURN.
2339*f8a1b7d9SAlexander Kabaev	* config/cpu/generic/cxxabi_tweaks.h: Ditto.
2340*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
2341*f8a1b7d9SAlexander Kabaev	__cxa_vec_ctor_return.
2342*f8a1b7d9SAlexander Kabaev	* libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
2343*f8a1b7d9SAlexander Kabaev	Use _GLIBCXX_CXA_VEC_CTOR_RETURN.
2344*f8a1b7d9SAlexander Kabaev
2345*f8a1b7d9SAlexander Kabaev2004-08-12  Kelley Cook  <[email protected]>
2346*f8a1b7d9SAlexander Kabaev
2347*f8a1b7d9SAlexander Kabaev	* Makefile.in, aclocal.m4, configure, include/Makefile.in,
2348*f8a1b7d9SAlexander Kabaev	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2349*f8a1b7d9SAlexander Kabaev	src/Makefile.in, testsuite/Makefile.in: Regenerate
2350*f8a1b7d9SAlexander Kabaev
2351*f8a1b7d9SAlexander Kabaev2004-08-12  Jan Beulich  <[email protected]>
2352*f8a1b7d9SAlexander Kabaev
2353*f8a1b7d9SAlexander Kabaev	* config/locale/generic/ctype_members.cc
2354*f8a1b7d9SAlexander Kabaev	(ctype<wchar_t>::_M_convert_to_wmask): Default case must not use 0 as
2355*f8a1b7d9SAlexander Kabaev	initializer for return value, as that is invalid for enumerated	types.
2356*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/ctype_members.cc
2357*f8a1b7d9SAlexander Kabaev	(ctype<wchar_t>::_M_convert_to_wmask): Likewise.
2358*f8a1b7d9SAlexander Kabaev
2359*f8a1b7d9SAlexander Kabaev2004-08-11  Paolo Carlini  <[email protected]>
2360*f8a1b7d9SAlexander Kabaev
2361*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo.
2362*f8a1b7d9SAlexander Kabaev
2363*f8a1b7d9SAlexander Kabaev2004-08-11  Paolo Carlini  <[email protected]>
2364*f8a1b7d9SAlexander Kabaev
2365*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test
2366*f8a1b7d9SAlexander Kabaev	variable.
2367*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto.
2368*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk.
2369*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto.
2370*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto.
2371*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto.
2372*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto.
2373*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto.
2374*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto.
2375*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto.
2376*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto.
2377*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto.
2378*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto.
2379*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto.
2380*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto.
2381*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto.
2382*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto.
2383*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto.
2384*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto.
2385*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto.
2386*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto.
2387*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto.
2388*f8a1b7d9SAlexander Kabaev
2389*f8a1b7d9SAlexander Kabaev2004-08-11  Paolo Carlini  <[email protected]>
2390f260e61bSAlexander Kabaev	    Petur Runolfsson  <[email protected]>
2391f260e61bSAlexander Kabaev
2392f260e61bSAlexander Kabaev	PR libstdc++/16959
2393f260e61bSAlexander Kabaev	* src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
2394f260e61bSAlexander Kabaev	standard streams are constructed.
2395f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.
2396f260e61bSAlexander Kabaev
2397*f8a1b7d9SAlexander Kabaev2004-08-09  Paolo Carlini  <[email protected]>
2398*f8a1b7d9SAlexander Kabaev
2399*f8a1b7d9SAlexander Kabaev	* include/bits/stl_bvector.h: Trivial formatting fixes.
2400*f8a1b7d9SAlexander Kabaev
2401*f8a1b7d9SAlexander Kabaev2004-08-09  Paolo Carlini  <[email protected]>
2402*f8a1b7d9SAlexander Kabaev
2403*f8a1b7d9SAlexander Kabaev	* src/ios.cc (ios_base::_M_grow_words): Uglify the names.
2404*f8a1b7d9SAlexander Kabaev
2405*f8a1b7d9SAlexander Kabaev2004-08-07  Jonathan Wakely  <[email protected]>
2406f260e61bSAlexander Kabaev	    Paolo Carlini  <[email protected]>
2407f260e61bSAlexander Kabaev
2408f260e61bSAlexander Kabaev	* src/debug.cc (_Error_formatter::_M_print_string): In order
2409f260e61bSAlexander Kabaev	to print individual words from __string, _M_format_word can't
2410f260e61bSAlexander Kabaev	be called since may be just sprintf, thus ignoring completely
2411f260e61bSAlexander Kabaev	__n: instead, use memmove and append '\0' by hand.
2412f260e61bSAlexander Kabaev
2413*f8a1b7d9SAlexander Kabaev2004-08-07  Paolo Carlini  <[email protected]>
2414*f8a1b7d9SAlexander Kabaev
2415*f8a1b7d9SAlexander Kabaev	* config/locale/generic/c_locale.h (__convert_from_v): Don't
2416*f8a1b7d9SAlexander Kabaev	use a default for __prec, assume __prec >= 0 and simplify.
2417*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
2418*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
2419*f8a1b7d9SAlexander Kabaev	Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".
2420*f8a1b7d9SAlexander Kabaev
2421*f8a1b7d9SAlexander Kabaev2004-08-04  Phil Edwards  <[email protected]>
2422*f8a1b7d9SAlexander Kabaev
2423*f8a1b7d9SAlexander Kabaev	* docs/html/configopts.html:  Emphasize that options change.
2424*f8a1b7d9SAlexander Kabaev	* docs/html/17_intro/configury.html:  Update links.
2425*f8a1b7d9SAlexander Kabaev
2426*f8a1b7d9SAlexander Kabaev2004-08-03  Paolo Carlini  <[email protected]>
2427*f8a1b7d9SAlexander Kabaev
2428*f8a1b7d9SAlexander Kabaev	* include/bits/list.tcc: Trivial formatting fixes.
2429*f8a1b7d9SAlexander Kabaev
2430*f8a1b7d9SAlexander Kabaev2004-08-03  Mark Mitchell  <[email protected]>
2431*f8a1b7d9SAlexander Kabaev
2432*f8a1b7d9SAlexander Kabaev	* libsupc++/new_op.cc: Update comments.
2433*f8a1b7d9SAlexander Kabaev	* libsupc++/del_op.cc: Likewise.
2434*f8a1b7d9SAlexander Kabaev
2435*f8a1b7d9SAlexander Kabaev2004-08-02  Mark Mitchell  <[email protected]>
2436*f8a1b7d9SAlexander Kabaev
2437*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h: Make all declarations have default
2438*f8a1b7d9SAlexander Kabaev	visibility.
2439*f8a1b7d9SAlexander Kabaev	* libsupc++/exception: Likewise.
2440*f8a1b7d9SAlexander Kabaev	* libsupc++/new: Likewise.
2441*f8a1b7d9SAlexander Kabaev	* libsupc++/typeinfo: Likewise.
2442*f8a1b7d9SAlexander Kabaev	* libsupc++/unwind-cxx.h: Likewise.
2443*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
2444*f8a1b7d9SAlexander Kabaev	the __cxxabiv1 namespace.
2445*f8a1b7d9SAlexander Kabaev	(__cxa_free_exception): Likewise.
2446*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
2447*f8a1b7d9SAlexander Kabaev	(__cxa_bad_typeid): Likewise.
2448*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
2449*f8a1b7d9SAlexander Kabaev	(__cxa_end_catch): Likewise.
2450*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
2451*f8a1b7d9SAlexander Kabaev	(__cxa_get_globals): Likewise.
2452*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
2453*f8a1b7d9SAlexander Kabaev	(__cxa_rethrow): Likewise.
2454*f8a1b7d9SAlexander Kabaev	* libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
2455*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_type.cc: Include <cxxabi.h>.
2456*f8a1b7d9SAlexander Kabaev
2457*f8a1b7d9SAlexander Kabaev	* Makefile.am (hosted_source): Add libmath and testsuite.
2458*f8a1b7d9SAlexander Kabaev	(SUBDIRS): Remove them.
2459*f8a1b7d9SAlexander Kabaev	* acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
2460*f8a1b7d9SAlexander Kabaev	on arm*-*-symbianelf*.
2461*f8a1b7d9SAlexander Kabaev	* crossconfig.m4: Add arm*-*-symbianelf* support.
2462*f8a1b7d9SAlexander Kabaev	* include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
2463*f8a1b7d9SAlexander Kabaev	when freestanding.  Do not bring names into std:: namespace with
2464*f8a1b7d9SAlexander Kabaev	"using" when freestanding.  Declare required functions and macros
2465*f8a1b7d9SAlexander Kabaev	when freestanding.
2466*f8a1b7d9SAlexander Kabaev	* libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
2467*f8a1b7d9SAlexander Kabaev	when freestanding.
2468*f8a1b7d9SAlexander Kabaev	* libsupc++/del_op.cc: Declare "free" only when freestanding.
2469*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
2470*f8a1b7d9SAlexander Kabaev	(malloc): Declare when freestanding.
2471*f8a1b7d9SAlexander Kabaev	(free): Likewise.
2472*f8a1b7d9SAlexander Kabaev	(memset): Likewise.
2473*f8a1b7d9SAlexander Kabaev	(__cxa_allocate_exception): Call malloc, not std::malloc.  Likewise
2474*f8a1b7d9SAlexander Kabaev	for memset.
2475*f8a1b7d9SAlexander Kabaev	(__cxa_free_exception): Likewise for free.
2476*f8a1b7d9SAlexander Kabaev	* libsupc++/new_op.cc: Declare "malloc" when freestanding.
2477*f8a1b7d9SAlexander Kabaev	* libsupc++/pure.cc (writestr): Define to nothing when
2478*f8a1b7d9SAlexander Kabaev	freestanding.
2479*f8a1b7d9SAlexander Kabaev	* libsupc++/vterminate.cc: Do not define anything when
2480*f8a1b7d9SAlexander Kabaev	freestanding.
2481*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerated.
2482*f8a1b7d9SAlexander Kabaev	* aclocal.m4: Likewise.
2483*f8a1b7d9SAlexander Kabaev	* configure: Likewise.
2484*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Likewise.
2485*f8a1b7d9SAlexander Kabaev	* libmath/Makefile.in: Likewise.
2486*f8a1b7d9SAlexander Kabaev	* libsupc++/Makefile.in: Likewise.
2487*f8a1b7d9SAlexander Kabaev	* po/Makefile.in: Likewise.
2488*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Likewise.
2489*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Likewise.
2490*f8a1b7d9SAlexander Kabaev
2491*f8a1b7d9SAlexander Kabaev2004-08-01  Matt Austern  <[email protected]>
2492*f8a1b7d9SAlexander Kabaev
2493*f8a1b7d9SAlexander Kabaev	PR libstdc++/16844
2494*f8a1b7d9SAlexander Kabaev	* include/bits/stl_list.h (_M_create_node): Remove unused
2495*f8a1b7d9SAlexander Kabaev	zero-argument version.
2496*f8a1b7d9SAlexander Kabaev	* include/ext/slist (_M_create_node): Pass two arguments to
2497*f8a1b7d9SAlexander Kabaev	allocator's construct() member function.
2498*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/deque/explicit_instantiation.cc: New.
2499*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/list/explicit_instantiation.cc: New.
2500*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/vector/explicit_instantiation.cc: New.
2501*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/map/explicit_instantiation.cc: New.
2502*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/set/explicit_instantiation.cc: New.
2503*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/multimap/explicit_instantiation.cc: New.
2504*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/multiset/explicit_instantiation.cc: New.
2505*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_set_explicit_instantiation.cc: New.
2506*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist_explicit_instantiation.cc: New.
2507*f8a1b7d9SAlexander Kabaev
2508f260e61bSAlexander Kabaev2004-07-30  Paolo Carlini  <[email protected]>
2509*f8a1b7d9SAlexander Kabaev
2510*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
2511*f8a1b7d9SAlexander Kabaev	num_get<>::_M_extract_int): In the main parsing loop delay the
2512*f8a1b7d9SAlexander Kabaev	life of __q to the actual use point.
2513*f8a1b7d9SAlexander Kabaev
2514*f8a1b7d9SAlexander Kabaev2004-07-29  Paolo Carlini  <[email protected]>
2515*f8a1b7d9SAlexander Kabaev
2516*f8a1b7d9SAlexander Kabaev	PR libstdc++/14220
2517*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
2518*f8a1b7d9SAlexander Kabaev	Don't clip the precision passed down to __convert_from_v:
2519*f8a1b7d9SAlexander Kabaev	22.2.2.2.2 nowhere says so.
2520*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/char/14220.cc: New.
2521*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
2522*f8a1b7d9SAlexander Kabaev
2523*f8a1b7d9SAlexander Kabaev2004-07-29  Paolo Carlini  <[email protected]>
2524*f8a1b7d9SAlexander Kabaev
2525*f8a1b7d9SAlexander Kabaev	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31.
2526*f8a1b7d9SAlexander Kabaev
2527*f8a1b7d9SAlexander Kabaev2004-07-29  Paolo Carlini  <[email protected]>
2528f260e61bSAlexander Kabaev	    Petur Runolfsson  <[email protected]>
2529f260e61bSAlexander Kabaev
2530f260e61bSAlexander Kabaev	PR libstdc++/12658 (continued)
2531f260e61bSAlexander Kabaev	* src/locale_init.cc (locale::locale, locale::global): Use
2532f260e61bSAlexander Kabaev	a single locale_mutex instead of two separate mutexes.
2533f260e61bSAlexander Kabaev
2534f260e61bSAlexander Kabaev2004-07-29  Paolo Carlini  <[email protected]>
2535f260e61bSAlexander Kabaev
2536f260e61bSAlexander Kabaev	PR libstdc++/16813
2537f260e61bSAlexander Kabaev	* include/debug/map.h (insert(_InputIterator, _InputIterator)):
2538f260e61bSAlexander Kabaev	Fix typo.
2539f260e61bSAlexander Kabaev	* testsuite/23_containers/map/insert/16813.cc: New.
2540f260e61bSAlexander Kabaev
2541*f8a1b7d9SAlexander Kabaev2004-07-29  Phil Edwards  <[email protected]>
2542*f8a1b7d9SAlexander Kabaev
2543*f8a1b7d9SAlexander Kabaev	* docs/html/faq/index.html:  Update version references.  Make
2544*f8a1b7d9SAlexander Kabaev	clear that code from SGI has diverged greatly.  Remove references
2545*f8a1b7d9SAlexander Kabaev	to library snapshots and what's-new sections.
2546*f8a1b7d9SAlexander Kabaev	* docs/html/faq/index.txt:  Regenerate.
2547*f8a1b7d9SAlexander Kabaev
2548*f8a1b7d9SAlexander Kabaev2004-07-28  Matt Austern  <[email protected]>
2549*f8a1b7d9SAlexander Kabaev
2550*f8a1b7d9SAlexander Kabaev	* include/bits/stl_construct.h (_Destroy): New three-argument
2551*f8a1b7d9SAlexander Kabaev	overload that takes an allocator argument.  Another inline
2552*f8a1b7d9SAlexander Kabaev	three-argument overload that takes std::allocator and dispatches
2553*f8a1b7d9SAlexander Kabaev	to the two-argument version.
2554*f8a1b7d9SAlexander Kabaev	* include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
2555*f8a1b7d9SAlexander Kabaev	Change return type to void to match uninitialized_fill_n.
2556*f8a1b7d9SAlexander Kabaev	(__uninitialized_copy_a_): New function.  Like uninitialized_copy
2557*f8a1b7d9SAlexander Kabaev	except that it takes an allocator and uses it for construct and
2558*f8a1b7d9SAlexander Kabaev	destroy.  If the allocator is std::allocator, dispatches to
2559*f8a1b7d9SAlexander Kabaev	uninitialized_copy.
2560*f8a1b7d9SAlexander Kabaev	(__uninitialized_fill_a): Likewise.
2561*f8a1b7d9SAlexander Kabaev	(__uninitialized_fill_n_a): Likewise.
2562*f8a1b7d9SAlexander Kabaev	(__uninitialized_copy_copy): Give it an allocator argument.
2563*f8a1b7d9SAlexander Kabaev	(__uninitialized_fill_copy): Likewise.
2564*f8a1b7d9SAlexander Kabaev	(__uninitialized_copy_fill): Likewise.
2565*f8a1b7d9SAlexander Kabaev	* include/bits/deque.tcc: Use new forms defined in stl_construct.h
2566*f8a1b7d9SAlexander Kabaev	and stl_uninitialized.h.  Replace use of single-argument _Construct
2567*f8a1b7d9SAlexander Kabaev	and _Destroy with use of allocator's construct and destroy methods.
2568*f8a1b7d9SAlexander Kabaev	* include/bits/list.tcc: Likewise.
2569*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h: Likewise.
2570*f8a1b7d9SAlexander Kabaev	* include/bits/stl_list.h: Likewise.
2571*f8a1b7d9SAlexander Kabaev	* include/bits/stl_tree.h: Likewise.
2572*f8a1b7d9SAlexander Kabaev	* include/bits/stl_vector.h: Likewise.
2573*f8a1b7d9SAlexander Kabaev	* include/bits/vector.tcc: Likewise.
2574*f8a1b7d9SAlexander Kabaev	* include/ext/hashtable.h: Use rebind so that allocator_type
2575*f8a1b7d9SAlexander Kabaev	has correct type for a container's allocator.  Replace use of
2576*f8a1b7d9SAlexander Kabaev	single-argument _Construct and _Destroy with use of allocator's
2577*f8a1b7d9SAlexander Kabaev	construct and destroy methods.
2578*f8a1b7d9SAlexander Kabaev	* include/ext/memory (__uninitialized_copy_n_a): New function.
2579*f8a1b7d9SAlexander Kabaev	Like uninitialized_copy_n except that it takes an extra parameter,
2580*f8a1b7d9SAlexander Kabaev	an allocator, and uses it for construct and destroy operations.
2581*f8a1b7d9SAlexander Kabaev	* include/ext/rope: Use new forms defined in stl_construct.h,
2582*f8a1b7d9SAlexander Kabaev	stl_uninitialized.h, and ext/memory.  Replace use of single-argument
2583*f8a1b7d9SAlexander Kabaev	_Construct and _Destroy with allocator construct and destroy methods.
2584*f8a1b7d9SAlexander Kabaev	* include/ext/ropeimpl.h: Likewise.
2585*f8a1b7d9SAlexander Kabaev	* include/ext/slist.h: Likewise.
2586*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.h (check_construct_destroy): New.
2587*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_allocator.cc (check_construct_destroy): New.
2588*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/deque/check_construct_destroy.cc: New.
2589*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/list/check_construct_destroy.cc: New.
2590*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/set/check_construct_destroy.cc: New.
2591*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/vector/check_construct_destroy.cc: New.
2592*f8a1b7d9SAlexander Kabaev	* testsuite/ext/hash_check_construct_destroy.cc: New.
2593*f8a1b7d9SAlexander Kabaev	* testsuite/ext/slist_check_construct_destroy.cc: New.
2594*f8a1b7d9SAlexander Kabaev
2595*f8a1b7d9SAlexander Kabaev2004-07-28  Alexandre Oliva  <[email protected]>
2596*f8a1b7d9SAlexander Kabaev
2597*f8a1b7d9SAlexander Kabaev	2003-10-01  Eric Christopher  <[email protected]>
2598*f8a1b7d9SAlexander Kabaev	* config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm'
2599*f8a1b7d9SAlexander Kabaev	constraint.
2600*f8a1b7d9SAlexander Kabaev	2003-07-09  Alexandre Oliva  <[email protected]>
2601*f8a1b7d9SAlexander Kabaev	* config/cpu/sh/atomicity.h: New.  Use movli and movco on SH4a.
2602*f8a1b7d9SAlexander Kabaev
2603*f8a1b7d9SAlexander Kabaev2004-07-23  Benjamin Kosnik  <[email protected]>
2604*f8a1b7d9SAlexander Kabaev
2605*f8a1b7d9SAlexander Kabaev	PR libstdc++/16678
2606*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc: Fix for -Werror.
2607*f8a1b7d9SAlexander Kabaev
2608*f8a1b7d9SAlexander Kabaev2004-07-23  Jonathan Wakely  <[email protected]>
2609*f8a1b7d9SAlexander Kabaev
2610*f8a1b7d9SAlexander Kabaev	* docs/html/debug.html: Say debug mode only available since 3.4.0.
2611*f8a1b7d9SAlexander Kabaev
2612*f8a1b7d9SAlexander Kabaev2004-07-21  Benjamin Kosnik  <[email protected]>
2613*f8a1b7d9SAlexander Kabaev
2614*f8a1b7d9SAlexander Kabaev	* docs/doxygen/mainpage.html: Clarify links.
2615*f8a1b7d9SAlexander Kabaev	* docs/doxygen/stdheader.cc: Add files.
2616*f8a1b7d9SAlexander Kabaev	* docs/doxygen/style.css: Remove bolds, add h2, h3 styles.
2617*f8a1b7d9SAlexander Kabaev	* docs/doxygen/user.cfg.in: New options, wrap.
2618*f8a1b7d9SAlexander Kabaev
2619f260e61bSAlexander Kabaev2004-07-20  Danny Smith  <[email protected]>
2620f260e61bSAlexander Kabaev
2621f260e61bSAlexander Kabaev	* include/c_std/std_cwchar.h (wcsstr): Correct signature.
2622f260e61bSAlexander Kabaev
2623f260e61bSAlexander Kabaev2004-07-19  Benjamin Kosnik  <[email protected]>
2624f260e61bSAlexander Kabaev
2625f260e61bSAlexander Kabaev	PR libstdc++/15488
2626f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp (v3-copy-files): Revert.
2627f260e61bSAlexander Kabaev
2628f260e61bSAlexander Kabaev2004-07-17  Richard Sandiford  <[email protected]>
2629f260e61bSAlexander Kabaev
2630f260e61bSAlexander Kabaev	PR bootstrap/16469
2631f260e61bSAlexander Kabaev	* scripts/create_testsuite_files: Pass -print to find.
2632f260e61bSAlexander Kabaev
2633f260e61bSAlexander Kabaev2004-07-15  Paolo Carlini  <[email protected]>
2634f260e61bSAlexander Kabaev
2635f260e61bSAlexander Kabaev	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
2636f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.
2637f260e61bSAlexander Kabaev
2638f260e61bSAlexander Kabaev2004-07-15  Jakub Jelinek  <[email protected]>
2639f260e61bSAlexander Kabaev
2640f260e61bSAlexander Kabaev	PR libstdc++/14697
2641f260e61bSAlexander Kabaev	* acinclude.m4 (glibcxx_shared_libgcc): Correct
2642f260e61bSAlexander Kabaev	glibcxx_shared_libgcc test for multilibs.
2643f260e61bSAlexander Kabaev	* configure: Rebuilt.
2644f260e61bSAlexander Kabaev
2645f260e61bSAlexander Kabaev2004-07-14  Paolo Carlini  <[email protected]>
2646f260e61bSAlexander Kabaev
2647*f8a1b7d9SAlexander Kabaev	PR libstdc++/16505
2648*f8a1b7d9SAlexander Kabaev	* include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix
2649*f8a1b7d9SAlexander Kabaev	the signature to return void, as per 20.4.4.3.
2650*f8a1b7d9SAlexander Kabaev	* include/bits/stl_vector.h (vector::vector(size_type,
2651*f8a1b7d9SAlexander Kabaev	const value_type&, const allocator_type&), vector::vector(size_type),
2652*f8a1b7d9SAlexander Kabaev	vector::_M_initialize_dispatch): Adjust callers.
2653*f8a1b7d9SAlexander Kabaev	* include/bits/vector.tcc (vector<>::_M_fill_assign,
2654*f8a1b7d9SAlexander Kabaev	vector<>::_M_fill_insert): Likewise.
2655*f8a1b7d9SAlexander Kabaev	* testsuite/20_util/memory/16505.cc: New.
2656f260e61bSAlexander Kabaev
2657f260e61bSAlexander Kabaev2004-07-14  Paolo Carlini  <[email protected]>
2658f260e61bSAlexander Kabaev
2659*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread-1.cc,
2660*f8a1b7d9SAlexander Kabaev	12658_thread-2.cc: Use __gnu_test::try_named_locale.
2661*f8a1b7d9SAlexander Kabaev
2662*f8a1b7d9SAlexander Kabaev2004-07-13  Benjamin Kosnik  <[email protected]>
2663*f8a1b7d9SAlexander Kabaev
2664*f8a1b7d9SAlexander Kabaev	* docs/html/ext/mt_allocator.html: Add docs for _Tune.
2665*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
2666*f8a1b7d9SAlexander Kabaev	(__mt_alloc::_S_set_options): Same.
2667*f8a1b7d9SAlexander Kabaev	Add to comments.
2668*f8a1b7d9SAlexander Kabaev
2669*f8a1b7d9SAlexander Kabaev2004-07-13  Benjamin Kosnik  <[email protected]>
2670*f8a1b7d9SAlexander Kabaev
2671*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
2672*f8a1b7d9SAlexander Kabaev	for linux.
2673*f8a1b7d9SAlexander Kabaev	* configure: Regenerated.
2674*f8a1b7d9SAlexander Kabaev
2675*f8a1b7d9SAlexander Kabaev2004-07-13  Paolo Carlini  <[email protected]>
2676*f8a1b7d9SAlexander Kabaev
2677*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename
2678*f8a1b7d9SAlexander Kabaev	to 12658_thread-1.cc and xfail.
2679*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread-2.c: New, much
2680*f8a1b7d9SAlexander Kabaev	simpler version of 12658_thread-1.cc, still failing on 3_3 and
2681*f8a1b7d9SAlexander Kabaev	not failing on 3_4/mainline - both on single processor and
2682*f8a1b7d9SAlexander Kabaev	multiprocessor machines.
2683f260e61bSAlexander Kabaev
2684f260e61bSAlexander Kabaev2004-07-12  Benjamin Kosnik  <[email protected]>
2685f260e61bSAlexander Kabaev
2686*f8a1b7d9SAlexander Kabaev	* docs/html/abi.html: Remove non-public qualification.
2687*f8a1b7d9SAlexander Kabaev
2688f260e61bSAlexander Kabaev	* include/bits/concurrence.h: Tweak comments.
2689f260e61bSAlexander Kabaev
2690*f8a1b7d9SAlexander Kabaev2004-07-11  Paolo Carlini  <[email protected]>
2691f260e61bSAlexander Kabaev
2692*f8a1b7d9SAlexander Kabaev	Add wchar_t counterparts of the basic_streambbuf<char> tests.
2693*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
2694*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
2695*f8a1b7d9SAlexander Kabaev	Likewise.
2696*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
2697*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
2698*f8a1b7d9SAlexander Kabaev	3599.cc: Likewise.
2699*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
2700*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
2701*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
2702*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
2703*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
2704*f8a1b7d9SAlexander Kabaev	Likewise.
2705*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
2706f260e61bSAlexander Kabaev
2707*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
2708*f8a1b7d9SAlexander Kabaev	tweaks.
2709*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
2710*f8a1b7d9SAlexander Kabaev	Likewise.
2711*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
2712*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
2713f260e61bSAlexander Kabaev
2714*f8a1b7d9SAlexander Kabaev2004-07-11  Phil Edwards  <[email protected]>
2715f260e61bSAlexander Kabaev
2716*f8a1b7d9SAlexander Kabaev	* acinclude.m4:  Cosmetic shell syntax fixes.
2717*f8a1b7d9SAlexander Kabaev	* configure.ac:  Bring comment inline with reality.
2718*f8a1b7d9SAlexander Kabaev	* configure.host:  Both of the above.  Move 'arm' case to right
2719*f8a1b7d9SAlexander Kabaev	place in host_cpu switch.
2720*f8a1b7d9SAlexander Kabaev	* aclocal.m4, configure:  Regenerate.
2721f260e61bSAlexander Kabaev
2722*f8a1b7d9SAlexander Kabaev2004-07-09  Paolo Carlini  <[email protected]>
2723f260e61bSAlexander Kabaev
2724*f8a1b7d9SAlexander Kabaev	Add wchar_t counterparts of the basic_stringbuf<char> tests.
2725*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New.
2726*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
2727*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc,
2728*f8a1b7d9SAlexander Kabaev	3599.cc, 9988.cc: Likewise.
2729*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc:
2730*f8a1b7d9SAlexander Kabaev	Likewise.
2731*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc:
2732*f8a1b7d9SAlexander Kabaev	Likewise.
2733*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc:
2734*f8a1b7d9SAlexander Kabaev	Likewise.
2735*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc:
2736*f8a1b7d9SAlexander Kabaev	Likewise.
2737*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
2738*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
2739*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
2740*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc:
2741*f8a1b7d9SAlexander Kabaev	Likewise.
2742*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc,
2743*f8a1b7d9SAlexander Kabaev	9404-1.cc: Likewise.
2744*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc,
2745*f8a1b7d9SAlexander Kabaev	9404-2.cc: Likewise.
2746*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc,
2747*f8a1b7d9SAlexander Kabaev	3955.cc: Likewise.
2748*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
2749*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
2750f260e61bSAlexander Kabaev
2751*f8a1b7d9SAlexander Kabaev2004-07-08  Paolo Carlini  <[email protected]>
2752f260e61bSAlexander Kabaev
2753*f8a1b7d9SAlexander Kabaev	* include/bits/gslice.h: Trivial formatting fixes.
2754*f8a1b7d9SAlexander Kabaev	* include/bits/gslice_array.h: Likewise.
2755*f8a1b7d9SAlexander Kabaev	* include/bits/indirect_array.h: Likewise.
2756*f8a1b7d9SAlexander Kabaev	* include/bits/mask_array.h: Likewise.
2757*f8a1b7d9SAlexander Kabaev	* include/bits/slice_array.h: Likewise.
2758*f8a1b7d9SAlexander Kabaev	* include/bits/valarray_after.h: Likewise.
2759*f8a1b7d9SAlexander Kabaev	* include/bits/valarray_array.h: Likewise.
2760*f8a1b7d9SAlexander Kabaev	* include/bits/valarray_before.h: Likewise.
2761*f8a1b7d9SAlexander Kabaev	* include/std/std_valarray.h: Likewise.
2762f260e61bSAlexander Kabaev
2763*f8a1b7d9SAlexander Kabaev2004-07-08  Benjamin Kosnik  <[email protected]>
2764f260e61bSAlexander Kabaev
2765*f8a1b7d9SAlexander Kabaev	PR c++/16169
2766*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h (basic_string::operator=): Revert.
2767f260e61bSAlexander Kabaev
2768f260e61bSAlexander Kabaev2004-07-07  Benjamin Kosnik  <[email protected]>
2769f260e61bSAlexander Kabaev
2770f260e61bSAlexander Kabaev	* configure.ac (libtool_VERSION): To 6:2:0.
2771f260e61bSAlexander Kabaev	* configure: Regenerated.
2772f260e61bSAlexander Kabaev
2773f260e61bSAlexander Kabaev	* testsuite/testsuite_abi.cc (check_version): Add 3.4.2.
2774f260e61bSAlexander Kabaev
2775f260e61bSAlexander Kabaev2004-07-07  Aaron W. LaFramboise  <[email protected]>
2776f260e61bSAlexander Kabaev
2777f260e61bSAlexander Kabaev	PR libstdc++/16411
2778f260e61bSAlexander Kabaev	* config/linker-map.gnu: Add stdio_sync_filebuf::file exports.
2779f260e61bSAlexander Kabaev
2780*f8a1b7d9SAlexander Kabaev2004-07-07  Benjamin Kosnik  <[email protected]>
2781*f8a1b7d9SAlexander Kabaev
2782*f8a1b7d9SAlexander Kabaev	* docs/html/abi.html: Updates for 3.4.1 release. Add summary of
2783*f8a1b7d9SAlexander Kabaev	-Weffc++ issues.
2784*f8a1b7d9SAlexander Kabaev
2785*f8a1b7d9SAlexander Kabaev2004-07-07  Paolo Carlini  <[email protected]>
2786*f8a1b7d9SAlexander Kabaev
2787*f8a1b7d9SAlexander Kabaev	PR libstdc++/16401
2788*f8a1b7d9SAlexander Kabaev	* include/bits/sstream.tcc (overflow): When reallocating _M_string
2789*f8a1b7d9SAlexander Kabaev	use an exponential grow policy.
2790*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
2791*f8a1b7d9SAlexander Kabaev	* testsuite/performance/27_io/stringbuf_overflow.cc: New.
2792*f8a1b7d9SAlexander Kabaev
2793f260e61bSAlexander Kabaev2004-07-06  Anssi Hannula  <[email protected]>
2794f260e61bSAlexander Kabaev
2795f260e61bSAlexander Kabaev	PR libstdc++/15928
2796f260e61bSAlexander Kabaev	* crossconfig.m4: Add in bits for djgpp.
2797f260e61bSAlexander Kabaev	* configure: Regenerate.
2798f260e61bSAlexander Kabaev
2799*f8a1b7d9SAlexander Kabaev2004-07-05  Jonathan Wakely  <[email protected]>
2800f260e61bSAlexander Kabaev
2801*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
2802*f8a1b7d9SAlexander Kabaev	instantiation of set and multiset (functor param given as int).
2803*f8a1b7d9SAlexander Kabaev
2804*f8a1b7d9SAlexander Kabaev2004-07-04  Paolo Carlini  <[email protected]>
2805*f8a1b7d9SAlexander Kabaev
2806*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.h: Trivial formatting fixes and/or
2807*f8a1b7d9SAlexander Kabaev	const-ification of some variables.
2808*f8a1b7d9SAlexander Kabaev	* include/bits/deque.tcc: Likewise.
2809*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h: Likewise.
2810*f8a1b7d9SAlexander Kabaev	* include/bits/stl_bvector.h: Likewise.
2811*f8a1b7d9SAlexander Kabaev	* include/bits/stl_construct.h: Likewise.
2812*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h: Likewise.
2813*f8a1b7d9SAlexander Kabaev	* include/bits/stl_pair.h: Likewise.
2814*f8a1b7d9SAlexander Kabaev	* include/bits/stl_vector.h: Likewise.
2815*f8a1b7d9SAlexander Kabaev	* include/bits/vector.tcc: Likewise.
2816*f8a1b7d9SAlexander Kabaev
2817*f8a1b7d9SAlexander Kabaev2004-07-04  Paolo Carlini  <[email protected]>
2818*f8a1b7d9SAlexander Kabaev
2819*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/1.cc: Add instantiations for
2820*f8a1b7d9SAlexander Kabaev	systems with no COMDAT or weak support.
2821*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/2.cc: Likewise.
2822*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/3.cc: Likewise.
2823*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/4.cc: Likewise.
2824*f8a1b7d9SAlexander Kabaev
2825*f8a1b7d9SAlexander Kabaev2004-07-03  Paul Brook  <[email protected]>
2826*f8a1b7d9SAlexander Kabaev
2827*f8a1b7d9SAlexander Kabaev	* configure.ac: Set ABI_TWEAKS_SRCDIR.
2828*f8a1b7d9SAlexander Kabaev	* configure.host: Set abi_tweaks_dir.  Check for atomicity.h when
2829*f8a1b7d9SAlexander Kabaev	setting atomicity_dir.  Override type_cpu for arm based targets.
2830*f8a1b7d9SAlexander Kabaev	* include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
2831*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
2832*f8a1b7d9SAlexander Kabaev	* libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
2833*f8a1b7d9SAlexander Kabaev	* libsupc++/vec.cc: Ditto.
2834*f8a1b7d9SAlexander Kabaev	* config/cpu/arm/cxxabi_tweaks.h: New file.
2835*f8a1b7d9SAlexander Kabaev	* config/cpu/generic/cxxabi_tweaks.h: New file.
2836*f8a1b7d9SAlexander Kabaev	* */Makefile.in: Regenerate.
2837f260e61bSAlexander Kabaev	* configure: Regenerate.
2838f260e61bSAlexander Kabaev
2839*f8a1b7d9SAlexander Kabaev2004-07-02  Paolo Carlini  <[email protected]>
2840*f8a1b7d9SAlexander Kabaev
2841*f8a1b7d9SAlexander Kabaev	* include/bits/type_traits.h (_Is_normal_iterator): Move...
2842*f8a1b7d9SAlexander Kabaev	* include/bits/cpp_type_traits.h: ... here, renamed to
2843*f8a1b7d9SAlexander Kabaev	__is_normal_iterator and consistent with the other traits.
2844*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
2845*f8a1b7d9SAlexander Kabaev	to the struct __copy_normal and three specializations.
2846*f8a1b7d9SAlexander Kabaev	(__copy_backward_output_normal_iterator,
2847*f8a1b7d9SAlexander Kabaev	__copy_backward_input_normal_iterator): Likewise, convert to
2848*f8a1b7d9SAlexander Kabaev	the struct __copy_backward_normal and three specializations.
2849*f8a1b7d9SAlexander Kabaev	(copy, copy_backward): Use the latter.
2850*f8a1b7d9SAlexander Kabaev	(__copy_aux, __copy_backward_aux): Very minor tweaks.
2851*f8a1b7d9SAlexander Kabaev
2852*f8a1b7d9SAlexander Kabaev2004-07-01  Paolo Carlini  <[email protected]>
2853*f8a1b7d9SAlexander Kabaev
2854*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (__copy_trivial): Remove.
2855*f8a1b7d9SAlexander Kabaev	(__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
2856*f8a1b7d9SAlexander Kabaev	__is_trivially_copyable, __are_same and __copy::copy.
2857*f8a1b7d9SAlexander Kabaev	(__copy): Rewrite as a class template and two specializations.
2858*f8a1b7d9SAlexander Kabaev	(__copy_ni2): Simplify, just call __copy_aux.
2859*f8a1b7d9SAlexander Kabaev
2860*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
2861*f8a1b7d9SAlexander Kabaev	check.
2862*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
2863*f8a1b7d9SAlexander Kabaev	for destination value type != source value type.
2864*f8a1b7d9SAlexander Kabaev
2865*f8a1b7d9SAlexander Kabaev2004-07-01  Benjamin Kosnik  <[email protected]>
2866*f8a1b7d9SAlexander Kabaev	    Per Bothner  <[email protected]>
2867*f8a1b7d9SAlexander Kabaev	    Mohan Embar  <[email protected]>
2868*f8a1b7d9SAlexander Kabaev
2869*f8a1b7d9SAlexander Kabaev	PR libstdc++/16248
2870*f8a1b7d9SAlexander Kabaev	* include/bits/concurrence.h (__glibcxx_mutex_type): New.
2871*f8a1b7d9SAlexander Kabaev	(__glibcxx_mutex): Encapsulate mutex init function into type for
2872*f8a1b7d9SAlexander Kabaev	threaded configurations without __GTHREAD_MUTEX_INIT.
2873*f8a1b7d9SAlexander Kabaev	(lock::lock): Make device member a reference.
2874*f8a1b7d9SAlexander Kabaev	(lock::~lock): Same.
2875*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
2876*f8a1b7d9SAlexander Kabaev	to mutex_type.
2877*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Same.
2878*f8a1b7d9SAlexander Kabaev
2879*f8a1b7d9SAlexander Kabaev2004-06-30  Brad Spencer  <[email protected]>
2880*f8a1b7d9SAlexander Kabaev
2881*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h: Handle allocations at static
2882*f8a1b7d9SAlexander Kabaev	initialization that happen before _S_options is (automatically)
2883*f8a1b7d9SAlexander Kabaev	constructed; set _S_init even if _M_force_new is true.
2884*f8a1b7d9SAlexander Kabaev
2885*f8a1b7d9SAlexander Kabaev2004-06-30  Benjamin Kosnik  <[email protected]>
2886*f8a1b7d9SAlexander Kabaev
2887*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Revert new exports.
2888*f8a1b7d9SAlexander Kabaev
2889*f8a1b7d9SAlexander Kabaev2004-06-30  Benjamin Kosnik  <[email protected]>
2890*f8a1b7d9SAlexander Kabaev	    Stuart Anderson  <[email protected]>
2891*f8a1b7d9SAlexander Kabaev
2892*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Add destructor exports for abstract base
2893*f8a1b7d9SAlexander Kabaev	classes to conform to LSB.
2894*f8a1b7d9SAlexander Kabaev
2895*f8a1b7d9SAlexander Kabaev2004-06-30  Gabriel Dos Reis  <[email protected]>
2896*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
2897*f8a1b7d9SAlexander Kabaev
2898*f8a1b7d9SAlexander Kabaev	* include/bits/cpp_type_traits.h: Add __is_pointer and
2899*f8a1b7d9SAlexander Kabaev	__is_trivially_copyable.
2900*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (fill, fill_n): Slightly
2901*f8a1b7d9SAlexander Kabaev	tweak to use the latter.
2902*f8a1b7d9SAlexander Kabaev	(__copy_backward_dispatch): Remove.
2903*f8a1b7d9SAlexander Kabaev	(__copy_backward_aux): Rewrite to use __is_pointer and
2904*f8a1b7d9SAlexander Kabaev	__is_trivially_copyable and __copy_backward::copy_b.
2905*f8a1b7d9SAlexander Kabaev	(__copy_backward): Rewrite as a class template and two
2906*f8a1b7d9SAlexander Kabaev	specializations.
2907*f8a1b7d9SAlexander Kabaev
2908*f8a1b7d9SAlexander Kabaev2004-06-30  Paolo Carlini  <[email protected]>
2909*f8a1b7d9SAlexander Kabaev
2910*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy.cc: Move to...
2911*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/1.cc: ... here, extend.
2912*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/2.cc: New.
2913*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/3.cc: New.
2914*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/copy/4.cc: New.
2915*f8a1b7d9SAlexander Kabaev
2916*f8a1b7d9SAlexander Kabaev2004-06-29  Paul Brook  <[email protected]>
2917*f8a1b7d9SAlexander Kabaev
2918*f8a1b7d9SAlexander Kabaev	* libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
2919*f8a1b7d9SAlexander Kabaev	element size in the cookie.
2920*f8a1b7d9SAlexander Kabaev
2921*f8a1b7d9SAlexander Kabaev2004-06-28  Paolo Carlini  <[email protected]>
2922f260e61bSAlexander Kabaev
2923f260e61bSAlexander Kabaev	* include/bits/cpp_type_traits.h: Move the additions to
2924f260e61bSAlexander Kabaev	namespace __gnu_internal outside of namespace std; trivial
2925f260e61bSAlexander Kabaev	formatting fixes.
2926f260e61bSAlexander Kabaev
2927*f8a1b7d9SAlexander Kabaev2004-06-28  Benjamin Kosnik  <[email protected]>
2928*f8a1b7d9SAlexander Kabaev
2929*f8a1b7d9SAlexander Kabaev	* include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
2930*f8a1b7d9SAlexander Kabaev	Revert -Weffc++ changes that defined copy ctory and or assignment
2931*f8a1b7d9SAlexander Kabaev	operator.
2932*f8a1b7d9SAlexander Kabaev	* libsupc++/tinfo.cc (__upcast_result): Same.
2933*f8a1b7d9SAlexander Kabaev
2934*f8a1b7d9SAlexander Kabaev2004-06-28  Paolo Carlini  <[email protected]>
2935*f8a1b7d9SAlexander Kabaev
2936*f8a1b7d9SAlexander Kabaev	* src/localename.cc (locale::_Impl::_Impl): Slightly improve
2937*f8a1b7d9SAlexander Kabaev	the algorithm used to name the categories.
2938*f8a1b7d9SAlexander Kabaev
2939*f8a1b7d9SAlexander Kabaev2004-06-28  Paolo Bonzini  <[email protected]>
2940*f8a1b7d9SAlexander Kabaev
2941*f8a1b7d9SAlexander Kabaev	* include/Makefile.am: Give a .gch extension to
2942*f8a1b7d9SAlexander Kabaev	the PCH files, not only to the directory.
2943*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
2944*f8a1b7d9SAlexander Kabaev
2945*f8a1b7d9SAlexander Kabaev2004-06-28  Paolo Carlini  <[email protected]>
2946*f8a1b7d9SAlexander Kabaev
2947*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/monetary_members.cc
2948*f8a1b7d9SAlexander Kabaev	(moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
2949*f8a1b7d9SAlexander Kabaev	assignments of _M_decimal_point and _M_thousands_sep.
2950*f8a1b7d9SAlexander Kabaev
2951*f8a1b7d9SAlexander Kabaev2004-06-27  Paolo Carlini  <[email protected]>
2952f260e61bSAlexander Kabaev
2953f260e61bSAlexander Kabaev	* docs/html/17_intro/contribute.html: Update some links.
2954f260e61bSAlexander Kabaev	* docs/html/17_intro/porting-howto.html: Likewise.
2955f260e61bSAlexander Kabaev	* docs/html/17_intro/porting-howto.xml: Likewise.
2956f260e61bSAlexander Kabaev	* docs/html/18_support/howto.html: Likewise.
2957f260e61bSAlexander Kabaev	* docs/html/21_strings/howto.html: Likewise.
2958f260e61bSAlexander Kabaev	* docs/html/27_io/howto.html: Likewise.
2959f260e61bSAlexander Kabaev	* docs/html/configopts.html: Likewise.
2960f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Likewise.
2961f260e61bSAlexander Kabaev	* docs/html/faq/index.html: Likewise.
2962f260e61bSAlexander Kabaev	* docs/html/install.html: Don't mention 2.x compilers.
2963f260e61bSAlexander Kabaev
2964*f8a1b7d9SAlexander Kabaev2004-06-27  Paolo Carlini  <[email protected]>
2965f260e61bSAlexander Kabaev
2966*f8a1b7d9SAlexander Kabaev	* include/ext/rope: Trivial formatting fixes.
2967*f8a1b7d9SAlexander Kabaev	* include/ext/ropeimpl.h: Likewise.
2968f260e61bSAlexander Kabaev
2969*f8a1b7d9SAlexander Kabaev2004-06-26  Paolo Carlini  <[email protected]>
2970f260e61bSAlexander Kabaev
2971*f8a1b7d9SAlexander Kabaev	PR libstdc++/16210
2972*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
2973*f8a1b7d9SAlexander Kabaev	availability of strto(u)ll, not used anymore in the iostreams.
2974*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
2975f260e61bSAlexander Kabaev
2976f260e61bSAlexander Kabaev2004-06-25  Benjamin Kosnik  <[email protected]>
2977f260e61bSAlexander Kabaev
2978f260e61bSAlexander Kabaev	PR libstdc++/16182
2979f260e61bSAlexander Kabaev	* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
2980f260e61bSAlexander Kabaev	AC_DEFINE_UNQUOTED.
2981f260e61bSAlexander Kabaev	* configure: Regenerate.
2982f260e61bSAlexander Kabaev
2983*f8a1b7d9SAlexander Kabaev2004-06-25  Paul Brook  <[email protected]>
2984*f8a1b7d9SAlexander Kabaev
2985*f8a1b7d9SAlexander Kabaev	* libsupc++/cxxabi.h: Define __ARM_EABI__
2986*f8a1b7d9SAlexander Kabaev	(__guard): Use it.
2987*f8a1b7d9SAlexander Kabaev	* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
2988*f8a1b7d9SAlexander Kabaev
2989*f8a1b7d9SAlexander Kabaev2004-06-25  Paul Brook  <[email protected]>
2990*f8a1b7d9SAlexander Kabaev
2991*f8a1b7d9SAlexander Kabaev	* include/bits/concurrence.h: Still create mutex object when
2992*f8a1b7d9SAlexander Kabaev	single-threaded.
2993*f8a1b7d9SAlexander Kabaev
2994*f8a1b7d9SAlexander Kabaev2004-06-25  Paolo Carlini  <[email protected]>
2995*f8a1b7d9SAlexander Kabaev
2996*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (fill, fill_n): Revert last
2997*f8a1b7d9SAlexander Kabaev	change: actually we need to copy construct an object of type
2998*f8a1b7d9SAlexander Kabaev	_Tp, not of type iterator_traits<>::value_type, therefore the
2999*f8a1b7d9SAlexander Kabaev	code is ok.
3000*f8a1b7d9SAlexander Kabaev
3001*f8a1b7d9SAlexander Kabaev2004-06-25  Paolo Carlini  <[email protected]>
3002*f8a1b7d9SAlexander Kabaev
3003*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (fill, fill_n): Tighten the
3004*f8a1b7d9SAlexander Kabaev	dispatch: use iterator_traits<>::value_type, not _Tp.
3005*f8a1b7d9SAlexander Kabaev
3006*f8a1b7d9SAlexander Kabaev2004-06-25  Paolo Carlini  <[email protected]>
3007*f8a1b7d9SAlexander Kabaev
3008*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
3009*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/fill/2.cc: Likewise.
3010*f8a1b7d9SAlexander Kabaev
3011*f8a1b7d9SAlexander Kabaev2004-06-25  Dan Nicolaescu  <[email protected]>
3012*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
3013*f8a1b7d9SAlexander Kabaev
3014*f8a1b7d9SAlexander Kabaev	* include/bits/stl_algobase.h (__fill, __fill_n): New helpers
3015*f8a1b7d9SAlexander Kabaev	for fill and fill_n, respectively: when copying is cheap, use a
3016*f8a1b7d9SAlexander Kabaev	temporary to avoid a memory read in each iteration.
3017*f8a1b7d9SAlexander Kabaev
3018*f8a1b7d9SAlexander Kabaev2004-06-25  Paolo Carlini  <[email protected]>
3019*f8a1b7d9SAlexander Kabaev
3020*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/fill/1.cc: New.
3021*f8a1b7d9SAlexander Kabaev	* testsuite/25_algorithms/fill/2.cc: Likewise.
3022*f8a1b7d9SAlexander Kabaev
3023f260e61bSAlexander Kabaev2004-06-25  Benjamin Kosnik  <[email protected]>
3024f260e61bSAlexander Kabaev
3025f260e61bSAlexander Kabaev	* include/debug/formatter.h (__gnu_debug::_Error_formatter):
3026f260e61bSAlexander Kabaev	Remove copy constructor and assignment operator.
3027f260e61bSAlexander Kabaev
3028*f8a1b7d9SAlexander Kabaev2004-06-24  Benjamin Kosnik  <[email protected]>
3029*f8a1b7d9SAlexander Kabaev
3030*f8a1b7d9SAlexander Kabaev	* include/bits/concurrence.h (__gnu_cxx::lock): New.
3031*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
3032*f8a1b7d9SAlexander Kabaev	(__pool_base::_M_get_mutex): New.
3033*f8a1b7d9SAlexander Kabaev	* include/bits/allocator.h: Tweak.
3034*f8a1b7d9SAlexander Kabaev	* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
3035*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
3036*f8a1b7d9SAlexander Kabaev	* include/bits/stl_threads.h: Remove.
3037*f8a1b7d9SAlexander Kabaev	* include/Makefile.am: Also here.
3038*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Regenerate.
3039*f8a1b7d9SAlexander Kabaev
3040*f8a1b7d9SAlexander Kabaev	* src/locale_init.cc: Use __gnu_cxx::lock.
3041*f8a1b7d9SAlexander Kabaev
3042*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Move all instantiations...
3043*f8a1b7d9SAlexander Kabaev	* src/allocator-inst.cc: ...here.
3044*f8a1b7d9SAlexander Kabaev
3045*f8a1b7d9SAlexander Kabaev2004-06-23  Andrew Pinski  <[email protected]>
3046*f8a1b7d9SAlexander Kabaev
3047*f8a1b7d9SAlexander Kabaev	* linkage.m4: Remove check for libmx.
3048*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
3049*f8a1b7d9SAlexander Kabaev
3050f260e61bSAlexander Kabaev2004-06-23  Paolo Carlini  <[email protected]>
3051f260e61bSAlexander Kabaev
3052f260e61bSAlexander Kabaev	PR libstdc++/16154
3053f260e61bSAlexander Kabaev	* include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
3054f260e61bSAlexander Kabaev	Don't require the _DefaultConstructibleConcept.
3055f260e61bSAlexander Kabaev	(struct _ForwardIteratorConcept): Require it here.
3056f260e61bSAlexander Kabaev
3057*f8a1b7d9SAlexander Kabaev2004-06-22  Alexandre Oliva  <[email protected]>
3058*f8a1b7d9SAlexander Kabaev
3059*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (getline): Make sure arguments passed
3060*f8a1b7d9SAlexander Kabaev	to min/max have the same type.
3061*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (__verify_grouping): Likewise.
3062*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.
3063*f8a1b7d9SAlexander Kabaev
3064*f8a1b7d9SAlexander Kabaev2004-06-22  Benjamin Kosnik  <[email protected]>
3065*f8a1b7d9SAlexander Kabaev
3066*f8a1b7d9SAlexander Kabaev	* docs/html/abi.html: Update links.
3067*f8a1b7d9SAlexander Kabaev
3068*f8a1b7d9SAlexander Kabaev2004-06-22  Paolo Carlini  <[email protected]>
3069*f8a1b7d9SAlexander Kabaev
3070*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/complex_inserters_extractors.cc,
3071*f8a1b7d9SAlexander Kabaev	complex_value.cc, buggy_complex.cc: Move to...
3072*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/complex/: ... here.
3073*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/c99_classification_macros_c++.cc,
3074*f8a1b7d9SAlexander Kabaev	c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc,
3075*f8a1b7d9SAlexander Kabaev	fabs_inline.cc: Move to...
3076*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/cmath/: ... here.
3077*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/binary_closure.cc, slice.cc,
3078*f8a1b7d9SAlexander Kabaev	slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc,
3079*f8a1b7d9SAlexander Kabaev	valarray_name_lookup.cc, valarray_operators.cc,
3080*f8a1b7d9SAlexander Kabaev	valarray_subset_assignment.cc: Move to...
3081*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/valarray/: ... here (new dir).
3082*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/sum_diff.cc: Move to...
3083*f8a1b7d9SAlexander Kabaev	* testsuite/26_numerics/numeric/: ... here (new dir).
3084*f8a1b7d9SAlexander Kabaev
3085*f8a1b7d9SAlexander Kabaev2004-06-22  Paolo Carlini  <[email protected]>
3086*f8a1b7d9SAlexander Kabaev
3087*f8a1b7d9SAlexander Kabaev	* include/std/std_istream.h (ignore(streamsize __n = 1,
3088*f8a1b7d9SAlexander Kabaev	int_type __delim = traits_type::eof())): Split into...
3089*f8a1b7d9SAlexander Kabaev	(ignore(), ignore(streamsize __n), ignore(streamsize __n,
3090*f8a1b7d9SAlexander Kabaev	int_type __delim)): The first two can be much more simpler
3091*f8a1b7d9SAlexander Kabaev	and efficient than the fully general case; also, the last
3092*f8a1b7d9SAlexander Kabaev	two can take advantage of the same mechanism already used
3093*f8a1b7d9SAlexander Kabaev	for getline.
3094*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (ignore(streamsize __n = 1,
3095*f8a1b7d9SAlexander Kabaev	int_type __delim = traits_type::eof()): Remove.
3096*f8a1b7d9SAlexander Kabaev	(ignore(), ignore(streamsize __n), ignore(streamsize __n,
3097*f8a1b7d9SAlexander Kabaev	int_type __delim)): New.
3098*f8a1b7d9SAlexander Kabaev
3099f260e61bSAlexander Kabaev2004-06-21  Loren J. Rittle  <[email protected]>
3100f260e61bSAlexander Kabaev
3101f260e61bSAlexander Kabaev	* config/linker-map.gnu: Use wildcards for
3102f260e61bSAlexander Kabaev	__basic_file::sys_open(FILE*, _Ios_Openmode).
3103f260e61bSAlexander Kabaev
3104*f8a1b7d9SAlexander Kabaev2004-06-20  Paolo Carlini  <[email protected]>
3105*f8a1b7d9SAlexander Kabaev
3106*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/char/3.cc: New.
3107*f8a1b7d9SAlexander Kabaev
3108f260e61bSAlexander Kabaev2004-06-18  Paolo Carlini  <[email protected]>
3109f260e61bSAlexander Kabaev
3110f260e61bSAlexander Kabaev	* include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
3111f260e61bSAlexander Kabaev	the alignment requested.
3112f260e61bSAlexander Kabaev	(__mt_alloc<>::_Tune::_Tune): Tweak consistently.
3113f260e61bSAlexander Kabaev	(__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
3114f260e61bSAlexander Kabaev	(__mt_alloc<>::deallocate): Likewise.
3115f260e61bSAlexander Kabaev
3116f260e61bSAlexander Kabaev2004-06-18  Paolo Carlini  <[email protected]>
3117f260e61bSAlexander Kabaev
3118f260e61bSAlexander Kabaev	PR libstdc++/16020
3119f260e61bSAlexander Kabaev	* include/debug/safe_base.h
3120f260e61bSAlexander Kabaev	(_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
3121f260e61bSAlexander Kabaev	_Safe_sequence_base::operator=): Provide definitions.
3122f260e61bSAlexander Kabaev	* testsuite/23_containers/bitset/cons/16020.cc: New.
3123f260e61bSAlexander Kabaev
3124*f8a1b7d9SAlexander Kabaev2004-06-18  Benjamin Kosnik  <[email protected]>
3125*f8a1b7d9SAlexander Kabaev
3126*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
3127*f8a1b7d9SAlexander Kabaev	(__pool_base): Remove unused template parameter.  Add
3128*f8a1b7d9SAlexander Kabaev	protected. Move lock data into __pool_base::_Lock. Remove static
3129*f8a1b7d9SAlexander Kabaev	on member functions.
3130*f8a1b7d9SAlexander Kabaev	(__pool_base::_M_get_free_list): New.
3131*f8a1b7d9SAlexander Kabaev	(__pool_alloc): Move _S_force new here.
3132*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Move out of line __pool_base definitions here.
3133*f8a1b7d9SAlexander Kabaev	* config/linker-map.gnu: Export bits from __pool_base.
3134*f8a1b7d9SAlexander Kabaev
3135f260e61bSAlexander Kabaev2004-06-18  Paolo Carlini  <[email protected]>
3136f260e61bSAlexander Kabaev
3137*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/numeric_members.cc
3138*f8a1b7d9SAlexander Kabaev	(numpunct<wchar_t>::_M_initialize_numpunct): Clean up
3139*f8a1b7d9SAlexander Kabaev	assignments of _M_decimal_point and _M_thousands_sep.
3140*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/time_members.cc
3141*f8a1b7d9SAlexander Kabaev	(__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
3142*f8a1b7d9SAlexander Kabaev	and reformat assignments of date and time fields.
3143*f8a1b7d9SAlexander Kabaev
3144*f8a1b7d9SAlexander Kabaev2004-06-16  Paolo Carlini  <[email protected]>
3145*f8a1b7d9SAlexander Kabaev
3146f260e61bSAlexander Kabaev	* include/ext/rope (rope(_CharT, const allocator_type&)): Fix
3147f260e61bSAlexander Kabaev	to use _Data_allocate.
3148f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
3149f260e61bSAlexander Kabaev	(rope<>::_S_substring): Likewise.
3150f260e61bSAlexander Kabaev	(rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
3151f260e61bSAlexander Kabaev	(rope<>::c_str()): Likewise.
3152f260e61bSAlexander Kabaev	(rope<>::replace_with_c_str()): Likewise.
3153f260e61bSAlexander Kabaev
3154f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
3155f260e61bSAlexander Kabaev	Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
3156f260e61bSAlexander Kabaev	not _RopeRep.
3157f260e61bSAlexander Kabaev	(_Rope_iterator_base<>::_S_setcache): Likewise.
3158f260e61bSAlexander Kabaev	(_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
3159f260e61bSAlexander Kabaev	(rope<>::_S_substring): Likewise.
3160f260e61bSAlexander Kabaev	(rope<>::_S_dump): Likewise.
3161f260e61bSAlexander Kabaev	(rope<>::_S_fetch_ptr): Likewise.
3162f260e61bSAlexander Kabaev	(rope<>::_S_compare): Likewise.
3163f260e61bSAlexander Kabaev	(rope<>::replace_with_c_str()): Likewise.
3164f260e61bSAlexander Kabaev
3165f260e61bSAlexander Kabaev	* testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
3166f260e61bSAlexander Kabaev	* testsuite/ext/rope/2.cc: New.
3167f260e61bSAlexander Kabaev
3168*f8a1b7d9SAlexander Kabaev2004-06-16  Paolo Carlini  <[email protected]>
3169f260e61bSAlexander Kabaev	    Matt Austern  <[email protected]>
3170f260e61bSAlexander Kabaev
3171f260e61bSAlexander Kabaev	* testsuite/ext/rope/3.cc: New.
3172f260e61bSAlexander Kabaev
3173*f8a1b7d9SAlexander Kabaev2004-06-15  Paolo Bonzini  <[email protected]>
3174*f8a1b7d9SAlexander Kabaev
3175*f8a1b7d9SAlexander Kabaev	* acinclude.m4: Remove useless multilib configury.
3176*f8a1b7d9SAlexander Kabaev	* Makefile.am: Remove useless multilib rules.
3177*f8a1b7d9SAlexander Kabaev	* aclocal.m4: Regenerate.
3178*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerate.
3179*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
3180*f8a1b7d9SAlexander Kabaev
3181*f8a1b7d9SAlexander Kabaev2004-06-15  Paolo Carlini  <[email protected]>
3182*f8a1b7d9SAlexander Kabaev
3183*f8a1b7d9SAlexander Kabaev	* include/ext/hashtable.h: Trivial formatting fixes.
3184*f8a1b7d9SAlexander Kabaev	* include/ext/rb_tree: Likewise.
3185*f8a1b7d9SAlexander Kabaev
3186*f8a1b7d9SAlexander Kabaev2004-06-14  Paolo Carlini  <[email protected]>
3187*f8a1b7d9SAlexander Kabaev
3188*f8a1b7d9SAlexander Kabaev	* include/ext/hash_map: Trivial formatting fixes.
3189*f8a1b7d9SAlexander Kabaev	* include/ext/hash_set: Likewise.
3190*f8a1b7d9SAlexander Kabaev	* include/ext/memory: Likewise.
3191*f8a1b7d9SAlexander Kabaev	* include/ext/numeric: Likewise.
3192*f8a1b7d9SAlexander Kabaev
3193*f8a1b7d9SAlexander Kabaev2004-06-14  Benjamin Kosnik  <[email protected]>
3194*f8a1b7d9SAlexander Kabaev
3195*f8a1b7d9SAlexander Kabaev	* Makefile.in: Regenerate with automake 1.8.5.
3196*f8a1b7d9SAlexander Kabaev	* aclocal.m4: Same.
3197*f8a1b7d9SAlexander Kabaev	* include/Makefile.in: Same.
3198*f8a1b7d9SAlexander Kabaev	* libmath/Makefile.in: Same.
3199*f8a1b7d9SAlexander Kabaev	* libsupc++/Makefile.in: Same.
3200*f8a1b7d9SAlexander Kabaev	* po/Makefile.in: Same.
3201*f8a1b7d9SAlexander Kabaev	* src/Makefile.in: Same.
3202*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Same.
3203*f8a1b7d9SAlexander Kabaev
3204*f8a1b7d9SAlexander Kabaev2004-06-14  Paolo Carlini  <[email protected]>
3205*f8a1b7d9SAlexander Kabaev
3206*f8a1b7d9SAlexander Kabaev	* include/ext/slist: Trivial formatting fixes.
3207*f8a1b7d9SAlexander Kabaev
3208*f8a1b7d9SAlexander Kabaev2004-06-14  Paolo Carlini  <[email protected]>
3209f260e61bSAlexander Kabaev
3210f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
3211f260e61bSAlexander Kabaev	Don't use the 'magic number' 10 in the computation of __minlen;
3212f260e61bSAlexander Kabaev	never access __name past __minlen; in the loop over __i3, don't
3213f260e61bSAlexander Kabaev	decrease __nmatches and increase __i3 at once, only either of
3214f260e61bSAlexander Kabaev	the two; tidy.
3215f260e61bSAlexander Kabaev
3216*f8a1b7d9SAlexander Kabaev2004-06-13  Paolo Carlini  <[email protected]>
3217f260e61bSAlexander Kabaev
3218*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (time_get<>::do_get_time,
3219*f8a1b7d9SAlexander Kabaev	time_get<>::do_get_date): Use only once _M_extract_via_format,
3220*f8a1b7d9SAlexander Kabaev	instead of going through "%X"/"%x" and calling it two times
3221*f8a1b7d9SAlexander Kabaev	(+ using widen).
3222f260e61bSAlexander Kabaev
3223*f8a1b7d9SAlexander Kabaev2004-06-12  Paolo Carlini  <[email protected]>
3224*f8a1b7d9SAlexander Kabaev
3225*f8a1b7d9SAlexander Kabaev	* include/ext/algorithm: Trivial formatting fixes.
3226*f8a1b7d9SAlexander Kabaev	* include/ext/functional: Likewise.
3227*f8a1b7d9SAlexander Kabaev	* include/ext/hash_fun.h: Likewise.
3228*f8a1b7d9SAlexander Kabaev	* include/ext/iterator: Likewise.
3229*f8a1b7d9SAlexander Kabaev
3230*f8a1b7d9SAlexander Kabaev2004-06-12  Paolo Carlini  <[email protected]>
3231*f8a1b7d9SAlexander Kabaev
3232*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (find(const _CharT*, size_type,
3233*f8a1b7d9SAlexander Kabaev	size_type)): Reimplement using std::search.
3234*f8a1b7d9SAlexander Kabaev	* src/string-inst.cc: Instantiate std::search for char/wchar_t.
3235*f8a1b7d9SAlexander Kabaev
3236*f8a1b7d9SAlexander Kabaev2004-06-12  Dhruv Matani  <[email protected]>
3237*f8a1b7d9SAlexander Kabaev
3238*f8a1b7d9SAlexander Kabaev	* testsuite/performance/21_strings/string_find.cc: New.
3239*f8a1b7d9SAlexander Kabaev
3240*f8a1b7d9SAlexander Kabaev2004-06-10  Aaron W. LaFramboise  <[email protected]>
3241*f8a1b7d9SAlexander Kabaev
3242*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized.
3243*f8a1b7d9SAlexander Kabaev
3244*f8a1b7d9SAlexander Kabaev2004-06-10  Jan van Dijk  <[email protected]>
3245*f8a1b7d9SAlexander Kabaev
3246*f8a1b7d9SAlexander Kabaev	* include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make
3247*f8a1b7d9SAlexander Kabaev	this function return a value.
3248*f8a1b7d9SAlexander Kabaev
3249*f8a1b7d9SAlexander Kabaev2004-06-09  Paolo Carlini  <[email protected]>
3250f260e61bSAlexander Kabaev
3251f260e61bSAlexander Kabaev	PR libstdc++/15775
3252f260e61bSAlexander Kabaev	* include/bits/stl_deque.h: Consistently with stl_set.h, define
3253f260e61bSAlexander Kabaev	pointer as allocator's pointer, likewise for reference,
3254f260e61bSAlexander Kabaev	const_pointer, and const_reference.
3255f260e61bSAlexander Kabaev	* include/bits/stl_list.h: Likewise.
3256f260e61bSAlexander Kabaev	* include/bits/stl_map.h: Likewise.
3257f260e61bSAlexander Kabaev	* include/bits/stl_multimap.h: Likewise.
3258f260e61bSAlexander Kabaev	* include/bits/stl_vector.h: Likewise.
3259f260e61bSAlexander Kabaev
3260*f8a1b7d9SAlexander Kabaev2004-06-09  Benjamin Kosnik  <[email protected]>
3261f260e61bSAlexander Kabaev
3262f260e61bSAlexander Kabaev	* crossconfig.m4: Remove signbit, signbitf, signbitl.
3263f260e61bSAlexander Kabaev	* linkage.m4: Comment LIBMATHOBJS, tweak others.  AC_DEFINES for
3264f260e61bSAlexander Kabaev	builtin math functions instead of AC_DEFINE_UNQUOTED.
3265f260e61bSAlexander Kabaev	* configure: Regenerate.
3266f260e61bSAlexander Kabaev
3267*f8a1b7d9SAlexander Kabaev2004-06-08  Benjamin Kosnik  <[email protected]>
3268f260e61bSAlexander Kabaev
3269f260e61bSAlexander Kabaev	* docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
3270f260e61bSAlexander Kabaev	* docs/doxygen/mainpage.html: Remove links.
3271f260e61bSAlexander Kabaev
3272f260e61bSAlexander Kabaev2004-06-08  Jason Merrill  <[email protected]>
3273f260e61bSAlexander Kabaev
3274f260e61bSAlexander Kabaev	* config/linker-map.gnu: Use wildcards for
3275f260e61bSAlexander Kabaev	__basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
3276f260e61bSAlexander Kabaev
3277*f8a1b7d9SAlexander Kabaev2004-06-08  Paolo Carlini  <[email protected]>
3278*f8a1b7d9SAlexander Kabaev
3279*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Convert to a global free-list,
3280*f8a1b7d9SAlexander Kabaev	as per the original SGI/HP design: move the implementation
3281*f8a1b7d9SAlexander Kabaev	details to struct __pool_base, from which __pool_alloc derives.
3282*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Instantiate __pool_base.
3283*f8a1b7d9SAlexander Kabaev
3284*f8a1b7d9SAlexander Kabaev2004-06-07  Dhruv Matani  <[email protected]>
3285*f8a1b7d9SAlexander Kabaev	    Paolo Carlini  <[email protected]>
3286*f8a1b7d9SAlexander Kabaev
3287*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_performance.h
3288*f8a1b7d9SAlexander Kabaev	(resource_counter::allocated_memory): Make it return the right
3289*f8a1b7d9SAlexander Kabaev	number of bytes requested by the allocators/application. This is
3290*f8a1b7d9SAlexander Kabaev	the sbrk+mmaped memory.
3291*f8a1b7d9SAlexander Kabaev
3292*f8a1b7d9SAlexander Kabaev2004-06-02  Gabriel Dos Reis  <[email protected]>
3293*f8a1b7d9SAlexander Kabaev
3294*f8a1b7d9SAlexander Kabaev	* include/std/std_complex.h (log): Tidy.
3295*f8a1b7d9SAlexander Kabaev
3296f260e61bSAlexander Kabaev2004-05-31  Benjamin Kosnik  <[email protected]>
3297f260e61bSAlexander Kabaev
3298f260e61bSAlexander Kabaev	* config/linker-map.gnu (GLIBCXX_3.4.1): Add.
3299f260e61bSAlexander Kabaev	* testsuite/testsuite_abi.cc: Same.
3300f260e61bSAlexander Kabaev	* configure.ac (libtool_VERSION): Bump to 6:1:0.
3301f260e61bSAlexander Kabaev	* configure: Regenerate.
3302f260e61bSAlexander Kabaev	* aclocal.m4: Regenerate.
3303f260e61bSAlexander Kabaev
3304*f8a1b7d9SAlexander Kabaev2004-05-30  Gabriel Dos Reis  <[email protected]>
3305*f8a1b7d9SAlexander Kabaev
3306*f8a1b7d9SAlexander Kabaev	* include/std/std_complex.h (complex<_Tp>): Properly indent
3307*f8a1b7d9SAlexander Kabaev	to follow C++STYLE.
3308*f8a1b7d9SAlexander Kabaev	(complex<>::__rep): New.
3309*f8a1b7d9SAlexander Kabaev	(__complex_abs): New.  Dispatch to built-ins.
3310*f8a1b7d9SAlexander Kabaev	(abs): Use them.
3311*f8a1b7d9SAlexander Kabaev	(__complex_arg): New. Dispatch to built-ins.
3312*f8a1b7d9SAlexander Kabaev	(arg): Use it.
3313*f8a1b7d9SAlexander Kabaev	(__complex_cos): New. Dispatch to built-ins.
3314*f8a1b7d9SAlexander Kabaev	(cos): Use it.
3315*f8a1b7d9SAlexander Kabaev	(__complex_cosh): New. Dispatch to built-ins.
3316*f8a1b7d9SAlexander Kabaev	(cosh): Use it.
3317*f8a1b7d9SAlexander Kabaev	(__complex_exp): New. Dispatch to built-ins.
3318*f8a1b7d9SAlexander Kabaev	(exp): Use it.
3319*f8a1b7d9SAlexander Kabaev	(__complex_log): New. Dispatch to built-ins.
3320*f8a1b7d9SAlexander Kabaev	(log): Use it.
3321*f8a1b7d9SAlexander Kabaev	(__complex_sin): New. Dispatch to built-ins.
3322*f8a1b7d9SAlexander Kabaev	(sin): Use it.
3323*f8a1b7d9SAlexander Kabaev	(__complex_sinh): New. Dispatch to built-ins.
3324*f8a1b7d9SAlexander Kabaev	(sinh): Use it.
3325*f8a1b7d9SAlexander Kabaev	(__complex_sqrt): New. Dispatch to built-ins.
3326*f8a1b7d9SAlexander Kabaev	(sqrt): Use it.
3327*f8a1b7d9SAlexander Kabaev	(__complex_tan): New. Dispatch to built-ins.
3328*f8a1b7d9SAlexander Kabaev	(tan): Use it.
3329*f8a1b7d9SAlexander Kabaev	(__complex_tanh): New. Dispatch to built-ins.
3330*f8a1b7d9SAlexander Kabaev	(tanh): Use it.
3331*f8a1b7d9SAlexander Kabaev	(__complex_pow): New. Dispatch to built-ins.
3332*f8a1b7d9SAlexander Kabaev	(pow): Use it.
3333*f8a1b7d9SAlexander Kabaev
3334*f8a1b7d9SAlexander Kabaev2004-05-29  Richard B. Kreckel  <[email protected]>
3335f260e61bSAlexander Kabaev	    Benjamin Kosnik  <[email protected]>
3336f260e61bSAlexander Kabaev
3337f260e61bSAlexander Kabaev	PR libstdc++/14600
3338f260e61bSAlexander Kabaev	* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
3339f260e61bSAlexander Kabaev	* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
3340f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file::file): New.
3341f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.h: Define.
3342f260e61bSAlexander Kabaev
3343*f8a1b7d9SAlexander Kabaev2004-05-27  Benjamin Kosnik  <[email protected]>
3344f260e61bSAlexander Kabaev
3345f260e61bSAlexander Kabaev	PR libstdc++/15675
3346f260e61bSAlexander Kabaev	* docs/html/documentation.html: Update doxygen links for 3.4.0.
3347f260e61bSAlexander Kabaev
3348*f8a1b7d9SAlexander Kabaev2004-05-27  Jan Beulich  <[email protected]>
3349f260e61bSAlexander Kabaev
3350f260e61bSAlexander Kabaev	* scripts/create_testsuite_files: Tweak.
3351f260e61bSAlexander Kabaev
3352*f8a1b7d9SAlexander Kabaev2004-05-25  Benjamin Kosnik  <[email protected]>
3353f260e61bSAlexander Kabaev
3354*f8a1b7d9SAlexander Kabaev	PR libstdc++/15489
3355*f8a1b7d9SAlexander Kabaev	* scripts/create_testsuite_files: Revert xtype change, add non-GNU
3356*f8a1b7d9SAlexander Kabaev	bits to do the same thing.
3357f260e61bSAlexander Kabaev
3358*f8a1b7d9SAlexander Kabaev2004-05-24  Paolo Carlini  <[email protected]>
3359f260e61bSAlexander Kabaev
3360f260e61bSAlexander Kabaev	* include/bits/istream.tcc (ignore): Correctly deal with
3361f260e61bSAlexander Kabaev	n == numeric_limits<streamsize>::max().
3362f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/char/2.cc: New.
3363f260e61bSAlexander Kabaev
3364f260e61bSAlexander Kabaev	* include/bits/istream.tcc (basic_istream<>::getline): Prefer
3365f260e61bSAlexander Kabaev	'_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
3366f260e61bSAlexander Kabaev	__n == numeric_limits<>::min().
3367f260e61bSAlexander Kabaev
3368f260e61bSAlexander Kabaev	* include/bits/istream.tcc: Minor tweaks.
3369f260e61bSAlexander Kabaev
3370f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
3371f260e61bSAlexander Kabaev	Tighten.
3372f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
3373f260e61bSAlexander Kabaev	Likewise.
3374f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
3375f260e61bSAlexander Kabaev	Likewise.
3376f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
3377f260e61bSAlexander Kabaev	Likewise.
3378f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
3379f260e61bSAlexander Kabaev
3380*f8a1b7d9SAlexander Kabaev2004-05-22  Benjamin Kosnik  <[email protected]>
3381f260e61bSAlexander Kabaev
3382f260e61bSAlexander Kabaev	PR libstdc++/12854
3383f260e61bSAlexander Kabaev	Fixups for -Weffc++.
3384f260e61bSAlexander Kabaev	* include/bits/basic_string.h (basic_string::operator=): Return
3385f260e61bSAlexander Kabaev	pointer to this instead of result of assign. Although redundant,
3386f260e61bSAlexander Kabaev	this doesn't impact resultant codegen.
3387f260e61bSAlexander Kabaev
3388f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (__numpunct_cache): Declare
3389f260e61bSAlexander Kabaev	assignment opxserator and copy constructor private.
3390f260e61bSAlexander Kabaev	(__timepunct_cache): Same.
3391f260e61bSAlexander Kabaev	(__moneypunct_cache): Same.
3392f260e61bSAlexander Kabaev	(collate): Use member initialization list for _M_c_locale_collate.
3393f260e61bSAlexander Kabaev	* config/locale/gnu/messages_members.h: Same.
3394f260e61bSAlexander Kabaev	* config/locale/gnu/time_members.h (__timepunct): Same.
3395f260e61bSAlexander Kabaev	* src/codecvt.cc: Use member initialization list to initialize
3396f260e61bSAlexander Kabaev	_M_c_locale_codecvt.
3397f260e61bSAlexander Kabaev	* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
3398f260e61bSAlexander Kabaev	* config/os/gnu-linux/ctype_noninline.h: Same.
3399f260e61bSAlexander Kabaev	* src/locale.cc (_Impl): Same.
3400f260e61bSAlexander Kabaev	* src/locale_init.cc: Same.
3401f260e61bSAlexander Kabaev	* src/localename.cc: Same.
3402f260e61bSAlexander Kabaev
3403f260e61bSAlexander Kabaev	* include/bits/basic_ios.h (basic_ios): Complete member
3404f260e61bSAlexander Kabaev	initialization list.
3405f260e61bSAlexander Kabaev	* include/bits/istream.tcc (basic_istream::sentry): Same.
3406f260e61bSAlexander Kabaev	* include/bits/ostream.tcc (basic_ostream::sentry): Same.
3407f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
3408f260e61bSAlexander Kabaev	_M_pback to member initialization list.
3409f260e61bSAlexander Kabaev	* include/std/std_streambuf.h: Same.
3410f260e61bSAlexander Kabaev	* include/std/std_sstream.h: Same, for _M_mode.
3411f260e61bSAlexander Kabaev	* src/ios.cc (ios_base): Same.
3412f260e61bSAlexander Kabaev
3413f260e61bSAlexander Kabaev	* include/ext/rope: Make derived classes match exception
3414f260e61bSAlexander Kabaev
3415f260e61bSAlexander Kabaev	 specifications. Add copy constructors and assignment operators.
3416f260e61bSAlexander Kabaev
3417f260e61bSAlexander Kabaev	* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
3418f260e61bSAlexander Kabaev	constructor and assignment operator protected.
3419f260e61bSAlexander Kabaev	(_Safe_iterator_base): Same.
3420f260e61bSAlexander Kabaev	* include/debug/formatter.h (_Error_formatter): Define copy
3421f260e61bSAlexander Kabaev	constructor and assignment operator.
3422f260e61bSAlexander Kabaev
3423f260e61bSAlexander Kabaev	* include/backward/strstream: Declare assignment operator and copy
3424f260e61bSAlexander Kabaev	constructor private.
3425f260e61bSAlexander Kabaev
3426*f8a1b7d9SAlexander Kabaev2004-05-22  Benjamin Kosnik  <[email protected]>
3427f260e61bSAlexander Kabaev
3428f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.h (func_callback): Declare copy
3429f260e61bSAlexander Kabaev	constructor and assignment operator private.
3430f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/cons/clear_allocator.cc: Match
3431f260e61bSAlexander Kabaev	exception specifications of base class.
3432f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
3433f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
3434f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
3435f260e61bSAlexander Kabaev
3436*f8a1b7d9SAlexander Kabaev2004-05-22  Benjamin Kosnik  <[email protected]>
3437f260e61bSAlexander Kabaev
3438f260e61bSAlexander Kabaev	* libsupc++/cxxabi.h: Remove duplicated and useless public and
3439f260e61bSAlexander Kabaev	private keywords in class declarations. Format. Use
3440f260e61bSAlexander Kabaev	stddef.h. Expose declarations to "C" compilation.
3441f260e61bSAlexander Kabaev	* libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
3442f260e61bSAlexander Kabaev	assignment operator.
3443f260e61bSAlexander Kabaev	(__dyncast_result): Same.
3444f260e61bSAlexander Kabaev	* libsupc++/vec.cc (uncatch_exception): Same, use member
3445f260e61bSAlexander Kabaev	initialization list.
3446f260e61bSAlexander Kabaev
3447f260e61bSAlexander Kabaev2004-05-22  Benjamin Kosnik  <[email protected]>
3448f260e61bSAlexander Kabaev
3449f260e61bSAlexander Kabaev	* testsuite/abi_check.cc: Add unistd.h.
3450f260e61bSAlexander Kabaev
3451*f8a1b7d9SAlexander Kabaev2004-05-22  Paolo Carlini  <[email protected]>
3452*f8a1b7d9SAlexander Kabaev
3453*f8a1b7d9SAlexander Kabaev	PR libstdc++/15565
3454*f8a1b7d9SAlexander Kabaev	* include/bits/locale_facets.tcc (__int_to_char(unsigned long),
3455*f8a1b7d9SAlexander Kabaev	__int_to_char(unsigned long long)): Showpos is not relevant
3456*f8a1b7d9SAlexander Kabaev	for unsigned types.
3457*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/char/15565.cc: New.
3458*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
3459*f8a1b7d9SAlexander Kabaev
3460*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill
3461*f8a1b7d9SAlexander Kabaev	char.
3462*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
3463*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
3464*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
3465*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
3466*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
3467*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
3468*f8a1b7d9SAlexander Kabaev
3469f260e61bSAlexander Kabaev2004-05-21  Matthias Klose  <[email protected]>
3470f260e61bSAlexander Kabaev
3471f260e61bSAlexander Kabaev	* docs/doxygen/run_doxygen:  Bump required version.
3472f260e61bSAlexander Kabaev
3473f260e61bSAlexander Kabaev2004-05-21  Benjamin Kosnik  <[email protected]>
3474f260e61bSAlexander Kabaev
3475f260e61bSAlexander Kabaev	* docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
3476f260e61bSAlexander Kabaev	* docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
3477f260e61bSAlexander Kabaev
3478*f8a1b7d9SAlexander Kabaev2004-05-21  Paolo Carlini  <[email protected]>
3479*f8a1b7d9SAlexander Kabaev
3480*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (ignore): Remove redundant line.
3481*f8a1b7d9SAlexander Kabaev	(readsome): Tidy, closely following 27.6.1.3, p30.
3482*f8a1b7d9SAlexander Kabaev
3483*f8a1b7d9SAlexander Kabaev2004-05-20  Paolo Carlini  <[email protected]>
3484*f8a1b7d9SAlexander Kabaev
3485*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc (operator>>(basic_istream<>&,
3486*f8a1b7d9SAlexander Kabaev	basic_string<>&)): Use a temporary buffer, thus avoiding
3487*f8a1b7d9SAlexander Kabaev	reallocation for common case.
3488*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
3489*f8a1b7d9SAlexander Kabaev	New.
3490*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
3491*f8a1b7d9SAlexander Kabaev	Likewise.
3492*f8a1b7d9SAlexander Kabaev
3493*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc: Const-ification of a few variables.
3494*f8a1b7d9SAlexander Kabaev
3495*f8a1b7d9SAlexander Kabaev	* include/bits/ostream.tcc: Trivial formatting fixes and
3496*f8a1b7d9SAlexander Kabaev	const-ification of some variables.
3497*f8a1b7d9SAlexander Kabaev
3498*f8a1b7d9SAlexander Kabaev2004-05-20  Benjamin Kosnik  <[email protected]>
3499f260e61bSAlexander Kabaev
3500f260e61bSAlexander Kabaev	PR libstdc++/15123
3501f260e61bSAlexander Kabaev	PR libstdc++/13928
3502f260e61bSAlexander Kabaev	* docs/doxygen/Intro.3: Remove Allocators.3.
3503f260e61bSAlexander Kabaev	Add new extension headers, extension namespace list.
3504f260e61bSAlexander Kabaev	* docs/doxygen/run_doxygen (problematic): Remove Allocators.3
3505f260e61bSAlexander Kabaev	Rename GLIBCXXSTD names to std::. Rename __gnu_debug to
3506f260e61bSAlexander Kabaev	__gnu_debug::. Remove __policy_ renames.
3507f260e61bSAlexander Kabaev	* docs/doxygen/guide.html: Add dot note.
3508f260e61bSAlexander Kabaev	* docs/doxygen/stdheader.cc: Edit, add files.
3509f260e61bSAlexander Kabaev	* docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7.
3510f260e61bSAlexander Kabaev
3511*f8a1b7d9SAlexander Kabaev2004-05-18  Jonathan Wakely  <[email protected]>
3512*f8a1b7d9SAlexander Kabaev
3513*f8a1b7d9SAlexander Kabaev	* include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
3514*f8a1b7d9SAlexander Kabaev
3515*f8a1b7d9SAlexander Kabaev2004-05-18  Jan Beulich  <[email protected]>
3516f260e61bSAlexander Kabaev
3517f260e61bSAlexander Kabaev	PR libstdc++/15489
3518f260e61bSAlexander Kabaev	* scripts/create_testsuite_files: Also find source files through
3519f260e61bSAlexander Kabaev	symbolic links.
3520f260e61bSAlexander Kabaev
3521*f8a1b7d9SAlexander Kabaev2004-05-18  Jan Beulich  <[email protected]>
3522f260e61bSAlexander Kabaev
3523f260e61bSAlexander Kabaev	PR libstdc++/15488
3524f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp: Make test files writable.
3525f260e61bSAlexander Kabaev
3526*f8a1b7d9SAlexander Kabaev2004-05-18  Paolo Carlini  <[email protected]>
3527*f8a1b7d9SAlexander Kabaev
3528*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
3529*f8a1b7d9SAlexander Kabaev	tweaks.
3530*f8a1b7d9SAlexander Kabaev
3531*f8a1b7d9SAlexander Kabaev2004-05-18  Dhruv Matani  <[email protected]>
3532*f8a1b7d9SAlexander Kabaev
3533*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
3534*f8a1b7d9SAlexander Kabaev	allocation loop which removes blocks from the global free list
3535*f8a1b7d9SAlexander Kabaev	from O(N) to O(1) when the required blocks are <= the number
3536*f8a1b7d9SAlexander Kabaev	available.
3537*f8a1b7d9SAlexander Kabaev
3538f260e61bSAlexander Kabaev2004-05-18  Jonathan Wakely  <[email protected]>
3539f260e61bSAlexander Kabaev
3540*f8a1b7d9SAlexander Kabaev	* include/ext/enc_filebuf.h: Move concept-check macro to class scope.
3541f260e61bSAlexander Kabaev
3542*f8a1b7d9SAlexander Kabaev2004-05-17  Benjamin Kosnik  <[email protected]>
3543f260e61bSAlexander Kabaev
3544f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
3545f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/14340.cc: New.
3546f260e61bSAlexander Kabaev	* testsuite/23_containers/list/14340.cc: New.
3547f260e61bSAlexander Kabaev	* testsuite/23_containers/map/14340.cc: New.
3548f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/14340.cc: New.
3549f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/14340.cc: New.
3550f260e61bSAlexander Kabaev	* testsuite/23_containers/set/14340.cc: New.
3551f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/14340.cc: New.
3552f260e61bSAlexander Kabaev
3553*f8a1b7d9SAlexander Kabaev2004-05-17  Douglas Gregor   <[email protected]>
3554f260e61bSAlexander Kabaev
3555f260e61bSAlexander Kabaev	PR libstdc++/14340
3556f260e61bSAlexander Kabaev	* include/debug/safe_iterator.h (_Safe_iterator converting
3557f260e61bSAlexander Kabaev	constructor): Only allow declaration to instantiate when the
3558f260e61bSAlexander Kabaev	incoming _Safe_iterator has exactly the right iterator type.
3559f260e61bSAlexander Kabaev
3560f260e61bSAlexander Kabaev2004-05-17  Jonathan Wakely  <[email protected]>
3561f260e61bSAlexander Kabaev
3562f260e61bSAlexander Kabaev	* include/bits/boost_concept_check.h: Fix old attribute syntax.
3563f260e61bSAlexander Kabaev	* testsuite/23_containers/map/modifiers/swap.cc: Define operator<
3564f260e61bSAlexander Kabaev	to pass concept-checks.
3565f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
3566f260e61bSAlexander Kabaev	* testsuite/23_containers/set/modifiers/swap.cc: Same.
3567f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/modifiers/swap.cc: Same.
3568f260e61bSAlexander Kabaev
3569*f8a1b7d9SAlexander Kabaev2004-05-16  Paolo Carlini  <[email protected]>
3570*f8a1b7d9SAlexander Kabaev
3571*f8a1b7d9SAlexander Kabaev	* include/std/std_bitset.h: Minor formatting fixes.
3572*f8a1b7d9SAlexander Kabaev
3573*f8a1b7d9SAlexander Kabaev2004-05-16  Paolo Carlini  <[email protected]>
3574*f8a1b7d9SAlexander Kabaev
3575*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
3576*f8a1b7d9SAlexander Kabaev	Consistently update __bin._M_free[0].
3577*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
3578*f8a1b7d9SAlexander Kabaev	__bin._M_free[0] to simplify the while loop (i.e., the number
3579*f8a1b7d9SAlexander Kabaev	of iterations becomes known at the outset).
3580*f8a1b7d9SAlexander Kabaev
3581*f8a1b7d9SAlexander Kabaev2004-05-15  Paolo Carlini  <[email protected]>
3582*f8a1b7d9SAlexander Kabaev
3583*f8a1b7d9SAlexander Kabaev	* include/std/std_bitset.h: Trivial formatting fixes.
3584*f8a1b7d9SAlexander Kabaev
3585*f8a1b7d9SAlexander Kabaev2004-05-14  Paolo Carlini  <[email protected]>
3586*f8a1b7d9SAlexander Kabaev	    Ivan Godard  <[email protected]>
3587*f8a1b7d9SAlexander Kabaev
3588*f8a1b7d9SAlexander Kabaev	PR libstdc++/15361
3589*f8a1b7d9SAlexander Kabaev	* include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
3590*f8a1b7d9SAlexander Kabaev	* testsuite/23_containers/bitset/ext/15361.cc: New.
3591*f8a1b7d9SAlexander Kabaev
3592*f8a1b7d9SAlexander Kabaev2004-05-13  Benjamin Kosnik  <[email protected]>
3593f260e61bSAlexander Kabaev
3594f260e61bSAlexander Kabaev	PR libstdc++/15046
3595f260e61bSAlexander Kabaev	* crossconfig.m4: Add C99 math bits for linux crosses.
3596f260e61bSAlexander Kabaev	* configure: Regenerate.
3597f260e61bSAlexander Kabaev
3598*f8a1b7d9SAlexander Kabaev2004-05-13  Simon Marshall <[email protected]>
3599f260e61bSAlexander Kabaev	    Benjamin Kosnik  <[email protected]>
3600f260e61bSAlexander Kabaev
3601f260e61bSAlexander Kabaev	PR libstdc++/15090
3602f260e61bSAlexander Kabaev	* include/bits/locale_facets.h: Fix for -fno-for-scope.
3603f260e61bSAlexander Kabaev	* include/debug/safe_sequence.h: Same.
3604f260e61bSAlexander Kabaev	* include/debug/safe_iterator.tcc: Same.
3605f260e61bSAlexander Kabaev	* src/debug.cc: Same.
3606f260e61bSAlexander Kabaev	* src/locale.cc: Same.
3607f260e61bSAlexander Kabaev	* src/locale_init.cc: Same.
3608f260e61bSAlexander Kabaev	* src/localename.cc: Same.
3609f260e61bSAlexander Kabaev	* config/locale/gnu/ctype_members.cc: Same.
3610f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc: Same.
3611f260e61bSAlexander Kabaev	* testsuite/testsuite_abi.cc: Same.
3612f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc: Same.
3613f260e61bSAlexander Kabaev
3614*f8a1b7d9SAlexander Kabaev2004-05-13  Jonathan Wakely  <[email protected]>
3615f260e61bSAlexander Kabaev
3616f260e61bSAlexander Kabaev	* docs/html/abi.html: Document effect of -fabi-version on value
3617f260e61bSAlexander Kabaev	of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
3618f260e61bSAlexander Kabaev	Fix markup.
3619f260e61bSAlexander Kabaev
3620f260e61bSAlexander Kabaev2004-05-13  Benjamin Kosnik  <[email protected]>
3621f260e61bSAlexander Kabaev
3622f260e61bSAlexander Kabaev	PR libstdc++/15074
3623f260e61bSAlexander Kabaev	* docs/html/faq/index.html: Update docs for libsupc++ usage.
3624f260e61bSAlexander Kabaev
3625f260e61bSAlexander Kabaev2004-05-13  Benjamin Kosnik  <[email protected]>
3626f260e61bSAlexander Kabaev
3627f260e61bSAlexander Kabaev	PR libstdc++/15412
3628f260e61bSAlexander Kabaev	* include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
3629f260e61bSAlexander Kabaev	__gnu_internal.
3630f260e61bSAlexander Kabaev	(_GLIBCXX_mutex_address): Same.
3631f260e61bSAlexander Kabaev	(_GLIBCXX_once): Same.
3632f260e61bSAlexander Kabaev	(_GLIBCXX_mutex_init): Same.
3633f260e61bSAlexander Kabaev	(_GLIBCXX_mutex_address_init): Same.
3634f260e61bSAlexander Kabaev
3635*f8a1b7d9SAlexander Kabaev2004-05-13  Benjamin Kosnik  <[email protected]>
3636f260e61bSAlexander Kabaev
3637*f8a1b7d9SAlexander Kabaev	* docs/html/abi.html: New.
3638*f8a1b7d9SAlexander Kabaev	* docs/html/abi.txt: Remove.
3639*f8a1b7d9SAlexander Kabaev	* docs/html/documentation.html: Add link.
3640*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.am: Add files.
3641*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.in: Regenerated.
3642*f8a1b7d9SAlexander Kabaev	* testsuite/abi_check.cc: Move and modify code into...
3643*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_abi.cc: Add.
3644*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_abi.h: Add.
3645f260e61bSAlexander Kabaev
3646*f8a1b7d9SAlexander Kabaev	* docs/html/17_intro/TODO: Update.
3647*f8a1b7d9SAlexander Kabaev	* include/bits/stl_pair.h: Format.
3648*f8a1b7d9SAlexander Kabaev
3649*f8a1b7d9SAlexander Kabaev2004-05-06  Matthias Klose  <[email protected]>
3650*f8a1b7d9SAlexander Kabaev
3651*f8a1b7d9SAlexander Kabaev	* include/backward/iterator.h: 	Add GPL copyright info,
3652*f8a1b7d9SAlexander Kabaev	with exception clause.
3653*f8a1b7d9SAlexander Kabaev	* include/bits/boost_concept_check.h: Likewise.
3654*f8a1b7d9SAlexander Kabaev	* include
3655*f8a1b7d9SAlexander Kabaev	* libsupc++/tinfo.h: Likewise.
3656*f8a1b7d9SAlexander Kabaev	* po/string_literals.cc: Likewise.
3657*f8a1b7d9SAlexander Kabaev
3658*f8a1b7d9SAlexander Kabaev2004-05-03  Andreas Tobler  <[email protected]>
3659*f8a1b7d9SAlexander Kabaev
3660*f8a1b7d9SAlexander Kabaev	* acinclude.m4: Replace -W with more speaking -Wextra.
3661*f8a1b7d9SAlexander Kabaev	* configure: Rebuilt.
3662*f8a1b7d9SAlexander Kabaev
3663*f8a1b7d9SAlexander Kabaev2004-05-03  Paolo Carlini  <[email protected]>
3664*f8a1b7d9SAlexander Kabaev
3665*f8a1b7d9SAlexander Kabaev	Optimize locale::_M_impl->_M_names for the most common cases:
3666*f8a1b7d9SAlexander Kabaev	!_M_names[0] means unnamed; !_M_names[1] means all the categories
3667*f8a1b7d9SAlexander Kabaev	the same name (_M_names[0] && _M_names[1] means that the full set
3668*f8a1b7d9SAlexander Kabaev	of _M_names must be processed, the general case).
3669*f8a1b7d9SAlexander Kabaev	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
3670*f8a1b7d9SAlexander Kabaev	Tweak, saving work when !_M_names[1].
3671*f8a1b7d9SAlexander Kabaev	(locale::locale(const locale&, _Facet*): Simplify: now just setting
3672*f8a1b7d9SAlexander Kabaev	_M_names[0] = 0 means unnamed.
3673*f8a1b7d9SAlexander Kabaev	* src/locale.cc (locale::operator==): Deal first with the common,
3674*f8a1b7d9SAlexander Kabaev	easy cases, otherwise fall back to locale::name().
3675*f8a1b7d9SAlexander Kabaev	(locale::name()): Tweak, if !_M_names[0] just return "*".
3676*f8a1b7d9SAlexander Kabaev	(locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
3677*f8a1b7d9SAlexander Kabaev	copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
3678*f8a1b7d9SAlexander Kabaev	* src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
3679*f8a1b7d9SAlexander Kabaev	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
3680*f8a1b7d9SAlexander Kabaev	Simplify when !std::strchr, just updating _M_names[0]; clean up.
3681*f8a1b7d9SAlexander Kabaev	(locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
3682*f8a1b7d9SAlexander Kabaev	for the general case (full set of names), then do the usual work;
3683*f8a1b7d9SAlexander Kabaev	clean up.
3684*f8a1b7d9SAlexander Kabaev
3685*f8a1b7d9SAlexander Kabaev	* src/locale.cc (locale::name()): Reserve space in __ret.
3686*f8a1b7d9SAlexander Kabaev	* src/locale_init.cc (locale::global(const locale&)): Save
3687*f8a1b7d9SAlexander Kabaev	the name in a temporary.
3688*f8a1b7d9SAlexander Kabaev	* src/localename.cc (locale::locale(const char*)): Reserve space
3689*f8a1b7d9SAlexander Kabaev	in __str.
3690*f8a1b7d9SAlexander Kabaev
3691*f8a1b7d9SAlexander Kabaev2004-04-29  Paolo Carlini  <[email protected]>
3692*f8a1b7d9SAlexander Kabaev
3693*f8a1b7d9SAlexander Kabaev	* src/locale.cc (locale::operator==): Always avoid constructing
3694*f8a1b7d9SAlexander Kabaev	locale::name(), directly compare pairs of _M_names.
3695*f8a1b7d9SAlexander Kabaev
3696*f8a1b7d9SAlexander Kabaev2004-04-26  Paolo Carlini  <[email protected]>
3697*f8a1b7d9SAlexander Kabaev
3698*f8a1b7d9SAlexander Kabaev	* include/bits/istream.tcc: Fix comment.
3699*f8a1b7d9SAlexander Kabaev
3700*f8a1b7d9SAlexander Kabaev2004-04-26  Paolo Carlini  <[email protected]>
3701*f8a1b7d9SAlexander Kabaev
3702*f8a1b7d9SAlexander Kabaev	* include/bits/stl_vector.h: Trivial formatting fixes.
3703*f8a1b7d9SAlexander Kabaev	* include/bits/vector.tcc: Likewise.
3704*f8a1b7d9SAlexander Kabaev
3705*f8a1b7d9SAlexander Kabaev2004-04-25  Paolo Carlini  <[email protected]>
3706f260e61bSAlexander Kabaev
3707f260e61bSAlexander Kabaev	PR libstdc++/15002 (continued again)
3708f260e61bSAlexander Kabaev	* include/bits/istream.tcc (getline(basic_istream<>&,
3709f260e61bSAlexander Kabaev	basic_string<>&, _CharT)): Use a temporary buffer, thus
3710f260e61bSAlexander Kabaev	avoiding reallocation for common case.
3711f260e61bSAlexander Kabaev
3712f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct(_InIterator,
3713f260e61bSAlexander Kabaev	_InIterator, const _Alloc&, input_iterator_tag)): Tweak size
3714f260e61bSAlexander Kabaev	of temporary buffer to a power of two.
3715f260e61bSAlexander Kabaev
3716f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
3717f260e61bSAlexander Kabaev
3718*f8a1b7d9SAlexander Kabaev2004-04-25  Paolo Carlini  <[email protected]>
3719*f8a1b7d9SAlexander Kabaev
3720*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
3721*f8a1b7d9SAlexander Kabaev	New.
3722*f8a1b7d9SAlexander Kabaev	* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
3723*f8a1b7d9SAlexander Kabaev	Likewise.
3724*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
3725*f8a1b7d9SAlexander Kabaev
3726*f8a1b7d9SAlexander Kabaev2004-04-24  Paolo Carlini  <[email protected]>
3727f260e61bSAlexander Kabaev	    Petur Runolfsson  <[email protected]>
3728f260e61bSAlexander Kabaev
3729f260e61bSAlexander Kabaev	PR libstdc++/15002 (continued)
3730f260e61bSAlexander Kabaev	* include/bits/istream.tcc (basic_istream<>::getline(char_type*,
3731f260e61bSAlexander Kabaev	streamsize, char_type)): Use traits::find/copy in a loop to speed
3732f260e61bSAlexander Kabaev	up greatly the function in the common case (I/O buffer size >> 1).
3733f260e61bSAlexander Kabaev
3734*f8a1b7d9SAlexander Kabaev2004-04-24  Paolo Carlini  <[email protected]>
3735f260e61bSAlexander Kabaev
3736f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/4.cc: New.
3737f260e61bSAlexander Kabaev
3738f260e61bSAlexander Kabaev	* include/bits/istream.tcc (getline(basic_istream<>&,
3739f260e61bSAlexander Kabaev	basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
3740f260e61bSAlexander Kabaev	of sbumpc(), consistently with the other functions, thus also
3741f260e61bSAlexander Kabaev	dealing correctly with the case of exceeded string::max_size().
3742f260e61bSAlexander Kabaev
3743*f8a1b7d9SAlexander Kabaev2004-04-24  Matthias Klose  <[email protected]>
3744f260e61bSAlexander Kabaev
3745*f8a1b7d9SAlexander Kabaev	Jonathan Wakely  <[email protected]>
3746*f8a1b7d9SAlexander Kabaev	* docs/html/configopts.html: Fix reference to allocator config option.
3747f260e61bSAlexander Kabaev
3748*f8a1b7d9SAlexander Kabaev2004-04-23  Andrew Pinski  <[email protected]>
3749f260e61bSAlexander Kabaev
3750*f8a1b7d9SAlexander Kabaev	* linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
3751f260e61bSAlexander Kabaev	* configure: Regenerate.
3752f260e61bSAlexander Kabaev
3753*f8a1b7d9SAlexander Kabaev2004-04-23  Daniel Jacobowitz  <[email protected]>
3754f260e61bSAlexander Kabaev
3755*f8a1b7d9SAlexander Kabaev	PR libstdc++/15047, libstdc++/11610
3756*f8a1b7d9SAlexander Kabaev	* testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
3757*f8a1b7d9SAlexander Kabaev	(libstdc++_init): Don't pass outdir to v3-copy-files.
3758f260e61bSAlexander Kabaev
3759*f8a1b7d9SAlexander Kabaev2004-04-21  Paolo Carlini  <[email protected]>
3760*f8a1b7d9SAlexander Kabaev
3761*f8a1b7d9SAlexander Kabaev	* include/bits/deque.tcc: Trivial formatting fixes.
3762*f8a1b7d9SAlexander Kabaev	* include/bits/stl_deque.h: Likewise.
3763*f8a1b7d9SAlexander Kabaev	* include/bits/stl_list.h: Likewise.
3764*f8a1b7d9SAlexander Kabaev	* include/bits/stl_tree.h: Likewise.
3765*f8a1b7d9SAlexander Kabaev
3766*f8a1b7d9SAlexander Kabaev2004-04-21  Paolo Carlini  <[email protected]>
3767*f8a1b7d9SAlexander Kabaev	    Andrew Pinski  <[email protected]>
3768*f8a1b7d9SAlexander Kabaev
3769*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc (_M_mutate): Don't compute
3770*f8a1b7d9SAlexander Kabaev	__src unnecessarily.
3771*f8a1b7d9SAlexander Kabaev
3772*f8a1b7d9SAlexander Kabaev2004-04-19  Benjamin Kosnik  <[email protected]>
3773f260e61bSAlexander Kabaev
3774f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
3775f260e61bSAlexander Kabaev	Clarify assertion, set test variable to false before assert.
3776f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
3777f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
3778f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/2.cc: Same.
3779f260e61bSAlexander Kabaev
3780f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
3781f260e61bSAlexander Kabaev	function returns.
3782f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
3783f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-3.cc: Same.
3784f260e61bSAlexander Kabaev
3785f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
3786f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/1.cc: Same.
3787f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringstream/2.cc: Same.
3788f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringbuf/4.cc: Same.
3789f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringbuf/1.cc: Same.
3790f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringbuf/2.cc: Same.
3791f260e61bSAlexander Kabaev	* testsuite/27_io/basic_streambuf/2.cc: Same.
3792f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostringstream/2.cc: Same.
3793f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/2.cc: Same.
3794f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ofstream/2.cc: Same.
3795f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istringstream/2.cc: Same.
3796f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/2.cc: Same.
3797f260e61bSAlexander Kabaev	* testsuite/27_io/basic_iostream/2.cc: Same.
3798f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ios/2.cc: Same.
3799f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ifstream/2.cc: Same.
3800f260e61bSAlexander Kabaev	* testsuite/27_io/basic_fstream/2.cc: Same.
3801f260e61bSAlexander Kabaev	* testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
3802f260e61bSAlexander Kabaev
3803f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
3804f260e61bSAlexander Kabaev	unsigned against zero.
3805f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
3806f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
3807f260e61bSAlexander Kabaev
3808f260e61bSAlexander Kabaev	* testsuite/18_support/new_delete_placement.cc: Initialize
3809f260e61bSAlexander Kabaev	variables before first use.
3810f260e61bSAlexander Kabaev	* testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
3811f260e61bSAlexander Kabaev	* testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
3812f260e61bSAlexander Kabaev	* testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
3813f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
3814f260e61bSAlexander Kabaev	Same.
3815f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same.
3816f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
3817f260e61bSAlexander Kabaev	Same.
3818f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same.
3819f260e61bSAlexander Kabaev	* testsuite/27_io/types/2.cc: Same.
3820f260e61bSAlexander Kabaev
3821f260e61bSAlexander Kabaev	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
3822f260e61bSAlexander Kabaev	file name.
3823*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/fpos/14775.cc: Same.
3824f260e61bSAlexander Kabaev
3825*f8a1b7d9SAlexander Kabaev2004-04-19  Paolo Carlini  <[email protected]>
3826f260e61bSAlexander Kabaev
3827f260e61bSAlexander Kabaev	PR libstdc++/15002 (partial)
3828f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
3829f260e61bSAlexander Kabaev	Special case __n2 == 1, not calling traits_type::assign/copy.
3830f260e61bSAlexander Kabaev
3831f260e61bSAlexander Kabaev2004-04-17  Benjamin Kosnik  <[email protected]>
3832f260e61bSAlexander Kabaev
3833f260e61bSAlexander Kabaev	* include/bits/stl_bvector.h: Use _M_impl._M_start.
3834f260e61bSAlexander Kabaev
3835f260e61bSAlexander Kabaev2004-04-16  Benjamin Kosnik  <[email protected]>
3836f260e61bSAlexander Kabaev
3837f260e61bSAlexander Kabaev	* include/bits/c++config (_GLIBCXX_STD): New.
3838f260e61bSAlexander Kabaev	* src/list.cc: Use it.
3839f260e61bSAlexander Kabaev	* include/std/std_bitset.h: Same.
3840f260e61bSAlexander Kabaev	* include/bits/vector.tcc: Same.
3841f260e61bSAlexander Kabaev	* include/bits/stl_set.h: Same.
3842f260e61bSAlexander Kabaev	* include/bits/stl_multiset.h: Same.
3843f260e61bSAlexander Kabaev	* include/bits/stl_multimap.h: Same.
3844f260e61bSAlexander Kabaev	* include/bits/stl_map.h: Same.
3845f260e61bSAlexander Kabaev	* include/bits/stl_list.h: Same.
3846f260e61bSAlexander Kabaev	* include/bits/stl_vector.h: Same.
3847f260e61bSAlexander Kabaev	* include/bits/stl_bvector.h: Same.
3848f260e61bSAlexander Kabaev	* include/bits/stl_deque.h: Same.
3849f260e61bSAlexander Kabaev	* include/bits/deque.tcc: Same.
3850f260e61bSAlexander Kabaev	* include/bits/list.tcc: Same.
3851f260e61bSAlexander Kabaev	* include/debug/vector: Same.
3852f260e61bSAlexander Kabaev	* include/debug/set.h: Same.
3853f260e61bSAlexander Kabaev	* include/debug/multiset.h: Same.
3854f260e61bSAlexander Kabaev	* include/debug/multimap.h: Same.
3855f260e61bSAlexander Kabaev	* include/debug/map.h: Same.
3856f260e61bSAlexander Kabaev	* include/debug/list: Same.
3857f260e61bSAlexander Kabaev	* include/debug/deque: Same.
3858f260e61bSAlexander Kabaev	* include/debug/bitset: Same.
3859f260e61bSAlexander Kabaev	* include/debug/formatter.h (__gnu_debug): Remove using directive.
3860f260e61bSAlexander Kabaev	Add using declaration for std::type_info.
3861f260e61bSAlexander Kabaev	* include/debug/safe_iterator.h: Add using declaration for
3862f260e61bSAlexander Kabaev	std::iterator_traits and std::pair.
3863f260e61bSAlexander Kabaev	* src/debug_list.cc: New.
3864f260e61bSAlexander Kabaev	* src/Makefile.am: Add debug_list.cc.
3865f260e61bSAlexander Kabaev	* src/Makefile.in: Regenerate.
3866f260e61bSAlexander Kabaev	* config/linker-map.gnu: Add _List_node_base exports for std and
3867f260e61bSAlexander Kabaev	__gnu_norm.
3868f260e61bSAlexander Kabaev
3869f260e61bSAlexander Kabaev	* include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
3870f260e61bSAlexander Kabaev	idiom that other containers use.
3871f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
3872f260e61bSAlexander Kabaev
3873*f8a1b7d9SAlexander Kabaev2004-04-16  Paolo Carlini  <[email protected]>
3874*f8a1b7d9SAlexander Kabaev
3875*f8a1b7d9SAlexander Kabaev	PR libstdc++/14975
3876*f8a1b7d9SAlexander Kabaev	* include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
3877*f8a1b7d9SAlexander Kabaev	in case of error.
3878*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
3879*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
3880*f8a1b7d9SAlexander Kabaev
3881*f8a1b7d9SAlexander Kabaev2004-04-16  Paolo Carlini  <[email protected]>
3882*f8a1b7d9SAlexander Kabaev
3883*f8a1b7d9SAlexander Kabaev	* acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
3884*f8a1b7d9SAlexander Kabaev	used anymore.
3885*f8a1b7d9SAlexander Kabaev	* config.h.in: Regenerate.
3886*f8a1b7d9SAlexander Kabaev
3887*f8a1b7d9SAlexander Kabaev2004-04-16  Paolo Carlini  <[email protected]>
3888*f8a1b7d9SAlexander Kabaev
3889*f8a1b7d9SAlexander Kabaev	* config/locale/generic/monetary_members.cc
3890*f8a1b7d9SAlexander Kabaev	(moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
3891*f8a1b7d9SAlexander Kabaev	btowc unnecessarily, just cast to wchar_t (the concerned chars
3892*f8a1b7d9SAlexander Kabaev	all belong to the basic character set).
3893*f8a1b7d9SAlexander Kabaev	* config/locale/generic/numeric_members.cc
3894*f8a1b7d9SAlexander Kabaev	(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
3895*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/monetary_members.cc
3896*f8a1b7d9SAlexander Kabaev	(moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
3897*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/numeric_members.cc
3898*f8a1b7d9SAlexander Kabaev	(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
3899*f8a1b7d9SAlexander Kabaev
3900*f8a1b7d9SAlexander Kabaev2004-04-15  Paolo Carlini  <[email protected]>
3901*f8a1b7d9SAlexander Kabaev
3902*f8a1b7d9SAlexander Kabaev	* src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
3903*f8a1b7d9SAlexander Kabaev	avoid constructing unnecessarily this->name().
3904*f8a1b7d9SAlexander Kabaev
3905f260e61bSAlexander Kabaev2004-04-14  Zack Weinberg  <[email protected]>
3906f260e61bSAlexander Kabaev
3907f260e61bSAlexander Kabaev	* testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
3908f260e61bSAlexander Kabaev	Change definition of CXX to use $(shell) instead of backticks.
3909f260e61bSAlexander Kabaev	* testsuite/Makefile.in: Regenerate.
3910f260e61bSAlexander Kabaev
3911*f8a1b7d9SAlexander Kabaev2004-04-12  Dhruv Matani  <[email protected]>
3912f260e61bSAlexander Kabaev
3913*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc:
3914*f8a1b7d9SAlexander Kabaev	Minor formatting fixes.
3915*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc:
3916*f8a1b7d9SAlexander Kabaev	Likewise.
3917*f8a1b7d9SAlexander Kabaev
3918*f8a1b7d9SAlexander Kabaev2004-04-12  Paolo Carlini <[email protected]>
3919*f8a1b7d9SAlexander Kabaev
3920*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/numeric_members.cc
3921*f8a1b7d9SAlexander Kabaev	(numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
3922*f8a1b7d9SAlexander Kabaev	in __uselocale, since btowc is called for chars belonging to
3923*f8a1b7d9SAlexander Kabaev	the basic character set.
3924*f8a1b7d9SAlexander Kabaev
3925*f8a1b7d9SAlexander Kabaev2004-04-09  Paolo Carlini  <[email protected]>
3926*f8a1b7d9SAlexander Kabaev
3927*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/messages/members/char/1.cc: Remove junk.
3928*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/messages/members/char/2.cc: Ditto.
3929*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/messages/members/char/3.cc: Ditto.
3930*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/1.cc: Ditto.
3931*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/2.cc: Ditto.
3932*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/3.cc: Ditto.
3933*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
3934*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
3935*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
3936*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/char/1.cc: Ditto.
3937*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/char/2.cc: Ditto.
3938*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/char/3.cc: Ditto.
3939*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
3940*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
3941*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
3942*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
3943*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
3944*f8a1b7d9SAlexander Kabaev
3945*f8a1b7d9SAlexander Kabaev2004-04-07  Paolo Carlini  <[email protected]>
3946*f8a1b7d9SAlexander Kabaev
3947*f8a1b7d9SAlexander Kabaev	* config/locale/generic/time_members.cc
3948*f8a1b7d9SAlexander Kabaev	(__timepunct<char>::_M_initialize_timepunct,
3949*f8a1b7d9SAlexander Kabaev	__timepunct<wchar_t>::_M_initialize_timepunct): the correct
3950*f8a1b7d9SAlexander Kabaev	_M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
3951*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/time_members.cc
3952*f8a1b7d9SAlexander Kabaev	(__timepunct<char>::_M_initialize_timepunct,
3953*f8a1b7d9SAlexander Kabaev	__timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
3954*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
3955*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
3956*f8a1b7d9SAlexander Kabaev
3957*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
3958*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
3959*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
3960*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
3961*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
3962*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
3963*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
3964*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
3965*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
3966*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
3967*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
3968*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
3969*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
3970*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
3971*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
3972*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
3973*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
3974*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
3975*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
3976*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
3977*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/1.cc: Ditto.
3978*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/2.cc: Ditto.
3979*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/3.cc: Ditto.
3980*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/4.cc: Ditto.
3981*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/5.cc: Ditto.
3982*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/6.cc: Ditto.
3983*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/7.cc: Ditto.
3984*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/8.cc: Ditto.
3985*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
3986*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
3987*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
3988*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
3989*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
3990*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
3991*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
3992*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
3993*f8a1b7d9SAlexander Kabaev
3994*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
3995*f8a1b7d9SAlexander Kabaev
3996*f8a1b7d9SAlexander Kabaev2004-04-07  Paolo Carlini  <[email protected]>
3997*f8a1b7d9SAlexander Kabaev
3998*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/monetary_members.cc
3999*f8a1b7d9SAlexander Kabaev	(moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
4000*f8a1b7d9SAlexander Kabaev	_NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
4001*f8a1b7d9SAlexander Kabaev	and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
4002*f8a1b7d9SAlexander Kabaev	_NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
4003*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/numeric_members.cc
4004*f8a1b7d9SAlexander Kabaev	(numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
4005*f8a1b7d9SAlexander Kabaev	and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
4006*f8a1b7d9SAlexander Kabaev
4007*f8a1b7d9SAlexander Kabaev2004-04-06  Benjamin Kosnik  <[email protected]>
4008*f8a1b7d9SAlexander Kabaev
4009*f8a1b7d9SAlexander Kabaev	Fixups for EDG front end.
4010*f8a1b7d9SAlexander Kabaev	* include/ext/rope: Instead of non-existent function
4011*f8a1b7d9SAlexander Kabaev	_Data_allocate, use allocator's allocate. Use this.
4012*f8a1b7d9SAlexander Kabaev	(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
4013*f8a1b7d9SAlexander Kabaev	enumerations from _Rope_RopeRep here.
4014*f8a1b7d9SAlexander Kabaev	* include/ext/ropeimpl.h: Same.
4015*f8a1b7d9SAlexander Kabaev	* src/ext-inst.cc (_S_min_len): Fix up definition.
4016*f8a1b7d9SAlexander Kabaev
4017*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/ctype_members.cc: Qualify base class members
4018*f8a1b7d9SAlexander Kabaev	with this.
4019*f8a1b7d9SAlexander Kabaev	* config/locale/generic/ctype_members.cc: Same.
4020*f8a1b7d9SAlexander Kabaev	* config/locale/gnu/messages_members.h: Same.
4021*f8a1b7d9SAlexander Kabaev	* config/locale/generic/messages_members.h: Same.
4022*f8a1b7d9SAlexander Kabaev	* src/ctype.cc: Same.
4023*f8a1b7d9SAlexander Kabaev	* include/bits/codecvt.h: Same.
4024*f8a1b7d9SAlexander Kabaev
4025*f8a1b7d9SAlexander Kabaev	* include/bits/boost_concept_check.h: Declare.
4026*f8a1b7d9SAlexander Kabaev	(__error_type_must_be_an_unsigned_integer_type): Remove this.
4027*f8a1b7d9SAlexander Kabaev	(__error_type_must_be_an_integer_type): Remove this.
4028*f8a1b7d9SAlexander Kabaev	(__error_type_must_be_a_signed_integer_type): Remove this.
4029*f8a1b7d9SAlexander Kabaev
4030*f8a1b7d9SAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
4031*f8a1b7d9SAlexander Kabaev
4032*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
4033*f8a1b7d9SAlexander Kabaev	specification to definition.
4034*f8a1b7d9SAlexander Kabaev	(__cxa_allocate_exception): Same.
4035*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
4036*f8a1b7d9SAlexander Kabaev	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
4037*f8a1b7d9SAlexander Kabaev	(__cxa_get_globals): Same.
4038*f8a1b7d9SAlexander Kabaev
4039*f8a1b7d9SAlexander Kabaev	* libsupc++/del_op.cc: Add comment about freestanding.
4040*f8a1b7d9SAlexander Kabaev
4041*f8a1b7d9SAlexander Kabaev2004-04-05  Paolo Carlini  <[email protected]>
4042*f8a1b7d9SAlexander Kabaev
4043*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
4044*f8a1b7d9SAlexander Kabaev	The critical section is actually very small, only two assignments.
4045*f8a1b7d9SAlexander Kabaev
4046*f8a1b7d9SAlexander Kabaev2004-04-04  Paolo Carlini  <[email protected]>
4047*f8a1b7d9SAlexander Kabaev	    Petur Runolfsson  <[email protected]>
4048*f8a1b7d9SAlexander Kabaev
4049*f8a1b7d9SAlexander Kabaev	* testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
4050*f8a1b7d9SAlexander Kabaev	adapted from libstdc++/11378.
4051*f8a1b7d9SAlexander Kabaev
4052*f8a1b7d9SAlexander Kabaev2004-04-03  Paolo Carlini  <[email protected]>
4053*f8a1b7d9SAlexander Kabaev
4054*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
4055*f8a1b7d9SAlexander Kabaev	some duplicated code.
4056*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
4057*f8a1b7d9SAlexander Kabaev	in the single threaded case.
4058*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc:
4059*f8a1b7d9SAlexander Kabaev	Reorder and renumber the tests consistently with the other testfiles.
4060*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
4061*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
4062*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
4063*f8a1b7d9SAlexander Kabaev
4064*f8a1b7d9SAlexander Kabaev2004-04-02  Paolo Carlini  <[email protected]>
4065*f8a1b7d9SAlexander Kabaev
4066*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
4067*f8a1b7d9SAlexander Kabaev	Rearrange arithmetic to avoid computing two divisions at
4068*f8a1b7d9SAlexander Kabaev	each deallocation.
4069*f8a1b7d9SAlexander Kabaev
4070*f8a1b7d9SAlexander Kabaev2004-04-01  Paolo Carlini  <[email protected]>
4071*f8a1b7d9SAlexander Kabaev
4072*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
4073*f8a1b7d9SAlexander Kabaev	Streamline the second half, wrapping it in a single
4074*f8a1b7d9SAlexander Kabaev	'#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
4075*f8a1b7d9SAlexander Kabaev	conditionals inside loops.
4076*f8a1b7d9SAlexander Kabaev
4077*f8a1b7d9SAlexander Kabaev2004-04-01  Paolo Carlini  <[email protected]>
4078*f8a1b7d9SAlexander Kabaev
4079*f8a1b7d9SAlexander Kabaev	PR libstdc++/14775
4080*f8a1b7d9SAlexander Kabaev	* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
4081*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
4082*f8a1b7d9SAlexander Kabaev	GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
4083*f8a1b7d9SAlexander Kabaev	to _GLIBCXX_RES_LIMITS.
4084*f8a1b7d9SAlexander Kabaev	(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
4085*f8a1b7d9SAlexander Kabaev	HAVE_LIMIT_*.
4086*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_hooks.h: Declare set_file_limit.
4087*f8a1b7d9SAlexander Kabaev	* testsuite/testsuite_hooks.cc: Define it, using getrlimit
4088*f8a1b7d9SAlexander Kabaev	and setrlimit(RLIMIT_FSIZE).
4089*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/fpos/14775.cc: New.
4090*f8a1b7d9SAlexander Kabaev	* config.h.in: Regenerate.
4091*f8a1b7d9SAlexander Kabaev	* configure: Likewise.
4092*f8a1b7d9SAlexander Kabaev
4093*f8a1b7d9SAlexander Kabaev2004-03-31  Paolo Carlini  <[email protected]>
4094*f8a1b7d9SAlexander Kabaev
4095*f8a1b7d9SAlexander Kabaev	* config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
4096*f8a1b7d9SAlexander Kabaev	In v3 uses of sscanf, the special floating-point numbers INF,
4097*f8a1b7d9SAlexander Kabaev	INFINITY, etc., cannot occur in input, therefore, if the latter
4098*f8a1b7d9SAlexander Kabaev	is too large, ERANGE is always stored in errno, no need of finitel.
4099f260e61bSAlexander Kabaev
4100f260e61bSAlexander Kabaev2004-03-30  Benjamin Kosnik  <[email protected]>
4101f260e61bSAlexander Kabaev
4102f260e61bSAlexander Kabaev	PR libstdc++/14783
4103f260e61bSAlexander Kabaev	* include/bits/stl_tree.h: Adjust initialization list order.
4104f260e61bSAlexander Kabaev
4105*f8a1b7d9SAlexander Kabaev2004-03-29  Loren J. Rittle  <[email protected]>
4106*f8a1b7d9SAlexander Kabaev
4107*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
4108*f8a1b7d9SAlexander Kabaev
4109*f8a1b7d9SAlexander Kabaev2004-03-29  Paolo Carlini  <[email protected]>
4110*f8a1b7d9SAlexander Kabaev
4111*f8a1b7d9SAlexander Kabaev	* testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
4112*f8a1b7d9SAlexander Kabaev	on allocator behavior, the memory pointed by data2 may well be not
4113*f8a1b7d9SAlexander Kabaev	trashed.
4114*f8a1b7d9SAlexander Kabaev
4115*f8a1b7d9SAlexander Kabaev2004-03-28  Chavdar Botev  <[email protected]>
4116*f8a1b7d9SAlexander Kabaev
4117*f8a1b7d9SAlexander Kabaev	PR libstdc++/14245
4118*f8a1b7d9SAlexander Kabaev	* include/bits/basic_string.tcc
4119*f8a1b7d9SAlexander Kabaev	(basic_string::basic_string(const basic_string&)): Pass to
4120*f8a1b7d9SAlexander Kabaev	_Rep::_M_grab the actual allocator of the string being constructed
4121*f8a1b7d9SAlexander Kabaev	not the default constructed one.
4122*f8a1b7d9SAlexander Kabaev
4123*f8a1b7d9SAlexander Kabaev2004-03-27  Benjamin Kosnik  <[email protected]>
4124f260e61bSAlexander Kabaev
4125f260e61bSAlexander Kabaev	libstdc++ PR/13598
4126f260e61bSAlexander Kabaev	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
4127f260e61bSAlexander Kabaev	(__enc_traits::_M_destroy): New.
4128f260e61bSAlexander Kabaev	(__enc_traits::~__enc_traits): Use it.
4129f260e61bSAlexander Kabaev	(__enc_traits::operator=): Use _M_destroy, _M_init.
4130f260e61bSAlexander Kabaev	(__enc_traits::__enc_traits): Same.
4131f260e61bSAlexander Kabaev
4132*f8a1b7d9SAlexander Kabaev2004-03-27  Petur Runolfsson  <[email protected]>
4133f260e61bSAlexander Kabaev
4134f260e61bSAlexander Kabaev	* testsuite/ext/enc_filebuf/char/13598.cc: New.
4135f260e61bSAlexander Kabaev
4136*f8a1b7d9SAlexander Kabaev2004-03-27  Paolo Carlini  <[email protected]>
4137*f8a1b7d9SAlexander Kabaev
4138*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h: Uglify consistently names of
4139*f8a1b7d9SAlexander Kabaev	variables, members and classes; tidy.
4140*f8a1b7d9SAlexander Kabaev
4141*f8a1b7d9SAlexander Kabaev2004-03-27  Dhruv Matani  <[email protected]>
4142*f8a1b7d9SAlexander Kabaev
4143*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
4144*f8a1b7d9SAlexander Kabaev	Deallocation loop rewrote.
4145*f8a1b7d9SAlexander Kabaev
4146*f8a1b7d9SAlexander Kabaev2004-03-26  Paolo Carlini  <[email protected]>
4147*f8a1b7d9SAlexander Kabaev
4148*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
4149*f8a1b7d9SAlexander Kabaev	__mt_alloc<>::deallocate): Protect two instances of
4150*f8a1b7d9SAlexander Kabaev	block->thread_id with __GTHREADS.
4151*f8a1b7d9SAlexander Kabaev
4152f260e61bSAlexander Kabaev2004-03-25  Gawain Bolton  <[email protected]>
4153f260e61bSAlexander Kabaev
4154f260e61bSAlexander Kabaev	* include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
4155f260e61bSAlexander Kabaev	default argument in constructors.
4156f260e61bSAlexander Kabaev	(_Rb_tree::_M_empty_initialize): Remove.
4157f260e61bSAlexander Kabaev
4158f260e61bSAlexander Kabaev2004-03-25  Benjamin Kosnik  <[email protected]>
4159f260e61bSAlexander Kabaev
4160f260e61bSAlexander Kabaev	* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
4161f260e61bSAlexander Kabaev	* testsuite/23_containers/set/operators/1_neg.cc: Same.
4162f260e61bSAlexander Kabaev
4163f260e61bSAlexander Kabaev2004-03-25  Dhruv Matani  <[email protected]>
4164f260e61bSAlexander Kabaev
4165f260e61bSAlexander Kabaev	* include/bits/cpp_type_traits.h: Changed __is_pod
4166f260e61bSAlexander Kabaev	completely. Now, it does not use any of the previous type_traits
4167f260e61bSAlexander Kabaev	to detect the pod types, and it also detects function pointers as
4168f260e61bSAlexander Kabaev	POD types.
4169f260e61bSAlexander Kabaev
4170f260e61bSAlexander Kabaev	* include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
4171f260e61bSAlexander Kabaev	which encapsulates the internal implementation of an rb_tree. Made
4172f260e61bSAlexander Kabaev	the allocator a base class of this class instead of the rb_tree,
4173f260e61bSAlexander Kabaev	which was not conforming. This _Rb_tree_impl class is also
4174f260e61bSAlexander Kabaev	specialized on whether the _Compare parameter is a POD type or
4175f260e61bSAlexander Kabaev	not. If so, then it maintains the comparison function as a data
4176f260e61bSAlexander Kabaev	member, otherwise it makes the _Compare parameter a base class of
4177f260e61bSAlexander Kabaev	itself. Also, _M_key_compare is now a function instead of a data
4178f260e61bSAlexander Kabaev	member, so that the above trick can work properly. Delegated the
4179f260e61bSAlexander Kabaev	initialization of the other data members to this newly created
4180f260e61bSAlexander Kabaev	class. Also, now other member functions of rb_tree must refer to
4181f260e61bSAlexander Kabaev	_M_key_compare as _M_impl._M_key_compare(). The other data members
4182f260e61bSAlexander Kabaev	(*) can be referenced to as _M_impl.(*), where
4183f260e61bSAlexander Kabaev	(*) includes _M_header, and _M_node_count.
4184f260e61bSAlexander Kabaev
4185*f8a1b7d9SAlexander Kabaev2004-03-25  Paolo Carlini  <[email protected]>
4186*f8a1b7d9SAlexander Kabaev
4187*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::tune):
4188*f8a1b7d9SAlexander Kabaev	Add _M_min_bin, the size in bytes of the smallest bin.
4189*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::tune()): Tweak accordingly.
4190*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::tune(size_t, ...)): Likewise.
4191*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::block_record): Change to a union: members next
4192*f8a1b7d9SAlexander Kabaev	and thread_id are never used at the same time.
4193*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::allocate): Update consistently.
4194*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::deallocate): Likewise.
4195*f8a1b7d9SAlexander Kabaev	(__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
4196*f8a1b7d9SAlexander Kabaev	_S_bin_size for the configurable _M_min_size.
4197*f8a1b7d9SAlexander Kabaev
4198f260e61bSAlexander Kabaev2004-03-25  Dhruv Matani  <[email protected]>
4199f260e61bSAlexander Kabaev
4200f260e61bSAlexander Kabaev	* include/bits/stl_list.h: Created a _List_impl class and made it
4201f260e61bSAlexander Kabaev	derive from the allocator, instead of the list deriving from the
4202f260e61bSAlexander Kabaev	allocator class, which was not conformant. Changed all references
4203f260e61bSAlexander Kabaev	from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
4204f260e61bSAlexander Kabaev	as above (changed all references to the concerned variables).
4205f260e61bSAlexander Kabaev
4206f260e61bSAlexander Kabaev2004-03-25  Dhruv Matani  <[email protected]>
4207f260e61bSAlexander Kabaev
4208f260e61bSAlexander Kabaev	* include/bits/stl_deque.h: Created a _Deque_impl class and made
4209f260e61bSAlexander Kabaev	it derive from the allocator, instead of the deque deriving from
4210f260e61bSAlexander Kabaev	the allocator class, which was not conformant. Changed all
4211f260e61bSAlexander Kabaev	references to the _M_start, _M_finish, _M_map, and _M_map_size to
4212f260e61bSAlexander Kabaev	_M_impl.*.
4213f260e61bSAlexander Kabaev	(_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
4214f260e61bSAlexander Kabaev	qualification in 2 places where it was missing.
4215f260e61bSAlexander Kabaev	(_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
4216f260e61bSAlexander Kabaev	above.
4217f260e61bSAlexander Kabaev	* include/bits/deque.tcc: Same as above (changed all references to
4218f260e61bSAlexander Kabaev	the concerned variables).
4219f260e61bSAlexander Kabaev
4220f260e61bSAlexander Kabaev2004-03-25  Dhruv Matani  <[email protected]>
4221f260e61bSAlexander Kabaev
4222f260e61bSAlexander Kabaev	* include/bits/stl_vector.h: Created a _Vector_impl class and made
4223f260e61bSAlexander Kabaev	it derive from the allocator, instead of the _Vector_base class,
4224f260e61bSAlexander Kabaev	deriving from the allocator which was not conformant. Changed all
4225f260e61bSAlexander Kabaev	references to the _M_start, _M_finish, and _M_end_of_storage to
4226f260e61bSAlexander Kabaev	_M_impl.*.
4227f260e61bSAlexander Kabaev	* include/bits/vector.tcc: Same as above (changed all references
4228f260e61bSAlexander Kabaev	to the concerned variables).
4229f260e61bSAlexander Kabaev
4230f260e61bSAlexander Kabaev2004-03-25  Dhruv Matani  <[email protected]>
4231f260e61bSAlexander Kabaev
4232f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/cons/clear_allocator.cc: New.
4233f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/clear_allocator.cc: New.
4234f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/clear_allocator.cc: New.
4235f260e61bSAlexander Kabaev
4236*f8a1b7d9SAlexander Kabaev2004-03-24  Dhruv Matani  <[email protected]>
4237*f8a1b7d9SAlexander Kabaev
4238*f8a1b7d9SAlexander Kabaev	* include/ext/malloc_allocator.h: Fixed the construct function to
4239*f8a1b7d9SAlexander Kabaev	call global placement new instead of assignment. Added a check
4240*f8a1b7d9SAlexander Kabaev	after the return from malloc to check whether returned pointer is
4241*f8a1b7d9SAlexander Kabaev	NULL, and if so, throw std::bad_alloc().
4242*f8a1b7d9SAlexander Kabaev	* include/ext/debug_allocator.h: Added a check in the deallocate
4243*f8a1b7d9SAlexander Kabaev	function to check whether the user has passed a NULL pointer or
4244*f8a1b7d9SAlexander Kabaev	not.
4245*f8a1b7d9SAlexander Kabaev
4246*f8a1b7d9SAlexander Kabaev2004-03-24  Benjamin Kosnik  <[email protected]>
4247*f8a1b7d9SAlexander Kabaev
4248*f8a1b7d9SAlexander Kabaev	* docs/html/20_util/allocator.html: Add bitmap_allocator links.
4249*f8a1b7d9SAlexander Kabaev
4250*f8a1b7d9SAlexander Kabaev2004-03-24  Andreas Schwab  <[email protected]>
4251*f8a1b7d9SAlexander Kabaev
4252*f8a1b7d9SAlexander Kabaev	* testsuite/lib/prune.exp (prune_g++_output): Ignore errata
4253*f8a1b7d9SAlexander Kabaev	warning from IA64 assembler.
4254*f8a1b7d9SAlexander Kabaev
4255*f8a1b7d9SAlexander Kabaev2004-03-24  Dhruv Matani  <[email protected]>
4256*f8a1b7d9SAlexander Kabaev
4257*f8a1b7d9SAlexander Kabaev	* include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
4258*f8a1b7d9SAlexander Kabaev	function call __builtin_ctz instead of the while loop.
4259*f8a1b7d9SAlexander Kabaev	(allocate) -> If condition has __builtin_expect.
4260*f8a1b7d9SAlexander Kabaev	(deallocate) -> Ditto.
4261*f8a1b7d9SAlexander Kabaev	Renamed a few left-over variables and typedefs according to the
4262*f8a1b7d9SAlexander Kabaev	C++STYLE mentioned in the documentation.
4263*f8a1b7d9SAlexander Kabaev	Protected calls to __gthread* by __gthread_active_p(), whose value
4264*f8a1b7d9SAlexander Kabaev	is cached in the local variable __threads_active.
4265*f8a1b7d9SAlexander Kabaev
4266*f8a1b7d9SAlexander Kabaev2004-03-24  Felix Yen  <[email protected]>
4267*f8a1b7d9SAlexander Kabaev
4268*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc:
4269*f8a1b7d9SAlexander Kabaev	Use linear algorithm for producer.
4270*f8a1b7d9SAlexander Kabaev
4271*f8a1b7d9SAlexander Kabaev2004-03-24  Paolo Carlini  <[email protected]>
4272*f8a1b7d9SAlexander Kabaev
4273*f8a1b7d9SAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
4274*f8a1b7d9SAlexander Kabaev	__mt_alloc<>::deallocate): Avoid redundant conditionals.
4275*f8a1b7d9SAlexander Kabaev
4276f260e61bSAlexander Kabaev2004-03-23  Benjamin Kosnik  <[email protected]>
4277f260e61bSAlexander Kabaev
4278f260e61bSAlexander Kabaev	* include/bits/locale_facets.h: Tweaks for 80 column.
4279f260e61bSAlexander Kabaev	(__numpunct_cache::_M_cache): Move to locale_facets.tcc.
4280f260e61bSAlexander Kabaev	(__moneypunct_cache::_M_cache): Same.
4281f260e61bSAlexander Kabaev	(num_get): Don't inherit from __num_base.
4282f260e61bSAlexander Kabaev	(num_put): Same.
4283f260e61bSAlexander Kabaev	(money_get): Don't inherit from money_base.
4284f260e61bSAlexander Kabaev	(money_put): Same.
4285f260e61bSAlexander Kabaev	(__timepunct::_M_am_pm_format): New.
4286f260e61bSAlexander Kabaev	(time_get::_M_extract_num): Return iterator, use ios_base as argument.
4287f260e61bSAlexander Kabaev	(time_get::_M_extract_name): Same.
4288f260e61bSAlexander Kabaev	(time_get::_M_extract_via_format): Same.
4289f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc: Tweaks for 80 column.
4290f260e61bSAlexander Kabaev	Use _M_getloc instead of getloc.
4291f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/char/9780-3.cc: New.
4292f260e61bSAlexander Kabaev	* testsuite/22_locale/num_put/put/char/9780-2.cc: New.
4293f260e61bSAlexander Kabaev	* testsuite/22_locale/time_put/put/char/9780-1.cc: New.
4294f260e61bSAlexander Kabaev
4295*f8a1b7d9SAlexander Kabaev2004-03-22  Paolo Carlini  <[email protected]>
4296*f8a1b7d9SAlexander Kabaev
4297*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
4298*f8a1b7d9SAlexander Kabaev	* configure: Regenerate.
4299*f8a1b7d9SAlexander Kabaev	* config/allocator/pool_allocator_base.h: New.
4300*f8a1b7d9SAlexander Kabaev	* include/ext/pool_allocator.h: Convert to a standard-conforming
4301*f8a1b7d9SAlexander Kabaev	allocator.
4302*f8a1b7d9SAlexander Kabaev	* src/allocator.cc: Tweak instantiations.
4303*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
4304*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
4305*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
4306*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
4307*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
4308*f8a1b7d9SAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
4309*f8a1b7d9SAlexander Kabaev
4310f260e61bSAlexander Kabaev2004-03-22  Hans-Peter Nilsson  <[email protected]>
4311f260e61bSAlexander Kabaev
4312f260e61bSAlexander Kabaev	* config/cpu/cris/atomicity.h (__atomic_add): Remove "static
4313f260e61bSAlexander Kabaev	inline" and attribute-unused.  Qualify parameter __mem with
4314f260e61bSAlexander Kabaev	"volatile".
4315f260e61bSAlexander Kabaev	(__exchange_and_add): Ditto.  Add back memory clobber to asm.
4316f260e61bSAlexander Kabaev
4317*f8a1b7d9SAlexander Kabaev2004-03-20  Paolo Carlini  <[email protected]>
4318f260e61bSAlexander Kabaev
4319*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
4320*f8a1b7d9SAlexander Kabaev	Remove junk.
4321*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
4322*f8a1b7d9SAlexander Kabaev	Likewise.
4323*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
4324*f8a1b7d9SAlexander Kabaev	Likewise.
4325*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
4326*f8a1b7d9SAlexander Kabaev	Likewise.
4327*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
4328*f8a1b7d9SAlexander Kabaev	Likewise.
4329*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
4330*f8a1b7d9SAlexander Kabaev	Likewise.
4331*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
4332*f8a1b7d9SAlexander Kabaev	Likewise.
4333*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
4334*f8a1b7d9SAlexander Kabaev	Likewise.
4335*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
4336*f8a1b7d9SAlexander Kabaev	Likewise.
4337*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
4338*f8a1b7d9SAlexander Kabaev	Likewise.
4339f260e61bSAlexander Kabaev
4340f260e61bSAlexander Kabaev2004-03-20  Paolo Carlini  <[email protected]>
4341f260e61bSAlexander Kabaev
4342f260e61bSAlexander Kabaev	* include/std/std_valarray.h: Document DR389 [Ready].
4343f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Add an entry for DR389.
4344f260e61bSAlexander Kabaev
4345*f8a1b7d9SAlexander Kabaev2004-03-19  Michael Eager  <[email protected]>
4346*f8a1b7d9SAlexander Kabaev
4347*f8a1b7d9SAlexander Kabaev	* config/cpu/mips/atomicity.h:  Prevent reg loads between LL and
4348*f8a1b7d9SAlexander Kabaev	SC instructions.
4349*f8a1b7d9SAlexander Kabaev
4350*f8a1b7d9SAlexander Kabaev2004-03-19  Paolo Carlini  <[email protected]>
4351*f8a1b7d9SAlexander Kabaev
4352*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
4353*f8a1b7d9SAlexander Kabaev	static_cast-s.
4354*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
4355*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/13.cc: Likewise.
4356*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/14.cc: Likewise.
4357*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
4358*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
4359*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
4360*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
4361*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
4362*f8a1b7d9SAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
4363*f8a1b7d9SAlexander Kabaev
4364*f8a1b7d9SAlexander Kabaev2004-03-19  Paolo Carlini  <[email protected]>
4365*f8a1b7d9SAlexander Kabaev	    Petur Runolfsson  <[email protected]>
4366*f8a1b7d9SAlexander Kabaev
4367*f8a1b7d9SAlexander Kabaev	PR libstdc++/12077
4368*f8a1b7d9SAlexander Kabaev	* include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
4369*f8a1b7d9SAlexander Kabaev	no way to find out the conversion used by the underlying FILE*.
4370*f8a1b7d9SAlexander Kabaev	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
4371*f8a1b7d9SAlexander Kabaev	* testsuite/27_io/objects/char/9.cc: Tweak.
4372*f8a1b7d9SAlexander Kabaev
4373f260e61bSAlexander Kabaev2004-03-19  Paolo Carlini  <[email protected]>
4374f260e61bSAlexander Kabaev
4375f260e61bSAlexander Kabaev	PR libstdc++/14648
4376f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
4377f260e61bSAlexander Kabaev	memory allocation/deallocation calls.
4378f260e61bSAlexander Kabaev	* testsuite/ext/14648.cc: New.
4379f260e61bSAlexander Kabaev
4380*f8a1b7d9SAlexander Kabaev2004-03-19  Peter Schmid  <[email protected]>
4381f260e61bSAlexander Kabaev
4382*f8a1b7d9SAlexander Kabaev	PR libstdc++/14647
4383*f8a1b7d9SAlexander Kabaev	* include/backward/bvector.h (bit_vector): Allocator is in std
4384*f8a1b7d9SAlexander Kabaev	namespace.
4385f260e61bSAlexander Kabaev
4386*f8a1b7d9SAlexander Kabaev2004-03-19  Phil Edwards  <[email protected]>
4387f260e61bSAlexander Kabaev
4388*f8a1b7d9SAlexander Kabaev	* acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT):  Set LIBICONV,
4389*f8a1b7d9SAlexander Kabaev	not libiconv.  SUBST this variable as well.
4390*f8a1b7d9SAlexander Kabaev	* testsuite/Makefile.am (site.exp):  New target, based on that
4391*f8a1b7d9SAlexander Kabaev	created by automake.  Also set libiconv.
4392f260e61bSAlexander Kabaev
4393*f8a1b7d9SAlexander Kabaev	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
4394*f8a1b7d9SAlexander Kabaev	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
4395*f8a1b7d9SAlexander Kabaev	testsuite/Makefile.in:  Regenerate.
4396f260e61bSAlexander Kabaev
4397f260e61bSAlexander Kabaev2004-03-16  Benjamin Kosnik  <[email protected]>
4398f260e61bSAlexander Kabaev
4399f260e61bSAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
4400f260e61bSAlexander Kabaev	new_allocator for all hosts.
4401f260e61bSAlexander Kabaev	* configure: Regenerate.
4402f260e61bSAlexander Kabaev
4403f260e61bSAlexander Kabaev2004-03-16  Paolo Carlini  <[email protected]>
4404f260e61bSAlexander Kabaev
4405f260e61bSAlexander Kabaev	* testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
4406f260e61bSAlexander Kabaev	* testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
4407f260e61bSAlexander Kabaev
4408f260e61bSAlexander Kabaev2004-03-15  Paolo Carlini  <[email protected]>
4409f260e61bSAlexander Kabaev
4410f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4411f260e61bSAlexander Kabaev	Adjust the logic underlying the parsing of symbol to deal
4412f260e61bSAlexander Kabaev	correctly with an optional sign component (i.e., when either
4413f260e61bSAlexander Kabaev	negative_sign or positive_sign is empty)
4414f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/19.cc: New.
4415f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
4416f260e61bSAlexander Kabaev
4417f260e61bSAlexander Kabaev2004-03-15  Paolo Carlini  <[email protected]>
4418f260e61bSAlexander Kabaev
4419f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4420f260e61bSAlexander Kabaev	Do not accept an incomplete currency symbol.
4421f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/18.cc: New.
4422f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
4423f260e61bSAlexander Kabaev
4424f260e61bSAlexander Kabaev2004-03-13  Benjamin Kosnik  <[email protected]>
4425f260e61bSAlexander Kabaev
4426f260e61bSAlexander Kabaev	* config/allocator: New.
4427f260e61bSAlexander Kabaev	* config/allocator/bitmap_allocator_base.h: New.
4428f260e61bSAlexander Kabaev	* config/allocator/malloc_allocator_base.h: New.
4429f260e61bSAlexander Kabaev	* config/allocator/mt_allocator_base.h: New.
4430f260e61bSAlexander Kabaev	* config/allocator/new_allocator_base.h: New.
4431f260e61bSAlexander Kabaev	* include/bits/allocator.h: Include c++allocator.h.
4432f260e61bSAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
4433f260e61bSAlexander Kabaev	* aclocal.m4: Regenerate.
4434f260e61bSAlexander Kabaev	* configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
4435f260e61bSAlexander Kabaev	* configure: Regenerate.
4436f260e61bSAlexander Kabaev	* include/Makefile.am (host_headers_extra): Add c++allocator.h.
4437f260e61bSAlexander Kabaev	* include/Makefile.in: Regenerate.
4438f260e61bSAlexander Kabaev	* docs/html/configopts.html: Add enable-libstdcxx-allocator.
4439f260e61bSAlexander Kabaev
4440f260e61bSAlexander Kabaev2004-03-12  Benjamin Kosnik  <[email protected]>
4441f260e61bSAlexander Kabaev
4442f260e61bSAlexander Kabaev	* include/bits/allocator.h: Revert.
4443f260e61bSAlexander Kabaev
4444f260e61bSAlexander Kabaev2004-03-12  Paolo Carlini  <[email protected]>
4445f260e61bSAlexander Kabaev
4446f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Add entry for DR 253 [Ready].
4447f260e61bSAlexander Kabaev	* include/bits/gslice_array.h: Add comment about DR 253.
4448f260e61bSAlexander Kabaev	* include/bits/indirect_array.h: Likewise.
4449f260e61bSAlexander Kabaev	* include/bits/mask_array.h: Likewise.
4450f260e61bSAlexander Kabaev	* include/bits/slice_array.h: Likewise.
4451f260e61bSAlexander Kabaev
4452f260e61bSAlexander Kabaev2004-03-12  Benjamin Kosnik  <[email protected]>
4453f260e61bSAlexander Kabaev
4454f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/14176.cc: New.
4455f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Formatting fixes.
4456f260e61bSAlexander Kabaev
4457f260e61bSAlexander Kabaev2004-03-11  Dhruv Matani  <[email protected]>
4458f260e61bSAlexander Kabaev
4459f260e61bSAlexander Kabaev	* include/Makefile.am (ext_headers): Add
4460f260e61bSAlexander Kabaev	${ext_srcdir}/bitmap_allocator.h .
4461f260e61bSAlexander Kabaev	* include/Makefile.in: Regenerate.
4462f260e61bSAlexander Kabaev	* docs/html/ext/ballocator_doc.txt: New file.
4463f260e61bSAlexander Kabaev	* include/ext/bitmap_allocator.h: New file.
4464f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/list_sort_search.cc: Add
4465f260e61bSAlexander Kabaev	test.
4466f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
4467f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc: Add
4468f260e61bSAlexander Kabaev	test for the bitmap_allocator<>.
4469f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc: Likewise.
4470f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
4471f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
4472f260e61bSAlexander Kabaev
4473f260e61bSAlexander Kabaev2004-03-11  Paolo Carlini  <[email protected]>
4474f260e61bSAlexander Kabaev
4475f260e61bSAlexander Kabaev	* include/std/std_complex.h (pow(const complex&, const _Tp&),
4476f260e61bSAlexander Kabaev	pow(const _Tp&, const complex&), pow(const complex&,
4477f260e61bSAlexander Kabaev	const complex&)): Fully qualify with std:: a few calls.
4478f260e61bSAlexander Kabaev	* testsuite/26_numerics/complex/13450.cc: Minor tweak.
4479f260e61bSAlexander Kabaev
4480f260e61bSAlexander Kabaev2004-03-11  Steven Bosscher  <[email protected]>
4481f260e61bSAlexander Kabaev
4482f260e61bSAlexander Kabaev	PR libstdc++/11706
4483f260e61bSAlexander Kabaev	* include/c_std/cmath.tcc (__cmath_power): Define inline.
4484f260e61bSAlexander Kabaev
4485f260e61bSAlexander Kabaev2004-03-10  Kelley Cook  <[email protected]>
4486f260e61bSAlexander Kabaev
4487f260e61bSAlexander Kabaev	* configure.ac: Bump AC_PREREQ to 2.59.
4488f260e61bSAlexander Kabaev
4489f260e61bSAlexander Kabaev2004-03-10  Paolo Carlini  <[email protected]>
4490f260e61bSAlexander Kabaev
4491f260e61bSAlexander Kabaev	* testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
4492f260e61bSAlexander Kabaev
4493f260e61bSAlexander Kabaev2004-03-10  Paul Kienzle  <[email protected]>
4494f260e61bSAlexander Kabaev	    Paolo Carlini  <[email protected]>
4495f260e61bSAlexander Kabaev
4496f260e61bSAlexander Kabaev	PR libstdc++/13450
4497f260e61bSAlexander Kabaev	* include/std/std_complex.h (pow(const complex&, const _Tp&),
4498f260e61bSAlexander Kabaev	pow(const _Tp&, const complex&)): Use cmath pow only when safe.
4499f260e61bSAlexander Kabaev	* testsuite/26_numerics/complex/13450.cc: New.
4500f260e61bSAlexander Kabaev
4501f260e61bSAlexander Kabaev	* testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
4502f260e61bSAlexander Kabaev	* testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
4503f260e61bSAlexander Kabaev
4504f260e61bSAlexander Kabaev2004-03-10  Jerry Quinn  <[email protected]>
4505f260e61bSAlexander Kabaev
4506f260e61bSAlexander Kabaev	PR libstdc++/3247
4507f260e61bSAlexander Kabaev	* include/bits/gslice_array.h (gslice_array()): Make public.
4508f260e61bSAlexander Kabaev	(operator=(gslice_array)): Make public.  Implement.
4509f260e61bSAlexander Kabaev	* include/bits/indirect_array.h (indirect_array()): Make public.
4510f260e61bSAlexander Kabaev	* include/bits/mask_array.h (mask_array()): Make public.
4511f260e61bSAlexander Kabaev	(operator=(mask_array)): Make public.  Implement.
4512f260e61bSAlexander Kabaev	* include/bits/valarray_array.tcc (__valarray_copy):
4513f260e61bSAlexander Kabaev	Comment.  Add versions for gslice_array and mask_array.
4514f260e61bSAlexander Kabaev	* testsuite/26_numerics/valarray_subset_assignment.cc:  New test.
4515f260e61bSAlexander Kabaev
4516f260e61bSAlexander Kabaev2004-03-09  Benjamin Kosnik  <[email protected]>
4517f260e61bSAlexander Kabaev
4518f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
4519f260e61bSAlexander Kabaev	non-weak systems.
4520f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/modifiers/swap.cc: Same.
4521f260e61bSAlexander Kabaev	* testsuite/23_containers/set/modifiers/swap.cc: Same.
4522f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/modifiers/swap.cc: Same.
4523f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/modifiers/swap.cc: Same.
4524f260e61bSAlexander Kabaev	* testsuite/23_containers/map/modifiers/swap.cc: Same.
4525f260e61bSAlexander Kabaev	* testsuite/23_containers/list/modifiers/swap.cc: Same.
4526f260e61bSAlexander Kabaev
4527f260e61bSAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
4528f260e61bSAlexander Kabaev
4529f260e61bSAlexander Kabaev2004-03-08  Benjamin Kosnik  <[email protected]>
4530f260e61bSAlexander Kabaev
4531f260e61bSAlexander Kabaev	PR c++/13658
4532f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/modifiers/swap.cc: New.
4533f260e61bSAlexander Kabaev	* testsuite/23_containers/list/modifiers/swap.cc: New.
4534f260e61bSAlexander Kabaev	* testsuite/23_containers/map/modifiers/swap.cc: New.
4535f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/modifiers/swap.cc: New.
4536f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/modifiers/swap.cc: New.
4537f260e61bSAlexander Kabaev	* testsuite/23_containers/set/modifiers/swap.cc: New.
4538f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/modifiers/swap.cc: New.
4539f260e61bSAlexander Kabaev
4540f260e61bSAlexander Kabaev2004-03-08  Petur Runolfsson  <[email protected]>
4541f260e61bSAlexander Kabaev
4542f260e61bSAlexander Kabaev	PR libstdc++/12658
4543f260e61bSAlexander Kabaev	* testsuite/22_locale/locale/cons/12658_thread.cc: New.
4544f260e61bSAlexander Kabaev
4545f260e61bSAlexander Kabaev2004-03-08  Paolo Carlini  <[email protected]>
4546f260e61bSAlexander Kabaev
4547f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Add entry for DR 103 [WP].
4548f260e61bSAlexander Kabaev	* include/bits/stl_multiset.h: Add comment about DR 103.
4549f260e61bSAlexander Kabaev	* include/bits/stl_set.h: Likewise.
4550f260e61bSAlexander Kabaev
4551f260e61bSAlexander Kabaev2004-03-08  Paolo Carlini  <[email protected]>
4552f260e61bSAlexander Kabaev
4553f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4554f260e61bSAlexander Kabaev	The value _space_ indicates that at least one space is required
4555f260e61bSAlexander Kabaev	at that position.
4556f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/17.cc: New.
4557f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
4558f260e61bSAlexander Kabaev
4559f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
4560f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
4561f260e61bSAlexander Kabaev
4562f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
4563f260e61bSAlexander Kabaev	Remove redundant conditional on __str.size().
4564f260e61bSAlexander Kabaev
4565f260e61bSAlexander Kabaev2004-03-08  Benjamin Kosnik  <[email protected]>
4566f260e61bSAlexander Kabaev
4567f260e61bSAlexander Kabaev	* include/bits/allocator.h: Switch defaults to mt_alloc.
4568f260e61bSAlexander Kabaev
4569f260e61bSAlexander Kabaev2004-03-06  Benjamin Kosnik  <[email protected]>
4570f260e61bSAlexander Kabaev
4571f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h (_S_initialize): If
4572f260e61bSAlexander Kabaev	!__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
4573f260e61bSAlexander Kabaev
4574f260e61bSAlexander Kabaev2004-03-06  Benjamin Kosnik  <[email protected]>
4575f260e61bSAlexander Kabaev
4576f260e61bSAlexander Kabaev	PR libstdc++/12658
4577f260e61bSAlexander Kabaev	* src/locale_init.cc (locale::locale): Lock critical regions with
4578f260e61bSAlexander Kabaev	external mutexes.
4579f260e61bSAlexander Kabaev	(locale::global): Same.
4580f260e61bSAlexander Kabaev	* include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
4581f260e61bSAlexander Kabaev	Add in once bits for cases without __GTHREAD_MUTEX_INIT.
4582f260e61bSAlexander Kabaev	(__glibcxx_mutex_lock): Same.
4583f260e61bSAlexander Kabaev
4584f260e61bSAlexander Kabaev	* config/cpu/generic/atomicity.h: Remove
4585f260e61bSAlexander Kabaev	_GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
4586f260e61bSAlexander Kabaev	* src/misc-inst.cc: Move all locking bits out of this file.
4587f260e61bSAlexander Kabaev
4588f260e61bSAlexander Kabaev	* config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
4589f260e61bSAlexander Kabaev	* src/misc-inst.cc: Same.
4590f260e61bSAlexander Kabaev	* config/cpu/hppa/atomicity.h: Same.
4591f260e61bSAlexander Kabaev
4592f260e61bSAlexander Kabaev	* config/linker-map.gnu: Remove types in the signature of atomic
4593f260e61bSAlexander Kabaev	exports, as they may vary.
4594f260e61bSAlexander Kabaev
4595f260e61bSAlexander Kabaev2004-03-06  Paolo Carlini  <[email protected]>
4596f260e61bSAlexander Kabaev
4597f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc: Tweak the comment preceding
4598f260e61bSAlexander Kabaev	has_facet: doesn't throw.
4599f260e61bSAlexander Kabaev
4600f260e61bSAlexander Kabaev2004-03-06  Paolo Carlini  <[email protected]>
4601f260e61bSAlexander Kabaev
4602f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/1.cc: Clean up.
4603f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
4604f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
4605f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
4606f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
4607f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
4608f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
4609f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
4610f260e61bSAlexander Kabaev
4611f260e61bSAlexander Kabaev2004-03-06  Paolo Carlini  <[email protected]>
4612f260e61bSAlexander Kabaev
4613f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
4614f260e61bSAlexander Kabaev	num_get<>::_M_extract_int, num_get<>::do_get(bool&),
4615f260e61bSAlexander Kabaev	__pad<>::_S_pad): Prefer plain operator== to traits::eq().
4616f260e61bSAlexander Kabaev	* testsuite/testsuite_character.h (struct __gnu_test::character):
4617f260e61bSAlexander Kabaev	Provide operator==.
4618f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
4619f260e61bSAlexander Kabaev	Likewise.
4620f260e61bSAlexander Kabaev
4621f260e61bSAlexander Kabaev2004-03-05  Paolo Carlini  <[email protected]>
4622f260e61bSAlexander Kabaev
4623f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-2.cc: Remove xfail.
4624f260e61bSAlexander Kabaev
4625f260e61bSAlexander Kabaev2004-03-04  Benjamin Kosnik  <[email protected]>
4626f260e61bSAlexander Kabaev
4627f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/insert/1.cc: Test result string.
4628f260e61bSAlexander Kabaev
4629f260e61bSAlexander Kabaev	* testsuite/23_containers/bitset/invalidation/1.cc: Main always
4630f260e61bSAlexander Kabaev	returns 0.
4631f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/invalidation/4.cc: Same.
4632f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/1.cc: Same.
4633f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/2.cc: Same.
4634f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/3.cc: Same.
4635f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/4.cc: Same.
4636f260e61bSAlexander Kabaev	* testsuite/23_containers/map/invalidation/2.cc: Same.
4637f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/invalidation/1.cc: Same.
4638f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
4639f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/invalidation/1.cc: Same.
4640f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
4641f260e61bSAlexander Kabaev	* testsuite/23_containers/set/invalidation/1.cc: Same.
4642f260e61bSAlexander Kabaev	* testsuite/23_containers/set/invalidation/2.cc: Same.
4643f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/1.cc: Same.
4644f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/2.cc: Same.
4645f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/3.cc: Same.
4646f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/4.cc: Same.
4647f260e61bSAlexander Kabaev
4648f260e61bSAlexander Kabaev2004-03-04  Paolo Carlini  <[email protected]>
4649f260e61bSAlexander Kabaev
4650f260e61bSAlexander Kabaev	* scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
4651f260e61bSAlexander Kabaev	CXXFLAGS_save.
4652f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp: Don't add it conditionally to
4653f260e61bSAlexander Kabaev	DEFAULT_CXXFLAGS.
4654f260e61bSAlexander Kabaev	* testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
4655f260e61bSAlexander Kabaev	from the dg-options.
4656f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/1.cc: Likewise.
4657f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/2.cc: Likewise.
4658f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/3.cc: Likewise.
4659f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/4.cc: Likewise.
4660f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/resize/1.cc: Likewise.
4661f260e61bSAlexander Kabaev	* testsuite/26_numerics/complex_value.cc: Likewise.
4662f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/1.cc: Likewise.
4663f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
4664f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/3.cc: Likewise.
4665f260e61bSAlexander Kabaev	* testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
4666f260e61bSAlexander Kabaev	* testsuite/27_io/objects/char/5.cc: Likewise.
4667f260e61bSAlexander Kabaev	* testsuite/27_io/objects/wchar_t/5.cc: Likewise.
4668f260e61bSAlexander Kabaev	* testsuite/backward/11460.cc: Likewise.
4669f260e61bSAlexander Kabaev	* testsuite/thread/pthread7-rope.cc: Likewise.
4670f260e61bSAlexander Kabaev
4671f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/compare/char/1.cc: Add
4672f260e61bSAlexander Kabaev	missing test variable.
4673f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
4674f260e61bSAlexander Kabaev	missing test variable.
4675f260e61bSAlexander Kabaev
4676f260e61bSAlexander Kabaev2004-03-04  Benjamin Kosnik  <[email protected]>
4677f260e61bSAlexander Kabaev
4678f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/1.cc: Provide explicit
4679f260e61bSAlexander Kabaev	instantiations for non-weak systems.
4680f260e61bSAlexander Kabaev	* testsuite/20_util/binders.cc: Same.
4681f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/8230.cc: Same.
4682f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/10378.cc: Same.
4683f260e61bSAlexander Kabaev	* testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
4684f260e61bSAlexander Kabaev	* testsuite/22_locale/ctype/is/char/2.cc: Same.
4685f260e61bSAlexander Kabaev	* testsuite/thread/pthread7-rope.cc: Same.
4686f260e61bSAlexander Kabaev	* testsuite/thread/pthread6.cc: Same.
4687f260e61bSAlexander Kabaev	* testsuite/thread/pthread5.cc: Same.
4688f260e61bSAlexander Kabaev	* testsuite/thread/pthread4.cc: Same.
4689f260e61bSAlexander Kabaev	* testsuite/thread/pthread1.cc: Same.
4690f260e61bSAlexander Kabaev	* testsuite/ext/rope.cc: Same.
4691f260e61bSAlexander Kabaev	* testsuite/ext/hash_set.cc: Same.
4692f260e61bSAlexander Kabaev	* testsuite/ext/hash_map.cc: Same.
4693f260e61bSAlexander Kabaev	* testsuite/ext/concept_checks.cc: Same.
4694f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
4695f260e61bSAlexander Kabaev	* testsuite/25_algorithms/unique/2.cc: Same.
4696f260e61bSAlexander Kabaev	* testsuite/25_algorithms/unique/1.cc: Same.
4697f260e61bSAlexander Kabaev	* testsuite/25_algorithms/rotate.cc: Same.
4698f260e61bSAlexander Kabaev	* testsuite/25_algorithms/min_max.cc: Same.
4699f260e61bSAlexander Kabaev	* testsuite/25_algorithms/equal.cc: Same.
4700f260e61bSAlexander Kabaev	* testsuite/24_iterators/rel_ops.cc: Same.
4701f260e61bSAlexander Kabaev	* testsuite/24_iterators/iterator.cc: Same.
4702f260e61bSAlexander Kabaev	* testsuite/24_iterators/insert_iterator.cc: Same.
4703f260e61bSAlexander Kabaev	* testsuite/24_iterators/front_insert_iterator.cc: Same.
4704f260e61bSAlexander Kabaev	* testsuite/24_iterators/back_insert_iterator.cc: Same.
4705f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/resize/1.cc: Same.
4706f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/modifiers/2.cc: Same.
4707f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/modifiers/1.cc: Same.
4708f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/4.cc: Same.
4709f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/3.cc: Same.
4710f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/2.cc: Same.
4711f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/invalidation/1.cc: Same.
4712f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/element_access/1.cc: Same.
4713f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/6513.cc: Same.
4714f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/3.cc: Same.
4715f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/2.cc: Same.
4716f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/cons/1.cc: Same.
4717f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/capacity/8230.cc: Same.
4718f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/capacity/1.cc: Same.
4719f260e61bSAlexander Kabaev	* testsuite/23_containers/vector/bool/6886.cc: Same.
4720f260e61bSAlexander Kabaev	* testsuite/23_containers/stack/members/7158.cc: Same.
4721f260e61bSAlexander Kabaev	* testsuite/23_containers/set/invalidation/2.cc: Same.
4722f260e61bSAlexander Kabaev	* testsuite/23_containers/set/invalidation/1.cc: Same.
4723f260e61bSAlexander Kabaev	* testsuite/23_containers/queue/members/7157.cc: Same.
4724f260e61bSAlexander Kabaev	* testsuite/23_containers/priority_queue/members/7161.cc: Same.
4725f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
4726f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/invalidation/2.cc: Same.
4727f260e61bSAlexander Kabaev	* testsuite/23_containers/multiset/insert/1.cc: Same.
4728f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
4729f260e61bSAlexander Kabaev	* testsuite/23_containers/multimap/invalidation/2.cc: Same.
4730f260e61bSAlexander Kabaev	* testsuite/23_containers/map/operators/1.cc: Same.
4731f260e61bSAlexander Kabaev	* testsuite/23_containers/map/invalidation/2.cc: Same.
4732f260e61bSAlexander Kabaev	* testsuite/23_containers/map/invalidation/1.cc: Same.
4733f260e61bSAlexander Kabaev	* testsuite/23_containers/map/insert/1.cc: Same.
4734f260e61bSAlexander Kabaev	* testsuite/23_containers/list/operators/4.cc: Same.
4735f260e61bSAlexander Kabaev	* testsuite/23_containers/list/operators/3.cc: Same.
4736f260e61bSAlexander Kabaev	* testsuite/23_containers/list/operators/2.cc: Same.
4737f260e61bSAlexander Kabaev	* testsuite/23_containers/list/operators/1.cc: Same.
4738f260e61bSAlexander Kabaev	* testsuite/23_containers/list/modifiers/3.cc: Same.
4739f260e61bSAlexander Kabaev	* testsuite/23_containers/list/modifiers/2.cc: Same.
4740f260e61bSAlexander Kabaev	* testsuite/23_containers/list/modifiers/1.cc: Same.
4741f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/4.cc: Same.
4742f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/3.cc: Same.
4743f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/2.cc: Same.
4744f260e61bSAlexander Kabaev	* testsuite/23_containers/list/invalidation/1.cc: Same.
4745f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/9.cc: Same.
4746f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/8.cc: Same.
4747f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/7.cc: Same.
4748f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/6.cc: Same.
4749f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/5.cc: Same.
4750f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/4.cc: Same.
4751f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/3.cc: Same.
4752f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/2.cc: Same.
4753f260e61bSAlexander Kabaev	* testsuite/23_containers/list/cons/1.cc: Same.
4754f260e61bSAlexander Kabaev	* testsuite/23_containers/list/capacity/1.cc: Same.
4755f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/operators/1.cc: Same.
4756f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/invalidation/4.cc: Same.
4757f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/invalidation/3.cc: Same.
4758f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/invalidation/2.cc: Same.
4759f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/invalidation/1.cc: Same.
4760f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/cons/2.cc: Same.
4761f260e61bSAlexander Kabaev	* testsuite/23_containers/deque/cons/1.cc: Same.
4762f260e61bSAlexander Kabaev
4763f260e61bSAlexander Kabaev	* src/allocator.cc: Add char, wchar_t instantiations
4764f260e61bSAlexander Kabaev	to match extern template declarations in memory.h.
4765f260e61bSAlexander Kabaev
4766f260e61bSAlexander Kabaev2004-03-03  Paolo Carlini  <[email protected]>
4767f260e61bSAlexander Kabaev
4768f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
4769f260e61bSAlexander Kabaev	Fix warning regression.
4770f260e61bSAlexander Kabaev
4771f260e61bSAlexander Kabaev2004-03-03  Paolo Carlini  <[email protected]>
4772f260e61bSAlexander Kabaev
4773f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
4774f260e61bSAlexander Kabaev	Deal properly with empty __digits and negative frac_digits,
4775f260e61bSAlexander Kabaev	clean-up a bit.
4776f260e61bSAlexander Kabaev
4777f260e61bSAlexander Kabaev2004-03-03  Jonathan Wakely  <[email protected]>
4778f260e61bSAlexander Kabaev
4779f260e61bSAlexander Kabaev	* docs/html/documentation.html: Regenerate.
4780f260e61bSAlexander Kabaev
4781f260e61bSAlexander Kabaev2004-03-02  Paolo Carlini  <[email protected]>
4782f260e61bSAlexander Kabaev
4783f260e61bSAlexander Kabaev	PR libstdc++/14320
4784f260e61bSAlexander Kabaev	* include/bits/postypes.h (class streamoff): Remove, now
4785f260e61bSAlexander Kabaev	streamoff is just typedef a 64 bit signed integer type.
4786f260e61bSAlexander Kabaev	(class fpos): Tweak consistently.
4787f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-1.cc: New.
4788f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-2.cc: New.
4789f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-3.cc: New.
4790f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-4.cc: New.
4791f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14320-5.cc: New.
4792f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
4793f260e61bSAlexander Kabaev
4794f260e61bSAlexander Kabaev2004-03-02  Paolo Carlini  <[email protected]>
4795f260e61bSAlexander Kabaev
4796f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4797f260e61bSAlexander Kabaev	Reorganize a bit the main parsing loop, thus early detecting
4798f260e61bSAlexander Kabaev	an empty value component.
4799f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/16.cc: New.
4800f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
4801f260e61bSAlexander Kabaev
4802f260e61bSAlexander Kabaev2004-03-02  Benjamin Kosnik  <[email protected]>
4803f260e61bSAlexander Kabaev
4804f260e61bSAlexander Kabaev	Support automake 1.8.2
4805f260e61bSAlexander Kabaev	* configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
4806f260e61bSAlexander Kabaev	* po/Makefile.am (EXTRA_DIST): New.
4807f260e61bSAlexander Kabaev	* po/Makefile.in: Regenerate.
4808f260e61bSAlexander Kabaev	* Makefile.in: Same.
4809f260e61bSAlexander Kabaev	* include/Makefile.in: Same.
4810f260e61bSAlexander Kabaev	* libmath/Makefile.in: Same.
4811f260e61bSAlexander Kabaev	* libsupc++/Makefile.in: Same.
4812f260e61bSAlexander Kabaev	* src/Makefile.in: Same.
4813f260e61bSAlexander Kabaev	* testsuite/Makefile.in: Same.
4814f260e61bSAlexander Kabaev
4815f260e61bSAlexander Kabaev	* include/Makefile.am (${host_builddir}/gthr-posix.h): Use
4816f260e61bSAlexander Kabaev	__GXX_WEAK__ instead of SUPPORTS_WEAK.
4817f260e61bSAlexander Kabaev	(${host_builddir}/gthr-default.h): Same.
4818f260e61bSAlexander Kabaev	(${host_builddir}/gthr.h): Same.
4819f260e61bSAlexander Kabaev	* acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
4820f260e61bSAlexander Kabaev	_GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
4821f260e61bSAlexander Kabaev	-fno-weak.
4822f260e61bSAlexander Kabaev	* aclocal.m4: Regenerate.
4823f260e61bSAlexander Kabaev	* acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
4824f260e61bSAlexander Kabaev	* config.h.in: Regenerate.
4825f260e61bSAlexander Kabaev	* configure: Same.
4826f260e61bSAlexander Kabaev
4827f260e61bSAlexander Kabaev2004-03-01  Benjamin Kosnik  <[email protected]>
4828f260e61bSAlexander Kabaev
4829f260e61bSAlexander Kabaev	Support autoconf 2.59
4830f260e61bSAlexander Kabaev	* acinclude.m4: Quote correctly.
4831f260e61bSAlexander Kabaev	* aclocal.m4: Regenerate.
4832f260e61bSAlexander Kabaev	* linkage.m4: Same.
4833f260e61bSAlexander Kabaev
4834f260e61bSAlexander Kabaev2004-03-01  Benjamin Kosnik  <[email protected]>
4835f260e61bSAlexander Kabaev
4836f260e61bSAlexander Kabaev	* docs/html/test.html: Add multilib RUNTESTFLAGS example.
4837f260e61bSAlexander Kabaev
4838f260e61bSAlexander Kabaev	* docs/html/18_support/howto.html: Add bit about writing to
4839f260e61bSAlexander Kabaev	stderr, mostly by Zack.
4840f260e61bSAlexander Kabaev
4841f260e61bSAlexander Kabaev2004-03-01  Paolo Carlini  <[email protected]>
4842f260e61bSAlexander Kabaev
4843f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract,
4844f260e61bSAlexander Kabaev	money_get<>::do_get(string_type&)): ... and two more.
4845f260e61bSAlexander Kabaev
4846f260e61bSAlexander Kabaev2004-03-01  Paolo Carlini  <[email protected]>
4847f260e61bSAlexander Kabaev
4848f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4849f260e61bSAlexander Kabaev	Fix thinkos in the switch from string_type& to string& as last
4850f260e61bSAlexander Kabaev	argument.
4851f260e61bSAlexander Kabaev
4852f260e61bSAlexander Kabaev2004-03-01  Paolo Carlini  <[email protected]>
4853f260e61bSAlexander Kabaev
4854f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
4855f260e61bSAlexander Kabaev	Also when parsing exponent sign, first look for thousands_sep
4856f260e61bSAlexander Kabaev	and decimal_point; tweak a bit.
4857f260e61bSAlexander Kabaev	* testsuite/22_locale/num_get/get/char/15.cc: New.
4858f260e61bSAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
4859f260e61bSAlexander Kabaev
4860f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
4861f260e61bSAlexander Kabaev	num_get<>::_M_extract_int): Reorder some conditionals.
4862f260e61bSAlexander Kabaev
4863f260e61bSAlexander Kabaev2004-03-01  Paolo Carlini  <[email protected]>
4864f260e61bSAlexander Kabaev
4865f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4866f260e61bSAlexander Kabaev	Consistently with numpunct, enforce the requirements in
4867f260e61bSAlexander Kabaev	22.2.6.3, p3 for the thousands separators; tweak a bit.
4868f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/15.cc: New.
4869f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
4870f260e61bSAlexander Kabaev
4871f260e61bSAlexander Kabaev2004-03-01  David Billinghurst <[email protected]>
4872f260e61bSAlexander Kabaev
4873f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp (v3-list-tests): Use
4874f260e61bSAlexander Kabaev	testsuite_files from correct multilib blddir when running
4875f260e61bSAlexander Kabaev	testsuite.
4876f260e61bSAlexander Kabaev
4877f260e61bSAlexander Kabaev2004-02-29  Phil Edwards  <[email protected]>
4878f260e61bSAlexander Kabaev
4879f260e61bSAlexander Kabaev	* testsuite/Makefile.am (check-abi, check-abi-verbose):  Copy
4880f260e61bSAlexander Kabaev	the summary file to the logfile.
4881f260e61bSAlexander Kabaev	* testsuite/Makefile.in:  Regenerate.
4882f260e61bSAlexander Kabaev
4883f260e61bSAlexander Kabaev2004-02-28  John David Anglin  <[email protected]>
4884f260e61bSAlexander Kabaev
4885f260e61bSAlexander Kabaev	* config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
4886f260e61bSAlexander Kabaev	volatile.
4887f260e61bSAlexander Kabaev	* config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
4888f260e61bSAlexander Kabaev	__GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
4889f260e61bSAlexander Kabaev
4890f260e61bSAlexander Kabaev2004-02-28  Paolo Carlini  <[email protected]>
4891f260e61bSAlexander Kabaev
4892f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
4893f260e61bSAlexander Kabaev	According to 22.2.3.1, p2, 'units' may be followed by 'e' with
4894f260e61bSAlexander Kabaev	no 'decimal-point' in the middle: in this case too we must fix
4895f260e61bSAlexander Kabaev	up __found_grouping; slightly tweak.
4896f260e61bSAlexander Kabaev	* testsuite/22_locale/num_get/get/char/14.cc: New.
4897f260e61bSAlexander Kabaev	* testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
4898f260e61bSAlexander Kabaev
4899f260e61bSAlexander Kabaev2004-02-27  Eric Christopher  <[email protected]>
4900f260e61bSAlexander Kabaev	    Phil Edwards  <[email protected]>
4901f260e61bSAlexander Kabaev
4902f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/compare/wchar_t/2.cc,
4903f260e61bSAlexander Kabaev	testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
4904f260e61bSAlexander Kabaev	testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
4905f260e61bSAlexander Kabaev	testsuite/22_locale/collate/hash/wchar_t/2.cc,
4906f260e61bSAlexander Kabaev	testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
4907f260e61bSAlexander Kabaev	testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
4908f260e61bSAlexander Kabaev	testsuite/22_locale/collate/transform/wchar_t/2.cc,
4909f260e61bSAlexander Kabaev	testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
4910f260e61bSAlexander Kabaev	testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
4911f260e61bSAlexander Kabaev	Use dg-require-iconv.
4912f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp:  Load target-supports.exp.
4913f260e61bSAlexander Kabaev
4914f260e61bSAlexander Kabaev2004-02-27  Phil Edwards  <[email protected]>
4915f260e61bSAlexander Kabaev	    Eric Christopher  <[email protected]>
4916f260e61bSAlexander Kabaev
4917f260e61bSAlexander Kabaev	* testsuite/config/default.exp:  Update with comments.
4918f260e61bSAlexander Kabaev	(${tool}_target_compile):  New wrapper routine.
4919f260e61bSAlexander Kabaev	* testsuite/lib/dg-options.exp:  New file, with dg-require-iconv.
4920f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp:  Update with comments and cosmetic
4921f260e61bSAlexander Kabaev	fixes.
4922f260e61bSAlexander Kabaev	(load_gcc_lib, v3track):  New routines.
4923f260e61bSAlexander Kabaev	(v3-init):  Rename to libstdc++_init.
4924f260e61bSAlexander Kabaev	* testsuite/libstdc++-dg/normal.exp:  No longer call v3-init.
4925f260e61bSAlexander Kabaev	Move DEFAULT_CXXFLAGS handling into libstdc++_init.
4926f260e61bSAlexander Kabaev
4927f260e61bSAlexander Kabaev2004-02-27  Benjamin Kosnik  <[email protected]>
4928f260e61bSAlexander Kabaev
4929f260e61bSAlexander Kabaev	* config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
4930f260e61bSAlexander Kabaev
4931f260e61bSAlexander Kabaev	* src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
4932f260e61bSAlexander Kabaev
4933f260e61bSAlexander Kabaev	* config/os/irix/irix5.2/atomicity.h: Merge..
4934f260e61bSAlexander Kabaev	* config/os/irix/irix6.5/atomicity.h: Merge..
4935f260e61bSAlexander Kabaev	* config/os/irix/atomicity.h: ...into this.
4936f260e61bSAlexander Kabaev	* config/os/irix/atomic_word.h: New.
4937f260e61bSAlexander Kabaev	* configure.host: Set atomic_word_dir for irix.
4938f260e61bSAlexander Kabaev
4939f260e61bSAlexander Kabaev	* hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
4940f260e61bSAlexander Kabaev	* i386/atomicity.h: Same.
4941f260e61bSAlexander Kabaev	* m68k/atomicity.h: Same.
4942f260e61bSAlexander Kabaev	* sparc/atomicity.h: Same.
4943f260e61bSAlexander Kabaev
4944f260e61bSAlexander Kabaev2004-02-27  David Edelsohn  <[email protected]>
4945f260e61bSAlexander Kabaev
4946f260e61bSAlexander Kabaev	* config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
4947f260e61bSAlexander Kabaev	static, and inline keywords.
4948f260e61bSAlexander Kabaev
4949f260e61bSAlexander Kabaev2004-02-27  Paolo Carlini  <[email protected]>
4950f260e61bSAlexander Kabaev
4951f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
4952f260e61bSAlexander Kabaev	num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
4953f260e61bSAlexander Kabaev	call reserve on the __tmp_gruping string.
4954f260e61bSAlexander Kabaev	(num_get<>::_M_extract_float): Don't append unnecessarily a
4955f260e61bSAlexander Kabaev	char() to the returned string.
4956f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc: Trivial reformattings.
4957f260e61bSAlexander Kabaev
4958f260e61bSAlexander Kabaev2004-02-27  Paolo Carlini  <[email protected]>
4959f260e61bSAlexander Kabaev
4960f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (money_get<>::_M_extract):
4961f260e61bSAlexander Kabaev	Change signature: now takes a plain string&.
4962f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
4963f260e61bSAlexander Kabaev	Update consistently the definition; use the moneypunct cache
4964f260e61bSAlexander Kabaev	to parse the value; use swap to change __units.
4965f260e61bSAlexander Kabaev	(money_get<>::do_get(long double&)): Update call of _M_extract,
4966f260e61bSAlexander Kabaev	avoid ctype::narrow, not correct wrt the standard.
4967f260e61bSAlexander Kabaev	(money_get<>::do_get(string_type&)): Likewise, update call
4968f260e61bSAlexander Kabaev	of _M_extract, use ctype::widen.
4969f260e61bSAlexander Kabaev	* src/locale-inst.cc: Tweak instantiations of _M_extract.
4970f260e61bSAlexander Kabaev
4971f260e61bSAlexander Kabaev2004-02-26  Ian Lance Taylor  <[email protected]>
4972f260e61bSAlexander Kabaev
4973f260e61bSAlexander Kabaev	* testsuite/demangle/abi_examples/01.cc: Expect error -2.
4974f260e61bSAlexander Kabaev	* testsuite/demangle/abi_examples/02.cc: Likewise.
4975f260e61bSAlexander Kabaev	* testsuite/demangle/regression/cw-11.cc: Likewise.
4976f260e61bSAlexander Kabaev	* testsuite/demangle/regression/cw-16.cc: Change two expected
4977f260e61bSAlexander Kabaev	results to match libiberty demangler output.
4978f260e61bSAlexander Kabaev
4979f260e61bSAlexander Kabaev2004-02-26  Benjamin Kosnik  <[email protected]>
4980f260e61bSAlexander Kabaev
4981f260e61bSAlexander Kabaev	PR libstdc++/10246
4982f260e61bSAlexander Kabaev	* libsupc++/Makefile.am: Use libiberty demangler.
4983f260e61bSAlexander Kabaev	(c_sources): Add cp-demangle.c.
4984f260e61bSAlexander Kabaev	* libsupc++/Makefile.in: Regenerate.
4985f260e61bSAlexander Kabaev	* src/Makefile.am (sources): Remove demangle.cc.
4986f260e61bSAlexander Kabaev	* src/Makefile.in: Regenerate.
4987f260e61bSAlexander Kabaev	* include/Makefile.am (bits_headers): Move demangle.h.
4988f260e61bSAlexander Kabaev	(ext_headers): ...here.
4989f260e61bSAlexander Kabaev	* include/Makefile.in: Regenerate.
4990f260e61bSAlexander Kabaev	* include/bits/demangle.h: Move...
4991f260e61bSAlexander Kabaev	* include/ext/demangle.h: ...here.
4992f260e61bSAlexander Kabaev	* src/demangle.cc: Remove.
4993f260e61bSAlexander Kabaev
4994f260e61bSAlexander Kabaev2004-02-26  Benjamin Kosnik  <[email protected]>
4995f260e61bSAlexander Kabaev
4996f260e61bSAlexander Kabaev	* include/bits/demangle.h: Add type template parameter to all
4997f260e61bSAlexander Kabaev	templates with just an Allocator template parameter.
4998f260e61bSAlexander Kabaev
4999f260e61bSAlexander Kabaev2004-02-25  Benjamin Kosnik  <[email protected]>
5000f260e61bSAlexander Kabaev
5001f260e61bSAlexander Kabaev	* include/bits/atomicity.h: New, forward declarations for __atomic_add
5002f260e61bSAlexander Kabaev	and __exchange_and_add.
5003f260e61bSAlexander Kabaev	* config/cpu/generic/atomic_word.h: New, typdef for atomic word.
5004f260e61bSAlexander Kabaev	* config/cpu/cris/atomic_word.h: Same.
5005f260e61bSAlexander Kabaev	* config/cpu/sparc/atomic_word.h: Same.
5006f260e61bSAlexander Kabaev	* include/bits/ios_base.h (_Callback_list::_M_remove_reference):
5007f260e61bSAlexander Kabaev	Qualifiy with __gnu_cxx.
5008f260e61bSAlexander Kabaev	(_Callback_list::_M_add_reference): Same.
5009f260e61bSAlexander Kabaev	* include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
5010f260e61bSAlexander Kabaev	(locale::facet::_M_remove_reference): Same.
5011f260e61bSAlexander Kabaev	(locale::_Impl::_M_add_reference): Add.
5012f260e61bSAlexander Kabaev	(locale::_Impl::_M_remove_reference): Same.
5013f260e61bSAlexander Kabaev	* include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
5014f260e61bSAlexander Kabaev	(basic_string::_Rep::_M_dispose): Same.
5015f260e61bSAlexander Kabaev	* src/ios.cc (ios_base::xalloc): Same.
5016f260e61bSAlexander Kabaev	* src/ios_init.cc (ios_base::Init::Init): Same.
5017f260e61bSAlexander Kabaev	(ios_base::Init::~Init): Same.
5018f260e61bSAlexander Kabaev	* src/locale.cc (locale::id::_M_id): Same.
5019f260e61bSAlexander Kabaev	* config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
5020f260e61bSAlexander Kabaev	static, and inline keywords.
5021f260e61bSAlexander Kabaev	* config/cpu/alpha/atomicity.h: Same.
5022f260e61bSAlexander Kabaev	* config/cpu/cris/atomicity.h: Same.
5023f260e61bSAlexander Kabaev	* config/cpu/generic/atomicity.h: Same.
5024f260e61bSAlexander Kabaev	* config/cpu/hppa/atomicity.h: Same.
5025f260e61bSAlexander Kabaev	* config/cpu/i386/atomicity.h: Same.
5026f260e61bSAlexander Kabaev	* config/cpu/ia64/atomicity.h: Same.
5027f260e61bSAlexander Kabaev	* config/cpu/m68k/atomicity.h: Same.
5028f260e61bSAlexander Kabaev	* config/cpu/mips/atomicity.h: Same.
5029f260e61bSAlexander Kabaev	* config/cpu/powerpc/atomicity.h: Same.
5030f260e61bSAlexander Kabaev	* config/cpu/s390/atomicity.h: Same.
5031f260e61bSAlexander Kabaev	* config/cpu/sparc/atomicity.h: Same.
5032f260e61bSAlexander Kabaev
5033f260e61bSAlexander Kabaev	* src/Makefile.am (host_sources): Add atomicity.cc.
5034f260e61bSAlexander Kabaev	(atomicity.cc): New rule.
5035f260e61bSAlexander Kabaev	* src/Makefile.in: Regenerate.
5036f260e61bSAlexander Kabaev	* include/Makefile.am (host_headers): Remove host atomicity.h.
5037f260e61bSAlexander Kabaev	(host_headers): Add atomic_word.h.
5038f260e61bSAlexander Kabaev	(bits_headers): Add bits atomicity.h.
5039f260e61bSAlexander Kabaev	Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
5040f260e61bSAlexander Kabaev	* include/Makefile.in: Regenerate.
5041f260e61bSAlexander Kabaev	* configure.host (atomic_word_dir): Add.
5042f260e61bSAlexander Kabaev	* configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
5043f260e61bSAlexander Kabaev	ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
5044f260e61bSAlexander Kabaev	* configure: Regenerate.
5045f260e61bSAlexander Kabaev	* config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
5046f260e61bSAlexander Kabaev
5047f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
5048f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
5049f260e61bSAlexander Kabaev
5050f260e61bSAlexander Kabaev2004-02-25  Jonathan Wakely  <[email protected]>
5051f260e61bSAlexander Kabaev
5052f260e61bSAlexander Kabaev	* docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
5053f260e61bSAlexander Kabaev	docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
5054f260e61bSAlexander Kabaev	Fix markup, more <link> tags.
5055f260e61bSAlexander Kabaev
5056f260e61bSAlexander Kabaev2004-02-25  Carlo Wood  <[email protected]>
5057f260e61bSAlexander Kabaev
5058f260e61bSAlexander Kabaev	* bits/demangle.h
5059f260e61bSAlexander Kabaev	namespace __gnu_cxx::demangler
5060f260e61bSAlexander Kabaev	(session<Allocator>::qualifier_list_Allocator): Add
5061f260e61bSAlexander Kabaev	(session<Allocator>::M_qualifier_list_alloc): Add
5062f260e61bSAlexander Kabaev	(session<Allocator>::decode_type_with_postfix):
5063f260e61bSAlexander Kabaev	Use M_qualifier_list_alloc instead of calling operator new/delete.
5064f260e61bSAlexander Kabaev
5065f260e61bSAlexander Kabaev2004-02-24  Paolo Carlini  <[email protected]>
5066f260e61bSAlexander Kabaev
5067f260e61bSAlexander Kabaev	PR libstdc++/14252
5068f260e61bSAlexander Kabaev	* include/bits/postypes.h (class streamoff): Add operator++(),
5069f260e61bSAlexander Kabaev	operator++(int), operator--() and operator--(int).
5070f260e61bSAlexander Kabaev	* testsuite/27_io/fpos/14252.cc: New.
5071f260e61bSAlexander Kabaev
5072f260e61bSAlexander Kabaev2004-02-24  Richard Sandiford  <[email protected]>
5073f260e61bSAlexander Kabaev
5074f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
5075f260e61bSAlexander Kabaev	error in handling of hex constants.
5076f260e61bSAlexander Kabaev
5077f260e61bSAlexander Kabaev2004-02-24  Paolo Carlini  <[email protected]>
5078f260e61bSAlexander Kabaev
5079f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
5080f260e61bSAlexander Kabaev	Prefer basic_string::append to operator+= and a temporary.
5081f260e61bSAlexander Kabaev
5082f260e61bSAlexander Kabaev2004-02-23  Benjamin Kosnik  <[email protected]>
5083f260e61bSAlexander Kabaev
5084f260e61bSAlexander Kabaev	* libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
5085f260e61bSAlexander Kabaev	Only use fputs, not write.
5086f260e61bSAlexander Kabaev
5087f260e61bSAlexander Kabaev2004-02-23  Benjamin Kosnik  <[email protected]>
5088f260e61bSAlexander Kabaev
5089f260e61bSAlexander Kabaev	* include/ext/malloc_allocator.h: Add operators ==, !=.
5090f260e61bSAlexander Kabaev	* include/ext/new_allocator.h: Add operators ==, !=.
5091f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc::tune): New.
5092f260e61bSAlexander Kabaev	(__mt_alloc::_S_get_options): New.
5093f260e61bSAlexander Kabaev	(__mt_alloc::_S_set_options): New.
5094f260e61bSAlexander Kabaev	(__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
5095f260e61bSAlexander Kabaev	(__mt_alloc::_S_no_of_bins): To _S_bin_size.
5096f260e61bSAlexander Kabaev	Move functions out of line, simplify, format.
5097f260e61bSAlexander Kabaev	* src/allocator.cc: Simplify explicit instantiations.
5098f260e61bSAlexander Kabaev	* include/bits/allocator.h: Tweak.
5099f260e61bSAlexander Kabaev
5100f260e61bSAlexander Kabaev2004-02-22  Paolo Carlini  <[email protected]>
5101f260e61bSAlexander Kabaev
5102f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
5103f260e61bSAlexander Kabaev	Restructure formatting of value component, first dealing with
5104f260e61bSAlexander Kabaev	the non-decimal digits; use reserve.
5105f260e61bSAlexander Kabaev
5106f260e61bSAlexander Kabaev2004-02-22  Paolo Carlini  <[email protected]>
5107f260e61bSAlexander Kabaev
5108f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (class money_get): Inherit
5109f260e61bSAlexander Kabaev	from money_base too; tweak declaration of _M_extract, now
5110f260e61bSAlexander Kabaev	parameterized on _Intl too.
5111f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
5112f260e61bSAlexander Kabaev	Update definition to use the cache; call reserve on __res to
5113f260e61bSAlexander Kabaev	avoid multiple reallocations; fix parsing of sign component
5114f260e61bSAlexander Kabaev	according to 22.2.6.1.2, p3.
5115f260e61bSAlexander Kabaev	(money_get<>::do_get(long double&),
5116f260e61bSAlexander Kabaev	money_get<>::do_get(string_type&)): Update calls of _M_extract.
5117f260e61bSAlexander Kabaev	* src/locale-inst.cc:  Add instantiations of
5118f260e61bSAlexander Kabaev	money_get::_M_extract<false> and money_get::_M_extract<true>.
5119f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/14.cc: New.
5120f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
5121f260e61bSAlexander Kabaev
5122f260e61bSAlexander Kabaev2004-02-21  Mark Mitchell  <[email protected]>
5123f260e61bSAlexander Kabaev
5124f260e61bSAlexander Kabaev	* libsupc++/vterminate.cc
5125f260e61bSAlexander Kabaev	(__gnu_cxx::__verbose_terminate_handler): Guard against recursive
5126f260e61bSAlexander Kabaev	calls to terminate.
5127f260e61bSAlexander Kabaev	* src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
5128f260e61bSAlexander Kabaev
5129f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
5130f260e61bSAlexander Kabaev	not set RLIMIT_AS on HP-UX.
5131f260e61bSAlexander Kabaev
5132f260e61bSAlexander Kabaev2004-02-21  Mark Mitchell  <[email protected]>
5133f260e61bSAlexander Kabaev
5134f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
5135f260e61bSAlexander Kabaev	not set RLIMIT_AS on HP-UX.
5136f260e61bSAlexander Kabaev
5137f260e61bSAlexander Kabaev2004-02-21  Paolo Carlini  <[email protected]>
5138f260e61bSAlexander Kabaev
5139f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (class money_base): Add { _S_minus,
5140f260e61bSAlexander Kabaev	_S_zero, _S_end } enum, _S_atoms.
5141f260e61bSAlexander Kabaev	(struct __moneypunct_cache<>): Parameterize on _Intl too; add
5142f260e61bSAlexander Kabaev	_M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
5143f260e61bSAlexander Kabaev	_M_negative_sign_size, _M_atoms; tweak constructor consistently.
5144f260e61bSAlexander Kabaev	(__moneypunct_cache<>::~__moneypunct_cache): Update.
5145f260e61bSAlexander Kabaev	(__moneypunct_cache<>::_M_cache): Fill the cache.
5146f260e61bSAlexander Kabaev	(class moneypunct): Tweak __cache_type typedef.
5147f260e61bSAlexander Kabaev	(class money_put): Inherit from money_base too; tweak declaration
5148f260e61bSAlexander Kabaev	of _M_insert, now parameterized on _Intl.
5149f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc
5150f260e61bSAlexander Kabaev	(struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
5151f260e61bSAlexander Kabaev	(money_put<>::_M_insert): Update definition to use the cache;
5152f260e61bSAlexander Kabaev	call reserve on __res to avoid multiple reallocations.
5153f260e61bSAlexander Kabaev	(money_put<>::do_put(long double),
5154f260e61bSAlexander Kabaev	money_put<>::do_put(const string_type&): Update calls of _M_insert.
5155f260e61bSAlexander Kabaev	* config/locale/generic/monetary_members.cc
5156f260e61bSAlexander Kabaev	(moneypunct<char, true>::_M_initialize_moneypunct,
5157f260e61bSAlexander Kabaev	moneypunct<char, false>::_M_initialize_moneypunct,
5158f260e61bSAlexander Kabaev	moneypunct<wchar_t, true>::_M_initialize_moneypunct,
5159f260e61bSAlexander Kabaev	moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
5160f260e61bSAlexander Kabaev	* config/locale/gnu/monetary_members.cc: Likewise.
5161f260e61bSAlexander Kabaev	* config/locale/gnu/monetary_members.cc
5162f260e61bSAlexander Kabaev	(moneypunct<wchar_t, true>::~moneypunct(),
5163f260e61bSAlexander Kabaev	moneypunct<wchar_t, false>::~moneypunct()): Likewise.
5164f260e61bSAlexander Kabaev	* src/globals_locale.cc: Tweak fake_money_cache_c.
5165f260e61bSAlexander Kabaev	* src/locale-inst.cc: Add instantiations for
5166f260e61bSAlexander Kabaev	money_put::_M_insert<false> and money_put::_M_insert<true> and
5167f260e61bSAlexander Kabaev	__moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
5168f260e61bSAlexander Kabaev	* src/locale_facets.cc: Define money_base::_S_atoms.
5169f260e61bSAlexander Kabaev	* src/locale_init.cc: Update placement new of
5170f260e61bSAlexander Kabaev	__moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
5171f260e61bSAlexander Kabaev	__moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
5172f260e61bSAlexander Kabaev
5173f260e61bSAlexander Kabaev	* config/locale/generic/numeric_members.cc: Clean up.
5174f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc: Likewise.
5175f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
5176f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
5177f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
5178f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
5179f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
5180f260e61bSAlexander Kabaev	* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
5181f260e61bSAlexander Kabaev
5182f260e61bSAlexander Kabaev2004-02-20  Mark Mitchell  <[email protected]>
5183f260e61bSAlexander Kabaev
5184f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
5185f260e61bSAlexander Kabaev	FIFO for writing with ios_base::in|ios_base::out.
5186f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
5187f260e61bSAlexander Kabaev	* testsuite/27_io/objects/char/7.cc: Likewise.
5188f260e61bSAlexander Kabaev	* testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
5189f260e61bSAlexander Kabaev	with "r+".
5190f260e61bSAlexander Kabaev
5191f260e61bSAlexander Kabaev2004-02-19  David Edelsohn  <[email protected]>
5192f260e61bSAlexander Kabaev
5193f260e61bSAlexander Kabaev	* 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
5194f260e61bSAlexander Kabaev	from iso-8859-1 to ISO8859-1.
5195f260e61bSAlexander Kabaev	* 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
5196f260e61bSAlexander Kabaev	* 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
5197f260e61bSAlexander Kabaev	* 22_locale/collate/hash/wchar_t/2.cc: Same.
5198f260e61bSAlexander Kabaev	* 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
5199f260e61bSAlexander Kabaev	* 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
5200f260e61bSAlexander Kabaev	* 22_locale/collate/transform/wchar_t/2.cc: Same.
5201f260e61bSAlexander Kabaev	* 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
5202f260e61bSAlexander Kabaev	* 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
5203f260e61bSAlexander Kabaev
5204f260e61bSAlexander Kabaev2004-02-18  Paolo Carlini  <[email protected]>
5205f260e61bSAlexander Kabaev
5206f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (money_get<>::_M_extract):
5207f260e61bSAlexander Kabaev	New, helper for do_get.
5208f260e61bSAlexander Kabaev	(money_put<>::_M_insert): Likewise, for do_put.
5209f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get<>::_M_extract,
5210f260e61bSAlexander Kabaev	money_put<>::_M_insert): Define.
5211f260e61bSAlexander Kabaev	(money_get<>::do_get(long double&), money_get<>::do_get(
5212f260e61bSAlexander Kabaev	string_type&), money_put::do_put(long double),
5213f260e61bSAlexander Kabaev	money_put::do_put(const string_type&)): Use the helpers.
5214f260e61bSAlexander Kabaev
5215f260e61bSAlexander Kabaev2004-02-18  Paolo Carlini  <[email protected]>
5216f260e61bSAlexander Kabaev
5217f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
5218f260e61bSAlexander Kabaev	Rewrite, avoiding recursion.
5219f260e61bSAlexander Kabaev	(__gnu_internal::xwrite): Minor tweaks.
5220f260e61bSAlexander Kabaev
5221f260e61bSAlexander Kabaev2004-02-17  Stefan Olsson  <[email protected]>
5222f260e61bSAlexander Kabaev
5223f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Removed the last
5224f260e61bSAlexander Kabaev	pointer. Deallocated blocks are now added to the front of
5225f260e61bSAlexander Kabaev	freelists as proposed by Felix Yen.  This gives roughly 10%
5226f260e61bSAlexander Kabaev	performance boost and saves some memory.
5227f260e61bSAlexander Kabaev	* docs/html/ext/mt_allocator.html: Change due to that deallocated
5228f260e61bSAlexander Kabaev	blocks now are added to the front of freelists. The reason to this
5229f260e61bSAlexander Kabaev	approach is also explained.
5230f260e61bSAlexander Kabaev
5231f260e61bSAlexander Kabaev2004-02-17  Paolo Carlini  <[email protected]>
5232f260e61bSAlexander Kabaev
5233f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
5234f260e61bSAlexander Kabaev	num_get<>::_M_extract_int, money_get<>::do_get): Simplify
5235f260e61bSAlexander Kabaev	grouping fidelity conditional.
5236f260e61bSAlexander Kabaev
5237f260e61bSAlexander Kabaev2004-02-16  Paolo Carlini  <[email protected]>
5238f260e61bSAlexander Kabaev
5239f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
5240f260e61bSAlexander Kabaev	Qualify exception with std::.
5241f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
5242f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
5243f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
5244f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
5245f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
5246f260e61bSAlexander Kabaev
5247f260e61bSAlexander Kabaev2004-02-16  Paolo Carlini  <[email protected]>
5248f260e61bSAlexander Kabaev
5249f260e61bSAlexander Kabaev	* testsuite/ext/enc_filebuf/char/13189.cc: Don't check
5250f260e61bSAlexander Kabaev	for now that the catch block is not reached.
5251f260e61bSAlexander Kabaev	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
5252f260e61bSAlexander Kabaev
5253f260e61bSAlexander Kabaev2004-02-16  Paolo Carlini  <[email protected]>
5254f260e61bSAlexander Kabaev
5255f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
5256f260e61bSAlexander Kabaev	Fix parsing of the remaining sign characters.
5257f260e61bSAlexander Kabaev	* 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
5258f260e61bSAlexander Kabaev	the input is scanned 'til eof.
5259f260e61bSAlexander Kabaev	* 22_locale/money_get/get/char/4.cc: Likewise.
5260f260e61bSAlexander Kabaev	* 22_locale/money_get/get/wchar_t/2.cc: Likewise.
5261f260e61bSAlexander Kabaev	* 22_locale/money_get/get/wchar_t/4.cc: Likewise.
5262f260e61bSAlexander Kabaev	* 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
5263f260e61bSAlexander Kabaev	not do_pos_format: the former is the only one that matters during
5264f260e61bSAlexander Kabaev	input.
5265f260e61bSAlexander Kabaev	* 22_locale/money_get/get/wchar_t/8.cc: Likewise.
5266f260e61bSAlexander Kabaev
5267f260e61bSAlexander Kabaev	* 22_locale/money_get/get/char/6.cc: Minor tweak.
5268f260e61bSAlexander Kabaev	* 22_locale/money_get/get/wchar_t/6.cc: Likewise.
5269f260e61bSAlexander Kabaev
5270f260e61bSAlexander Kabaev2004-02-15  David Asher  <[email protected]>
5271f260e61bSAlexander Kabaev
5272f260e61bSAlexander Kabaev	PR libstdc++/11352
5273f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
5274f260e61bSAlexander Kabaev	access __olds beyond __oldlen.
5275f260e61bSAlexander Kabaev
5276f260e61bSAlexander Kabaev2004-02-14  Paolo Carlini  <[email protected]>
5277f260e61bSAlexander Kabaev
5278f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
5279f260e61bSAlexander Kabaev	sure the exception is actually thrown.
5280f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
5281f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
5282f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
5283f260e61bSAlexander Kabaev
5284f260e61bSAlexander Kabaev2004-02-14  Paolo Carlini  <[email protected]>
5285f260e61bSAlexander Kabaev
5286f260e61bSAlexander Kabaev	PR libstdc++/13858
5287f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
5288f260e61bSAlexander Kabaev	In case of conversion errors, throw ios_failure; simplify.
5289f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
5290f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
5291f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
5292f260e61bSAlexander Kabaev	previously we didn't throw in case of conversion errors, instead
5293f260e61bSAlexander Kabaev	just returned eof().
5294f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
5295f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
5296f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
5297f260e61bSAlexander Kabaev
5298f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (basic_filebuf<>::overflow):
5299f260e61bSAlexander Kabaev	Trivial simplification of a conditional.
5300f260e61bSAlexander Kabaev
5301f260e61bSAlexander Kabaev2004-02-12  Paolo Carlini  <[email protected]>
5302f260e61bSAlexander Kabaev
5303f260e61bSAlexander Kabaev	PR libstdc++/13731 (final part: writev)
5304f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
5305f260e61bSAlexander Kabaev	New, a wrapper around writev() handling partial writes.
5306f260e61bSAlexander Kabaev	(__basic_file<char>::xwrite): Move to __gnu_internal and make
5307f260e61bSAlexander Kabaev	static.
5308f260e61bSAlexander Kabaev	(__basic_file<char>::xsputn): Update call.
5309f260e61bSAlexander Kabaev	(__basic_file<char>::xsputn_2): Likewise.
5310f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
5311f260e61bSAlexander Kabaev	Don't declare, now static.
5312f260e61bSAlexander Kabaev
5313f260e61bSAlexander Kabaev2004-02-11  Stefan Olsson  <[email protected]>
5314f260e61bSAlexander Kabaev
5315f260e61bSAlexander Kabaev	* docs/html/ext/mt_allocator.html: New.
5316f260e61bSAlexander Kabaev
5317f260e61bSAlexander Kabaev2004-02-11  Benjamin Kosnik  <[email protected]>
5318f260e61bSAlexander Kabaev
5319f260e61bSAlexander Kabaev	* docs/html/20_util/allocator.html: New file, consolidate
5320f260e61bSAlexander Kabaev	allocator information here. Revamp.
5321f260e61bSAlexander Kabaev	* docs/html/documentation.html: Change links.
5322f260e61bSAlexander Kabaev	* docs/html/20_util/howto.html: Same.
5323f260e61bSAlexander Kabaev	* docs/html/ext/howto.html: Same.
5324f260e61bSAlexander Kabaev
5325f260e61bSAlexander Kabaev2004-02-11  Paolo Carlini  <[email protected]>
5326f260e61bSAlexander Kabaev
5327f260e61bSAlexander Kabaev	PR libstdc++/13731 (first part: write)
5328f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
5329f260e61bSAlexander Kabaev	New, declare.
5330f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
5331f260e61bSAlexander Kabaev	Define it: a wrapper around write() handling partial write.
5332f260e61bSAlexander Kabaev	(__basic_file<char>::xsputn): Use it.
5333f260e61bSAlexander Kabaev	(__basic_file<char>::xsputn_2): Likewise.
5334f260e61bSAlexander Kabaev
5335f260e61bSAlexander Kabaev2004-02-11  Paolo Carlini  <[email protected]>
5336f260e61bSAlexander Kabaev	    Petur Runolfsson  <[email protected]>
5337f260e61bSAlexander Kabaev
5338f260e61bSAlexander Kabaev	PR libstdc++/14078
5339f260e61bSAlexander Kabaev	* include/std/std_istream.h (operator>>(__istream_type& (*)
5340f260e61bSAlexander Kabaev	(__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
5341f260e61bSAlexander Kabaev	operator>>(ios_base& (*)(ios_base&))): Declare inline.
5342f260e61bSAlexander Kabaev	* include/std/std_ostream.h (operator<<(__ostream_type& (*)
5343f260e61bSAlexander Kabaev	(__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
5344f260e61bSAlexander Kabaev	operator<<(ios_base& (*) (ios_base&))): Likewise.
5345f260e61bSAlexander Kabaev	* testsuite/performance/27_io/fmtflags_manipulators.cc: New.
5346f260e61bSAlexander Kabaev
5347f260e61bSAlexander Kabaev2004-02-10  Loren J. Rittle  <[email protected]>
5348f260e61bSAlexander Kabaev
5349f260e61bSAlexander Kabaev	PR libstdc++/14098
5350f260e61bSAlexander Kabaev	* config/linker-map.gnu: Add typeinfo and typeinfo name for
5351f260e61bSAlexander Kabaev	__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
5352f260e61bSAlexander Kabaev
5353f260e61bSAlexander Kabaev	PR libstdc++/14097
5354f260e61bSAlexander Kabaev	* config/linker-map.gnu: Add typeinfo and typeinfo name for
5355f260e61bSAlexander Kabaev	__gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
5356f260e61bSAlexander Kabaev
5357f260e61bSAlexander Kabaev2004-02-09  Loren J. Rittle  <[email protected]>
5358f260e61bSAlexander Kabaev
5359f260e61bSAlexander Kabaev	* include/ext/pool_allocator.h: Include c++config.h.
5360f260e61bSAlexander Kabaev
5361f260e61bSAlexander Kabaev2004-02-09  Stefan Olsson  <[email protected]>
5362f260e61bSAlexander Kabaev
5363f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: thread_id is unused in non threaded
5364f260e61bSAlexander Kabaev	applications and now has a ifdef to remove it completely on
5365f260e61bSAlexander Kabaev	compilers without thread support. Include stdlib.h due to a
5366f260e61bSAlexander Kabaev	compiler warning on getenv().
5367f260e61bSAlexander Kabaev
5368f260e61bSAlexander Kabaev2004-02-09  Paul Brook  <[email protected]>
5369f260e61bSAlexander Kabaev
5370f260e61bSAlexander Kabaev	* libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
5371f260e61bSAlexander Kabaev
5372f260e61bSAlexander Kabaev2004-02-09  Paolo Carlini  <[email protected]>
5373f260e61bSAlexander Kabaev
5374f260e61bSAlexander Kabaev	PR libstdc++/14071
5375f260e61bSAlexander Kabaev	* src/locale_init.cc (locale::global(const locale&)): Use
5376f260e61bSAlexander Kabaev	locale::name() in order to decide whether calling setlocale.
5377f260e61bSAlexander Kabaev	* testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
5378f260e61bSAlexander Kabaev
5379f260e61bSAlexander Kabaev	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
5380f260e61bSAlexander Kabaev	Avoid computing &= unnecessarily.
5381f260e61bSAlexander Kabaev
5382f260e61bSAlexander Kabaev2004-02-09  James E Wilson  <[email protected]>
5383f260e61bSAlexander Kabaev
5384f260e61bSAlexander Kabaev	PR libstdc++/5625
5385f260e61bSAlexander Kabaev	* libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
5386f260e61bSAlexander Kabaev	__builtin_extend_pointer.
5387f260e61bSAlexander Kabaev
5388f260e61bSAlexander Kabaev2004-02-09  Paolo Carlini  <[email protected]>
5389f260e61bSAlexander Kabaev
5390f260e61bSAlexander Kabaev	PR libstdc++/14072
5391f260e61bSAlexander Kabaev	* include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
5392f260e61bSAlexander Kabaev	Don't leave dangling pointers.
5393f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ios/imbue/14072.cc: New.
5394f260e61bSAlexander Kabaev	* testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
5395f260e61bSAlexander Kabaev	facet is needed in the final test.
5396f260e61bSAlexander Kabaev
5397f260e61bSAlexander Kabaev2004-02-09  Bernardo Innocenti  <[email protected]>
5398f260e61bSAlexander Kabaev
5399f260e61bSAlexander Kabaev	* crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
5400f260e61bSAlexander Kabaev	* configure: Regenerate.
5401f260e61bSAlexander Kabaev
5402f260e61bSAlexander Kabaev2004-02-08  Richard Henderson  <[email protected]>
5403f260e61bSAlexander Kabaev
5404f260e61bSAlexander Kabaev	PR libstdc++/14026
5405f260e61bSAlexander Kabaev	* libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
5406f260e61bSAlexander Kabaev	uncaughtExceptions during nested catch rethrow.
5407f260e61bSAlexander Kabaev	* testsuite/18_support/14026.cc: New.
5408f260e61bSAlexander Kabaev
5409f260e61bSAlexander Kabaev2004-02-08  Paolo Carlini  <[email protected]>
5410f260e61bSAlexander Kabaev
5411f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
5412f260e61bSAlexander Kabaev	When working in place remember to set the state to sharable
5413f260e61bSAlexander Kabaev	(otherwise, _M_mutate does it).
5414f260e61bSAlexander Kabaev
5415f260e61bSAlexander Kabaev2004-02-08  Bernardo Innocenti  <[email protected]>
5416f260e61bSAlexander Kabaev
5417f260e61bSAlexander Kabaev	* include/bits/allocator.h, include/bits/basic_ios.h,
5418f260e61bSAlexander Kabaev	include/bits/basic_ios.tcc, include/bits/basic_string.h,
5419f260e61bSAlexander Kabaev	include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
5420f260e61bSAlexander Kabaev	include/bits/char_traits.h, include/bits/codecvt.h,
5421f260e61bSAlexander Kabaev	include/bits/concurrence.h, include/bits/cpp_type_traits.h,
5422f260e61bSAlexander Kabaev	include/bits/demangle.h, include/bits/deque.tcc,
5423f260e61bSAlexander Kabaev	include/bits/fstream.tcc, include/bits/functexcept.h,
5424f260e61bSAlexander Kabaev	include/bits/gslice.h, include/bits/gslice_array.h,
5425f260e61bSAlexander Kabaev	include/bits/indirect_array.h, include/bits/ios_base.h,
5426f260e61bSAlexander Kabaev	include/bits/istream.tcc, include/bits/list.tcc,
5427f260e61bSAlexander Kabaev	include/bits/locale_classes.h, include/bits/locale_facets.h,
5428f260e61bSAlexander Kabaev	include/bits/locale_facets.tcc, include/bits/localefwd.h,
5429f260e61bSAlexander Kabaev	include/bits/mask_array.h, include/bits/ostream.tcc,
5430f260e61bSAlexander Kabaev	include/bits/postypes.h, include/bits/slice_array.h,
5431f260e61bSAlexander Kabaev	include/bits/sstream.tcc, include/bits/stl_algo.h,
5432f260e61bSAlexander Kabaev	include/bits/stl_algobase.h, include/bits/stl_bvector.h,
5433f260e61bSAlexander Kabaev	include/bits/stl_construct.h, include/bits/stl_deque.h,
5434f260e61bSAlexander Kabaev	include/bits/stl_function.h, include/bits/stl_heap.h,
5435f260e61bSAlexander Kabaev	include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
5436f260e61bSAlexander Kabaev	include/bits/stl_list.h, include/bits/stl_map.h,
5437f260e61bSAlexander Kabaev	include/bits/stl_multimap.h, include/bits/stl_multiset.h,
5438f260e61bSAlexander Kabaev	include/bits/stl_numeric.h, include/bits/stl_pair.h,
5439f260e61bSAlexander Kabaev	include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
5440f260e61bSAlexander Kabaev	include/bits/stl_relops.h, include/bits/stl_set.h,
5441f260e61bSAlexander Kabaev	include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
5442f260e61bSAlexander Kabaev	include/bits/stl_threads.h, include/bits/stl_tree.h,
5443f260e61bSAlexander Kabaev	include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
5444f260e61bSAlexander Kabaev	include/bits/stream_iterator.h, include/bits/streambuf.tcc,
5445f260e61bSAlexander Kabaev	include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
5446f260e61bSAlexander Kabaev	include/bits/type_traits.h, include/bits/valarray_after.h,
5447f260e61bSAlexander Kabaev	include/bits/valarray_array.h, include/bits/valarray_array.tcc,
5448f260e61bSAlexander Kabaev	include/bits/valarray_before.h, include/bits/vector.tcc: Remove
5449f260e61bSAlexander Kabaev	trailing whitespace.
5450f260e61bSAlexander Kabaev
5451f260e61bSAlexander Kabaev2004-02-06  Paolo Carlini  <[email protected]>
5452f260e61bSAlexander Kabaev
5453f260e61bSAlexander Kabaev	* include/bits/basic_string.h: Fix comment.
5454f260e61bSAlexander Kabaev
5455f260e61bSAlexander Kabaev2004-02-06  Paolo Carlini  <[email protected]>
5456f260e61bSAlexander Kabaev
5457f260e61bSAlexander Kabaev	* include/bits/stl_construct.h: Wrap overlong lines, reformat
5458f260e61bSAlexander Kabaev	according to the coding standards.
5459f260e61bSAlexander Kabaev	* include/bits/stl_pair.h: Likewise.
5460f260e61bSAlexander Kabaev	* include/bits/stl_raw_storage_iter.h: Likewise.
5461f260e61bSAlexander Kabaev	* include/bits/stl_stack.h: Likewise.
5462f260e61bSAlexander Kabaev	* include/bits/stl_uninitialized.h: Likewise.
5463f260e61bSAlexander Kabaev	* include/bits/stream_iterator.h: Likewise.
5464f260e61bSAlexander Kabaev	* include/bits/streambuf_iterator.h: Likewise.
5465f260e61bSAlexander Kabaev	* include/bits/type_traits.h: Likewise.
5466f260e61bSAlexander Kabaev
5467f260e61bSAlexander Kabaev2004-02-06  Paolo Carlini  <[email protected]>
5468f260e61bSAlexander Kabaev
5469f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/open/char/9507.cc:
5470f260e61bSAlexander Kabaev	Adjust timings.
5471f260e61bSAlexander Kabaev
5472f260e61bSAlexander Kabaev2004-02-05  Loren J. Rittle  <[email protected]>
5473f260e61bSAlexander Kabaev
5474f260e61bSAlexander Kabaev	* scripts/check_performance: Support PCH.
5475f260e61bSAlexander Kabaev
5476f260e61bSAlexander Kabaev	* scripts/check_performance (CXX): Add -DNOTHREAD.
5477f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc: Integrate
5478f260e61bSAlexander Kabaev	threaded tests from insert_insert.cc.  Tweak iterations,
5479f260e61bSAlexander Kabaev	remove special cases.
5480f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc:
5481f260e61bSAlexander Kabaev	Make all tests single-threaded. Tweak iterations.
5482f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc:
5483f260e61bSAlexander Kabaev	Tweak iterations.
5484f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/producer_consumer.cc:
5485f260e61bSAlexander Kabaev	Likewise.
5486f260e61bSAlexander Kabaev
5487f260e61bSAlexander Kabaev2004-02-05  Geoffrey Keating  <[email protected]>
5488f260e61bSAlexander Kabaev
5489f260e61bSAlexander Kabaev	PR 12179
5490f260e61bSAlexander Kabaev	* .cvsignore: New.
5491f260e61bSAlexander Kabaev	* acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
5492f260e61bSAlexander Kabaev	'gcc-lib'.  Add comment about poorly-named variables.
5493f260e61bSAlexander Kabaev	* aclocal.m4: Regenerate.
5494f260e61bSAlexander Kabaev	* configure: Regenerate.
5495f260e61bSAlexander Kabaev
5496f260e61bSAlexander Kabaev2004-02-05  Paolo Carlini  <[email protected]>
5497f260e61bSAlexander Kabaev
5498f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
5499f260e61bSAlexander Kabaev	Thousands-sep are always optional; thousands-sep are not allowed
5500f260e61bSAlexander Kabaev	after the decimal_point.
5501f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/12.cc: New.
5502f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/13.cc: New.
5503f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
5504f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
5505f260e61bSAlexander Kabaev
5506f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
5507f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/2.cc: Likewise.
5508f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/3.cc: Likewise.
5509f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/4.cc: Likewise.
5510f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
5511f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
5512f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
5513f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
5514f260e61bSAlexander Kabaev
5515f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
5516f260e61bSAlexander Kabaev	the standard.
5517f260e61bSAlexander Kabaev	* testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
5518f260e61bSAlexander Kabaev
5519f260e61bSAlexander Kabaev2004-02-05  Richard Sandiford  <[email protected]>
5520f260e61bSAlexander Kabaev
5521f260e61bSAlexander Kabaev	* config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
5522f260e61bSAlexander Kabaev	Define.
5523f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
5524f260e61bSAlexander Kabaev	it to decide whether FIONREAD should take an off_t or int argument.
5525f260e61bSAlexander Kabaev
5526f260e61bSAlexander Kabaev2004-02-05  Paolo Carlini  <[email protected]>
5527f260e61bSAlexander Kabaev
5528f260e61bSAlexander Kabaev	* include/bits/stl_function.h: Minor formatting changes.
5529f260e61bSAlexander Kabaev
5530f260e61bSAlexander Kabaev2004-02-04  Zack Weinberg  <[email protected]>
5531f260e61bSAlexander Kabaev
5532f260e61bSAlexander Kabaev	Revert previous change to config/abi/*/baseline_symbols.txt.
5533f260e61bSAlexander Kabaev
5534f260e61bSAlexander Kabaev2004-02-04  Benjamin Kosnik  <[email protected]>
5535f260e61bSAlexander Kabaev	    Zack Weinberg  <[email protected]>
5536f260e61bSAlexander Kabaev
5537f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
5538f260e61bSAlexander Kabaev	New function.
5539f260e61bSAlexander Kabaev	(__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
5540f260e61bSAlexander Kabaev	(__basic_file<char>::_M_open_mode): Delete.
5541f260e61bSAlexander Kabaev	* config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
5542f260e61bSAlexander Kabaev
5543f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/close/char/9964.cc
5544f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/open/char/9507.cc:
5545f260e61bSAlexander Kabaev	Correct flags to filebuf::open calls.
5546f260e61bSAlexander Kabaev
5547f260e61bSAlexander Kabaev	* config/abi/alpha-freebsd5/baseline_symbols.txt
5548f260e61bSAlexander Kabaev	* config/abi/alpha-linux-gnu/baseline_symbols.txt
5549f260e61bSAlexander Kabaev	* config/abi/hppa-linux-gnu/baseline_symbols.txt
5550f260e61bSAlexander Kabaev	* config/abi/i386-freebsd4/baseline_symbols.txt
5551f260e61bSAlexander Kabaev	* config/abi/i386-freebsd5/baseline_symbols.txt
5552f260e61bSAlexander Kabaev	* config/abi/i486-linux-gnu/baseline_symbols.txt
5553f260e61bSAlexander Kabaev	* config/abi/ia64-linux-gnu/baseline_symbols.txt
5554f260e61bSAlexander Kabaev	* config/abi/mips-linux-gnu/baseline_symbols.txt
5555f260e61bSAlexander Kabaev	* config/abi/sparc-freebsd5/baseline_symbols.txt
5556f260e61bSAlexander Kabaev	* config/abi/sparc-linux-gnu/baseline_symbols.txt
5557f260e61bSAlexander Kabaev	* config/abi/x86_64-linux-gnu/baseline_symbols.txt:
5558f260e61bSAlexander Kabaev	Remove entry for __basic_file<char>::_M_open_mode.
5559f260e61bSAlexander Kabaev
5560f260e61bSAlexander Kabaev2004-02-04  Loren J. Rittle  <[email protected]>
5561f260e61bSAlexander Kabaev
5562f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
5563f260e61bSAlexander Kabaev
5564f260e61bSAlexander Kabaev2004-02-04  Felix Yen  <[email protected]>
5565f260e61bSAlexander Kabaev
5566f260e61bSAlexander Kabaev	* testsuite/performance/20_util/producer_consumer.cc: New.
5567f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
5568f260e61bSAlexander Kabaev
5569f260e61bSAlexander Kabaev2004-02-04  Benjamin Kosnik  <[email protected]>
5570f260e61bSAlexander Kabaev
5571f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator.cc: Move to..
5572f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert.cc: ...here.
5573f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_thread.cc: Move to...
5574f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
5575f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_map_thread.cc: Move to...
5576f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator/map_thread.cc: ...here.
5577f260e61bSAlexander Kabaev
5578f260e61bSAlexander Kabaev2004-02-04  Jonathan Wakely  <[email protected]>
5579f260e61bSAlexander Kabaev
5580f260e61bSAlexander Kabaev	* docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
5581f260e61bSAlexander Kabaev	* docs/html/faq/index.txt: Regenerate.
5582f260e61bSAlexander Kabaev
5583f260e61bSAlexander Kabaev2004-02-04  Dhruv Matani  <[email protected]>
5584f260e61bSAlexander Kabaev
5585f260e61bSAlexander Kabaev	* include/ext/debug_allocator.h: _M_extra now stands for the
5586f260e61bSAlexander Kabaev	number of extra objects instead of the number of extra bytes.
5587f260e61bSAlexander Kabaev	(debug_allocator::allocate): Adjust.
5588f260e61bSAlexander Kabaev	(debug_allocator::deallocate): Adjust.
5589f260e61bSAlexander Kabaev
5590f260e61bSAlexander Kabaev	* include/ext/pool_allocator.h: Fix typo.
5591f260e61bSAlexander Kabaev
5592f260e61bSAlexander Kabaev2004-02-03  Felix Yen  <[email protected]>
5593f260e61bSAlexander Kabaev	    Benjamin Kosnik  <[email protected]>
5594f260e61bSAlexander Kabaev
5595f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator.cc: Add map,
5596f260e61bSAlexander Kabaev	deque, set tests.
5597f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_thread.cc: Same.
5598f260e61bSAlexander Kabaev
5599f260e61bSAlexander Kabaev2004-02-03  Paolo Carlini  <[email protected]>
5600f260e61bSAlexander Kabaev
5601f260e61bSAlexander Kabaev	* include/bits/basic_string.h (insert(iterator)): Remove,
5602f260e61bSAlexander Kabaev	non-standard and already scheduled for removal.
5603f260e61bSAlexander Kabaev
5604f260e61bSAlexander Kabaev2004-02-03  Paolo Carlini  <[email protected]>
5605f260e61bSAlexander Kabaev
5606f260e61bSAlexander Kabaev	* include/bits/stl_iterator_base_funcs.h: Minor formatting
5607f260e61bSAlexander Kabaev	and indentation tweaks.
5608f260e61bSAlexander Kabaev	* include/bits/stl_iterator_base_types.h: Likewise.
5609f260e61bSAlexander Kabaev	* include/bits/stl_list.h: Likewise.
5610f260e61bSAlexander Kabaev	* include/bits/stl_map.h: Likewise.
5611f260e61bSAlexander Kabaev	* include/bits/stl_tempbuf.h: Likewise.
5612f260e61bSAlexander Kabaev
5613f260e61bSAlexander Kabaev2004-02-02  Jerry Quinn  <[email protected]>
5614f260e61bSAlexander Kabaev
5615f260e61bSAlexander Kabaev	* include/bits/gslice.h, include/bits/gslice_array.h,
5616f260e61bSAlexander Kabaev	include/bits/indirect_array.h, include/bits/mask_array.h,
5617f260e61bSAlexander Kabaev	include/bits/slice_array.h, include/bits/stl_numeric.h,
5618f260e61bSAlexander Kabaev	include/std/std_valarray.h:  Update copyright years.
5619f260e61bSAlexander Kabaev
5620f260e61bSAlexander Kabaev2004-02-02  Jerry Quinn  <[email protected]>
5621f260e61bSAlexander Kabaev
5622f260e61bSAlexander Kabaev	* include/bits/gslice.h (gslice):  Document.
5623f260e61bSAlexander Kabaev	* include/bits/gslice_array.h (gslice_array):  Document.
5624f260e61bSAlexander Kabaev	* include/bits/indirect_array (indirect_array):  Document.
5625f260e61bSAlexander Kabaev	* include/bits/mask_array (mask_array):  Document.
5626f260e61bSAlexander Kabaev	* include/bits/slice_array.h (slice,slice_array):  Document.
5627f260e61bSAlexander Kabaev	* include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
5628f260e61bSAlexander Kabaev	adjacent_difference):  Document
5629f260e61bSAlexander Kabaev	* include/std/std_valarray.h (valarray):  Document.
5630f260e61bSAlexander Kabaev
5631f260e61bSAlexander Kabaev2004-02-02  Benjamin Kosnik  <[email protected]>
5632f260e61bSAlexander Kabaev
5633f260e61bSAlexander Kabaev	* docs/html/19_diagnostics/howto.html: Move verbose terminate
5634f260e61bSAlexander Kabaev	documentation...
5635f260e61bSAlexander Kabaev	* docs/html/18_support/howto.html: Here.
5636f260e61bSAlexander Kabaev	* docs/html/documentation.html: Add reference here.
5637f260e61bSAlexander Kabaev
5638f260e61bSAlexander Kabaev2004-02-02  Paolo Carlini  <[email protected]>
5639f260e61bSAlexander Kabaev
5640f260e61bSAlexander Kabaev	* config/locale/gnu/c++locale_internal.h: Remove prototypes
5641f260e61bSAlexander Kabaev	of no longer used GLIBC thread locale functions.
5642f260e61bSAlexander Kabaev
5643f260e61bSAlexander Kabaev2004-02-02  Eric Christopher  <[email protected]>
5644f260e61bSAlexander Kabaev	    Zack Weinberg  <[email protected]>
5645f260e61bSAlexander Kabaev
5646f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
5647f260e61bSAlexander Kabaev	-finput-charset.
5648f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
5649f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
5650f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
5651f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
5652f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
5653f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
5654f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
5655f260e61bSAlexander Kabaev	* testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
5656f260e61bSAlexander Kabaev	Ditto.
5657f260e61bSAlexander Kabaev
5658f260e61bSAlexander Kabaev2004-02-02  Paolo Carlini  <[email protected]>
5659f260e61bSAlexander Kabaev
5660f260e61bSAlexander Kabaev	* include/bits/stl_function.h: Additional minor tweaks.
5661f260e61bSAlexander Kabaev	* include/bits/stl_multiset.h: Likewise.
5662f260e61bSAlexander Kabaev
5663f260e61bSAlexander Kabaev	* include/bits/stl_queue.h: Minor tweaks.
5664f260e61bSAlexander Kabaev
5665f260e61bSAlexander Kabaev2004-02-02  Paolo Carlini  <[email protected]>
5666f260e61bSAlexander Kabaev
5667f260e61bSAlexander Kabaev	PR libstdc++/13976 (continued)
5668f260e61bSAlexander Kabaev	* include/ext/malloc_allocator.h (malloc_allocator::deallocate):
5669f260e61bSAlexander Kabaev	Make the second parameter unnamed, to void unused parameter
5670f260e61bSAlexander Kabaev	warnings.
5671f260e61bSAlexander Kabaev	* include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
5672f260e61bSAlexander Kabaev
5673f260e61bSAlexander Kabaev2004-02-02  Paolo Carlini  <[email protected]>
5674f260e61bSAlexander Kabaev
5675f260e61bSAlexander Kabaev	PR libstdc++/13976
5676f260e61bSAlexander Kabaev	* include/ext/malloc_allocator.h (malloc_allocator::allocate):
5677f260e61bSAlexander Kabaev	Make the second parameter unnamed, to void unused parameter
5678f260e61bSAlexander Kabaev	warnings.
5679f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
5680f260e61bSAlexander Kabaev	* include/ext/new_allocator.h (new_allocator::allocate): Ditto.
5681f260e61bSAlexander Kabaev
5682f260e61bSAlexander Kabaev2004-02-01  Paolo Carlini  <[email protected]>
5683f260e61bSAlexander Kabaev
5684f260e61bSAlexander Kabaev	* include/bits/stl_algo.h: Additional minor tweaks.
5685f260e61bSAlexander Kabaev	* include/bits/stl_map.h: Likewise.
5686f260e61bSAlexander Kabaev	* include/bits/stl_multimap.h: Likewise.
5687f260e61bSAlexander Kabaev	* include/bits/stl_multiset.h: Likewise.
5688f260e61bSAlexander Kabaev	* include/bits/stl_set.h: Likewise.
5689f260e61bSAlexander Kabaev	* include/bits/stl_tree.h: Likewise.
5690f260e61bSAlexander Kabaev
5691f260e61bSAlexander Kabaev2004-02-01  Paolo Carlini  <[email protected]>
5692f260e61bSAlexander Kabaev
5693f260e61bSAlexander Kabaev	* include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
5694f260e61bSAlexander Kabaev	Remove, unused.
5695f260e61bSAlexander Kabaev
5696f260e61bSAlexander Kabaev2004-02-01  Paolo Carlini  <[email protected]>
5697f260e61bSAlexander Kabaev
5698f260e61bSAlexander Kabaev	* include/bits/stl_function.h: Additional minor tweaks.
5699f260e61bSAlexander Kabaev
5700f260e61bSAlexander Kabaev2004-02-01  Paolo Carlini  <[email protected]>
5701f260e61bSAlexander Kabaev
5702f260e61bSAlexander Kabaev	* include/bits/deque.tcc: Wrap overlong lines, constify
5703f260e61bSAlexander Kabaev	a few variables, reformat according to the coding standards.
5704f260e61bSAlexander Kabaev	* include/bits/list.tcc: Likewise.
5705f260e61bSAlexander Kabaev	* include/bits/stl_deque.h: Likewise.
5706f260e61bSAlexander Kabaev	* include/bits/stl_function.h: Likewise.
5707f260e61bSAlexander Kabaev	* include/bits/stl_iterator.h: Likewise.
5708f260e61bSAlexander Kabaev	* include/bits/stl_iterator_base_funcs.h: Likewise.
5709f260e61bSAlexander Kabaev	* include/bits/stl_iterator_base_types.h: Likewise.
5710f260e61bSAlexander Kabaev	* include/bits/stl_list.h: Likewise.
5711f260e61bSAlexander Kabaev	* include/bits/stl_map.h: Likewise.
5712f260e61bSAlexander Kabaev	* include/bits/stl_multimap.h: Likewise.
5713f260e61bSAlexander Kabaev	* include/bits/stl_multiset.h: Likewise.
5714f260e61bSAlexander Kabaev	* include/bits/stl_relops.h: Likewise.
5715f260e61bSAlexander Kabaev	* include/bits/stl_set.h: Likewise.
5716f260e61bSAlexander Kabaev
5717f260e61bSAlexander Kabaev2004-02-01  Paolo Carlini  <[email protected]>
5718f260e61bSAlexander Kabaev
5719f260e61bSAlexander Kabaev	* include/bits/stl_bvector.h: Wrap overlong lines, constify
5720f260e61bSAlexander Kabaev	a few variables, reformat according to the coding standards.
5721f260e61bSAlexander Kabaev	* include/bits/stl_tree.h: Likewise.
5722f260e61bSAlexander Kabaev
5723f260e61bSAlexander Kabaev2004-01-31  Paolo Carlini  <[email protected]>
5724f260e61bSAlexander Kabaev
5725f260e61bSAlexander Kabaev	* include/bits/stl_algo.h: Minor additional reformat, add
5726f260e61bSAlexander Kabaev	copyright year.
5727f260e61bSAlexander Kabaev	* include/bits/stl_algobase.h: Add copyright year.
5728f260e61bSAlexander Kabaev
5729f260e61bSAlexander Kabaev2004-01-31  Paolo Carlini  <[email protected]>
5730f260e61bSAlexander Kabaev
5731f260e61bSAlexander Kabaev	* include/bits/stl_algo.h: Wrap overlong lines, constify
5732f260e61bSAlexander Kabaev	a few variables, reformat according to the coding standards.
5733f260e61bSAlexander Kabaev	* include/bits/stl_algobase.h: Likewise.
5734f260e61bSAlexander Kabaev	* include/bits/stl_heap.h: Likewise.
5735f260e61bSAlexander Kabaev
5736f260e61bSAlexander Kabaev2004-01-31  Paolo Carlini  <[email protected]>
5737f260e61bSAlexander Kabaev
5738f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
5739f260e61bSAlexander Kabaev
5740f260e61bSAlexander Kabaev	* include/bits/basic_string.h: Fix two comments.
5741f260e61bSAlexander Kabaev
5742f260e61bSAlexander Kabaev2004-01-31  Per Bothner  <[email protected]>
5743f260e61bSAlexander Kabaev
5744f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h
5745f260e61bSAlexander Kabaev	(__mt_alloc::_S_thread_freelist_mutex): Guard with
5746f260e61bSAlexander Kabaev	__GTHREAD_MUTEX_INIT.
5747f260e61bSAlexander Kabaev
5748f260e61bSAlexander Kabaev2004-01-31  Paolo Carlini  <[email protected]>
5749f260e61bSAlexander Kabaev
5750f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
5751f260e61bSAlexander Kabaev
5752f260e61bSAlexander Kabaev2004-01-30  Paolo Carlini  <[email protected]>
5753f260e61bSAlexander Kabaev
5754f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/cons/char/6.cc: New.
5755f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
5756f260e61bSAlexander Kabaev	* testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
5757f260e61bSAlexander Kabaev
5758f260e61bSAlexander Kabaev2004-01-30  Felix Yen  <[email protected]>
5759f260e61bSAlexander Kabaev
5760f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_thread.cc (do_loop):
5761f260e61bSAlexander Kabaev	Don't use clear, but instead assign. Use insert.
5762f260e61bSAlexander Kabaev
5763f260e61bSAlexander Kabaev2004-01-30  Benjamin Kosnik  <[email protected]>
5764f260e61bSAlexander Kabaev
5765f260e61bSAlexander Kabaev	* src/demangle.cc: Add instantiations.
5766f260e61bSAlexander Kabaev	* src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
5767f260e61bSAlexander Kabaev	* src/Makefile.in: Regenerate.
5768f260e61bSAlexander Kabaev
5769f260e61bSAlexander Kabaev2004-01-30  David Edelsohn  <[email protected]>
5770f260e61bSAlexander Kabaev
5771f260e61bSAlexander Kabaev	* src/allocator.cc: Protect _S_get_thread_id() and
5772f260e61bSAlexander Kabaev	_S_thread_key_destr() with #ifdef __GTHREADS.
5773f260e61bSAlexander Kabaev
5774f260e61bSAlexander Kabaev2004-01-30  Paolo Carlini  <[email protected]>
5775f260e61bSAlexander Kabaev
5776f260e61bSAlexander Kabaev	Reshuffle performance testsuite.
5777f260e61bSAlexander Kabaev	* testsuite/performance/allocator.cc, allocator_map_thread.cc,
5778f260e61bSAlexander Kabaev	allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
5779f260e61bSAlexander Kabaev	cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
5780f260e61bSAlexander Kabaev	fstream_seek_write.cc, ifstream_extract_float.cc,
5781f260e61bSAlexander Kabaev	ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
5782f260e61bSAlexander Kabaev	list_create_fill_sort.cc, map_create_fill.cc,
5783f260e61bSAlexander Kabaev	narrow_widen_char.cc, narrow_widen_wchar_t.cc,
5784f260e61bSAlexander Kabaev	ofstream_insert_float.cc, ofstream_insert_int.cc,
5785f260e61bSAlexander Kabaev	string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
5786f260e61bSAlexander Kabaev	wchar_t_out.cc: Split into...
5787f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator.cc: New.
5788f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_map_thread.cc: New.
5789f260e61bSAlexander Kabaev	* testsuite/performance/20_util/allocator_thread.cc: New.
5790f260e61bSAlexander Kabaev	* testsuite/performance/21_strings/string_append: New.
5791f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/is_wchar_t.cc: New.
5792f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/narrow_widen_char.cc: New.
5793f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
5794f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/wchar_t_in.cc: New.
5795f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/wchar_t_length.cc: New.
5796f260e61bSAlexander Kabaev	* testsuite/performance/22_locale/wchar_t_out.cc: New.
5797f260e61bSAlexander Kabaev	* testsuite/performance/23_containers/container_benchmark.cc: New.
5798f260e61bSAlexander Kabaev	* testsuite/performance/23_containers/list_create_fill_sort.cc: New.
5799f260e61bSAlexander Kabaev	* testsuite/performance/23_containers/map_create_fill.cc: New.
5800f260e61bSAlexander Kabaev	* testsuite/performance/26_numerics/complex_norm.cc: New.
5801f260e61bSAlexander Kabaev	* testsuite/performance/27_io/cout_insert_int.cc: New.
5802f260e61bSAlexander Kabaev	* testsuite/performance/27_io/filebuf_copy.cc: New.
5803f260e61bSAlexander Kabaev	* testsuite/performance/27_io/filebuf_sputc.cc: New.
5804f260e61bSAlexander Kabaev	* testsuite/performance/27_io/fstream_seek_write.cc: New.
5805f260e61bSAlexander Kabaev	* testsuite/performance/27_io/ifstream_extract_float.cc: New.
5806f260e61bSAlexander Kabaev	* testsuite/performance/27_io/ifstream_extract_int.cc: New.
5807f260e61bSAlexander Kabaev	* testsuite/performance/27_io/ifstream_getline.cc: New.
5808f260e61bSAlexander Kabaev	* testsuite/performance/27_io/ofstream_insert_float.cc: New.
5809f260e61bSAlexander Kabaev	* testsuite/performance/27_io/ofstream_insert_int.cc: New.
5810f260e61bSAlexander Kabaev
5811f260e61bSAlexander Kabaev2004-01-30  Paolo Carlini  <[email protected]>
5812f260e61bSAlexander Kabaev
5813f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_Rep::_S_create):
5814f260e61bSAlexander Kabaev	Never allocate a string bigger than max_size(); always keep
5815f260e61bSAlexander Kabaev	__capacity and __size in sync to avoid memory leaks at
5816f260e61bSAlexander Kabaev	deallocation time.
5817f260e61bSAlexander Kabaev
5818f260e61bSAlexander Kabaev2004-01-30  Paolo Carlini  <[email protected]>
5819f260e61bSAlexander Kabaev
5820f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct(_InIterator,
5821f260e61bSAlexander Kabaev	_InIterator, const _Alloc&, input_iterator_tag)): Simplify
5822f260e61bSAlexander Kabaev	the double loop, streamline.
5823f260e61bSAlexander Kabaev
5824f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc: Very minor tweaks.
5825f260e61bSAlexander Kabaev
5826f260e61bSAlexander Kabaev2004-01-30  Loren J. Rittle  <[email protected]>
5827f260e61bSAlexander Kabaev
5828f260e61bSAlexander Kabaev	* scripts/check_performance: Only compile with $THREAD_FLAG
5829f260e61bSAlexander Kabaev	when test is marked to require it.  Allow multiple
5830f260e61bSAlexander Kabaev	compilations/executions of marked tests.
5831f260e61bSAlexander Kabaev	* testsuite/testsuite_performance.h (report_performance):
5832f260e61bSAlexander Kabaev	Report dynamic thread support status.
5833f260e61bSAlexander Kabaev	(report_header): Likewise.
5834f260e61bSAlexander Kabaev	* testsuite/performance/allocator.cc: Stabilize iteration
5835f260e61bSAlexander Kabaev	count.  Support more allocators.  Mark each allocator test to
5836f260e61bSAlexander Kabaev	run and report independently.
5837f260e61bSAlexander Kabaev	* testsuite/performance/allocator_map_thread.cc: Likewise.
5838f260e61bSAlexander Kabaev	* testsuite/performance/allocator_thread.cc: Likewise.
5839f260e61bSAlexander Kabaev
5840f260e61bSAlexander Kabaev2004-01-29  Stephen M. Webb  <[email protected]>
5841f260e61bSAlexander Kabaev
5842f260e61bSAlexander Kabaev	* config/local/generic/c_locale.h: Change ::malloc() to new char[].
5843f260e61bSAlexander Kabaev	* config/local/gnu/c_locale.h: Change ::malloc() to new char[].
5844f260e61bSAlexander Kabaev	* include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
5845f260e61bSAlexander Kabaev	std::get_temporary_buffer() instead of duplicating its code.
5846f260e61bSAlexander Kabaev	Update to C++STYLE conventions.
5847f260e61bSAlexander Kabaev	* include/std/std_memory.h (get_temporary_buffer): Use ::operator
5848f260e61bSAlexander Kabaev	new() instead of std::malloc().
5849f260e61bSAlexander Kabaev	(return_temporary_buffer): Use ::operator delete() instead of
5850f260e61bSAlexander Kabaev	std::free().
5851f260e61bSAlexander Kabaev
5852f260e61bSAlexander Kabaev2004-01-29  Benjamin Kosnik  <[email protected]>
5853f260e61bSAlexander Kabaev
5854f260e61bSAlexander Kabaev	* include/bits/allocator.h: Temporary switch to new_allocator as
5855f260e61bSAlexander Kabaev	the default to unjam bootstraps.
5856f260e61bSAlexander Kabaev
5857f260e61bSAlexander Kabaev2004-01-28  Benjamin Kosnik  <[email protected]>
5858f260e61bSAlexander Kabaev
5859f260e61bSAlexander Kabaev	* include/Makefile.am (bits_headers): Remove allocator_traits.h.
5860f260e61bSAlexander Kabaev	* include/Makefile.in: Regenerate.
5861f260e61bSAlexander Kabaev	* include/bits/allocator_traits.h: Remove.
5862f260e61bSAlexander Kabaev	* include/bits/allocator.h: Remove allocator_traits.h include, and
5863f260e61bSAlexander Kabaev	relevant comments.
5864f260e61bSAlexander Kabaev	(allocator): Empty base class, inherit from the underlying allocator.
5865f260e61bSAlexander Kabaev	* src/allocator-inst.cc: Move __pool_alloc instantiation to...
5866f260e61bSAlexander Kabaev	* src/allocator.cc: ...here. New. For the underlying allocators.
5867f260e61bSAlexander Kabaev	Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
5868f260e61bSAlexander Kabaev	* config/linker-map.gnu: Remove __pool_alloc bits.
5869f260e61bSAlexander Kabaev	* src/Makefile.am (sources): Add allocator.cc.
5870f260e61bSAlexander Kabaev	* src/Makefile.in: Regenerate.
5871f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/1.cc: Split second test into...
5872f260e61bSAlexander Kabaev	* testsuite/20_util/allocator/8230.cc: ...this.
5873f260e61bSAlexander Kabaev	* include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
5874f260e61bSAlexander Kabaev	typedef to use std::allocatore. Format.
5875f260e61bSAlexander Kabaev	* include/ext/pool_allocator.h: Remove allocator_traits.h include,
5876f260e61bSAlexander Kabaev	_Alloc_traits.
5877f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h (__gnu_cxx): Qualify
5878f260e61bSAlexander Kabaev	__throw_bad_alloc calls. Don't include <memory>.
5879f260e61bSAlexander Kabaev	* include/ext/malloc_allocator.h: Remove <memory> include.
5880f260e61bSAlexander Kabaev	* include/ext/new_allocator.h (new_allocator): Same.
5881f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
5882f260e61bSAlexander Kabaev	declaration. Switch __alloc to _Alloc.
5883f260e61bSAlexander Kabaev	* include/ext/hashtable.h: Remove __alloc.
5884f260e61bSAlexander Kabaev	* include/backward/alloc.h: Only inject allocator, not
5885f260e61bSAlexander Kabaev	implementation details.
5886f260e61bSAlexander Kabaev
5887f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Replace free with delete.
5888f260e61bSAlexander Kabaev
5889f260e61bSAlexander Kabaev2004-01-28  Benjamin Kosnik  <[email protected]>
5890f260e61bSAlexander Kabaev
5891f260e61bSAlexander Kabaev	* src/globals_io.cc: Change to __gnu_internal namespace.
5892f260e61bSAlexander Kabaev	* src/globals_locale.cc: Same.
5893f260e61bSAlexander Kabaev	* src/locale_init.cc: Same.
5894f260e61bSAlexander Kabaev	* src/ios_init.cc: Same.
5895f260e61bSAlexander Kabaev
5896f260e61bSAlexander Kabaev2004-01-28  Stefan Olsson  <[email protected]>
5897f260e61bSAlexander Kabaev
5898f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Replaced all malloc() calls with
5899f260e61bSAlexander Kabaev	operator new(). Added support for the env variable
5900f260e61bSAlexander Kabaev	GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
5901f260e61bSAlexander Kabaev	one in allocate() as well). Fix typos.
5902f260e61bSAlexander Kabaev
5903f260e61bSAlexander Kabaev2004-01-28  Paolo Carlini  <[email protected]>
5904f260e61bSAlexander Kabaev
5905f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_S_create(size_t,
5906f260e61bSAlexander Kabaev	const _Alloc&): Change signature to take two size_type
5907f260e61bSAlexander Kabaev	arguments.
5908f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct(_InIterator,
5909f260e61bSAlexander Kabaev	_InIterator, const _Alloc&, input_iterator_tag)): Update
5910f260e61bSAlexander Kabaev	call, tweak a bit.
5911f260e61bSAlexander Kabaev	(_S_construct(_InIterator, _InIterator, const _Alloc&,
5912f260e61bSAlexander Kabaev	forward_iterator_tag)): Likewise.
5913f260e61bSAlexander Kabaev	(_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
5914f260e61bSAlexander Kabaev	(_M_mutate(size_type, size_type, size_type)): Don't
5915f260e61bSAlexander Kabaev	implement the exponential growth policy, demand it to
5916f260e61bSAlexander Kabaev	_S_create, update call and simplify.
5917f260e61bSAlexander Kabaev	(_M_clone(const _Alloc&, size_type)): Likewise.
5918f260e61bSAlexander Kabaev	(_S_create(size_type, size_type, const _Alloc&)): Implement
5919f260e61bSAlexander Kabaev	the growth policy, simplify otherwise.
5920f260e61bSAlexander Kabaev
5921f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_Rep::operator[]): Tweak
5922f260e61bSAlexander Kabaev	signature to take a size_type, consistently with the other
5923f260e61bSAlexander Kabaev	members.
5924f260e61bSAlexander Kabaev
5925f260e61bSAlexander Kabaev2004-01-27  Benjamin Kosnik  <[email protected]>
5926f260e61bSAlexander Kabaev
5927f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/11584.cc: Correct new and
5928f260e61bSAlexander Kabaev	delete declarations, add include and test variable.
5929f260e61bSAlexander Kabaev
5930f260e61bSAlexander Kabaev2003-01-27  Jerry Quinn  <[email protected]>
5931f260e61bSAlexander Kabaev
5932f260e61bSAlexander Kabaev	* include/bits/codecvt.h, include/bits/locale_facets.h,
5933f260e61bSAlexander Kabaev	include/bits/postypes.h, include/bits/stl_bvector.h,
5934f260e61bSAlexander Kabaev	include/bits/stl_multiset.h, include/bits/stl_set.h,
5935f260e61bSAlexander Kabaev	include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
5936f260e61bSAlexander Kabaev	include/std/std_complex.h:  Document.
5937f260e61bSAlexander Kabaev
5938f260e61bSAlexander Kabaev2004-01-27  Jerry Quinn  <[email protected]>
5939f260e61bSAlexander Kabaev
5940f260e61bSAlexander Kabaev	PR libstdc++/11584
5941f260e61bSAlexander Kabaev	* include/bits/ios_base.h (ios_base::_M_grow_words):  Add
5942f260e61bSAlexander Kabaev	iword/pword selector.
5943f260e61bSAlexander Kabaev	(ios_base::iword, ios_base::pword):  Use it.
5944f260e61bSAlexander Kabaev	* src/ios.cc (ios_base::_M_grow_words):  Clear _M_word_zero
5945f260e61bSAlexander Kabaev	iword or pword member on alloc failure.
5946f260e61bSAlexander Kabaev	* testsuite/27_io/ios_base/storage/11584.cc:  New test.
5947f260e61bSAlexander Kabaev
5948f260e61bSAlexander Kabaev2004-01-27  Ulrich Weigand  <[email protected]>
5949f260e61bSAlexander Kabaev	    PJ Darcy  <[email protected]>
5950f260e61bSAlexander Kabaev
5951f260e61bSAlexander Kabaev	* configure.host: Add support for *-tpf.
5952f260e61bSAlexander Kabaev	* crossconfig.m4: Likewise.
5953f260e61bSAlexander Kabaev	* configure: Regenerate.
5954f260e61bSAlexander Kabaev	* config/os/tpf: New directory.
5955f260e61bSAlexander Kabaev	* config/os/tpf/os_defines.h: New file.
5956f260e61bSAlexander Kabaev	* config/os/tpf/ctype_base.h: Likewise.
5957f260e61bSAlexander Kabaev	* config/os/tpf/ctype_inline.h: Likewise.
5958f260e61bSAlexander Kabaev	* config/os/tpf/ctype_noninline.h: Likewise.
5959f260e61bSAlexander Kabaev
5960f260e61bSAlexander Kabaev2004-01-27  Paolo Carlini  <[email protected]>
5961f260e61bSAlexander Kabaev
5962f260e61bSAlexander Kabaev	PR libstdc++/13884
5963f260e61bSAlexander Kabaev	* include/bits/sstream.tcc: Guard use of extern template.
5964f260e61bSAlexander Kabaev
5965f260e61bSAlexander Kabaev2004-01-27  Paolo Carlini  <[email protected]>
5966f260e61bSAlexander Kabaev
5967f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc
5968f260e61bSAlexander Kabaev	(basic_string(const basic_string&, size_type, size_type),
5969f260e61bSAlexander Kabaev	basic_string(const basic_string&, size_type, size_type,
5970f260e61bSAlexander Kabaev	const _Alloc&)): Avoid unnecessarily constructing iterators.
5971f260e61bSAlexander Kabaev
5972f260e61bSAlexander Kabaev2004-01-26  Paolo Carlini  <[email protected]>
5973f260e61bSAlexander Kabaev
5974f260e61bSAlexander Kabaev	* config/locale/generic/c_locale.cc: Fix throw messages
5975f260e61bSAlexander Kabaev	to use the __N marker.
5976f260e61bSAlexander Kabaev	* config/locale/gnu/c_locale.cc: Likewise.
5977f260e61bSAlexander Kabaev	* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
5978f260e61bSAlexander Kabaev	Likewise.
5979f260e61bSAlexander Kabaev	* docs/html/17_intro/C++STYLE: Likewise.
5980f260e61bSAlexander Kabaev	* include/bits/basic_ios.tcc: Likewise.
5981f260e61bSAlexander Kabaev	* include/bits/fstream.tcc: Likewise.
5982f260e61bSAlexander Kabaev	* include/bits/vector.tcc: Likewise.
5983f260e61bSAlexander Kabaev	* include/ext/ropeimpl.h: Likewise.
5984f260e61bSAlexander Kabaev	* include/std/std_bitset.h: Likewise.
5985f260e61bSAlexander Kabaev	* src/ios.cc: Likewise.
5986f260e61bSAlexander Kabaev	* src/locale.cc: Likewise.
5987f260e61bSAlexander Kabaev	* src/localename.cc: Likewise.
5988f260e61bSAlexander Kabaev
5989f260e61bSAlexander Kabaev2004-01-26  Paolo Carlini  <[email protected]>
5990f260e61bSAlexander Kabaev
5991f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_replace_aux): Use the
5992f260e61bSAlexander Kabaev	__N marker in throw message.
5993f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (assign(const _CharT*,
5994f260e61bSAlexander Kabaev	size_type), insert(size_type, const _CharT*, size_type),
5995f260e61bSAlexander Kabaev	replace(size_type, size_type, const _CharT*, size_type),
5996f260e61bSAlexander Kabaev	reserve, _Rep::_S_create, resize, _M_replace_dispatch):
5997f260e61bSAlexander Kabaev	Likewise.
5998f260e61bSAlexander Kabaev
5999f260e61bSAlexander Kabaev	* include/bits/basic_string.h, include/bits/basic_string.tcc:
6000f260e61bSAlexander Kabaev	Fold overlong lines, minor formatting changes.
6001f260e61bSAlexander Kabaev
6002f260e61bSAlexander Kabaev2004-01-26  Paolo Carlini  <[email protected]>
6003f260e61bSAlexander Kabaev
6004f260e61bSAlexander Kabaev	* include/bits/basic_string.h (replace(iterator, iterator,
6005f260e61bSAlexander Kabaev	const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
6006f260e61bSAlexander Kabaev	(replace(iterator, iterator, const _CharT*)): Ditto.
6007f260e61bSAlexander Kabaev	(replace(iterator, iterator, const _CharT*, size_type)):
6008f260e61bSAlexander Kabaev	Add missing _GLIBCXX_DEBUG_PEDASSERT.
6009f260e61bSAlexander Kabaev
6010f260e61bSAlexander Kabaev2004-01-26  Paolo Carlini  <[email protected]>
6011f260e61bSAlexander Kabaev
6012f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (replace(size_type,
6013f260e61bSAlexander Kabaev	size_type, const _CharT*, size_type)): Implement optimized
6014f260e61bSAlexander Kabaev	in-place algorithm for non-overlapping ranges.
6015f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/replace/char/6.cc: New.
6016f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
6017f260e61bSAlexander Kabaev
6018f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (insert(size_type,
6019f260e61bSAlexander Kabaev	const _CharT*, size_type)): Tweak slightly.
6020f260e61bSAlexander Kabaev
6021f260e61bSAlexander Kabaev2004-01-26  Andreas Schwab  <[email protected]>
6022f260e61bSAlexander Kabaev
6023f260e61bSAlexander Kabaev	* config/locale/gnu/monetary_members.cc: Restore locale before
6024f260e61bSAlexander Kabaev	rethrowing exception.
6025f260e61bSAlexander Kabaev
6026f260e61bSAlexander Kabaev2004-01-25  Paolo Carlini  <[email protected]>
6027f260e61bSAlexander Kabaev
6028f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
6029f260e61bSAlexander Kabaev	Define inline here.
6030f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
6031f260e61bSAlexander Kabaev	Move inline.
6032f260e61bSAlexander Kabaev
6033f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc: Very minor tweaks.
6034f260e61bSAlexander Kabaev
6035f260e61bSAlexander Kabaev2004-01-25  Paolo Carlini  <[email protected]>
6036f260e61bSAlexander Kabaev
6037f260e61bSAlexander Kabaev	* testsuite/performance/string_append.cc: Increase number
6038f260e61bSAlexander Kabaev	of iterations.
6039f260e61bSAlexander Kabaev
6040f260e61bSAlexander Kabaev2004-01-25  Paolo Carlini  <[email protected]>
6041f260e61bSAlexander Kabaev
6042f260e61bSAlexander Kabaev	* include/bits/basic_string.h (erase(size_type, size_type),
6043f260e61bSAlexander Kabaev	erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
6044f260e61bSAlexander Kabaev	instead, thus avoiding redundant check for length_error.
6045f260e61bSAlexander Kabaev
6046f260e61bSAlexander Kabaev	* include/bits/basic_string.h: Tweak some comments.
6047f260e61bSAlexander Kabaev
6048f260e61bSAlexander Kabaev2004-01-24  Paolo Carlini  <[email protected]>
6049f260e61bSAlexander Kabaev
6050f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (operator+(const _CharT*,
6051f260e61bSAlexander Kabaev	const basic_string&)): No need to go through the append
6052f260e61bSAlexander Kabaev	taking two iterators.
6053f260e61bSAlexander Kabaev
6054f260e61bSAlexander Kabaev2004-01-24  Paolo Carlini  <[email protected]>
6055f260e61bSAlexander Kabaev
6056f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (rfind(_CharT, size_type)):
6057f260e61bSAlexander Kabaev	Revert last change to use std::min: machine language is worse.
6058f260e61bSAlexander Kabaev	(find_last_of(const _CharT*, size_type, size_type)): Ditto.
6059f260e61bSAlexander Kabaev	(find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
6060f260e61bSAlexander Kabaev	(find_last_not_of(_CharT, size_type)): Ditto.
6061f260e61bSAlexander Kabaev
6062f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (insert(size_type, const _CharT*,
6063f260e61bSAlexander Kabaev	size_type)): Discard the value returned by _M_check.
6064f260e61bSAlexander Kabaev	(replace(size_type, size_type, const _CharT*, size_type)): Ditto.
6065f260e61bSAlexander Kabaev	(append(const basic_string&, size_type, size_type)): Ditto.
6066f260e61bSAlexander Kabaev	(copy(_CharT*, size_type, size_type)): Ditto.
6067f260e61bSAlexander Kabaev	(compare(size_type, size_type, const basic_string&)): Ditto.
6068f260e61bSAlexander Kabaev	(compare(size_type, size_type, const basic_string&,
6069f260e61bSAlexander Kabaev	size_type, size_type)): Ditto.
6070f260e61bSAlexander Kabaev	(compare(size_type, size_type, const _CharT*)): Ditto.
6071f260e61bSAlexander Kabaev	(compare(size_type, size_type, const _CharT*, size_type)): Ditto.
6072f260e61bSAlexander Kabaev
6073f260e61bSAlexander Kabaev2004-01-24  Paolo Carlini  <[email protected]>
6074f260e61bSAlexander Kabaev
6075f260e61bSAlexander Kabaev	* include/bits/basic_string.h (insert(size_type,
6076f260e61bSAlexander Kabaev	const basic_string&, size_type, size_type)): Define inline here.
6077f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (insert(size_type,
6078f260e61bSAlexander Kabaev	const basic_string&, size_type, size_type)): Move inline.
6079f260e61bSAlexander Kabaev
6080f260e61bSAlexander Kabaev2004-01-24  Paolo Carlini  <[email protected]>
6081f260e61bSAlexander Kabaev
6082f260e61bSAlexander Kabaev	* include/bits/basic_string.h (assign(const basic_string&,
6083f260e61bSAlexander Kabaev	size_type, size_type)): Define inline here.
6084f260e61bSAlexander Kabaev	(replace(size_type, size_type, const basic_string&,
6085f260e61bSAlexander Kabaev	size_type, size_type)): Ditto.
6086f260e61bSAlexander Kabaev	(_M_replace_dispatch(iterator, iterator, _InputIterator,
6087f260e61bSAlexander Kabaev	_InputIterator, __false_type)): Only declare.
6088f260e61bSAlexander Kabaev	(_M_replace(iterator, iterator, _InputIterator,
6089f260e61bSAlexander Kabaev	_InputIterator)): Remove.
6090f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (assign(const basic_string&,
6091f260e61bSAlexander Kabaev	size_type, size_type)): Move inline.
6092f260e61bSAlexander Kabaev	(replace(size_type, size_type, const basic_string&,
6093f260e61bSAlexander Kabaev	size_type, size_type)): Ditto.
6094f260e61bSAlexander Kabaev	(_M_replace_dispatch(iterator, iterator, _InputIterator,
6095f260e61bSAlexander Kabaev	_InputIterator, __false_type)): Define, now does also what
6096f260e61bSAlexander Kabaev	_M_replace did before.
6097f260e61bSAlexander Kabaev	* src/string-inst.cc (_M_replace): Don't instantiate.
6098f260e61bSAlexander Kabaev
6099f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (find(const _CharT*,
6100f260e61bSAlexander Kabaev	size_type, size_type)): Tidy.
6101f260e61bSAlexander Kabaev	(rfind(_CharT, size_type)): Ditto.
6102f260e61bSAlexander Kabaev	(find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
6103f260e61bSAlexander Kabaev	(find_first_not_of(_CharT, size_type)): Ditto.
6104f260e61bSAlexander Kabaev	(find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
6105f260e61bSAlexander Kabaev	(find_last_not_of(_CharT, size_type)): Ditto.
6106f260e61bSAlexander Kabaev
6107f260e61bSAlexander Kabaev2004-01-23  Paolo Carlini  <[email protected]>
6108f260e61bSAlexander Kabaev
6109f260e61bSAlexander Kabaev	PR libstdc++/13838
6110f260e61bSAlexander Kabaev	* include/debug/bitset (operator|=): Fix typo.
6111f260e61bSAlexander Kabaev	* testsuite/23_containers/bitset/operations/13838.cc: New.
6112f260e61bSAlexander Kabaev
6113f260e61bSAlexander Kabaev2004-01-23  Paolo Carlini  <[email protected]>
6114f260e61bSAlexander Kabaev
6115f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (insert(size_type,
6116f260e61bSAlexander Kabaev	const _CharT*, size_type __n)): Fix length_error check.
6117f260e61bSAlexander Kabaev	(replace(size_type, size_type, const _CharT*, size_type):
6118f260e61bSAlexander Kabaev	Ditto; call _M_replace_safe.
6119f260e61bSAlexander Kabaev	(_M_replace_aux(size_type, size_type, size_type, _CharT):
6120f260e61bSAlexander Kabaev	Fix length_error check.
6121f260e61bSAlexander Kabaev	(_M_replace(iterator, iterator, _InputIterator,
6122f260e61bSAlexander Kabaev	_InputIterator)): Ditto, tweak.
6123f260e61bSAlexander Kabaev	(_M_replace_safe(size_type, size_type, const _CharT*,
6124f260e61bSAlexander Kabaev	size_type)): Remove length_error check.
6125f260e61bSAlexander Kabaev
6126f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (append(const basic_string&),
6127f260e61bSAlexander Kabaev	append(const basic_string&, size_type, size_type)): Tweak
6128f260e61bSAlexander Kabaev	comment.
6129f260e61bSAlexander Kabaev
6130f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (copy(_CharT*, size_type,
6131f260e61bSAlexander Kabaev	size_type)): If __n == 0 don't call traits::copy.
6132f260e61bSAlexander Kabaev
6133f260e61bSAlexander Kabaev2004-01-23  Stefan Olsson  <[email protected]>
6134f260e61bSAlexander Kabaev
6135f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Reduce lock contention.
6136f260e61bSAlexander Kabaev
6137f260e61bSAlexander Kabaev2004-01-23  Paolo Carlini  <[email protected]>
6138f260e61bSAlexander Kabaev
6139f260e61bSAlexander Kabaev	PR libstdc++/13831
6140f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (underflow): Remove unused
6141f260e61bSAlexander Kabaev	variable.
6142f260e61bSAlexander Kabaev	* include/bits/streambuf_iterator.h (equal): Ditto.
6143f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (_M_convert_from_char):
6144f260e61bSAlexander Kabaev	Ditto.
6145f260e61bSAlexander Kabaev
6146f260e61bSAlexander Kabaev2004-01-23  Kaveh R. Ghazi  <[email protected]>
6147f260e61bSAlexander Kabaev
6148f260e61bSAlexander Kabaev	PR c/13814
6149f260e61bSAlexander Kabaev	* config/linker-map.gnu (nan): Delete.
6150f260e61bSAlexander Kabaev	* libmath/mathconf.h (NAN, nan): Delete.
6151f260e61bSAlexander Kabaev	* linkage.m4 (nan): Don't check for it.
6152f260e61bSAlexander Kabaev	* libmath/nan.c: Delete file.
6153f260e61bSAlexander Kabaev
6154f260e61bSAlexander Kabaev	* config.h.in, configure: Regenerate.
6155f260e61bSAlexander Kabaev
6156f260e61bSAlexander Kabaev2004-01-23  Paolo Carlini  <[email protected]>
6157f260e61bSAlexander Kabaev
6158f260e61bSAlexander Kabaev	* include/bits/basic_string.h (push_back(_CharT)):
6159f260e61bSAlexander Kabaev	Call _M_replace_aux.
6160f260e61bSAlexander Kabaev	(insert(size_type, const basic_string&)): Trivial tweak.
6161f260e61bSAlexander Kabaev	(insert(size_type, size_type, _CharT)): Call _M_replace_aux.
6162f260e61bSAlexander Kabaev	(insert(iterator, _CharT)): Ditto.
6163f260e61bSAlexander Kabaev	(erase(size_type, size_type)): Ditto.
6164f260e61bSAlexander Kabaev	(erase(iterator)): Ditto.
6165f260e61bSAlexander Kabaev	(erase(iterator, iterator)): Ditto.
6166f260e61bSAlexander Kabaev	(replace(size_type, size_type, size_type, _CharT)): Ditto.
6167f260e61bSAlexander Kabaev
6168f260e61bSAlexander Kabaev2004-01-23  Loren J. Rittle  <[email protected]>
6169f260e61bSAlexander Kabaev
6170f260e61bSAlexander Kabaev	libstdc++/13823
6171f260e61bSAlexander Kabaev	* testsuite/performance/allocator_map_thread.cc: New test.
6172f260e61bSAlexander Kabaev
6173f260e61bSAlexander Kabaev2004-01-22  Paolo Carlini  <[email protected]>
6174f260e61bSAlexander Kabaev
6175f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc
6176f260e61bSAlexander Kabaev	(money_put::do_put(..., long double)): Use the basic_string
6177f260e61bSAlexander Kabaev	constructor for char arrays, not that for C-strings, to pass
6178f260e61bSAlexander Kabaev	__digits to do_put(..., const string_type&): __ws isn't
6179f260e61bSAlexander Kabaev	null-terminated.
6180f260e61bSAlexander Kabaev
6181f260e61bSAlexander Kabaev2004-01-22  Paolo Carlini  <[email protected]>
6182f260e61bSAlexander Kabaev
6183f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_replace_safe): Change
6184f260e61bSAlexander Kabaev	signatures to take size_types and const _CharT*.
6185f260e61bSAlexander Kabaev	(_M_replace_aux): Likewise, takes size_types instead of
6186f260e61bSAlexander Kabaev	iterators.
6187f260e61bSAlexander Kabaev	(append(size_type, _CharT)): Update call.
6188f260e61bSAlexander Kabaev	(assign(size_type, _CharT)): Ditto.
6189f260e61bSAlexander Kabaev	(replace(iterator, iterator, size_type, _CharT)): Ditto.
6190f260e61bSAlexander Kabaev	(_M_replace_dispatch(iterator, iterator, _Integer,
6191f260e61bSAlexander Kabaev	_Integer, __true_type)): Ditto.
6192f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (assign(const _CharT*,
6193f260e61bSAlexander Kabaev	size_type)): Ditto.
6194f260e61bSAlexander Kabaev	(insert(size_type, const _CharT*, size_type)): Ditto.
6195f260e61bSAlexander Kabaev	(replace(size_type, size_type, const _CharT*,
6196f260e61bSAlexander Kabaev	size_type)): Ditto.
6197f260e61bSAlexander Kabaev	(_M_replace(iterator, iterator, _InputIterator,
6198f260e61bSAlexander Kabaev	_InputIterator)): Ditto.
6199f260e61bSAlexander Kabaev	(append(const basic_string&)): Ditto.
6200f260e61bSAlexander Kabaev	(append(const basic_string&, size_type, size_type): Ditto.
6201f260e61bSAlexander Kabaev	(append(const _CharT*, size_type): Ditto.
6202f260e61bSAlexander Kabaev	(_M_replace_safe, _M_replace_safe): Change definitions
6203f260e61bSAlexander Kabaev	accordingly, simplify.
6204f260e61bSAlexander Kabaev	* string-inst.cc (_M_replace_safe): Don't instantiate.
6205f260e61bSAlexander Kabaev
6206f260e61bSAlexander Kabaev2004-01-21  Paolo Carlini  <[email protected]>
6207f260e61bSAlexander Kabaev
6208f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (append(const basic_string&)):
6209f260e61bSAlexander Kabaev	Revert previous change.
6210f260e61bSAlexander Kabaev	(append(const basic_string&, size_type, size_type)): Revert
6211f260e61bSAlexander Kabaev	previous change, use _M_check and _M_limit.
6212f260e61bSAlexander Kabaev
6213f260e61bSAlexander Kabaev2004-01-21  Paolo Carlini  <[email protected]>
6214f260e61bSAlexander Kabaev
6215f260e61bSAlexander Kabaev	* include/bits/basic_string.h (_M_check): Change to return
6216f260e61bSAlexander Kabaev	a checked __pos and take an additional const char* argument.
6217f260e61bSAlexander Kabaev	(_M_fold): Rename to _M_limit, change to return a size_type,
6218f260e61bSAlexander Kabaev	corresponding to the __off limited to the actual length.
6219f260e61bSAlexander Kabaev	(insert(size_type, size_type, _CharT)): Update call, call
6220f260e61bSAlexander Kabaev	replace.
6221f260e61bSAlexander Kabaev	(insert(iterator, _CharT)): Call replace(iterator, iterator,
6222f260e61bSAlexander Kabaev	size_type, _CharT) instead.
6223f260e61bSAlexander Kabaev	(erase(size_type, size_type)): Update calls.
6224f260e61bSAlexander Kabaev	(replace(size_type, size_type, size_type, _CharT)): Ditto.
6225f260e61bSAlexander Kabaev	(substr(size_type, size_type)): Use _M_check.
6226f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (basic_string(const basic_string&,
6227f260e61bSAlexander Kabaev	size_type, size_type)): Update calls.
6228f260e61bSAlexander Kabaev	(basic_string(const basic_string&, size_type, size_type,
6229f260e61bSAlexander Kabaev	const _Alloc&)): Ditto.
6230f260e61bSAlexander Kabaev	(assign(const basic_string&, size_type, size_type)): Use the
6231f260e61bSAlexander Kabaev	new _M_check and _M_limit.
6232f260e61bSAlexander Kabaev	(insert(size_type, const basic_string&, size_type, size_type):
6233f260e61bSAlexander Kabaev	Ditto.
6234f260e61bSAlexander Kabaev	(insert(size_type, const _CharT*, size_type)): Ditto.
6235f260e61bSAlexander Kabaev	(replace(size_type, size_type, const _CharT*, size_type): Ditto.
6236f260e61bSAlexander Kabaev	(replace(size_type, size_type, const basic_string&,
6237f260e61bSAlexander Kabaev	size_type, size_type)): Ditto.
6238f260e61bSAlexander Kabaev	(append(const basic_string&)): Ditto.
6239f260e61bSAlexander Kabaev	(append(const basic_string&, size_type, size_type)): Ditto.
6240f260e61bSAlexander Kabaev	(copy(_CharT*, size_type, size_type)): Ditto.
6241f260e61bSAlexander Kabaev	(compare(size_type, size_type, const basic_string&)): Ditto.
6242f260e61bSAlexander Kabaev	(compare(size_type, size_type, const basic_string&,size_type,
6243f260e61bSAlexander Kabaev	size_type)): Ditto.
6244f260e61bSAlexander Kabaev	(compare(size_type, size_type, const _CharT*)): Ditto.
6245f260e61bSAlexander Kabaev	(compare(size_type, size_type, const _CharT*, size_type)): Ditto.
6246f260e61bSAlexander Kabaev
6247f260e61bSAlexander Kabaev2004-01-19  Stefan Olsson  <[email protected]>
6248f260e61bSAlexander Kabaev
6249f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: If a thread, when it dies, still has
6250f260e61bSAlexander Kabaev	memory on it's freelist this memory is not returned to global
6251f260e61bSAlexander Kabaev	list. Simplification of deallocate so that memory is always
6252f260e61bSAlexander Kabaev	returned to the calling thread id's freelist instead of to
6253f260e61bSAlexander Kabaev	global. Fix typos. Add volatile where appropriate.
6254f260e61bSAlexander Kabaev
6255f260e61bSAlexander Kabaev2004-01-19  Loren J. Rittle  <[email protected]>
6256f260e61bSAlexander Kabaev
6257f260e61bSAlexander Kabaev	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
6258f260e61bSAlexander Kabaev	* testsuite/ext/stdio_filebuf/char/10063-3.cc: New test.  Like -2 but
6259f260e61bSAlexander Kabaev	use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
6260f260e61bSAlexander Kabaev
6261f260e61bSAlexander Kabaev2004-01-19  Paolo Carlini  <[email protected]>
6262f260e61bSAlexander Kabaev
6263f260e61bSAlexander Kabaev	* src/debug.cc: Make sure all the names are prefixed with
6264f260e61bSAlexander Kabaev	double (or single) underscore.
6265f260e61bSAlexander Kabaev
6266f260e61bSAlexander Kabaev2004-01-19  Paolo Carlini  <[email protected]>
6267f260e61bSAlexander Kabaev
6268f260e61bSAlexander Kabaev	* src/debug.cc: Trivial formatting change.
6269f260e61bSAlexander Kabaev
6270f260e61bSAlexander Kabaev2004-01-19  Paolo Carlini  <[email protected]>
6271f260e61bSAlexander Kabaev
6272f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_S_construct(size_type,
6273f260e61bSAlexander Kabaev	_CharT, const _Alloc&)): Remove redundant try/catch.
6274f260e61bSAlexander Kabaev	(_M_mutate(size_type, size_type, size_type)): Ditto.
6275f260e61bSAlexander Kabaev	(_M_clone(const _Alloc&, size_type)): Ditto.
6276f260e61bSAlexander Kabaev
6277f260e61bSAlexander Kabaev2004-01-18  Paolo Carlini  <[email protected]>
6278f260e61bSAlexander Kabaev
6279f260e61bSAlexander Kabaev	* include/bits/basic_string.h (c_str()): Simplify, due to
6280f260e61bSAlexander Kabaev	21.3.4 the internal representation is always kept null-terminated.
6281f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (_M_clone): Null-terminate.
6282f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/element_access/char/4.cc: New.
6283f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
6284f260e61bSAlexander Kabaev	Ditto.
6285f260e61bSAlexander Kabaev
6286f260e61bSAlexander Kabaev2004-01-18  Paolo Carlini  <[email protected]>
6287f260e61bSAlexander Kabaev
6288f260e61bSAlexander Kabaev	* include/bits/basic_string.h (append(size_type, _CharT)):
6289f260e61bSAlexander Kabaev	Moved inline, just call _M_replace_aux, no source iterators at
6290f260e61bSAlexander Kabaev	risk of being clobbered.
6291f260e61bSAlexander Kabaev	(assign(size_type, _CharT)): Call directly _M_replace_aux.
6292f260e61bSAlexander Kabaev	(_M_replace(iterator, iterator, _InputIterator, _InputIterator,
6293f260e61bSAlexander Kabaev	input_iterator_tag)): Remove fifth unused argument.
6294f260e61bSAlexander Kabaev	(_M_replace_dispatch(iterator, iterator, _InputIterator,
6295f260e61bSAlexander Kabaev	_InputIterator, __false_type)): Update call.
6296f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (replace(size_type, size_type,
6297f260e61bSAlexander Kabaev	const _CharT*, size_type)): Update call.
6298f260e61bSAlexander Kabaev	(_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
6299f260e61bSAlexander Kabaev	throw string literal.
6300f260e61bSAlexander Kabaev	(_M_replace_safe(iterator, iterator, _ForwardIterator,
6301f260e61bSAlexander Kabaev	_ForwardIterator)): Likewise.
6302f260e61bSAlexander Kabaev	(_M_replace(iterator, iterator, _InputIterator, _InputIterator,
6303f260e61bSAlexander Kabaev	input_iterator_tag)): Remove fifth unused argument.
6304f260e61bSAlexander Kabaev	(append(size_type __n, _CharT __c)): Move inline.
6305f260e61bSAlexander Kabaev	* src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
6306f260e61bSAlexander Kabaev	const C*, const C*, input_iterator_tag)): Remove fifth unused
6307f260e61bSAlexander Kabaev	argument.
6308f260e61bSAlexander Kabaev
6309f260e61bSAlexander Kabaev2004-01-16  Benjamin Kosnik  <[email protected]>
6310f260e61bSAlexander Kabaev
6311f260e61bSAlexander Kabaev	* testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
6312f260e61bSAlexander Kabaev	* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
6313f260e61bSAlexander Kabaev
6314f260e61bSAlexander Kabaev2004-01-16  Danny Smith  <[email protected]>
6315f260e61bSAlexander Kabaev
6316f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
6317f260e61bSAlexander Kabaev	mkfifo for mingw32.
6318f260e61bSAlexander Kabaev
6319f260e61bSAlexander Kabaev2004-01-15  Stefan Olsson  <[email protected]>
6320f260e61bSAlexander Kabaev
6321f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Reuse thread id's as soon as
6322f260e61bSAlexander Kabaev	possible by changing the behaviour of thread_freelist to do
6323f260e61bSAlexander Kabaev	push_front when threads die instead of push_back.
6324f260e61bSAlexander Kabaev
6325f260e61bSAlexander Kabaev2004-01-14  Paolo Carlini  <[email protected]>
6326f260e61bSAlexander Kabaev
6327f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (struct __numpunct_cache):
6328f260e61bSAlexander Kabaev	Add member _M_grouping_size, caching the length of _M_grouping.
6329f260e61bSAlexander Kabaev	(__numpunct_cache<>::_M_cache): Assign the latter.
6330f260e61bSAlexander Kabaev	(__verify_grouping): Move declaration...
6331f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (__verify_grouping):
6332f260e61bSAlexander Kabaev	... here, change signature to take a const char* and a size_t
6333f260e61bSAlexander Kabaev	for the grouping; not a template anymore.
6334f260e61bSAlexander Kabaev	(__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
6335f260e61bSAlexander Kabaev	Likewise change signature and tweak consistently.
6336f260e61bSAlexander Kabaev	(num_get::_M_extract_float, num_get::_M_extract_int,
6337f260e61bSAlexander Kabaev	num_put::_M_insert_int, num_put::_M_insert_float,
6338f260e61bSAlexander Kabaev	money_get::do_get(string_type&), money_get::do_put(string_type)):
6339f260e61bSAlexander Kabaev	Update callers.
6340f260e61bSAlexander Kabaev	* config/locale/generic/numeric_members.cc
6341f260e61bSAlexander Kabaev	(numpunct<>::_M_initialize_numpunct): Assign the new member.
6342f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc
6343f260e61bSAlexander Kabaev	(numpunct<>::_M_initialize_numpunct): Likewise.
6344f260e61bSAlexander Kabaev	* src/locale-inst.cc (__add_grouping): Tweak signature.
6345f260e61bSAlexander Kabaev	(__verify_grouping): Don't instantiate, not a template anymore.
6346f260e61bSAlexander Kabaev
6347f260e61bSAlexander Kabaev	* include/bits/locale_facets.h: Rename _M_truename_len ->
6348f260e61bSAlexander Kabaev	_M_truename_size, _M_falsename_len -> _M_falsename_size.
6349f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc: Likewise.
6350f260e61bSAlexander Kabaev	* config/locale/generic/numeric_members.cc: Likewise.
6351f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc: Likewise.
6352f260e61bSAlexander Kabaev
6353f260e61bSAlexander Kabaev2004-01-14  Stefan Olsson  <[email protected]>
6354f260e61bSAlexander Kabaev
6355f260e61bSAlexander Kabaev	* include/ext/mt_allocator.h: Fixups.
6356f260e61bSAlexander Kabaev	* testsuite/performance/allocator.cc: Enable __mt_alloc tests.
6357f260e61bSAlexander Kabaev	* testsuite/performance/allocator_thread.cc: Same.
6358f260e61bSAlexander Kabaev
6359f260e61bSAlexander Kabaev2004-01-13  Benjamin Kosnik  <[email protected]>
6360f260e61bSAlexander Kabaev
6361f260e61bSAlexander Kabaev	* testsuite/performance/ifstream_extract_float.cc: Add higher
6362f260e61bSAlexander Kabaev	precision tests.
6363f260e61bSAlexander Kabaev	* testsuite/performance/ofstream_insert_float.cc: Same.
6364f260e61bSAlexander Kabaev
6365f260e61bSAlexander Kabaev2004-01-13  Paolo Carlini  <[email protected]>
6366f260e61bSAlexander Kabaev
6367f260e61bSAlexander Kabaev	* src/locale-misc-inst.cc (__convert_from_v(long),
6368f260e61bSAlexander Kabaev	__convert_from_v(unsigned long), __convert_from_v(long long),
6369f260e61bSAlexander Kabaev	__convert_from_v(unsigned long long)): Remove, unused.
6370f260e61bSAlexander Kabaev
6371f260e61bSAlexander Kabaev2004-01-13  Benjamin Kosnik  <[email protected]>
6372f260e61bSAlexander Kabaev
6373f260e61bSAlexander Kabaev	* testsuite/performance/ifstream_extract_float.cc: New.
6374f260e61bSAlexander Kabaev	* testsuite/performance/ofstream_insert_float.cc: Float generation
6375f260e61bSAlexander Kabaev	matches above.
6376f260e61bSAlexander Kabaev
6377f260e61bSAlexander Kabaev	* 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
6378f260e61bSAlexander Kabaev	* 20_util/auto_ptr/1.cc: ...this.
6379f260e61bSAlexander Kabaev	* 20_util/auto_ptr/2.cc: Same.
6380f260e61bSAlexander Kabaev	* 20_util/auto_ptr/3.cc: Same.
6381f260e61bSAlexander Kabaev	* 20_util/auto_ptr/3946.cc: Same.
6382f260e61bSAlexander Kabaev	* 20_util/auto_ptr/4.cc: Same.
6383f260e61bSAlexander Kabaev	* 20_util/auto_ptr/5.cc: Same.
6384f260e61bSAlexander Kabaev	* 20_util/auto_ptr/6.cc: Same.
6385f260e61bSAlexander Kabaev	* 20_util/auto_ptr/7.cc: Same.
6386f260e61bSAlexander Kabaev	* 20_util/auto_ptr/assign_neg.cc
6387f260e61bSAlexander Kabaev	* 20_util/pairs.cc: Break into...
6388f260e61bSAlexander Kabaev	* 20_util/pair/1.cc: ...this.
6389f260e61bSAlexander Kabaev	* 20_util/pair/2.cc: Same.
6390f260e61bSAlexander Kabaev	* 20_util/pair/3.cc: Same.
6391f260e61bSAlexander Kabaev	* 20_util/pair/4.cc: Same.
6392f260e61bSAlexander Kabaev
6393f260e61bSAlexander Kabaev2004-01-13  Paolo Carlini  <[email protected]>
6394f260e61bSAlexander Kabaev
6395f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get::do_get(void*&)):
6396f260e61bSAlexander Kabaev	Set correctly just basefield, the only group that matters.
6397f260e61bSAlexander Kabaev
6398f260e61bSAlexander Kabaev2004-01-13  Paolo Carlini  <[email protected]>
6399f260e61bSAlexander Kabaev
6400f260e61bSAlexander Kabaev	* include/ext/rope (_Rope_rep_alloc_base): Eliminate.
6401f260e61bSAlexander Kabaev	(_Rope_rep_base): Inherit directly from the rope allocator;
6402f260e61bSAlexander Kabaev	use rebinding instead of _Alloc_traits; pick up data member
6403f260e61bSAlexander Kabaev	from _Rope_rep_alloc_base.
6404f260e61bSAlexander Kabaev	(_Rope_alloc_base): Eliminate.
6405f260e61bSAlexander Kabaev	(_Rope_base): Inherit directly from the rope allocator; use
6406f260e61bSAlexander Kabaev	rebinding instead of _Alloc_traits; pick up data member from
6407f260e61bSAlexander Kabaev	_Rope_alloc_base.
6408f260e61bSAlexander Kabaev	(rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
6409f260e61bSAlexander Kabaev	rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
6410f260e61bSAlexander Kabaev
6411f260e61bSAlexander Kabaev2004-01-13  Paolo Carlini  <[email protected]>
6412f260e61bSAlexander Kabaev
6413f260e61bSAlexander Kabaev	PR libstdc++/13650
6414f260e61bSAlexander Kabaev	* include/bits/basic_string.tcc (compare(size_type, size_type,
6415f260e61bSAlexander Kabaev	const _CharT*, size_type)): Implement correctly the resolution
6416f260e61bSAlexander Kabaev	of DR 5: basically, s is a char array, -not- a C string.
6417f260e61bSAlexander Kabaev	* include/bits/basic_string.h: Tweak some comments.
6418f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/compare/char/13650.cc: New.
6419f260e61bSAlexander Kabaev	* testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
6420f260e61bSAlexander Kabaev
6421f260e61bSAlexander Kabaev2004-01-12  Andreas Tobler  <[email protected]>
6422f260e61bSAlexander Kabaev
6423f260e61bSAlexander Kabaev	* testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
6424f260e61bSAlexander Kabaev	Solaris.
6425f260e61bSAlexander Kabaev
6426f260e61bSAlexander Kabaev2004-01-12  Paolo Carlini  <[email protected]>
6427f260e61bSAlexander Kabaev
6428f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
6429f260e61bSAlexander Kabaev	Use try_mkfifo.
6430f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
6431f260e61bSAlexander Kabaev	Likewise.
6432f260e61bSAlexander Kabaev
6433f260e61bSAlexander Kabaev2004-01-12  Paolo Carlini  <[email protected]>
6434f260e61bSAlexander Kabaev
6435f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (struct __numpunct_cache):
6436f260e61bSAlexander Kabaev	Add members _M_truename_len and _M_falsename_len, caching
6437f260e61bSAlexander Kabaev	the lengths of _M_truename and _M_falsename.
6438f260e61bSAlexander Kabaev	(__numpunct_cache<>::_M_cache): Assign the latter.
6439f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (num_get::do_get(bool&),
6440f260e61bSAlexander Kabaev	num_put::do_put(bool)): Use the new members, thus avoiding
6441f260e61bSAlexander Kabaev	computing string lengths again and again.
6442f260e61bSAlexander Kabaev	* config/locale/generic/numeric_members.cc
6443f260e61bSAlexander Kabaev	(numpunct<>::_M_initialize_numpunct): Assign the new members.
6444f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc
6445f260e61bSAlexander Kabaev	(numpunct<>::_M_initialize_numpunct): Likewise.
6446f260e61bSAlexander Kabaev
6447f260e61bSAlexander Kabaev2004-01-12  Mark Mitchell  <[email protected]>
6448f260e61bSAlexander Kabaev
6449f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
6450f260e61bSAlexander Kabaev	* testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
6451f260e61bSAlexander Kabaev	it.
6452f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
6453f260e61bSAlexander Kabaev	and remove Cygwin XFAIL.
6454f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
6455f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
6456f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
6457f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
6458f260e61bSAlexander Kabaev	Likewise.
6459f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
6460f260e61bSAlexander Kabaev	* testsuite/27_io/objects/char/7.cc: Likewise.
6461f260e61bSAlexander Kabaev	* testsuite/27_io/objects/char/9661-1.cc: Likewise.
6462f260e61bSAlexander Kabaev	* testsuite/27_io/objects/wchar_t/7.cc: Likewise.
6463f260e61bSAlexander Kabaev	* testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
6464f260e61bSAlexander Kabaev
6465f260e61bSAlexander Kabaev2004-01-11  Gabriel Dos Reis  <[email protected]>
6466f260e61bSAlexander Kabaev
6467f260e61bSAlexander Kabaev	* include/std/std_complex.h (std::complex<>::real): Return a
6468f260e61bSAlexander Kabaev	reference. Add non-const overload.
6469f260e61bSAlexander Kabaev	(std::complex<>::real): Likewise.
6470f260e61bSAlexander Kabaev	(std::real): Likewise.
6471f260e61bSAlexander Kabaev	(std::imag): Likewise.
6472f260e61bSAlexander Kabaev	(std::operator+): Tidy.
6473f260e61bSAlexander Kabaev	(std::operator-): Likewise.
6474f260e61bSAlexander Kabaev	(std::operator*): Likewise.
6475f260e61bSAlexander Kabaev	(std::operator/): Likewise.
6476f260e61bSAlexander Kabaev	(std::operator>>): Likewise.
6477f260e61bSAlexander Kabaev
6478f260e61bSAlexander Kabaev2004-01-11  Paolo Carlini  <[email protected]>
6479f260e61bSAlexander Kabaev
6480f260e61bSAlexander Kabaev	PR libstdc++/13582
6481f260e61bSAlexander Kabaev	* include/bits/fstream.tcc (imbue): Exploit the external
6482f260e61bSAlexander Kabaev	buffer to imbue 'on the fly' a new locale and convert its
6483f260e61bSAlexander Kabaev	remainder with the new codecvt facet.
6484f260e61bSAlexander Kabaev	(underflow): Tweak slightly to deal with this special case.
6485f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
6486f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
6487f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
6488f260e61bSAlexander Kabaev	* testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
6489f260e61bSAlexander Kabaev	* testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
6490f260e61bSAlexander Kabaev
6491f260e61bSAlexander Kabaev2004-01-10  Paolo Carlini  <[email protected]>
6492f260e61bSAlexander Kabaev
6493f260e61bSAlexander Kabaev	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
6494f260e61bSAlexander Kabaev	Import Revision 28.
6495f260e61bSAlexander Kabaev
6496f260e61bSAlexander Kabaev2004-01-10  Paolo Carlini  <[email protected]>
6497f260e61bSAlexander Kabaev
6498f260e61bSAlexander Kabaev	PR libstdc++/13630
6499f260e61bSAlexander Kabaev	* include/bits/locale_classes.h (class locale): Fix category
6500f260e61bSAlexander Kabaev	typedef.
6501f260e61bSAlexander Kabaev	* testsuite/22_locale/locale/13630.cc: Add.
6502f260e61bSAlexander Kabaev
6503f260e61bSAlexander Kabaev2004-01-10  Giovanni Bajo  <[email protected]>
6504f260e61bSAlexander Kabaev
6505f260e61bSAlexander Kabaev	* include/bits/locale_facets.h: Make a name really dependent. This
6506f260e61bSAlexander Kabaev	will be needed when Core Issue 224 is implemented.
6507f260e61bSAlexander Kabaev
6508f260e61bSAlexander Kabaev2004-01-09  Paolo Carlini  <[email protected]>
6509f260e61bSAlexander Kabaev
6510f260e61bSAlexander Kabaev	* testsuite/performance/allocator.cc: Demangle typeid(obj).name().
6511f260e61bSAlexander Kabaev	* testsuite/performance/allocator_thread.cc: Likewise.
6512f260e61bSAlexander Kabaev
6513f260e61bSAlexander Kabaev2004-01-07  Benjamin Kosnik  <[email protected]>
6514f260e61bSAlexander Kabaev
6515f260e61bSAlexander Kabaev	* crossconfig.m4: Add LFS, io bits to linux cross config.
6516f260e61bSAlexander Kabaev	* acconfig.h: Remove obsolete bits, reorder.
6517f260e61bSAlexander Kabaev	* config.h.in: Regenerate.
6518f260e61bSAlexander Kabaev	* aclocal.m4: Same.
6519f260e61bSAlexander Kabaev	* configure: Same.
6520f260e61bSAlexander Kabaev
6521f260e61bSAlexander Kabaev2004-01-07  Gawain Bolton  <[email protected]>
6522f260e61bSAlexander Kabaev
6523f260e61bSAlexander Kabaev	* include/bits/stl_list.h:
6524f260e61bSAlexander Kabaev	* include/bits/list.tc:
6525f260e61bSAlexander Kabaev	* src/list.cc:
6526f260e61bSAlexander Kabaev	Performance enhancements for destructor, push_front(),
6527f260e61bSAlexander Kabaev	push_back(), pop_front(), pop_back(), sort()
6528f260e61bSAlexander Kabaev	Eliminated static_casts where possible.
6529f260e61bSAlexander Kabaev	Moved code out of header files into new src/list.cc
6530f260e61bSAlexander Kabaev	implementation file for library where possible.
6531f260e61bSAlexander Kabaev	Remove inheritance from iterator class and create separate
6532f260e61bSAlexander Kabaev	classes for non-constant and constant iterators.
6533f260e61bSAlexander Kabaev	* include/bits/stl_tree.h (_Rb_tree class):
6534f260e61bSAlexander Kabaev	* src/tree.cc:
6535f260e61bSAlexander Kabaev	Only erase contents in destructor.
6536f260e61bSAlexander Kabaev	Eliminate unnecessary initialization in assignment operator.
6537f260e61bSAlexander Kabaev	Optimize for the nominal case by not checking whether
6538f260e61bSAlexander Kabaev	container is empty in clear().
6539f260e61bSAlexander Kabaev	Re-order test in _M_insert() to improve performance.
6540f260e61bSAlexander Kabaev	Move initialization of new node's left & right pointers to
6541f260e61bSAlexander Kabaev	src/tree.cc to where new node's colour is initialized
6542f260e61bSAlexander Kabaev	and to reduce the amount of inline code.
6543f260e61bSAlexander Kabaev	Use  _M_leftmost() and _M_end() to improve readability where
6544f260e61bSAlexander Kabaev	appropriate.
6545f260e61bSAlexander Kabaev	Create separate classes for non-constant and constant
6546f260e61bSAlexander Kabaev	iterators to clarify code, avoid extra template parameters and
6547f260e61bSAlexander Kabaev	casting away constness.
6548f260e61bSAlexander Kabaev
6549f260e61bSAlexander Kabaev2004-01-07  Benjamin Kosnik  <[email protected]>
6550f260e61bSAlexander Kabaev
6551f260e61bSAlexander Kabaev	* src/Makefile.am (sources): Add list.cc, tree.cc.
6552f260e61bSAlexander Kabaev	* src/stl_tree.cc: Move to...
6553f260e61bSAlexander Kabaev	* src/tree.cc: ...here.
6554f260e61bSAlexander Kabaev	* src/list.cc: Add.
6555f260e61bSAlexander Kabaev	* config/linker-map.gnu: Tweaks.
6556f260e61bSAlexander Kabaev	* testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
6557f260e61bSAlexander Kabaev	* testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
6558f260e61bSAlexander Kabaev
6559f260e61bSAlexander Kabaev	* bits/stl_vector.h: Column wrap comments.
6560f260e61bSAlexander Kabaev
6561f260e61bSAlexander Kabaev2004-01-07  Loren J. Rittle  <[email protected]>
6562f260e61bSAlexander Kabaev
6563f260e61bSAlexander Kabaev	(re-open) PR libstdc++/12658
6564f260e61bSAlexander Kabaev	* src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
6565f260e61bSAlexander Kabaev	(locale::global): Likewise.
6566f260e61bSAlexander Kabaev
6567f260e61bSAlexander Kabaev2004-01-07  Paolo Carlini  <[email protected]>
6568f260e61bSAlexander Kabaev
6569f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
6570f260e61bSAlexander Kabaev	Remove redundant #include.
6571f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
6572f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
6573f260e61bSAlexander Kabaev	re-enable normal testing.
6574f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
6575f260e61bSAlexander Kabaev	#include.
6576f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
6577f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
6578f260e61bSAlexander Kabaev	Likewise.
6579f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
6580f260e61bSAlexander Kabaev	Likewise.
6581f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
6582f260e61bSAlexander Kabaev	Likewise.
6583f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
6584f260e61bSAlexander Kabaev	Likewise.
6585f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
6586f260e61bSAlexander Kabaev	Likewise.
6587f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
6588f260e61bSAlexander Kabaev	Likewise.
6589f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
6590f260e61bSAlexander Kabaev	Likewise.
6591f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
6592f260e61bSAlexander Kabaev	More properly, #include <locale>.
6593f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
6594f260e61bSAlexander Kabaev	Remove redundant #include.
6595f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
6596f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
6597f260e61bSAlexander Kabaev	redundant DejaGnu directive.
6598f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
6599f260e61bSAlexander Kabaev	redundant #include.
6600f260e61bSAlexander Kabaev
6601f260e61bSAlexander Kabaev2004-01-06  Benjamin Kosnik  <[email protected]>
6602f260e61bSAlexander Kabaev	    Stefan Olsson  <[email protected]>
6603f260e61bSAlexander Kabaev
6604f260e61bSAlexander Kabaev	* scripts/check_performance: Use -pthread.
6605f260e61bSAlexander Kabaev	* testsuite/performance/allocator.cc: Tweaks, add list.
6606f260e61bSAlexander Kabaev	* testsuite/performance/allocator_thread.cc: New.
6607f260e61bSAlexander Kabaev
6608f260e61bSAlexander Kabaev2004-01-06  Jerry Quinn  <[email protected]>
6609f260e61bSAlexander Kabaev
6610f260e61bSAlexander Kabaev	* include/bits/locale_facets.h: Document public classes and
6611f260e61bSAlexander Kabaev	functions.
6612f260e61bSAlexander Kabaev	* include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
6613f260e61bSAlexander Kabaev	Add comment.
6614f260e61bSAlexander Kabaev
6615f260e61bSAlexander Kabaev2004-01-06  Paolo Carlini  <[email protected]>
6616f260e61bSAlexander Kabaev
6617f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/char/1.cc:
6618f260e61bSAlexander Kabaev	Remove redundant #includes.
6619f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/char/2.cc:
6620f260e61bSAlexander Kabaev	Likewise.
6621f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_other/char/3.cc:
6622f260e61bSAlexander Kabaev	Likewise.
6623f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
6624f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
6625f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
6626f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
6627f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
6628f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
6629f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
6630f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
6631f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
6632f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
6633f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
6634f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
6635f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
6636f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
6637f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
6638f260e61bSAlexander Kabaev	Likewise.
6639f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
6640f260e61bSAlexander Kabaev	Likewise.
6641f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/readsome/char/8258.cc:
6642f260e61bSAlexander Kabaev	Likewise.
6643f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
6644f260e61bSAlexander Kabaev	Likewise.
6645f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
6646f260e61bSAlexander Kabaev	Likewise.
6647f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
6648f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
6649f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
6650f260e61bSAlexander Kabaev
6651f260e61bSAlexander Kabaev2004-01-04  Paolo Carlini  <[email protected]>
6652f260e61bSAlexander Kabaev
6653f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
6654f260e61bSAlexander Kabaev	Remove redundant #includes.
6655f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
6656f260e61bSAlexander Kabaev	Likewise.
6657f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
6658f260e61bSAlexander Kabaev	Likewise.
6659f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
6660f260e61bSAlexander Kabaev	Likewise.
6661f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
6662f260e61bSAlexander Kabaev	Likewise.
6663f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
6664f260e61bSAlexander Kabaev	Likewise.
6665f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
6666f260e61bSAlexander Kabaev	Likewise.
6667f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
6668f260e61bSAlexander Kabaev	Likewise.
6669f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
6670f260e61bSAlexander Kabaev	Likewise.
6671f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
6672f260e61bSAlexander Kabaev	Likewise.
6673f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
6674f260e61bSAlexander Kabaev	Likewise.
6675f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
6676f260e61bSAlexander Kabaev	Likewise.
6677f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
6678f260e61bSAlexander Kabaev	Likewise.
6679f260e61bSAlexander Kabaev
6680f260e61bSAlexander Kabaev2004-01-04  Mark Mitchell  <[email protected]>
6681f260e61bSAlexander Kabaev
6682f260e61bSAlexander Kabaev	PR c++/12226
6683f260e61bSAlexander Kabaev	* testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
6684f260e61bSAlexander Kabaev	constructor.
6685f260e61bSAlexander Kabaev	* testsuite/27_io/basic_fstream/4.cc: Likewise.
6686f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ifstream/4.cc: Likewise.
6687f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ios/4.cc: Likewise.
6688f260e61bSAlexander Kabaev	* testsuite/27_io/basic_iostream/4.cc: Likewise.
6689f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istream/4.cc: Likewise.
6690f260e61bSAlexander Kabaev	* testsuite/27_io/basic_istingstream/4.cc: Likewise.
6691f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ofstream/4.cc: Likewise.
6692f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostream/4.cc: Likewise.
6693f260e61bSAlexander Kabaev	* testsuite/27_io/basic_ostringstream/4.cc: Likewise.
6694f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringbuf/5.cc: Likewise.
6695f260e61bSAlexander Kabaev	* testsuite/27_io/basic_stringstream/4.cc: Likewise.
6696f260e61bSAlexander Kabaev
6697f260e61bSAlexander Kabaev2004-01-04  Paolo Carlini  <[email protected]>
6698f260e61bSAlexander Kabaev
6699f260e61bSAlexander Kabaev	* config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
6700f260e61bSAlexander Kabaev	Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
6701f260e61bSAlexander Kabaev	always use double underscored names.
6702f260e61bSAlexander Kabaev	* config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
6703f260e61bSAlexander Kabaev	Likewise.
6704f260e61bSAlexander Kabaev	* include/bits/locale_facets.h (struct __numpunct_cache):
6705f260e61bSAlexander Kabaev	Dimension _M_atoms_out and _M_atoms_in one position smaller.
6706f260e61bSAlexander Kabaev	(__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
6707f260e61bSAlexander Kabaev	and _M_atoms_in.
6708