OSDN Git Service

2004-11-18 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
1 2004-11-18  Paolo Carlini  <pcarlini@suse.de>
2
3         * include/bits/locale_facets.tcc (num_get<>::do_get(void*&)):
4         If the failbit is set, don't set it again.
5         (money_get<>::_M_extract): Minor stylistic tweak: consistently
6         with the other functions, take care of eofbit at the end.
7
8 2004-11-18  Paolo Carlini  <pcarlini@suse.de>
9
10         DR 434. bitset::to_string() hard to use [Ready]
11         * include/std/std_bitset.h (to_string): Add three overloads, taking
12         fewer template arguments.
13         * docs/html/ext/howto.html: Add an entry for DR 434.
14         * testsuite/23_containers/bitset/to_string/1.cc: New.
15
16 2004-11-17  Paolo Carlini  <pcarlini@suse.de>
17
18         * include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
19         _CharT)): Remove temporary kludge for libstdc++/15002.
20         * include/std/std_streambuf.h (class basic_streambuf): Declare
21         getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
22         * include/bits/basic_string.h (getline(basic_istream<>&,
23         basic_string<>&, _CharT)): Declare optimized specializations for
24         char and wchar_t, using protected members of basic_streambuf.
25         * src/istream.cc: Define the latter.
26
27 2004-11-16  Jonathan Wakely  <redi@gcc.gnu.org>
28
29         * docs/html/19_diagnostics/howto.html: Document change from
30         _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.
31
32 2004-11-16  Matthias Klose  <doko@debian.org>
33
34         * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO.
35
36 2004-11-16  Matthias Klose  <doko@debian.org>
37
38         * Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias
39         instead of build_alias.
40         * docs/doxygen/run_doxygen: Likewise.
41         * docs/doxygen/user.cfg.in: Likewise.
42         * Makefile.in: Regenerate.
43
44 2004-11-15  Paolo Carlini  <pcarlini@suse.de>
45
46         * include/bits/streambuf.tcc (__copy_streambufs): Provide
47         a generic version of the function, not using the protected
48         members of basic_streambuf.
49         * include/std/std_streambuf.h (__copy_streambufs): Declare
50         optimized specializations for char and wchar_t.
51         * src/streambuf.cc: New file, define the latter.
52         * src/Makefile.am: Add.
53         * src/Makefile.in: Regenerate.
54
55 2004-11-15  Matthias Klose  <doko@debian.org>
56
57         * docs/doxygen/run_doxygen: Add --build_alias option,
58         substitute it in docs/doxygen/user.cfg.in.
59         * docs/doxygen/user.cfg.in: Use build_alias.
60         * Makefile.am: Pass --build_alias to run_doxygen
61         * Makefile.in: Regenerate.
62
63 2004-11-15  Benjamin Kosnik  <bkoz@redhat.com>
64
65         * testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.4.
66
67 2004-11-15  Paolo Carlini  <pcarlini@suse.de>
68
69         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 33.
70
71 2004-11-14  Paolo Carlini  <pcarlini@suse.de>
72
73         * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_get):
74         Slightly tweak for clarity (also leads to measurably better code).
75
76 2004-11-12  Andrew Pinski  <pinskia@physics.uc.edu>
77
78         PR other/14264
79         * testsuite/lib/libstdc++.exp: Set LC_ALL and LANG to C.
80
81 2004-11-09  Paolo Carlini  <pcarlini@suse.de>
82
83         * include/bits/locale_facets.tcc (time_get<>::do_get_weekday,
84         time_get<>::do_get_monthname): Absolutely avoid dereferencing
85         end iterators.
86
87         * include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
88         Minor tweak.    
89
90 2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
91             Doug Gregor  <dgregor@cs.indiana.edu>
92
93         PR libstdc++/17664
94         * src/debug.cc : Just use one mutex.
95
96 2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
97
98         * configure.ac (libtool_VERSION): To 6:4:0.
99         * configure: Regenerate.
100
101         * config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4.
102
103         * docs/doxygen/user.cfg.in: Add more extension files.
104
105 2004-11-08  Paolo Carlini  <pcarlini@suse.de>
106
107         * include/bits/streambuf_iterator.h (class istreambuf_iterator):
108         Consistently use _M_c to cache the current char, i.e., not only
109         when operator++(int) is involved; change _M_c to mutable.
110         (_M_get()): Always save the return value of _M_sbuf->sgetc() into
111         _M_c.
112         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Fix
113         (long standing) typo.
114         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Likewise.
115         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Likewise.
116         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Likewise.
117
118 2004-11-08  Paolo Carlini  <pcarlini@suse.de>
119
120         * include/bits/istream.tcc (getline(char_type*, streamsize,
121         char_type), ignore(streamsize), ignore(streamsize, int_type)):
122         Restore a generic version of the functions, not using the
123         protected members of basic_streambuf.
124         * include/std/std_istream.h (getline(char_type*, streamsize,
125         char_type), ignore(streamsize), ignore(streamsize, int_type)):
126         Declare optimized specializations for char and wchar_t.
127         * src/istream.cc: New file, define the latter.
128         * src/Makefile.am: Add.
129         * src/Makefile.in: Regenerate.
130
131 2004-11-07  Paolo Carlini  <pcarlini@suse.de>
132
133         * testsuite/performance/27_io/ifstream_getline-2.cc: New.
134
135 2004-11-05  Benjamin Kosnik  <bkoz@redhat.com>
136
137         PR libstdc++/17218
138         PR libstdc++/17223
139         * docs/doxygen/filter: Remove.
140         * docs/doxygen/filter.sed: Remove.
141         * docs/doxygen/mainpage.html: Add link to functions.
142         * docs/doxygen/run_doxygen: Changes due to new source filtering.
143         * docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
144         * include/bits/allocator.h: Tweaks for doxygen.
145         * include/bits/char_traits.h: Same.
146         * include/bits/codecvt.h: Same.
147         * include/bits/concurrence.h: Same.
148         * include/bits/locale_facets.h: Same.
149         * include/ext/array_allocator.h: Same.
150         * include/ext/debug_allocator.h: Same.
151         * include/ext/malloc_allocator.h: Same.
152         * include/ext/mt_allocator.h: Same.
153         * include/ext/new_allocator.h: Same.
154         * include/ext/pool_allocator.h: Same.
155         * include/ext/stdio_sync_filebuf.h: Same.
156         * include/std/std_memory.h: Same.
157         * include/tr1/array: Same.
158         * include/tr1/tuple: Same.
159         * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
160         * config/os/gnu-linux/ctype_base.h: Same.
161
162 2004-11-04  Paolo Carlini  <pcarlini@suse.de>
163
164         * include/bits/locale_facets.tcc (num_get<>::do_get(bool&)):
165         Evaluate __beg == __end the exact strict minimum number of times.
166
167 2004-11-03  Jonathan Wakely  <redi@gcc.gnu.org>
168
169         * include/bits/stl_numeric.h (partial_sum, adjacent_difference):
170         Avoid dereferencing two times __first in the prologue.
171  
172 2004-11-03  Paolo Carlini  <pcarlini@suse.de>
173
174         * include/bits/stl_numeric.h: Trivial formatting fixes.
175
176 2004-11-03  Benjamin Kosnik  <bkoz@redhat.com>
177
178         * include/bits/c++config: Spacing.
179         * libsupc++/del_op.cc: Include c++config.h.
180         * libsupc++/del_opnt.cc: Same.
181         * libsupc++/del_opv.cc: Same.
182         * libsupc++/del_opvnt.cc: Same.
183         * libsupc++/new_op.cc: Same.
184         * libsupc++/new_opnt.cc: Same.
185         * libsupc++/new_opv.cc: Same.
186         * libsupc++/new_opvnt.cc: Same.
187
188 2004-11-03  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
189
190         * config/os/bsd/darwin/os_defines.h
191         (_GLIBCXX_WEAK_DEFINITION): Define.
192         * include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
193         * libsupc++/del_op.cc (operator delete(void *)): Use
194         _GLIBCXX_WEAK_DEFINITION.
195         * libsupc++/del_opnt.cc
196         (operator delete(void *, const std::nothrow_t&)): Same.
197         * libsupc++/del_opv.cc (operator delete[](void *)): Same.
198         * libsupc++/del_opvnt.cc
199         (operator delete[](void *, const std::nothrow_t&)): Same.
200         * libsupc++/new_op.cc (operator new(std::size_t)): Same.
201         * libsupc++/new_opnt.cc
202         (operator new(std::size_t, const std::nothrow_t&)): Same
203         * libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
204         * libsupc++/new_opvnt.cc
205         (operator new[](std::size_t, const std::nothrow_t&)): Same.
206
207 2004-11-02  Paolo Carlini  <pcarlini@suse.de>
208
209         * include/bits/locale_facets.tcc (num_get<>::_M_extract_int):
210         Evaluate *__beg the exact strict minimum number of times; likewise
211         for __beg != __end; slightly simplify main parsing loop.
212
213 2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
214             Lothar Werzinger  <lothar@xcerla.com>
215         
216         PR libstdc++/17664
217         * src/debug.cc: Include concurrence, use mutexes.
218         (_Safe_iterator_base::_M_attach): Here. 
219         (_Safe_iterator_base::_M_detach): Here. 
220         
221 2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
222
223         PR libstdc++/17922
224         * include/bits/ios_base.h : Add enum values.
225         * testsuite/testsuite_hooks.h (bitmask_operators): Add function.
226         * testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
227         * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
228         * testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
229         * testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
230         * testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
231         * testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
232         * testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
233
234         * config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
235         * src/ios.cc: Same.
236
237         * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
238         * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
239
240 2004-11-01  Momchil Velikov  <velco@fadata.bg>
241
242         PR libstdc++/18185
243         * libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
244         exceptions.
245         * testsuite/thread/18185.cc: New.
246         
247 2004-11-01  Chris Jefferson  <chris@bubblescope.net>
248
249         PR libstdc++/18159
250         * include/tr1/tuple (get(pair)): Change occurrences of _I to _Int.
251         (get(const pair)): Likewise.
252
253 2004-11-01  Paolo Carlini  <pcarlini@suse.de>
254
255         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
256         Evaluate *__beg the exact strict minimum number of times; likewise
257         for __beg != __end; in the main parsing loop, call ++__beg in two
258         places only. The former is also a correctness issue, because,
259         according to the standard (22.2.2.1.2, Stage 2), 'in' shall be
260         dereferenced only one time for each increment.
261
262 2004-10-31  Benjamin Kosnik  <bkoz@redhat.com>
263
264         PR c++/16728
265         * testsuite/23_containers/set/modifiers/16728.cc: New.
266
267 2004-10-30  Paolo Carlini  <pcarlini@suse.de>
268
269         * include/ext/bitmap_allocator.h (allocate(size_type)): Minor tweak.
270
271         * testsuite/ext/bitmap_allocator/check_delete.cc: New.
272         * testsuite/ext/bitmap_allocator/check_new.cc: Likewise.
273
274 2004-10-29  Geoffrey Keating  <geoffk@apple.com>
275
276         * configure.host (darwin*): Set os_include_dir to a separate directory
277         for Darwin.
278         * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
279         'darwin'.
280         * config/locale/darwin/ctype_members.cc: New.
281         * config/os/bsd/darwin/ctype_base.h: New.
282         * config/os/bsd/darwin/ctype_inline.h: New.
283         * config/os/bsd/darwin/ctype_noninline.h: New.
284         * config/os/bsd/darwin/os_defines.h: New.
285
286         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Only xfail
287         on Linux.
288
289 2004-10-29  Chris Jefferson  <chris@bubblescope.net>
290
291         * include/bit/stl_algo.h (find_first_of(,,,,pred)):
292         Remove invalid EqualOpConcept.
293         * testsuite/25_algorithms/find_first_of/concept_check_1.cc: New.
294
295 2004-10-29  Benjamin Kosnik  <bkoz@redhat.com>
296
297         * testsuite/testsuite_allocator.h (check_delete): New.
298         (check_new): Simplify.
299         * testsuite/ext/array_allocator/check_delete.cc: New.
300         * testsuite/ext/array_allocator/check_new.cc: Simplify.
301         * testsuite/ext/debug_allocator/check_delete.cc: New.
302         * testsuite/ext/debug_allocator/check_new.cc: Simplify.
303         * testsuite/ext/malloc_allocator/check_delete.cc: New.
304         * testsuite/ext/malloc_allocator/check_new.cc: Simplify.
305         * testsuite/ext/mt_allocator/check_delete.cc: New.
306         * testsuite/ext/mt_allocator/check_new.cc: Simplify.
307         * testsuite/ext/new_allocator/check_delete.cc: New.
308         * testsuite/ext/new_allocator/check_new.cc: Simplify.
309         * testsuite/ext/pool_allocator/check_delete.cc: New.
310         * testsuite/ext/pool_allocator/check_new.cc: Simplify.
311
312 2004-10-28  Chris Jefferson  <chris@bubblescope.net>
313
314         PR libstdc++/18159
315         * include/tr1/tuple: Fix, change formatting.
316
317 2004-10-28  Benjamin Kosnik  <bkoz@redhat.com>
318
319         * include/ext/mt_allocator.h (__common_pool_policy): Add template
320         template parameter for pool class type.
321         (__per_type_pool_policy): Same.
322         (__mt_allocator): Don't inherit policy. Qualify policy_type calls.
323         * testsuite/ext/mt_allocator/check_deallocate_null.cc: Fix.
324         * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: Same.
325         * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
326         * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
327         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
328         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
329         * testsuite/ext/mt_allocator/deallocate_local-2.cc: Same.
330         * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
331         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
332         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
333         * testsuite/ext/mt_allocator/instantiate.cc: Same.
334         * testsuite/ext/mt_allocator/tune-1.cc: Same.
335         * testsuite/ext/mt_allocator/tune-2.cc: Same.
336         * testsuite/ext/mt_allocator/tune-3.cc: Same.
337         * testsuite/ext/mt_allocator/tune-4.cc: Same.
338
339 2004-10-28  Paolo Carlini  <pcarlini@suse.de>
340
341         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
342         Cache *__beg in __c when parsing exponent sign too.
343         (num_get<>::do_get(..., bool&)): Cache *__beg.
344         (money_get<>::_M_extract)): Likewise, in money_base::value.
345
346 2004-10-27  Paolo Carlini  <pcarlini@suse.de>
347
348         * include/bits/basic_string.h (assign(const basic_string&)):
349         Move out of line...
350         * include/bits/basic_string.tcc: ... here.
351
352 2004-10-27  Paolo Carlini  <pcarlini@suse.de>
353
354         * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
355         Move out of line...
356         * include/bits/basic_string.tcc: ... here.
357
358 2004-10-26  Paolo Carlini  <pcarlini@suse.de>
359
360         * include/bits/basic_string.h (append(const basic_string&),
361         append(size_type, _CharT)): Move out of line...
362         * include/bits/basic_string.tcc: ... here.
363
364 2004-10-26  Paolo Carlini  <pcarlini@suse.de>
365
366         * include/bits/basic_string.h (erase(size_type, size_type),
367         erase(iterator), erase(iterator, iterator)): Call _M_mutate
368         instead of _M_replace_safe, equivalent when the fourth argument
369         is zero and simpler.
370
371 2004-10-26  Benjamin Kosnik  <bkoz@redhat.com>
372
373         * include/ext/array_allocator.h (array::allocate): Check for valid
374         array object, use its size member function directly.
375         * testsuite/ext/array_allocator/3.cc: New.
376         * docs/html/20_util/allocator.html: Add docs.
377         
378 2004-10-25  Geoffrey Keating  <geoffk@apple.com>
379
380         * configure.host (darwin*): Build libstdc++ single module
381         and flat namespace.
382         * libsupc++/new_op.cc (new): Make weak.
383         * libsupc++/new_opnt.cc (new): Make weak.
384         * libsupc++/new_opv.cc (new): Make weak.
385         * libsupc++/new_opvnt.cc (new): Make weak.
386         * libsupc++/delete_op.cc (delete): Make weak.
387         * libsupc++/delete_opnt.cc (delete): Make weak.
388         * libsupc++/delete_opv.cc (delete): Make weak.
389         * libsupc++/delete_opvnt.cc (delete): Make weak.
390
391 2004-10-25  Benjamin Kosnik  <bkoz@redhat.com>
392
393         * testsuite/Makefile.am (GLIBCXX_INCLUDES): Add.
394         (AUTOMAKE_OPTIONS): Add nostdinc.
395         * testsuite/Makefile.in: Regenerate.
396         * scripts/testsuite_flags.in (build-includes): Remove redundant
397         search for libsupc++.
398         * fragment.am: Clean.
399         
400 2004-10-25  Benjamin Kosnik  <bkoz@redhat.com>
401
402         * include/Makefile.am (tr1_headers): Add tuple.
403         * include/Makefile.in: Regenerate.
404
405 2004-10-25  Chris Jefferson  <chris@bubblescope.net>
406
407         * include/tr1/tuple: Implementation of tuple from library TR.
408         * testsuite/tr1/6_containers/tuple/tuple_element.cc: New.
409         * testsuite/tr1/6_containers/tuple/tuple_size.cc: New.
410         * testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
411         New.
412         * testsuite/tr1/6_containers/tuple/cons/assignment.cc: New.
413         * testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: New.
414         * testsuite/tr1/6_containers/tuple/cons/constructor.cc: New.
415         * testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc: 
416         New.
417         * testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: New.
418         * testsuite/tr1/6_containers/tuple/element_access/get.cc: New.
419
420 2004-10-25  Paolo Carlini  <pcarlini@suse.de>
421         
422         * include/bits/basic_string.h (_Rep::_M_is_safe): Move to
423         basic_string as _M_disjunct, adjust to take only __s.
424         * include/bits/basic_string.tcc: Adjust consistently callers. 
425
426 2004-10-25  Paolo Carlini  <pcarlini@suse.de>
427
428         * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
429         Adjust bit missing from the previous commit.
430
431 2004-10-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
432
433         PR other/18138
434         * testsuite/lib/libstdc++.exp: Accept more than one multilib libgcc.
435
436 2004-10-25  Paolo Carlini  <pcarlini@suse.de>
437
438         * include/bits/basic_string.h (_Rep::_M_is_safe, _M_check_length,
439         _M_move, _M_copy, _M_assign): New, use througout.
440         (operator+=(_CharT)): Define in terms of push_back.
441         (append(const basic_string&)): Define here, inline, and simplify,
442         don't use the full _M_replace_safe.
443         (append(size_type, _CharT)): Likewise, don't use _M_replace_aux.
444         (push_back): Likewise.
445         (assign(const basic_string&)): Define here, inline.
446         * include/bits/basic_string.tcc (append(const _CharT* s, size_type):
447         Fix: when s points inside the _Rep, upon reallocation (reserve) we
448         were copying from deallocated memory.
449         (append(const basic_string&, size_type, size_type)): Simplify,
450         don't use _M_replace_safe.
451         (replace(size_type, size_type, const _CharT*, size_type)): Slightly
452         tweak.
453         (reserve): Likewise.
454         * testsuite/21_strings/basic_string/append/char/2.cc: New.
455         * testsuite/21_strings/basic_string/append/char/3.cc: Likewise.
456         * testsuite/21_strings/basic_string/append/wchar_t/2.cc: Likewise.
457         * testsuite/21_strings/basic_string/append/wchar_t/3.cc: Likewise.
458
459         * testsuite/21_strings/basic_string/assign/char/3.cc: Remove junk.
460         * testsuite/21_strings/basic_string/assign/wchar_t/3.cc: Likewise.
461
462 2004-10-23  Andrew Pinski  <pinskia@physics.uc.edu>
463
464         * testsuite/ext/mt_allocator/deallocate_global-2.c:
465         s/value_t/value_type/. s/traits_t/traits_type/.
466         s/policy_t/policy_type/. s/allocator_t/allocator_type/.
467         s/string_t/string_type/. s/list_t/list_type/.
468         * testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
469         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
470         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
471         * testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
472         * testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
473         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
474         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
475
476 2004-10-21  Benjamin Kosnik  <bkoz@redhat.com>
477
478         * include/tr1/array (array): Make safe for zero-sized arrays.
479         (array::end): Return one past the end.
480         (array::at): Use __throw_out_of_range, include functexcept.h.
481         (operator==): Implement.
482         (operator!=): Same.
483         (operator<): Same.
484         (operator>): Same.
485         (operator>=): Same.
486         (operator<=): Same.
487         * testsuite/tr1/6_containers/array/capacity/(empty.cc,
488         max_size.cc, size.cc): New.
489         * testsuite/tr1/6_containers/array/comparison_operators/(equal.cc,
490         greater.cc, greater_or_equal.cc, less.cc, less_or_equal.cc,
491         not_equal): New.
492         * testsuite/tr1/6_containers/array/cons/aggregate_initialization.cc: 
493         New.
494         * testsuite/tr1/6_containers/array/element_access/at_out_of_range.cc: 
495         New.
496         * testsuite/tr1/6_containers/array/iterators/end_is_one_past.cc: New.
497         * testsuite/tr1/6_containers/array/requirements/(contiguous.cc,
498         instantiate, typedefs, zero_size_arrays): New.
499
500 2004-10-21  Paolo Carlini  <pcarlini@suse.de>
501             Benjamin Kosnik  <bkoz@redhat.com>
502
503         * include/bits/basic_string.h (_M_set_length_and_sharable): New.
504         * include/bits/basic_string.tcc (_S_construct, assign(const _CharT*,
505         size_type), _M_mutate, _M_clone): Use it.
506         (_Rep::_S_create): Don't set/call _M_length/_M_set_sharable here.
507
508 2004-10-21  Paolo Carlini  <pcarlini@suse.de>
509             Dhruv Matani  <dhruvbird@gmx.net>
510             Nathan Myers  <ncm@cantrip.org>
511
512         * include/bits/vector.tcc (_M_insert_aux, _M_fill_insert,
513         _M_range_insert): Check at the outset that we are not trying
514         to exceed max_size, then deal properly with __len overflows.
515         * testsuite/23_containers/vector/modifiers/insert/1.cc: New.
516         
517         * testsuite/testsuite_allocator.h: Remove redundant include.
518
519 2004-10-20  Paolo Carlini  <pcarlini@suse.de>
520
521         * include/ext/bitmap_allocator.h (allocate): Throw std::bad_alloc
522         when n > max_size().
523         * include/ext/malloc_allocator.h (allocate): Likewise.
524         * include/ext/mt_allocator.h (allocate): Likewise.
525         * include/ext/new_allocator.h (allocate): Likewise.
526         * include/ext/array_allocator.h: Use __throw_bad_alloc().
527         * include/ext/pool_allocator.h: Use __builtin_expect.
528         * testsuite/ext/array_allocator/check_allocate_max_size.cc: New.
529         * testsuite/ext/bitmap_allocator/check_allocate_max_size.cc: Likewise.
530         * testsuite/ext/malloc_allocator/check_allocate_max_size.cc: Likewise.
531         * testsuite/ext/mt_allocator/check_allocate_max_size.cc: Likewise.
532         * testsuite/ext/new_allocator/check_allocate_max_size.cc: Likewise.
533         * testsuite/ext/pool_allocator/check_allocate_max_size.cc: Likewise.
534         * testsuite/testsuite_allocator.h (check_allocate_max_size): New test.
535
536 2004-10-19  Paolo Carlini  <pcarlini@suse.de>
537
538         * testsuite/performance/20_util/allocator/list_sort_search.cc:
539         Include <ext/new_allocator.h>.
540         * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
541
542 2004-10-18  Paolo Carlini  <pcarlini@suse.de>
543
544         * include/bits/basic_string.tcc (_M_mutate): Do not reallocate
545         unnecessarily when _M_rep() == &_S_empty_rep() and __new_size
546         == capacity() (== 0): is ok to just leave everything unchanged.
547
548         * include/bits/basic_string.h: Minor formatting fixes.
549         * include/bits/basic_string.tcc: Likewise.
550
551 2004-10-17  Benjamin Kosnik  <bkoz@redhat.com>
552
553         * include/ext/mt_allocator.h (__pool::_M_get_align): New.
554         (__mt_alloc::allocate): Use it.
555         * src/mt_allocator.cc (__pool::_M_reclaim_block): Use it.
556         (__pool::_M_reserve_block): Simplify block allocation.
557         
558 2004-10-17  Dhruv Matani  <dhruvbird@gmx.net>
559             Paolo Carlini  <pcarlini@suse.de>
560                 
561         * include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
562         makes the code 64-bit correct and also fixes (together with using at
563         the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
564         8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
565         Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
566         * src/bitmap_allocator.cc: Change to size_t.
567         * config/linker-map.gnu: Adjust.
568
569 2004-10-16  Benjamin Kosnik  <bkoz@redhat.com>
570
571         * include/tr1/array: Don't use layout_type.
572
573 2004-10-16  Sashan Govender  <sashang@gmail.com>
574
575         * include/tr1/array (array::end const): Fix casting from iterator
576         to const_iterator.
577         
578 2004-10-15  Paolo Carlini  <pcarlini@suse.de>
579
580         * include/ext/bitmap_allocator.h: Qualify ::operator delete.
581         * src/bitmap_allocator.cc: Likewise.
582         * src/mt_allocator.cc: Use ::operator delete, not delete,
583         consistently with ::operator new.
584
585         * include/ext/bitmap_allocator.h (deallocate): Check for null
586         pointer.
587         * testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New.
588         * testsuite/testsuite_allocator.h (check_deallocate_null): Add test.
589
590 2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
591
592         * include/ext/mt_allocator.h (__mt_alloc::deallocate): Check for
593         null pointer.
594         * include/ext/pool_allocator.h (debug_allocator::deallocate):
595         Check pointer value.
596         * include/ext/debug_allocator.h (debug_allocator::deallocate):
597         Throw exceptions, don't abort.
598         * include/ext/array_allocator.h
599         (array_allocator_base::deallocate): Remove unused parameters.
600         * testsuite/testsuite_allocator.h (check_deallocate_null): New.
601         * testsuite/ext/mt_allocator/check_deallocate_null.cc: New.
602         * testsuite/ext/mt_allocator/check_deallocate_null_thread.cc: New.
603         * testsuite/ext/array_allocator/check_deallocate_null.cc: New.
604         * testsuite/ext/debug_allocator/check_deallocate_null.cc: New.
605         * testsuite/ext/malloc_allocator/check_deallocate_null.cc: New.
606         * testsuite/ext/new_allocator/check_deallocate_null.cc: New.
607         * testsuite/ext/pool_allocator/check_deallocate_null.cc: New.
608
609         * testsuite/testsuite_allocator.h (check_new): Add instance argument.
610         * testsuite/ext/array_allocator/check_new.cc: New.
611         
612 2004-10-14  Paolo Carlini  <pcarlini@suse.de>
613
614         * include/ext/bitmap_allocator.h (bitmap_allocator::_Alloc_block):
615         Rename __unused to __M_unused.
616
617 2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
618
619         * testsuite/ext/headers.cc: Add includes, compile only.
620         * testsuite/ext/hash_map.cc: Move to...
621         * testsuite/ext/hash_map/1.cc: ...here.
622         * testsuite/ext/14648.cc: Move to...
623         * testsuite/ext/hash_map/14648.cc: ...here.
624         * testsuite/ext/hash_map/instantiate.cc: Add.
625         * testsuite/ext/hash_set.cc: Move to...
626         * testsuite/ext/hash_set/1.cc: ...here.
627         * testsuite/ext/hash_set_explicit_instantiation.cc: Move to...
628         * testsuite/ext/hash_set/instantiate.cc: ...here.
629         * testsuite/ext/hash_check_construct_destroy.cc: Move to...
630         * testsuite/ext/hash_set/check_construct_destroy.cc: ...here.
631         * testsuite/ext/slist_check_construct_destroy.cc: Move to...
632         * testsuite/ext/slist/check_construct_destroy.cc: ...here.
633         * testsuite/ext/slist_explicit_instantiation.cc: Move to...
634         * testsuite/ext/slist/instantiate.cc: ...here.
635         
636 2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>
637
638         * include/ext/mt_allocator.h: Tweaks.
639         * src/mt_allocator.cc: Same.
640
641 2004-10-14  Dhruv Matani  <dhruvbird@gmx.net>
642
643         * ext/bitmap_allocator.h: Clean-up add/remove functions.
644         * src/bitmap_allocator.cc: New file. Contains the out-of-line
645         function definitions, static initialization of variables, and
646         explicit instantiations needed for the allocator.
647         * src/Makefile.am: Add.
648         * src/Makefile.in: Regenerate.
649         * config/linker.map.gnu: Add the necessary symbols.
650
651 2004-10-13  Paolo Carlini  <pcarlini@suse.de>
652
653         * include/bits/basic_string.tcc (_S_create): Use consistently
654         the exponential policy, simplify.
655         * testsuite/performance/21_strings/string_append_2.cc: New.
656
657         * include/ext/array_allocator.h (allocate): Fix bad_alloc check.
658         * testsuite/ext/array_allocator/2.cc: Fix wrt 64-bit archs (in
659         that case sizeof(_Rep) == 24).
660
661 2004-10-12  Paolo Carlini  <pcarlini@suse.de>
662
663         PR libstdc++/17948
664         * include/bits/stl_tree.h (erase(iterator, iterator)): Revert
665         wrong commit of 2004-10-07.
666         
667 2004-10-12  Scott Snyder  <snyder@fnal.gov>
668
669         PR libstdc++/17948
670         * testsuite/23_containers/set/modifiers/17948.cc: New.
671
672 2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
673
674         * include/bits/stl_deque.h: Correct for over-long lines.
675
676 2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
677
678         PR libstdc++/17937
679         * include/ext/mt_allocator.h (__pool::_M_destroy): New.
680         * src/mt_allocator.cc (__pool::~__pool): Change definitions to
681         _M_destroy.
682         * acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
683         * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
684         * configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
685         * configure: Regenerate.
686         * config/linker-map.gnu: Tweak exports.
687         * docs/html/ext/mt_allocator.html: Update docs.
688         * testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
689         * testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.       
690         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
691         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
692         * testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
693         * testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
694         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
695         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.
696
697 2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>
698
699         PR libstdc++/16614 continued.
700         * include/ext/mt_allocator.h
701         (__per_type_pool_policy::_S_get_pool): Use saner defaults based on
702         specific type characteristics.
703         (__pool_base): Add constructor that takes a _Tune argument.
704         (__pool): Same.
705         * testsuite/ext/mt_allocator/tune-2.cc: Adjust default.
706         * testsuite/ext/mt_allocator/tune-4.cc: Same.
707         * testsuite/ext/mt_allocator/tune-3.cc: Same.
708
709 2004-10-11  Joachim Kuebart  <kuebart@mathematik.uni-ulm.de>
710             Paolo Carlini  <pcarlini@suse.de>
711
712         * src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk):
713         Deal properly with exceptions thrown by ::operator new(size_t).
714         * testsuite/ext/pool_allocator/allocate_chunk.cc: New.
715
716         * include/ext/pool_allocator.h: Include <cstdlib>.
717
718 2004-10-10  Benjamin Kosnik  <bkoz@redhat.com>
719
720         * include/bits/functexcept.h: Add guards.
721
722         * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Tweak test.
723         * configure: Regenerate.
724         
725 2004-10-10  Paolo Carlini  <pcarlini@suse.de>
726
727         * config/locale/gnu/monetary_members.cc (_S_construct_pattern):
728         Give __ret a default value, thus avoiding spurious warnings.
729
730         * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
731         words or linux.words, otherwise exit.
732         * testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
733
734 2004-10-09  Paolo Carlini  <pcarlini@suse.de>
735
736         * include/std/std_memory.h (__get_temporary_buffer): Don't use
737         INT_MAX, prefer numeric_limits<ptrdiff_t>::max(), ok on 64-bit
738         platforms too.
739         * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust dg-error
740         line numbers.
741
742 2004-10-08  Benjamin Kosnik  <bkoz@redhat.com>
743
744         * acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
745         * acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New.
746         * configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT.
747         * configure: Regenerate.
748         * src/mt_allocator.cc (__pool::~__pool): Make conditional on
749         _GLIBCXX_USE___CXA_ATEXIT macro.
750         * docs/html/ext/mt_allocator.html: Add note about deallocation.
751         * testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks
752         with _GLIBCXX_USE___CXA_ATEXIT.
753         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
754         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
755         * testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
756         * testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
757         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
758         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
759         * testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.
760         
761 2004-10-07  Phil Edwards  <phil@codesourcery.com>
762
763         * testsuite/lib/libstdc++.exp:  Update list of undefined functions.
764
765 2004-10-07  Paolo Carlini  <pcarlini@suse.de>
766
767         * include/bits/list.tcc (operator=): Avoid iterator postincrement.
768         * include/bits/stl_tree.h (erase(iterator, iterator)): Likewise.
769
770 2004-10-07  Benjamin Kosnik  <bkoz@redhat.com>
771
772         * include/tr1: New.
773         * include/tr1/array: New.
774         * include/Makefile.am (tr1_headers): New.
775         (stamp-tr1): New.
776         (install-headers): New.
777         (allstamped): Add stamp-tr1.
778
779         * include/ext/array_allocator.h: New.
780         * include/Makefile.am: Add.
781         * include/Makefile.in: Regenerate.
782         * testsuite/ext/array_allocator/1.cc: New.
783         * testsuite/ext/array_allocator/2.cc: New.
784
785 2004-10-07  Richard Earnshaw  <rearnsha@arm.com>
786
787         * testsuite/lib/libstdc++.exp (libstdc++_exit): New proc.
788
789 2004-10-07  Roger Sayle  <roger@eyesopen.com>
790
791         PR libstdc++/17850
792         * configure.ac: Newlib does not provide strtold.
793         * configure: Regenerate.
794
795 2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>
796
797         * acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
798         (GLIBCXX_CONFIGURE_TESTSUITE): Use it.
799         * configure: Regenerated.
800         * testsuite/Makefile.am (CLEANFILES): Add TEST for
801         check-performance executables.
802         (stamp_thread): New.
803         (all-local): Use it.
804         * testsuite/Makefile.in: Regenerate.
805         * scripts/create_testsuite_files: Filter thread tests.
806
807         * testsuite/thread/pthread1.cc: Remove macro conditionals: this
808         file will only be run by thread enabled configurations.
809         * testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
810         * testsuite/thread/pthread6.cc: Same.
811         * testsuite/thread/pthread5.cc: Same.
812         * testsuite/thread/pthread4.cc: Same.
813         * testsuite/thread/pthread3.cc: Same.
814         * testsuite/thread/pthread2.cc: Same.
815
816         * testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
817         * testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
818         * testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
819         * testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
820         * testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here. 
821         * testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
822         * testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
823         * testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
824         * testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.
825
826 2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>
827             Paolo Carlini  <pcarlini@suse.de>
828
829         PR libstdc++/17780
830         * src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
831         to old locking order.
832
833 2004-10-06  Paolo Carlini  <pcarlini@suse.de>
834
835         * include/std/std_sstream.h (_M_sync): When the caller is
836         setbuf, don't trust _M_string.capacity() to be the size of
837         the buffer area, use _M_string.size() in this case.
838         * testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New.
839         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
840
841         * include/bits/sstream.tcc (overflow): Avoid calling string::assign
842         unnecessarily when the current _M_string is empty.
843
844 2004-10-06  Paolo Carlini  <pcarlini@suse.de>
845
846         * include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)):
847         Avoid iterator postincrement.
848         (__rotate): Likewise.
849
850         * include/bits/stl_algo.h: Minor formatting tweaks.
851
852 2004-10-06  Christopher Jefferson <caj@cs.york.ac.uk>
853
854         * include/bits/stl_algo.h (__reverse(random_access_iterator_tag)):
855         Avoid iterator postincrement; fix swapping middle element with
856         itself on odd-length inputs.
857
858 2004-10-05  Benjamin Kosnik  <bkoz@redhat.com>
859
860         PR libstdc++/17780
861         * include/ext/mt_allocator.h (__pool_base::_Tune): Add default
862         options as compile-time constant enums.
863         (__pool_base::_Tune::is_default): New.
864         (__pool_base::_Block_address): New.
865         (__pool_base): Rearrange data members.
866         (__pool::_M_reserve_memory): To _M_reserve_block.
867         (__pool::_M_reclaim_memory): To _M_reclaim_block.       
868         (__pool::_Bin_record): Add _Block_address data member.
869         (__pool<false>): Add _M_thread_freelist_initial.
870         (__pool::~__pool): Declare.     
871         (__common_pool_policy): Move static data member to...
872         (__common_pool_policy::_S_get_pool): ...here, make static local.
873         (__per_type_pool_policy): Move static data member to...
874         (__per_type_pool_policy::_S_get_pool): ...here, make static local.
875         (__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
876         Remove static member definitions. Use define for __default_policy.
877         * src/mt_allocator.cc: Same.
878         * config/linker-map.gnu: Don't export _S_get_pool. Renames.
879         * testsuite/ext/new_allocator: New.
880         * testsuite/ext/new_allocator/instantiate.cc: New.
881         * testsuite/ext/new_allocator/check_new.cc: New.
882         * testsuite/ext/new_allocator/deallocate_global.cc: New.
883         * testsuite/ext/new_allocator/deallocate_local.cc: New.
884         * testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
885         template arguments.
886         * testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
887         * testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
888         * testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
889         * testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
890         * testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
891         * testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
892         * testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
893         * testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
894         * testsuite/ext/mt_allocator/deallocate.cc: New.
895         * testsuite/ext/malloc_allocator/deallocate.cc: New.    
896         * testsuite/ext/malloc_allocator/deallocate_global.cc: New.
897         * testsuite/ext/malloc_allocator/deallocate_local.cc: New.
898         
899 2004-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
900
901         * configure.host (abi_baseline_pair): Define for s390-*-linux* and
902         s390x-*-linux*.
903         * config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
904         * config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
905
906 2004-10-05  Christopher Jefferson  <caj@cs.york.ac.uk>
907
908         * include/bits/stl_algobase.h (iter_swap): delegate to swap via
909         __iter_swap when iterator's value_types are equal.
910         (struct __iter_swap): New.
911
912 2004-10-04  Benjamin Kosnik  <bkoz@redhat.com>
913
914         * configure.ac (libtool_VERSION): To 6:3:0.
915         * configure: Regnerate.
916         * testsuite/testsuite_abi.cc (check_version): Add 3.4.3.
917
918 2004-10-04  Roger Sayle  <roger@eyesopen.com>
919             Eric Botcazou  <ebotcazou@libertysurf.fr>
920
921         PR libstdc++/17505
922         * config/linker-map.gnu: Synchronize the current list of stub
923         functions from libmath.
924
925 2004-10-03  Roger Sayle  <roger@eyesopen.com>
926
927         * config/locale/generic/c_locale.cc (__convert_to_v): Use
928         _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
929         Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
930         to check for presence of strtold.
931
932 2004-10-03  Paolo Carlini  <pcarlini@suse.de>
933
934         * include/bits/stl_list.h: Trivial formatting fixes.
935         * include/bits/stl_tree.h: Likewise.
936
937 2004-10-03  Paolo Carlini  <pcarlini@suse.de>
938
939         * include/bits/sstream.tcc (seekpos): In case of success, just
940         return __sp.
941
942 2004-10-01  Paolo Carlini  <pcarlini@suse.de>
943
944         * include/bits/sstream.tcc (pbackfail): Implement correctly
945         27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
946         write in the buffer.
947         * testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
948         * testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
949         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
950         * testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
951         * testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
952
953 2004-10-01  Paolo Carlini  <pcarlini@suse.de>
954
955         * include/bits/sstream.tcc (seekpos): Minor rearrangement of two
956         conditionals consistently with seekoff.
957         * include/std/std_sstream.h (setbuf): Avoid a string temporary.
958         (_M_sync): Simplify a bit, clean-up comment.
959
960 2004-09-30  Paolo Carlini  <pcarlini@suse.de>
961
962         PR libstdc++/10975 (DR 453)
963         * include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
964         and __off == 0.
965         * docs/html/ext/howto.html: Add an entry for DR 453.
966         * testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
967         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
968         * testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
969         * testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
970         * testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
971         * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
972         move to...
973         * testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
974         * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
975         move to...
976         * testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
977
978 2004-09-29  Paolo Carlini  <pcarlini@suse.de>
979
980         * include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
981         Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
982         (str()): Slightly tweak, protect from pptr() == 0.
983         (_M_update_egptr()): Likewise.
984         * include/bits/sstream.tcc (ssekoff, seekpos): In order to check
985         for an empty buffer use __beg instead of _M_string.capacity().
986         * testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
987         * testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
988
989         * testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
990         * testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
991         * testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
992         * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
993
994 2004-09-29  Paolo Carlini  <pcarlini@suse.de>
995             Benjamin Kosnik  <bkoz@redhat.com>
996         
997         * testsuite/testsuite_io.h (class constraint_buf): New, extended
998         and templatized version of constraint_filebuf; add typedefs for
999         streambuf/stringbuf/filebuf and wchar_t counterparts.
1000
1001 2004-09-28  Paolo Carlini  <pcarlini@suse.de>
1002
1003         PR libstdc++/16612
1004         * include/bits/basic_string.h (_M_dispose, _M_refcopy,
1005         basic_string()): When _GLIBCXX_FULLY_DYNAMIC_STRING is defined,
1006         don't deal with _S_empty_rep.
1007         * include/bits/basic_string.tcc (_S_construct, _M_destroy,
1008         _M_leak_hard, _M_mutate): Likewise.
1009         * acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): New.
1010         * acconfig.h: Add corresponding undef.  
1011         * configure.ac: Use GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING.
1012         * docs/html/configopts.html: Document --enable-fully-dynamic-string.
1013         * configure: Regenerate.
1014         * config.h.in: Likewise.
1015
1016 2004-09-28  Benjamin Kosnik  <bkoz@redhat.com>
1017             Paolo Carlini  <pcarlini@suse.de>
1018
1019         * testsuite/21_strings/basic_string/operations/char/1.cc: New.
1020         * testsuite/21_strings/basic_string/operations/wchar_t/1.cc: New.
1021         * testsuite/21_strings/basic_string/element_access/char/empty.cc: New.
1022         * testsuite/21_strings/basic_string/element_access/wchar_t/empty.cc: 
1023         New.
1024
1025 2004-09-28  Paolo Carlini  <pcarlini@suse.de>
1026
1027         * README: Remove obsolete entry about include/c_shadow.
1028
1029 2004-09-24  H.J. Lu  <hongjiu.lu@intel.com>
1030
1031         PR libstdc++/17469
1032         * testsuite/lib/libstdc++.exp: Don't use global ld_library_path.
1033
1034 2004-09-24  Paolo Carlini  <pcarlini@suse.de>
1035
1036         * src/localename.cc (locale::locale(const char*)): Minor tweaks:
1037         rename a variable, move an assignment.
1038         (locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak.
1039
1040 2004-09-24  Paul Brook  <paul@codesourcery.com>
1041
1042         * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm
1043         simulator targets.
1044         * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
1045         * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Ditto.
1046         * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Ditto.
1047         * testsuite/27_io/basic_istream/readsome/char/6746-2.cc: Ditto.
1048         * testsuite/ext/stdio_filebuf/char/10063-2.cc: Ditto.
1049         * testsuite/ext/stdio_filebuf/char/10063-3.cc: Ditto.
1050
1051 2004-09-23  Zack Weinberg  <zack@codesourcery.com>
1052
1053         * testsuite/20_util/memory/auto_ptr/assign_neg.cc
1054         * testsuite/23_containers/map/operators/1_neg.cc
1055         * testsuite/23_containers/set/operators/1_neg.cc:
1056         Update locations and/or regexps of dg-error markers.
1057
1058 2004-09-23  P.J. Darcy  <darcypj@us.ibm.com>
1059
1060         * include/Makefile.am (thread_host_headers): Add gthr-tpf.h.
1061         Add rule to build ${host_builddir}/gthr-tpf.h.
1062         * include/Makefile.in: Regenerate.
1063
1064 2004-09-23  Paolo Carlini  <pcarlini@suse.de>
1065             Magnus Fromreide  <magfr@lysator.liu.se>
1066
1067         * include/bits/boost_concept_check.h (struct _SequenceConcept):
1068         Remove wrong requirement, i.e., not present in Table 67.
1069
1070 2004-09-21  Paolo Carlini  <pcarlini@suse.de>
1071
1072         PR libstdc++/12882 (cont)
1073         * acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
1074         * configure: Regenerate.
1075         * config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
1076         _GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
1077         trivial showmanyc for large files too.
1078
1079 2004-09-17  Jonathan Wakely  <redi@gcc.gnu.org>
1080
1081         * include/bits/stl_algo.h (remove): Remove too restrictive
1082         concept-check.
1083
1084 2004-09-17  Paolo Carlini  <pcarlini@suse.de>
1085
1086         * include/bits/fstream.tcc (xsgetn): Slightly tweak conditional,
1087         as per Nathan's original suggestion.
1088
1089 2004-09-17  Paolo Carlini  <pcarlini@suse.de>
1090
1091         * testsuite/ext/mt_allocator/tune-1.cc: Use VERIFY, clean
1092         up a bit.
1093         * testsuite/ext/mt_allocator/tune-2.cc: Likewise.
1094         * testsuite/ext/mt_allocator/tune-3.cc: Likewise.
1095         * testsuite/ext/mt_allocator/tune-4.cc: Likewise.
1096
1097 2004-09-17  Paolo Carlini  <pcarlini@suse.de>
1098             Andrea Arcangeli  <andrea@suse.de>
1099
1100         * config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't
1101         call unnecessarily sync, that is fflush: the library, since 3.4.0
1102         does not use buffered fread/fwrite.
1103         * include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise.
1104
1105 2004-09-15  Mark Mitchell  <mark@codesourcery.com>
1106
1107         * config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
1108         Define.
1109         * config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
1110         Define.
1111         * libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
1112         (__cxa_vec_new): Use it.
1113         (__cxa_vec_new2): Likewise.
1114         (__cxa_vec_new3): Likewise.
1115         (__cxa_vec_cdtor): Likewise.
1116         (__cxa_vec_cctor): Likeiwse.
1117         (__cxa_vec_dtor): Likewise.
1118         (__cxa_vec_cleanup): Likewise.
1119         (__cxa_vec_delete2): Likewise.
1120         (__cxa_vec_delete3): Likewise.
1121         * libsupc++/vec.cc (__cxa_vec_new): Likewise.
1122         (__cxa_vec_new2): Likewise.
1123         (__cxa_vec_new3): Likewise.
1124         (__cxa_vec_cdtor): Likewise.
1125         (__cxa_vec_cctor): Likeiwse.
1126         (__cxa_vec_dtor): Likewise.
1127         (__cxa_vec_cleanup): Likewise.
1128         (__cxa_vec_delete2): Likewise.
1129         (__cxa_vec_delete3): Likewise.
1130         (__aeabi_vec_ctor_nocookie_nodtor): New function.
1131         (__aeabi_vec_ctor_cookie_nodtor): Likewise.
1132         (__aeabi_vec_cctor_nocookie_nodtor): Likewise.
1133         (__aeabi_vec_new_cookie_noctor): Likewise.
1134         (__aeabi_vec_new_nocookie): Likewise.
1135         (__aeabi_vec_new_cookie_nodtor): Likewise.
1136         (__aeabi_vec_new_cookie): Likewise.
1137         (__aeabi_vec_dtor): Likewise.
1138         (__aeabi_vec_dtor_cookie): Likewise.
1139         (__aeabi_vec_delete): Likewise.
1140         (__aeabi_vec_delete3): Likewise.
1141         (__aeabi_vec_delete3_nodtor): Likewise.
1142         (__aeabi_atexit): Likewise.
1143
1144 2004-09-14  Nathan Myers  <ncm@cantrip.org>
1145
1146         * include/bits/fstream.tcc (xsgetn): Slightly tweak the recent fix
1147         for 11722: copy can replace move; the common case is __avail == 0.
1148
1149 2004-09-14  Paolo Carlini  <pcarlini@suse.de>
1150
1151         * include/bits/cpp_type_traits.h: Rename __is_trivially_copyable
1152         to __is_scalar, more clear and consistent with "tr1" naming.
1153         * include/bits/stl_algobase.h: Update consistently throughout.
1154
1155 2004-09-13  Paolo Carlini  <pcarlini@suse.de>
1156
1157         PR libstdc++/11722
1158         * include/std/std_fstream.h (xsgetn): Declare only.
1159         * include/bits/fstream.tcc (xsgetn): Define, optimize for the
1160         always_noconv() case: when __n > __buflen, copy the available
1161         buffer and issue a direct read.
1162         * testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: New.
1163
1164         * include/bits/fstream.tcc (xsputn): Minor tweak, reorder a
1165         conditional.
1166
1167 2004-09-13  Hans-Peter Nilsson  <hp@bitrange.com>
1168
1169         * testsuite/lib/libstdc++.exp: Use gcc wrapper.exp and call
1170         libstdc++_maybe_build_wrapper instead of using local code.
1171
1172 2004-09-08  Benjamin Kosnik  <bkoz@redhat.com>
1173
1174         * config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
1175
1176 2004-09-03  Jan Beulich  <jbeulich@novell.com>
1177
1178         * crossconfig.m4: Add NetWare as a target.
1179         * configure: Regenerate.
1180
1181 2004-09-02  Mark Mitchell  <mark@codesourcery.com>
1182
1183         * libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
1184         defined.
1185
1186 2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
1187             Simon Richter  <Simon.Richter@hogyros.de>
1188
1189         PR libstdc++/16715
1190         * include/bits/istream.tcc: Add extern template for iostream
1191         char and wchar_t instantiations.
1192
1193 2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
1194             Leland Wang  <llwang@infor.org>
1195
1196         PR libstdc++/17259
1197         * include/ext/ropeimpl.h (rope::_S_compare): Use
1198         _Rope_constants::_S_leaf.
1199
1200 2004-09-02  Benjamin Kosnik  <bkoz@redhat.com>
1201
1202         PR libstdc++/16848
1203         * include/Makefile.am (ext_headers): Remove demangle.h.
1204         * include/Makefile.in: Regenerate.
1205         * include/ext/demangle.h: Remove.
1206
1207 2004-09-01  Benjamin Kosnik  <bkoz@redhat.com>
1208
1209         PR libstdc++/16614
1210         * include/ext/mt_allocator.h (__mt_base): Not type dependent,
1211         split into..
1212         (__pool): New, specialize.
1213         (__common_pool): New, static bits here.
1214         (__per_type_pool): New, and here.
1215         (__mt_alloc_base): New.
1216         (__mt_alloc): Add template parameter, inherit from it.
1217         * src/allocator.cc: Split this...
1218         * src/allocator-inst.cc: And this...
1219         * src/pool_allocator.cc: ...into this.
1220         * src/mt_allocator.cc: ... and this. Add definitions for
1221         __mt_base.
1222         * src/Makefile.am (sources): Split allocator.cc to
1223         pool_allocator.cc and mt_allocator.cc.
1224         * src/Makefile.in: Regenerate.
1225         * config/linker-map.gnu: Add symbols.
1226         * docs/html/ext/mt_allocator.html: Document new design.
1227         * testsuite/ext/mt_allocator/tune-1.cc: New.
1228         * testsuite/ext/mt_allocator/tune-2.cc: New.
1229         * testsuite/ext/mt_allocator/tune-3.cc: New.
1230         * testsuite/ext/mt_allocator/tune-4.cc: New.
1231
1232         * testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
1233         * testsuite/ext/allocators.cc: Use check_new, split into...
1234         * testsuite/ext/mt_allocator/check_new.cc: this.
1235         * testsuite/ext/pool_allocator/check_new.cc: this.
1236         * testsuite/ext/malloc_allocator/check_new.cc: this.
1237         * testsuite/ext/debug_allocator/check_new.cc: this.
1238         * testsuite/ext/mt_allocator/instantiate.cc: this.
1239         * testsuite/ext/pool_allocator/instantiate.cc: this.
1240         * testsuite/ext/malloc_allocator/instantiate.cc: this.
1241         * testsuite/ext/debug_allocator/instantiate.cc: this.
1242
1243 2004-08-30  Phil Edwards  <phil@codesourcery.com>
1244
1245         * docs/html/install.html:  Update locales list (from Paolo).
1246         Remove other redundant information and point to the GCC install
1247         documentation.
1248
1249 2004-08-30  Benjamin Kosnik  <bkoz@redhat.com>
1250
1251         * include/ext/pool_allocator.h: Rename __pool_base to
1252         __pool_alloc_base.
1253         * src/allocator.cc: Same.
1254         * config/linker-map.gnu: Same.
1255
1256 2004-08-30  Paolo Carlini  <pcarlini@suse.de>
1257             Kenneth C. Schalk  <ken@xorian.net>
1258
1259         PR libstdc++/17215
1260         * config/io/basic_file_stdio.cc (__basic_file<char>::close()):
1261         Check the return value of fclose/sync, loop on EINTR.
1262         (__basic_file<char>::sys_open): Likewise, for sync.
1263
1264 2004-08-29  Paolo Carlini  <pcarlini@suse.de>
1265
1266         * include/bits/locale_facets.tcc (time_get<>::_M_extract_via_format,
1267         case 'S'): Allow for at least one leap-second (as per C99, 7.23.1
1268         and 7.23.3.5), two if !_GLIBCXX_USE_C99.
1269         * testsuite/22_locale/time_get/get_time/char/4.cc: New.
1270         * testsuite/22_locale/time_get/get_time/wchar_t/4.cc: Likewise.
1271
1272 2004-08-27  Jason Merrill  <jason@redhat.com>
1273
1274         PR c++/13684
1275         * libsupc++/guard.cc (static_mutex): Internal class implementing a
1276         recursive mutex which controls initialization of local statics.
1277         (__gnu_cxx::recursive_init): New exception class.
1278         (__cxa_guard_acquire): Deal with locking and recursion detection.
1279         (acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
1280
1281 2004-08-27  Matthias Klose  <doko@debian.org>
1282
1283         * configure.host: For mips*-*-linux* update cpu_include_dir
1284         after atomicity_dir is set.
1285
1286 2004-08-27  Matthias Klose  <doko@debian.org>
1287
1288         * config/abi/arm-linux-gnu/baseline_symbols.txt: New.
1289         * config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1290         * configure.host: Set abi_baseline_pair for arm*-*-linux* and
1291         mips*-*-linux*.
1292
1293 2004-08-27  Paolo Carlini  <pcarlini@suse.de>
1294
1295         * testsuite/27_io/manipulators/adjustfield/wchar_t/1.cc: New.
1296         * testsuite/27_io/manipulators/adjustfield/wchar_t/2.cc: Likewise.
1297         * testsuite/27_io/manipulators/basefield/wchar_t/1.cc: Likewise.
1298         * testsuite/27_io/manipulators/standard/wchar_t/1.cc: Likewise.
1299         * testsuite/27_io/manipulators/standard/wchar_t/2.cc: Likewise.
1300
1301         * testsuite/27_io/manipulators/adjustfield/char/1.cc: Minor
1302         formatting fixes.
1303         * testsuite/27_io/manipulators/adjustfield/char/2.cc: Likewise.
1304         * testsuite/27_io/manipulators/basefield/char/1.cc: Likewise.
1305         * testsuite/27_io/manipulators/standard/char/1.cc: Likewise.
1306         * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
1307
1308 2004-08-25  Paolo Carlini  <pcarlini@suse.de>
1309
1310         PR libstdc++/17038 (partial)
1311         * include/bits/locale_facets.tcc (time_put<>::do_put): Increase
1312         __maxlen to 128.
1313         * include/bits/locale_facets.h (class __timepunct): Add FIXME
1314         comment about _M_put.
1315         * config/locale/generic/time_members.cc (_M_put): Always null
1316         terminate __s.
1317         * config/locale/gnu/time_members.cc (_M_put): Likewise.
1318         * testsuite/22_locale/time_put/put/char/17038.cc: New.
1319         * testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
1320
1321 2004-08-24  Paolo Carlini  <pcarlini@suse.de>
1322
1323         * testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
1324         * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
1325         * testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
1326         * testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
1327         * testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
1328         * testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.
1329
1330         * testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
1331         newlines.
1332         * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.
1333
1334 2004-08-22  Matthias Klose  <doko@debian.org>
1335
1336         * config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
1337         * config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1338
1339 2004-08-23  Paolo Carlini  <pcarlini@suse.de>
1340
1341         * configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
1342         * aclocal.m4: Regenerate with automake-1.9.1.
1343         * configure: Regenerate.
1344         * Makefile.in: Likewise.
1345         * include/Makefile.in: Likewise.
1346         * libmath/Makefile.in: Likewise.
1347         * libsupc++/Makefile.in: Likewise.
1348         * po/Makefile.in: Likewise.
1349         * src/Makefile.in: Likewise.
1350         * testsuite/Makefile.in: Likewise.
1351
1352 2004-08-22  Paolo Carlini  <pcarlini@suse.de>
1353
1354         * include/bits/locale_facets.tcc (num_put<>::do_put(bool)): Cast
1355         to a signed type, long according to the resolution of DR 359.
1356         * testsuite/22_locale/num_put/put/char/9.cc: New.
1357         * testsuite/22_locale/num_put/put/wchar_t/9.cc: New.
1358
1359         * include/bits/locale_facets.tcc (num_put<>::do_put(const void*)):
1360         Simplify a bit: no need to clear showpos.
1361
1362 2004-08-21  Paolo Carlini  <pcarlini@suse.de>
1363
1364         * include/bits/char_traits.h (struct _Char_traits_match): Remove,
1365         unused.
1366
1367 2004-08-21  Paolo Carlini  <pcarlini@suse.de>
1368
1369         * testsuite/22_locale/money_put/put/wchar_t/1.cc: Use proper
1370         wchar_t type for the fill argument; minor formatting tweaks.
1371         * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Likewise.
1372         * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
1373         * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
1374         * testsuite/22_locale/money_put/put/wchar_t/4.cc: Likewise.
1375         * testsuite/22_locale/money_put/put/wchar_t/5.cc: Likewise.
1376         * testsuite/22_locale/money_put/put/wchar_t/6.cc: Likewise.
1377
1378 2004-08-21  Paolo Carlini  <pcarlini@suse.de>
1379
1380         * include/bits/basic_ios.tcc (basic_ios<>::copyfmt): Don't deal
1381         with _M_word != _M_local_word two times, redundantly.
1382
1383 2004-08-20  Jason Merrill  <jason@redhat.com>
1384
1385         * include/Makefile.am (${host_builddir}/gthr.h): Don't add
1386         _GLIBCXX_ to #pragma lines.
1387         * include/Makefile.in: Update.
1388
1389 2004-08-20  Paolo Carlini  <pcarlini@suse.de>
1390
1391         PR libstdc++/7219 (continued)
1392         * include/bits/ios_base.h (class ios_base): Expose Annex D.6
1393         typedefs by default.
1394         * testsuite/27_io/types/1.cc: Remove #if _GLIBCXX_DEPRECATED.
1395         * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak dg-error
1396         line number.
1397         * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
1398
1399 2004-08-20  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1400
1401         * cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory
1402         barrier to locking asm.
1403
1404 2004-08-20  Paolo Carlini  <pcarlini@suse.de>
1405
1406         * include/c_std/cmath.tcc (__cmath_power): Revert previous commit:
1407         actually the warning is a front-end bug (c++/17120).
1408
1409 2004-08-20  Matthias Klose  <doko@debian.org>
1410
1411         * config/abi/s390-linux-gnu/baseline_symbols.txt: New.
1412
1413 2004-08-20  Paolo Carlini  <pcarlini@suse.de>
1414
1415         * include/c_std/cmath.tcc (__cmath_power): Suppress assignment
1416         used as truth value warning.
1417
1418 2004-08-20  Paolo Carlini  <pcarlini@suse.de>
1419
1420         * config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit
1421         baseline.
1422
1423 2004-08-20  Paolo Carlini  <pcarlini@suse.de>
1424
1425         * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it.
1426
1427 2004-08-19  Benjamin Kosnik  <bkoz@redhat.com>
1428
1429         * testsuite/22_locale/time_put/put/char/3.cc (test03): Don't check
1430         timezone.
1431         * testsuite/22_locale/time_put/put/wchar_t/3.cc (test03): Same.
1432
1433 2004-08-19  Paolo Carlini  <pcarlini@suse.de>
1434
1435         * testsuite/performance/20_util/allocator/insert.cc: For std::map
1436         instantiate the allocator for a correct pair type.
1437         * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
1438         * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
1439         * testsuite/performance/20_util/allocator/producer_consumer.cc:
1440         Likewise.
1441
1442         * testsuite/performance/20_util/allocator/list_sort_search.cc: Very
1443         minor formatting fixes.
1444         * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
1445
1446 2004-08-19  Paolo Carlini  <pcarlini@suse.de>
1447
1448         * testsuite/22_locale/time_put/put/char/1.cc: Add VERIFY on the
1449         results.
1450         * testsuite/22_locale/time_put/put/char/2.cc: Likewise.
1451         * testsuite/22_locale/time_put/put/char/3.cc: Likewise.
1452         * testsuite/22_locale/time_put/put/char/4.cc: Likewise.
1453         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Likewise.
1454         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
1455         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
1456         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
1457
1458 2004-08-19  Paolo Carlini  <pcarlini@suse.de>
1459
1460         * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1461
1462 2004-08-18  Matthias Klose  <doko@debian.org>
1463
1464         * config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1465         * config/abi/i386-linux-gnu/baseline_symbols.txt: New.
1466         * config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
1467
1468 2004-08-17  Paolo Carlini  <pcarlini@suse.de>
1469
1470         * config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1471
1472 2004-08-17  Paolo Carlini  <pcarlini@suse.de>
1473
1474         * config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1475
1476 2004-08-17  Benjamin Kosnik  <bkoz@redhat.com>
1477
1478         * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
1479
1480 2004-08-16  Paolo Carlini  <pcarlini@suse.de>
1481
1482         * include/bits/indirect_array.h: Trivial formatting fixes.
1483         * include/bits/valarray_after.h: Likewise.
1484         * include/bits/valarray_array.h: Likewise.
1485         * src/valarray-inst.cc: Likewise.
1486
1487 2004-08-15  Paolo Carlini  <pcarlini@suse.de>
1488
1489         * testsuite/27_io/basic_stringstream/rdbuf/char/2832.cc: Remove junk.
1490         * testsuite/27_io/basic_stringstream/str/char/1.cc: Likewise.
1491         * testsuite/27_io/basic_stringstream/str/char/3.cc: Likewise.
1492
1493         * testsuite/27_io/basic_stringstream/rdbuf/wchar_t/2832.cc: New.
1494         * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise.
1495         * testsuite/27_io/basic_stringstream/str/wchar_t/2.cc: Likewise.
1496         * testsuite/27_io/basic_stringstream/str/wchar_t/3.cc: Likewise.
1497         * testsuite/27_io/basic_stringstream/str/wchar_t/4.cc: Likewise.
1498
1499 2004-08-15  Paolo Carlini  <pcarlini@suse.de>
1500
1501         * include/bits/deque.tcc: Trivial formatting fixes.
1502
1503 2004-08-15  Paolo Carlini  <pcarlini@suse.de>
1504
1505         * include/bits/deque.tcc: Trivial formatting fixes.
1506
1507         * include/bits/locale_facets.tcc (num_get<>::do_get(&bool)):
1508         Remove unneded typedef.
1509
1510         * include/bits/locale_facets.tcc: Very minor tweaks.
1511
1512         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Use proper
1513         type for the fill argument.
1514         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
1515         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Likewise.
1516         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Likewise.
1517         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Likewise.
1518         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
1519         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Likewise.
1520         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Likewise.
1521         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Likewise.
1522
1523 2004-08-13  Paolo Carlini  <pcarlini@suse.de>
1524
1525         * src/debug.cc (_Error_formatter::_M_print_string): Fix thinko,
1526         memmove is not needed, memcpy suffices.
1527
1528 2004-08-13  Paolo Carlini  <pcarlini@suse.de>
1529
1530         * include/std/std_fstream.h (class basic_ifstream,
1531         class basic_ofstream, class basic_fstream): Add const overloads
1532         of is_open, as per DR 365 [WP].
1533         * docs/html/ext/howto.html: Add an entry for DR 365.
1534
1535 2004-08-12  Paolo Carlini  <pcarlini@suse.de>
1536
1537         * configure.ac: Specify version 1.8.5 in AM_INIT_AUTOMAKE.
1538
1539 2004-08-12  Paolo Carlini  <pcarlini@suse.de>
1540
1541         PR libstdc++/16956
1542         * include/bits/sstream.tcc (basic_stringbuf<>::seekoff): Add __off
1543         to the returned value, reorganize a bit.
1544         * testsuite/27_io/basic_stringbuf/seekoff/char/16956.cc: New.
1545         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/16956.cc: New.
1546
1547         * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Remove junk.
1548         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc: Likewise.
1549         * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Likewise.
1550         * testsuite/27_io/basic_stringbuf/seekpos/wchar_t/1.cc: Likewise.
1551
1552 2004-08-12  Paul Brook  <paul@codesourcery.com>
1553
1554         * config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
1555         _GLIBCXX_CXA_VEC_CTOR_RETURN.
1556         * config/cpu/generic/cxxabi_tweaks.h: Ditto.
1557         * libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
1558         __cxa_vec_ctor_return.
1559         * libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
1560         Use _GLIBCXX_CXA_VEC_CTOR_RETURN.
1561
1562 2004-08-12  Kelley Cook  <kcook@gcc.gnu.org>
1563
1564         * Makefile.in, aclocal.m4, configure, include/Makefile.in,
1565         libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
1566         src/Makefile.in, testsuite/Makefile.in: Regenerate
1567
1568 2004-08-12  Jan Beulich  <jbeulich@novell.com>
1569
1570         * config/locale/generic/ctype_members.cc
1571         (ctype<wchar_t>::_M_convert_to_wmask): Default case must not use 0 as
1572         initializer for return value, as that is invalid for enumerated types.
1573         * config/locale/gnu/ctype_members.cc
1574         (ctype<wchar_t>::_M_convert_to_wmask): Likewise.
1575
1576 2004-08-11  Paolo Carlini  <pcarlini@suse.de>
1577
1578         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Fix typo.
1579
1580 2004-08-11  Paolo Carlini  <pcarlini@suse.de>
1581
1582         * testsuite/27_io/basic_stringbuf/imbue/char/1.cc: Declare test
1583         variable.
1584         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc: Ditto.
1585         * testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Remove junk.
1586         * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Ditto.
1587         * testsuite/27_io/basic_stringbuf/sbumpc/char/1.cc: Ditto.
1588         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc: Ditto.
1589         * testsuite/27_io/basic_stringbuf/setbuf/char/1.cc: Ditto.
1590         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc: Ditto.
1591         * testsuite/27_io/basic_stringbuf/sgetc/char/1.cc: Ditto.
1592         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Ditto.
1593         * testsuite/27_io/basic_stringbuf/sgetn/char/1.cc: Ditto.
1594         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Ditto.
1595         * testsuite/27_io/basic_stringbuf/snextc/char/1.cc: Ditto.
1596         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Ditto.
1597         * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Ditto.
1598         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Ditto.
1599         * testsuite/27_io/basic_stringbuf/sputc/char/1.cc: Ditto.
1600         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc: Ditto.
1601         * testsuite/27_io/basic_stringbuf/sputn/char/1.cc: Ditto.
1602         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc: Ditto.
1603         * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Ditto.
1604         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Ditto.
1605
1606 2004-08-11  Paolo Carlini  <pcarlini@suse.de>
1607             Petur Runolfsson  <peturr02@ru.is>
1608
1609         PR libstdc++/16959
1610         * src/ios_init.cc (ios_base::sync_with_stdio): Make sure the
1611         standard streams are constructed.
1612         * testsuite/27_io/ios_base/sync_with_stdio/16959.cc: New.
1613
1614 2004-08-09  Paolo Carlini  <pcarlini@suse.de>
1615
1616         * include/bits/stl_bvector.h: Trivial formatting fixes.
1617
1618 2004-08-09  Paolo Carlini  <pcarlini@suse.de>
1619
1620         * src/ios.cc (ios_base::_M_grow_words): Uglify the names.
1621
1622 2004-08-07  Jonathan Wakely  <redi@gcc.gnu.org>
1623             Paolo Carlini  <pcarlini@suse.de>
1624
1625         * src/debug.cc (_Error_formatter::_M_print_string): In order
1626         to print individual words from __string, _M_format_word can't
1627         be called since may be just sprintf, thus ignoring completely
1628         __n: instead, use memmove and append '\0' by hand.
1629
1630 2004-08-07  Paolo Carlini  <pcarlini@suse.de>
1631
1632         * config/locale/generic/c_locale.h (__convert_from_v): Don't
1633         use a default for __prec, assume __prec >= 0 and simplify.
1634         * config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
1635         * include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
1636         Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".
1637
1638 2004-08-04  Phil Edwards  <phil@codesourcery.com>
1639
1640         * docs/html/configopts.html:  Emphasize that options change.
1641         * docs/html/17_intro/configury.html:  Update links.
1642
1643 2004-08-03  Paolo Carlini  <pcarlini@suse.de>
1644
1645         * include/bits/list.tcc: Trivial formatting fixes.
1646
1647 2004-08-03  Mark Mitchell  <mark@codesourcery.com>
1648
1649         * libsupc++/new_op.cc: Update comments.
1650         * libsupc++/del_op.cc: Likewise.
1651
1652 2004-08-02  Mark Mitchell  <mark@codesourcery.com>
1653
1654         * libsupc++/cxxabi.h: Make all declarations have default
1655         visibility.
1656         * libsupc++/exception: Likewise.
1657         * libsupc++/new: Likewise.
1658         * libsupc++/typeinfo: Likewise.
1659         * libsupc++/unwind-cxx.h: Likewise.
1660         * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
1661         the __cxxabiv1 namespace.
1662         (__cxa_free_exception): Likewise.
1663         * libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
1664         (__cxa_bad_typeid): Likewise.
1665         * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
1666         (__cxa_end_catch): Likewise.
1667         * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
1668         (__cxa_get_globals): Likewise.
1669         * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1670         (__cxa_rethrow): Likewise.
1671         * libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
1672         * libsupc++/eh_type.cc: Include <cxxabi.h>.
1673
1674         * Makefile.am (hosted_source): Add libmath and testsuite.
1675         (SUBDIRS): Remove them.
1676         * acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
1677         on arm*-*-symbianelf*.
1678         * crossconfig.m4: Add arm*-*-symbianelf* support.
1679         * include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
1680         when freestanding.  Do not bring names into std:: namespace with
1681         "using" when freestanding.  Declare required functions and macros
1682         when freestanding.
1683         * libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
1684         when freestanding.
1685         * libsupc++/del_op.cc: Declare "free" only when freestanding.
1686         * libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
1687         (malloc): Declare when freestanding.
1688         (free): Likewise.
1689         (memset): Likewise.
1690         (__cxa_allocate_exception): Call malloc, not std::malloc.  Likewise
1691         for memset.
1692         (__cxa_free_exception): Likewise for free.
1693         * libsupc++/new_op.cc: Declare "malloc" when freestanding.
1694         * libsupc++/pure.cc (writestr): Define to nothing when
1695         freestanding.
1696         * libsupc++/vterminate.cc: Do not define anything when
1697         freestanding.
1698         * Makefile.in: Regenerated.
1699         * aclocal.m4: Likewise.
1700         * configure: Likewise.
1701         * include/Makefile.in: Likewise.
1702         * libmath/Makefile.in: Likewise.
1703         * libsupc++/Makefile.in: Likewise.
1704         * po/Makefile.in: Likewise.
1705         * src/Makefile.in: Likewise.
1706         * testsuite/Makefile.in: Likewise.
1707
1708 2004-08-01  Matt Austern  <austern@apple.com>
1709
1710         PR libstdc++/16844
1711         * include/bits/stl_list.h (_M_create_node): Remove unused
1712         zero-argument version.
1713         * include/ext/slist (_M_create_node): Pass two arguments to
1714         allocator's construct() member function.
1715         * testsuite/23_containers/deque/explicit_instantiation.cc: New.
1716         * testsuite/23_containers/list/explicit_instantiation.cc: New.
1717         * testsuite/23_containers/vector/explicit_instantiation.cc: New.
1718         * testsuite/23_containers/map/explicit_instantiation.cc: New.
1719         * testsuite/23_containers/set/explicit_instantiation.cc: New.
1720         * testsuite/23_containers/multimap/explicit_instantiation.cc: New.
1721         * testsuite/23_containers/multiset/explicit_instantiation.cc: New.
1722         * testsuite/ext/hash_set_explicit_instantiation.cc: New.
1723         * testsuite/ext/slist_explicit_instantiation.cc: New.
1724
1725 2004-07-30  Paolo Carlini  <pcarlini@suse.de>
1726
1727         * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1728         num_get<>::_M_extract_int): In the main parsing loop delay the
1729         life of __q to the actual use point.
1730
1731 2004-07-29  Paolo Carlini  <pcarlini@suse.de>
1732
1733         PR libstdc++/14220
1734         * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
1735         Don't clip the precision passed down to __convert_from_v:
1736         22.2.2.2.2 nowhere says so.
1737         * testsuite/22_locale/num_put/put/char/14220.cc: New.
1738         * testsuite/22_locale/num_put/put/wchar_t/14220.c: Likewise.
1739
1740 2004-07-29  Paolo Carlini  <pcarlini@suse.de>
1741
1742         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 31.
1743
1744 2004-07-29  Paolo Carlini  <pcarlini@suse.de>
1745             Petur Runolfsson  <peturr02@ru.is>
1746
1747         PR libstdc++/12658 (continued)
1748         * src/locale_init.cc (locale::locale, locale::global): Use
1749         a single locale_mutex instead of two separate mutexes.
1750
1751 2004-07-29  Paolo Carlini  <pcarlini@suse.de>
1752
1753         PR libstdc++/16813
1754         * include/debug/map.h (insert(_InputIterator, _InputIterator)):
1755         Fix typo.
1756         * testsuite/23_containers/map/insert/16813.cc: New.
1757
1758 2004-07-29  Phil Edwards  <phil@codesourcery.com>
1759
1760         * docs/html/faq/index.html:  Update version references.  Make
1761         clear that code from SGI has diverged greatly.  Remove references
1762         to library snapshots and what's-new sections.
1763         * docs/html/faq/index.txt:  Regenerate.
1764
1765 2004-07-28  Matt Austern  <austern@apple.com>
1766
1767         * include/bits/stl_construct.h (_Destroy): New three-argument
1768         overload that takes an allocator argument.  Another inline
1769         three-argument overload that takes std::allocator and dispatches
1770         to the two-argument version.
1771         * include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
1772         Change return type to void to match uninitialized_fill_n.
1773         (__uninitialized_copy_a_): New function.  Like uninitialized_copy
1774         except that it takes an allocator and uses it for construct and
1775         destroy.  If the allocator is std::allocator, dispatches to
1776         uninitialized_copy.
1777         (__uninitialized_fill_a): Likewise.
1778         (__uninitialized_fill_n_a): Likewise.
1779         (__uninitialized_copy_copy): Give it an allocator argument.
1780         (__uninitialized_fill_copy): Likewise.
1781         (__uninitialized_copy_fill): Likewise.
1782         * include/bits/deque.tcc: Use new forms defined in stl_construct.h
1783         and stl_uninitialized.h.  Replace use of single-argument _Construct
1784         and _Destroy with use of allocator's construct and destroy methods.
1785         * include/bits/list.tcc: Likewise.
1786         * include/bits/stl_deque.h: Likewise.
1787         * include/bits/stl_list.h: Likewise.
1788         * include/bits/stl_tree.h: Likewise.
1789         * include/bits/stl_vector.h: Likewise.
1790         * include/bits/vector.tcc: Likewise.
1791         * include/ext/hashtable.h: Use rebind so that allocator_type
1792         has correct type for a container's allocator.  Replace use of
1793         single-argument _Construct and _Destroy with use of allocator's
1794         construct and destroy methods.
1795         * include/ext/memory (__uninitialized_copy_n_a): New function.
1796         Like uninitialized_copy_n except that it takes an extra parameter,
1797         an allocator, and uses it for construct and destroy operations.
1798         * include/ext/rope: Use new forms defined in stl_construct.h,
1799         stl_uninitialized.h, and ext/memory.  Replace use of single-argument
1800         _Construct and _Destroy with allocator construct and destroy methods.
1801         * include/ext/ropeimpl.h: Likewise.
1802         * include/ext/slist.h: Likewise.
1803         * testsuite/testsuite_allocator.h (check_construct_destroy): New.
1804         * testsuite/testsuite_allocator.cc (check_construct_destroy): New.
1805         * testsuite/23_containers/deque/check_construct_destroy.cc: New.
1806         * testsuite/23_containers/list/check_construct_destroy.cc: New.
1807         * testsuite/23_containers/set/check_construct_destroy.cc: New.
1808         * testsuite/23_containers/vector/check_construct_destroy.cc: New.
1809         * testsuite/ext/hash_check_construct_destroy.cc: New.
1810         * testsuite/ext/slist_check_construct_destroy.cc: New.
1811
1812 2004-07-28  Alexandre Oliva  <aoliva@redhat.com>
1813
1814         2003-10-01  Eric Christopher  <echristo@redhat.com>
1815         * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm'
1816         constraint.
1817         2003-07-09  Alexandre Oliva  <aoliva@redhat.com>
1818         * config/cpu/sh/atomicity.h: New.  Use movli and movco on SH4a.
1819
1820 2004-07-23  Benjamin Kosnik  <bkoz@redhat.com>
1821
1822         PR libstdc++/16678
1823         * include/bits/locale_facets.tcc: Fix for -Werror.
1824
1825 2004-07-23  Jonathan Wakely  <redi@gcc.gnu.org>
1826
1827         * docs/html/debug.html: Say debug mode only available since 3.4.0.
1828
1829 2004-07-21  Benjamin Kosnik  <bkoz@redhat.com>
1830
1831         * docs/doxygen/mainpage.html: Clarify links.
1832         * docs/doxygen/stdheader.cc: Add files.
1833         * docs/doxygen/style.css: Remove bolds, add h2, h3 styles.
1834         * docs/doxygen/user.cfg.in: New options, wrap.
1835
1836 2004-07-20  Danny Smith  <dannysmith@users.sourceforge.net>
1837
1838         * include/c_std/std_cwchar.h (wcsstr): Correct signature.
1839
1840 2004-07-19  Benjamin Kosnik  <bkoz@redhat.com>
1841
1842         PR libstdc++/15488
1843         * testsuite/lib/libstdc++.exp (v3-copy-files): Revert.
1844
1845 2004-07-17  Richard Sandiford  <rsandifo@redhat.com>
1846
1847         PR bootstrap/16469
1848         * scripts/create_testsuite_files: Pass -print to find.
1849
1850 2004-07-15  Paolo Carlini  <pcarlini@suse.de>
1851
1852         * docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
1853         * docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.
1854
1855 2004-07-15  Jakub Jelinek  <jakub@redhat.com>
1856
1857         PR libstdc++/14697
1858         * acinclude.m4 (glibcxx_shared_libgcc): Correct
1859         glibcxx_shared_libgcc test for multilibs.
1860         * configure: Rebuilt.
1861
1862 2004-07-14  Paolo Carlini  <pcarlini@suse.de>
1863
1864         PR libstdc++/16505
1865         * include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix
1866         the signature to return void, as per 20.4.4.3.
1867         * include/bits/stl_vector.h (vector::vector(size_type,
1868         const value_type&, const allocator_type&), vector::vector(size_type),
1869         vector::_M_initialize_dispatch): Adjust callers.
1870         * include/bits/vector.tcc (vector<>::_M_fill_assign,
1871         vector<>::_M_fill_insert): Likewise.
1872         * testsuite/20_util/memory/16505.cc: New.
1873
1874 2004-07-14  Paolo Carlini  <pcarlini@suse.de>
1875
1876         * testsuite/22_locale/locale/cons/12658_thread-1.cc,
1877         12658_thread-2.cc: Use __gnu_test::try_named_locale.
1878
1879 2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>
1880
1881         * docs/html/ext/mt_allocator.html: Add docs for _Tune.
1882         * include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
1883         (__mt_alloc::_S_set_options): Same.
1884         Add to comments.
1885
1886 2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>
1887
1888         * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
1889         for linux.
1890         * configure: Regenerated.
1891
1892 2004-07-13  Paolo Carlini  <pcarlini@suse.de>
1893
1894         * testsuite/22_locale/locale/cons/12658_thread.cc: Move/rename
1895         to 12658_thread-1.cc and xfail.
1896         * testsuite/22_locale/locale/cons/12658_thread-2.c: New, much
1897         simpler version of 12658_thread-1.cc, still failing on 3_3 and
1898         not failing on 3_4/mainline - both on single processor and
1899         multiprocessor machines.
1900
1901 2004-07-12  Benjamin Kosnik  <bkoz@redhat.com>
1902
1903         * docs/html/abi.html: Remove non-public qualification.
1904
1905         * include/bits/concurrence.h: Tweak comments.
1906
1907 2004-07-11  Paolo Carlini  <pcarlini@suse.de>
1908
1909         Add wchar_t counterparts of the basic_streambbuf<char> tests.
1910         * testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
1911         * testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
1912         Likewise.
1913         * testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
1914         * testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
1915         3599.cc: Likewise.
1916         * testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
1917         * testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
1918         * testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
1919         * testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
1920         * testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
1921         Likewise.
1922         * testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.
1923
1924         * testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
1925         tweaks.
1926         * testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
1927         Likewise.
1928         * testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
1929         * testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.
1930
1931 2004-07-11  Phil Edwards  <phil@codesourcery.com>
1932
1933         * acinclude.m4:  Cosmetic shell syntax fixes.
1934         * configure.ac:  Bring comment inline with reality.
1935         * configure.host:  Both of the above.  Move 'arm' case to right
1936         place in host_cpu switch.
1937         * aclocal.m4, configure:  Regenerate.
1938
1939 2004-07-09  Paolo Carlini  <pcarlini@suse.de>
1940
1941         Add wchar_t counterparts of the basic_stringbuf<char> tests.
1942         * testsuite/27_io/basic_stringbuf/imbue/wchar_t/1.cc, 9322.cc: New.
1943         * testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Likewise.
1944         * testsuite/27_io/basic_stringbuf/overflow/wchar_t/1.cc, 2.cc,
1945         3599.cc, 9988.cc: Likewise.
1946         * testsuite/27_io/basic_stringbuf/sbumpc/wchar_t/1.cc, 9825.cc:
1947         Likewise.
1948         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc:
1949         Likewise.
1950         * testsuite/27_io/basic_stringbuf/seekoff/wchar_t/1.cc, 2.cc, 3.cc:
1951         Likewise.
1952         * testsuite/27_io/basic_stringbuf/setbuf/wchar_t/1.cc, 2.cc, 3.cc:
1953         Likewise.
1954         * testsuite/27_io/basic_stringbuf/sgetc/wchar_t/1.cc: Likewise.
1955         * testsuite/27_io/basic_stringbuf/sgetn/wchar_t/1.cc: Likewise.
1956         * testsuite/27_io/basic_stringbuf/snextc/wchar_t/1.cc: Likewise.
1957         * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc, 9425.cc:
1958         Likewise.
1959         * testsuite/27_io/basic_stringbuf/sputc/wchar_t/1.cc, 1057.cc,
1960         9404-1.cc: Likewise.
1961         * testsuite/27_io/basic_stringbuf/sputn/wchar_t/1.cc, 1057.cc,
1962         9404-2.cc: Likewise.
1963         * testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc, 2.cc, 3.cc,
1964         3955.cc: Likewise.
1965         * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
1966         * testsuite/27_io/basic_stringbuf/sync/wchar_t/1057.cc: Likewise.
1967
1968 2004-07-08  Paolo Carlini  <pcarlini@suse.de>
1969
1970         * include/bits/gslice.h: Trivial formatting fixes.
1971         * include/bits/gslice_array.h: Likewise.
1972         * include/bits/indirect_array.h: Likewise.
1973         * include/bits/mask_array.h: Likewise.
1974         * include/bits/slice_array.h: Likewise.
1975         * include/bits/valarray_after.h: Likewise.
1976         * include/bits/valarray_array.h: Likewise.
1977         * include/bits/valarray_before.h: Likewise.
1978         * include/std/std_valarray.h: Likewise.
1979
1980 2004-07-08  Benjamin Kosnik  <bkoz@redhat.com>
1981
1982         PR c++/16169
1983         * include/bits/basic_string.h (basic_string::operator=): Revert.
1984
1985 2004-07-07  Benjamin Kosnik  <bkoz@redhat.com>
1986
1987         * configure.ac (libtool_VERSION): To 6:2:0.
1988         * configure: Regenerated.
1989
1990         * testsuite/testsuite_abi.cc (check_version): Add 3.4.2.
1991
1992 2004-07-07  Aaron W. LaFramboise  <aaronraolete36@aaronwl.com>
1993
1994         PR libstdc++/16411
1995         * config/linker-map.gnu: Add stdio_sync_filebuf::file exports.
1996
1997 2004-07-07  Benjamin Kosnik  <bkoz@redhat.com>
1998
1999         * docs/html/abi.html: Updates for 3.4.1 release. Add summary of
2000         -Weffc++ issues.
2001
2002 2004-07-07  Paolo Carlini  <pcarlini@suse.de>
2003
2004         PR libstdc++/16401
2005         * include/bits/sstream.tcc (overflow): When reallocating _M_string
2006         use an exponential grow policy.
2007         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
2008         * testsuite/performance/27_io/stringbuf_overflow.cc: New.
2009
2010 2004-07-06  Anssi Hannula  <anssi.hannula@mbnet.fi>
2011
2012         PR libstdc++/15928
2013         * crossconfig.m4: Add in bits for djgpp.
2014         * configure: Regenerate.
2015
2016 2004-07-05  Jonathan Wakely  <redi@gcc.gnu.org>
2017
2018         * testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
2019         instantiation of set and multiset (functor param given as int).
2020
2021 2004-07-04  Paolo Carlini  <pcarlini@suse.de>
2022
2023         * include/bits/basic_string.h: Trivial formatting fixes and/or
2024         const-ification of some variables.
2025         * include/bits/deque.tcc: Likewise.
2026         * include/bits/stl_algobase.h: Likewise.
2027         * include/bits/stl_bvector.h: Likewise.
2028         * include/bits/stl_construct.h: Likewise.
2029         * include/bits/stl_deque.h: Likewise.
2030         * include/bits/stl_pair.h: Likewise.
2031         * include/bits/stl_vector.h: Likewise.
2032         * include/bits/vector.tcc: Likewise.
2033
2034 2004-07-04  Paolo Carlini  <pcarlini@suse.de>
2035
2036         * testsuite/25_algorithms/copy/1.cc: Add instantiations for
2037         systems with no COMDAT or weak support.
2038         * testsuite/25_algorithms/copy/2.cc: Likewise.
2039         * testsuite/25_algorithms/copy/3.cc: Likewise.
2040         * testsuite/25_algorithms/copy/4.cc: Likewise.
2041
2042 2004-07-03  Paul Brook  <paul@codesourcery.com>
2043
2044         * configure.ac: Set ABI_TWEAKS_SRCDIR.
2045         * configure.host: Set abi_tweaks_dir.  Check for atomicity.h when
2046         setting atomicity_dir.  Override type_cpu for arm based targets.
2047         * include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
2048         * libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
2049         * libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
2050         * libsupc++/vec.cc: Ditto.
2051         * config/cpu/arm/cxxabi_tweaks.h: New file.
2052         * config/cpu/generic/cxxabi_tweaks.h: New file.
2053         * */Makefile.in: Regenerate.
2054         * configure: Regenerate.
2055
2056 2004-07-02  Paolo Carlini  <pcarlini@suse.de>
2057
2058         * include/bits/type_traits.h (_Is_normal_iterator): Move...
2059         * include/bits/cpp_type_traits.h: ... here, renamed to
2060         __is_normal_iterator and consistent with the other traits.
2061         * include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
2062         to the struct __copy_normal and three specializations.
2063         (__copy_backward_output_normal_iterator,
2064         __copy_backward_input_normal_iterator): Likewise, convert to
2065         the struct __copy_backward_normal and three specializations.
2066         (copy, copy_backward): Use the latter.
2067         (__copy_aux, __copy_backward_aux): Very minor tweaks.
2068
2069 2004-07-01  Paolo Carlini  <pcarlini@suse.de>
2070
2071         * include/bits/stl_algobase.h (__copy_trivial): Remove.
2072         (__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
2073         __is_trivially_copyable, __are_same and __copy::copy.
2074         (__copy): Rewrite as a class template and two specializations.
2075         (__copy_ni2): Simplify, just call __copy_aux.
2076
2077         * include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
2078         check.
2079         * testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
2080         for destination value type != source value type.
2081
2082 2004-07-01  Benjamin Kosnik  <bkoz@redhat.com>
2083             Per Bothner  <per@bothner.com>
2084             Mohan Embar  <gnustuff@thisiscool.com>
2085
2086         PR libstdc++/16248
2087         * include/bits/concurrence.h (__glibcxx_mutex_type): New.
2088         (__glibcxx_mutex): Encapsulate mutex init function into type for
2089         threaded configurations without __GTHREAD_MUTEX_INIT.
2090         (lock::lock): Make device member a reference.
2091         (lock::~lock): Same.
2092         * include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
2093         to mutex_type.
2094         * src/allocator.cc: Same.
2095
2096 2004-06-30  Brad Spencer  <spencer@infointeractive.com>
2097
2098         * include/ext/mt_allocator.h: Handle allocations at static
2099         initialization that happen before _S_options is (automatically)
2100         constructed; set _S_init even if _M_force_new is true.
2101
2102 2004-06-30  Benjamin Kosnik  <bkoz@redhat.com>
2103
2104         * config/linker-map.gnu: Revert new exports.
2105
2106 2004-06-30  Benjamin Kosnik  <bkoz@redhat.com>
2107             Stuart Anderson  <anderson@netsweng.com>
2108
2109         * config/linker-map.gnu: Add destructor exports for abstract base
2110         classes to conform to LSB.
2111
2112 2004-06-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2113             Paolo Carlini  <pcarlini@suse.de>
2114
2115         * include/bits/cpp_type_traits.h: Add __is_pointer and
2116         __is_trivially_copyable.
2117         * include/bits/stl_algobase.h (fill, fill_n): Slightly
2118         tweak to use the latter.
2119         (__copy_backward_dispatch): Remove.
2120         (__copy_backward_aux): Rewrite to use __is_pointer and
2121         __is_trivially_copyable and __copy_backward::copy_b.
2122         (__copy_backward): Rewrite as a class template and two
2123         specializations.
2124
2125 2004-06-30  Paolo Carlini  <pcarlini@suse.de>
2126
2127         * testsuite/25_algorithms/copy.cc: Move to...
2128         * testsuite/25_algorithms/copy/1.cc: ... here, extend.
2129         * testsuite/25_algorithms/copy/2.cc: New.
2130         * testsuite/25_algorithms/copy/3.cc: New.
2131         * testsuite/25_algorithms/copy/4.cc: New.
2132
2133 2004-06-29  Paul Brook  <paul@codesourcery.com>
2134
2135         * libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
2136         element size in the cookie.
2137
2138 2004-06-28  Paolo Carlini  <pcarlini@suse.de>
2139
2140         * include/bits/cpp_type_traits.h: Move the additions to
2141         namespace __gnu_internal outside of namespace std; trivial
2142         formatting fixes.
2143
2144 2004-06-28  Benjamin Kosnik  <bkoz@redhat.com>
2145
2146         * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
2147         Revert -Weffc++ changes that defined copy ctory and or assignment
2148         operator.
2149         * libsupc++/tinfo.cc (__upcast_result): Same.
2150
2151 2004-06-28  Paolo Carlini  <pcarlini@suse.de>
2152
2153         * src/localename.cc (locale::_Impl::_Impl): Slightly improve
2154         the algorithm used to name the categories.
2155
2156 2004-06-28  Paolo Bonzini  <bonzini@gnu.org>
2157
2158         * include/Makefile.am: Give a .gch extension to
2159         the PCH files, not only to the directory.
2160         * include/Makefile.in: Regenerate.
2161
2162 2004-06-28  Paolo Carlini  <pcarlini@suse.de>
2163
2164         * config/locale/gnu/monetary_members.cc
2165         (moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
2166         assignments of _M_decimal_point and _M_thousands_sep.
2167
2168 2004-06-27  Paolo Carlini  <pcarlini@suse.de>
2169
2170         * docs/html/17_intro/contribute.html: Update some links.
2171         * docs/html/17_intro/porting-howto.html: Likewise.
2172         * docs/html/17_intro/porting-howto.xml: Likewise.
2173         * docs/html/18_support/howto.html: Likewise.
2174         * docs/html/21_strings/howto.html: Likewise.
2175         * docs/html/27_io/howto.html: Likewise.
2176         * docs/html/configopts.html: Likewise.
2177         * docs/html/ext/howto.html: Likewise.
2178         * docs/html/faq/index.html: Likewise.
2179         * docs/html/install.html: Don't mention 2.x compilers.
2180
2181 2004-06-27  Paolo Carlini  <pcarlini@suse.de>
2182
2183         * include/ext/rope: Trivial formatting fixes.
2184         * include/ext/ropeimpl.h: Likewise.
2185
2186 2004-06-26  Paolo Carlini  <pcarlini@suse.de>
2187
2188         PR libstdc++/16210
2189         * acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
2190         availability of strto(u)ll, not used anymore in the iostreams.
2191         * configure: Regenerate.
2192
2193 2004-06-25  Benjamin Kosnik  <bkoz@redhat.com>
2194
2195         PR libstdc++/16182
2196         * linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
2197         AC_DEFINE_UNQUOTED.
2198         * configure: Regenerate.
2199
2200 2004-06-25  Paul Brook  <paul@codesourcery.com>
2201
2202         * libsupc++/cxxabi.h: Define __ARM_EABI__
2203         (__guard): Use it.
2204         * libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
2205
2206 2004-06-25  Paul Brook  <paul@codesourcery.com>
2207
2208         * include/bits/concurrence.h: Still create mutex object when
2209         single-threaded.
2210
2211 2004-06-25  Paolo Carlini  <pcarlini@suse.de>
2212
2213         * include/bits/stl_algobase.h (fill, fill_n): Revert last
2214         change: actually we need to copy construct an object of type
2215         _Tp, not of type iterator_traits<>::value_type, therefore the
2216         code is ok.
2217
2218 2004-06-25  Paolo Carlini  <pcarlini@suse.de>
2219
2220         * include/bits/stl_algobase.h (fill, fill_n): Tighten the
2221         dispatch: use iterator_traits<>::value_type, not _Tp.
2222
2223 2004-06-25  Paolo Carlini  <pcarlini@suse.de>
2224
2225         * testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
2226         * testsuite/25_algorithms/fill/2.cc: Likewise.
2227
2228 2004-06-25  Dan Nicolaescu  <dann@ics.uci.edu>
2229             Paolo Carlini  <pcarlini@suse.de>
2230
2231         * include/bits/stl_algobase.h (__fill, __fill_n): New helpers
2232         for fill and fill_n, respectively: when copying is cheap, use a
2233         temporary to avoid a memory read in each iteration.
2234
2235 2004-06-25  Paolo Carlini  <pcarlini@suse.de>
2236
2237         * testsuite/25_algorithms/fill/1.cc: New.
2238         * testsuite/25_algorithms/fill/2.cc: Likewise.
2239
2240 2004-06-25  Benjamin Kosnik  <bkoz@redhat.com>
2241
2242         * include/debug/formatter.h (__gnu_debug::_Error_formatter):
2243         Remove copy constructor and assignment operator.
2244
2245 2004-06-24  Benjamin Kosnik  <bkoz@redhat.com>
2246
2247         * include/bits/concurrence.h (__gnu_cxx::lock): New.
2248         * include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
2249         (__pool_base::_M_get_mutex): New.
2250         * include/bits/allocator.h: Tweak.
2251         * src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
2252         * config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
2253         * include/bits/stl_threads.h: Remove.
2254         * include/Makefile.am: Also here.
2255         * include/Makefile.in: Regenerate.
2256
2257         * src/locale_init.cc: Use __gnu_cxx::lock.
2258
2259         * src/allocator.cc: Move all instantiations...
2260         * src/allocator-inst.cc: ...here.
2261
2262 2004-06-23  Andrew Pinski  <apinski@apple.com>
2263
2264         * linkage.m4: Remove check for libmx.
2265         * configure: Regenerate.
2266
2267 2004-06-23  Paolo Carlini  <pcarlini@suse.de>
2268
2269         PR libstdc++/16154
2270         * include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
2271         Don't require the _DefaultConstructibleConcept.
2272         (struct _ForwardIteratorConcept): Require it here.
2273
2274 2004-06-22  Alexandre Oliva  <aoliva@redhat.com>
2275
2276         * include/bits/istream.tcc (getline): Make sure arguments passed
2277         to min/max have the same type.
2278         * include/bits/locale_facets.tcc (__verify_grouping): Likewise.
2279         * include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.
2280
2281 2004-06-22  Benjamin Kosnik  <bkoz@redhat.com>
2282
2283         * docs/html/abi.html: Update links.
2284
2285 2004-06-22  Paolo Carlini  <pcarlini@suse.de>
2286
2287         * testsuite/26_numerics/complex_inserters_extractors.cc,
2288         complex_value.cc, buggy_complex.cc: Move to...
2289         * testsuite/26_numerics/complex/: ... here.
2290         * testsuite/26_numerics/c99_classification_macros_c++.cc,
2291         c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc,
2292         fabs_inline.cc: Move to...
2293         * testsuite/26_numerics/cmath/: ... here.
2294         * testsuite/26_numerics/binary_closure.cc, slice.cc,
2295         slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc,
2296         valarray_name_lookup.cc, valarray_operators.cc,
2297         valarray_subset_assignment.cc: Move to...
2298         * testsuite/26_numerics/valarray/: ... here (new dir).
2299         * testsuite/26_numerics/sum_diff.cc: Move to...
2300         * testsuite/26_numerics/numeric/: ... here (new dir).
2301
2302 2004-06-22  Paolo Carlini  <pcarlini@suse.de>
2303
2304         * include/std/std_istream.h (ignore(streamsize __n = 1,
2305         int_type __delim = traits_type::eof())): Split into...
2306         (ignore(), ignore(streamsize __n), ignore(streamsize __n,
2307         int_type __delim)): The first two can be much more simpler
2308         and efficient than the fully general case; also, the last
2309         two can take advantage of the same mechanism already used
2310         for getline.
2311         * include/bits/istream.tcc (ignore(streamsize __n = 1,
2312         int_type __delim = traits_type::eof()): Remove.
2313         (ignore(), ignore(streamsize __n), ignore(streamsize __n,
2314         int_type __delim)): New.
2315
2316 2004-06-21  Loren J. Rittle  <ljrittle@acm.org>
2317
2318         * config/linker-map.gnu: Use wildcards for
2319         __basic_file::sys_open(FILE*, _Ios_Openmode).
2320
2321 2004-06-20  Paolo Carlini  <pcarlini@suse.de>
2322
2323         * testsuite/27_io/basic_istream/ignore/char/3.cc: New.
2324
2325 2004-06-18  Paolo Carlini  <pcarlini@suse.de>
2326
2327         * include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
2328         the alignment requested.
2329         (__mt_alloc<>::_Tune::_Tune): Tweak consistently.
2330         (__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
2331         (__mt_alloc<>::deallocate): Likewise.
2332
2333 2004-06-18  Paolo Carlini  <pcarlini@suse.de>
2334
2335         PR libstdc++/16020
2336         * include/debug/safe_base.h
2337         (_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
2338         _Safe_sequence_base::operator=): Provide definitions.
2339         * testsuite/23_containers/bitset/cons/16020.cc: New.
2340
2341 2004-06-18  Benjamin Kosnik  <bkoz@redhat.com>
2342
2343         * include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
2344         (__pool_base): Remove unused template parameter.  Add
2345         protected. Move lock data into __pool_base::_Lock. Remove static
2346         on member functions.
2347         (__pool_base::_M_get_free_list): New.
2348         (__pool_alloc): Move _S_force new here.
2349         * src/allocator.cc: Move out of line __pool_base definitions here.
2350         * config/linker-map.gnu: Export bits from __pool_base.
2351
2352 2004-06-18  Paolo Carlini  <pcarlini@suse.de>
2353
2354         * config/locale/gnu/numeric_members.cc
2355         (numpunct<wchar_t>::_M_initialize_numpunct): Clean up
2356         assignments of _M_decimal_point and _M_thousands_sep.
2357         * config/locale/gnu/time_members.cc
2358         (__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
2359         and reformat assignments of date and time fields.
2360
2361 2004-06-16  Paolo Carlini  <pcarlini@suse.de>
2362
2363         * include/ext/rope (rope(_CharT, const allocator_type&)): Fix
2364         to use _Data_allocate.
2365         * include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
2366         (rope<>::_S_substring): Likewise.
2367         (rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
2368         (rope<>::c_str()): Likewise.
2369         (rope<>::replace_with_c_str()): Likewise.
2370
2371         * include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
2372         Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
2373         not _RopeRep.
2374         (_Rope_iterator_base<>::_S_setcache): Likewise.
2375         (_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
2376         (rope<>::_S_substring): Likewise.
2377         (rope<>::_S_dump): Likewise.
2378         (rope<>::_S_fetch_ptr): Likewise.
2379         (rope<>::_S_compare): Likewise.
2380         (rope<>::replace_with_c_str()): Likewise.
2381
2382         * testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
2383         * testsuite/ext/rope/2.cc: New.
2384
2385 2004-06-16  Paolo Carlini  <pcarlini@suse.de>
2386             Matt Austern  <austern@apple.com>
2387
2388         * testsuite/ext/rope/3.cc: New.
2389
2390 2004-06-15  Paolo Bonzini  <bonzini@gnu.org>
2391
2392         * acinclude.m4: Remove useless multilib configury.
2393         * Makefile.am: Remove useless multilib rules.
2394         * aclocal.m4: Regenerate.
2395         * Makefile.in: Regenerate.
2396         * configure: Regenerate.
2397
2398 2004-06-15  Paolo Carlini  <pcarlini@suse.de>
2399
2400         * include/ext/hashtable.h: Trivial formatting fixes.
2401         * include/ext/rb_tree: Likewise.
2402
2403 2004-06-14  Paolo Carlini  <pcarlini@suse.de>
2404
2405         * include/ext/hash_map: Trivial formatting fixes.
2406         * include/ext/hash_set: Likewise.
2407         * include/ext/memory: Likewise.
2408         * include/ext/numeric: Likewise.
2409
2410 2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>
2411
2412         * Makefile.in: Regenerate with automake 1.8.5.
2413         * aclocal.m4: Same.
2414         * include/Makefile.in: Same.
2415         * libmath/Makefile.in: Same.
2416         * libsupc++/Makefile.in: Same.
2417         * po/Makefile.in: Same.
2418         * src/Makefile.in: Same.
2419         * testsuite/Makefile.in: Same.
2420
2421 2004-06-14  Paolo Carlini  <pcarlini@suse.de>
2422
2423         * include/ext/slist: Trivial formatting fixes.
2424
2425 2004-06-14  Paolo Carlini  <pcarlini@suse.de>
2426
2427         * include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
2428         Don't use the 'magic number' 10 in the computation of __minlen;
2429         never access __name past __minlen; in the loop over __i3, don't
2430         decrease __nmatches and increase __i3 at once, only either of
2431         the two; tidy.
2432
2433 2004-06-13  Paolo Carlini  <pcarlini@suse.de>
2434
2435         * include/bits/locale_facets.tcc (time_get<>::do_get_time,
2436         time_get<>::do_get_date): Use only once _M_extract_via_format,
2437         instead of going through "%X"/"%x" and calling it two times
2438         (+ using widen).
2439
2440 2004-06-12  Paolo Carlini  <pcarlini@suse.de>
2441
2442         * include/ext/algorithm: Trivial formatting fixes.
2443         * include/ext/functional: Likewise.
2444         * include/ext/hash_fun.h: Likewise.
2445         * include/ext/iterator: Likewise.
2446
2447 2004-06-12  Paolo Carlini  <pcarlini@suse.de>
2448
2449         * include/bits/basic_string.tcc (find(const _CharT*, size_type,
2450         size_type)): Reimplement using std::search.
2451         * src/string-inst.cc: Instantiate std::search for char/wchar_t.
2452
2453 2004-06-12  Dhruv Matani  <dhruvbird@gmx.net>
2454
2455         * testsuite/performance/21_strings/string_find.cc: New.
2456
2457 2004-06-10  Aaron W. LaFramboise  <aaronraolete36@aaronwl.com>
2458
2459         * include/bits/istream.tcc (istream::ignore): Fix for -Wuninitialized.
2460
2461 2004-06-10  Jan van Dijk  <jan@etpmod.phys.tue.nl>
2462
2463         * include/std/std_complex.h (sin(const complex<_Tp>& __z)): Make
2464         this function return a value.
2465
2466 2004-06-09  Paolo Carlini  <pcarlini@suse.de>
2467
2468         PR libstdc++/15775
2469         * include/bits/stl_deque.h: Consistently with stl_set.h, define
2470         pointer as allocator's pointer, likewise for reference,
2471         const_pointer, and const_reference.
2472         * include/bits/stl_list.h: Likewise.
2473         * include/bits/stl_map.h: Likewise.
2474         * include/bits/stl_multimap.h: Likewise.
2475         * include/bits/stl_vector.h: Likewise.
2476
2477 2004-06-09  Benjamin Kosnik  <bkoz@redhat.com>
2478
2479         * crossconfig.m4: Remove signbit, signbitf, signbitl.
2480         * linkage.m4: Comment LIBMATHOBJS, tweak others.  AC_DEFINES for
2481         builtin math functions instead of AC_DEFINE_UNQUOTED.
2482         * configure: Regenerate.
2483
2484 2004-06-08  Benjamin Kosnik  <bkoz@redhat.com>
2485
2486         * docs/doxygen/filter.sed: Rename _GLIBCXX_STD to std.
2487         * docs/doxygen/mainpage.html: Remove links.
2488
2489 2004-06-08  Jason Merrill  <jason@redhat.com>
2490
2491         * config/linker-map.gnu: Use wildcards for
2492         __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
2493
2494 2004-06-08  Paolo Carlini  <pcarlini@suse.de>
2495
2496         * include/ext/pool_allocator.h: Convert to a global free-list,
2497         as per the original SGI/HP design: move the implementation
2498         details to struct __pool_base, from which __pool_alloc derives.
2499         * src/allocator.cc: Instantiate __pool_base.
2500
2501 2004-06-07  Dhruv Matani  <dhruvbird@gmx.net>
2502             Paolo Carlini  <pcarlini@suse.de>
2503
2504         * testsuite/testsuite_performance.h
2505         (resource_counter::allocated_memory): Make it return the right
2506         number of bytes requested by the allocators/application. This is
2507         the sbrk+mmaped memory.
2508
2509 2004-06-02  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2510
2511         * include/std/std_complex.h (log): Tidy.
2512
2513 2004-05-31  Benjamin Kosnik  <bkoz@redhat.com>
2514
2515         * config/linker-map.gnu (GLIBCXX_3.4.1): Add.
2516         * testsuite/testsuite_abi.cc: Same.
2517         * configure.ac (libtool_VERSION): Bump to 6:1:0.
2518         * configure: Regenerate.
2519         * aclocal.m4: Regenerate.
2520
2521 2004-05-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
2522
2523         * include/std/std_complex.h (complex<_Tp>): Properly indent
2524         to follow C++STYLE.
2525         (complex<>::__rep): New.
2526         (__complex_abs): New.  Dispatch to built-ins.
2527         (abs): Use them.
2528         (__complex_arg): New. Dispatch to built-ins.
2529         (arg): Use it.
2530         (__complex_cos): New. Dispatch to built-ins.
2531         (cos): Use it.
2532         (__complex_cosh): New. Dispatch to built-ins.
2533         (cosh): Use it.
2534         (__complex_exp): New. Dispatch to built-ins.
2535         (exp): Use it.
2536         (__complex_log): New. Dispatch to built-ins.
2537         (log): Use it.
2538         (__complex_sin): New. Dispatch to built-ins.
2539         (sin): Use it.
2540         (__complex_sinh): New. Dispatch to built-ins.
2541         (sinh): Use it.
2542         (__complex_sqrt): New. Dispatch to built-ins.
2543         (sqrt): Use it.
2544         (__complex_tan): New. Dispatch to built-ins.
2545         (tan): Use it.
2546         (__complex_tanh): New. Dispatch to built-ins.
2547         (tanh): Use it.
2548         (__complex_pow): New. Dispatch to built-ins.
2549         (pow): Use it.
2550
2551 2004-05-29  Richard B. Kreckel  <Richard.Kreckel@Framatome-ANP.com>
2552             Benjamin Kosnik  <bkoz@redhat.com>
2553
2554         PR libstdc++/14600
2555         * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
2556         * include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
2557         * config/io/basic_file_stdio.cc (__basic_file::file): New.
2558         * config/io/basic_file_stdio.h: Define.
2559
2560 2004-05-27  Benjamin Kosnik  <bkoz@redhat.com>
2561
2562         PR libstdc++/15675
2563         * docs/html/documentation.html: Update doxygen links for 3.4.0.
2564
2565 2004-05-27  Jan Beulich  <jbeulich@novell.com>
2566
2567         * scripts/create_testsuite_files: Tweak.
2568
2569 2004-05-25  Benjamin Kosnik  <bkoz@redhat.com>
2570
2571         PR libstdc++/15489
2572         * scripts/create_testsuite_files: Revert xtype change, add non-GNU
2573         bits to do the same thing.
2574
2575 2004-05-24  Paolo Carlini  <pcarlini@suse.de>
2576
2577         * include/bits/istream.tcc (ignore): Correctly deal with
2578         n == numeric_limits<streamsize>::max().
2579         * testsuite/27_io/basic_istream/ignore/char/2.cc: New.
2580
2581         * include/bits/istream.tcc (basic_istream<>::getline): Prefer
2582         '_M_gcount + 1 < __n' to '--__n; _M_gcount < __n', just in case
2583         __n == numeric_limits<>::min().
2584
2585         * include/bits/istream.tcc: Minor tweaks.
2586
2587         * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
2588         Tighten.
2589         * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
2590         Likewise.
2591         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
2592         Likewise.
2593         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
2594         Likewise.
2595         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
2596
2597 2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
2598
2599         PR libstdc++/12854
2600         Fixups for -Weffc++.
2601         * include/bits/basic_string.h (basic_string::operator=): Return
2602         pointer to this instead of result of assign. Although redundant,
2603         this doesn't impact resultant codegen.
2604
2605         * include/bits/locale_facets.h (__numpunct_cache): Declare
2606         assignment opxserator and copy constructor private.
2607         (__timepunct_cache): Same.
2608         (__moneypunct_cache): Same.
2609         (collate): Use member initialization list for _M_c_locale_collate.
2610         * config/locale/gnu/messages_members.h: Same.
2611         * config/locale/gnu/time_members.h (__timepunct): Same.
2612         * src/codecvt.cc: Use member initialization list to initialize
2613         _M_c_locale_codecvt.
2614         * src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
2615         * config/os/gnu-linux/ctype_noninline.h: Same.
2616         * src/locale.cc (_Impl): Same.
2617         * src/locale_init.cc: Same.
2618         * src/localename.cc: Same.
2619
2620         * include/bits/basic_ios.h (basic_ios): Complete member
2621         initialization list.
2622         * include/bits/istream.tcc (basic_istream::sentry): Same.
2623         * include/bits/ostream.tcc (basic_ostream::sentry): Same.
2624         * include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
2625         _M_pback to member initialization list.
2626         * include/std/std_streambuf.h: Same.
2627         * include/std/std_sstream.h: Same, for _M_mode.
2628         * src/ios.cc (ios_base): Same.
2629
2630         * include/ext/rope: Make derived classes match exception
2631
2632          specifications. Add copy constructors and assignment operators.
2633
2634         * include/debug/safe_base.h (_Safe_sequence_base): Declare copy
2635         constructor and assignment operator protected.
2636         (_Safe_iterator_base): Same.
2637         * include/debug/formatter.h (_Error_formatter): Define copy
2638         constructor and assignment operator.
2639
2640         * include/backward/strstream: Declare assignment operator and copy
2641         constructor private.
2642
2643 2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
2644
2645         * testsuite/testsuite_hooks.h (func_callback): Declare copy
2646         constructor and assignment operator private.
2647         * testsuite/23_containers/deque/cons/clear_allocator.cc: Match
2648         exception specifications of base class.
2649         * testsuite/23_containers/list/cons/clear_allocator.cc: Same.
2650         * testsuite/23_containers/vector/cons/clear_allocator.cc: Same.
2651         * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
2652
2653 2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
2654
2655         * libsupc++/cxxabi.h: Remove duplicated and useless public and
2656         private keywords in class declarations. Format. Use
2657         stddef.h. Expose declarations to "C" compilation.
2658         * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
2659         assignment operator.
2660         (__dyncast_result): Same.
2661         * libsupc++/vec.cc (uncatch_exception): Same, use member
2662         initialization list.
2663
2664 2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>
2665
2666         * testsuite/abi_check.cc: Add unistd.h.
2667
2668 2004-05-22  Paolo Carlini  <pcarlini@suse.de>
2669
2670         PR libstdc++/15565
2671         * include/bits/locale_facets.tcc (__int_to_char(unsigned long),
2672         __int_to_char(unsigned long long)): Showpos is not relevant
2673         for unsigned types.
2674         * testsuite/22_locale/num_put/put/char/15565.cc: New.
2675         * testsuite/22_locale/num_put/put/wchar_t/15565.cc: New.
2676
2677         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Use L for the fill
2678         char.
2679         * testsuite/22_locale/num_put/put/wchar_t/2.cc: Likewise.
2680         * testsuite/22_locale/num_put/put/wchar_t/3.cc: Likewise.
2681         * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
2682         * testsuite/22_locale/num_put/put/wchar_t/5.cc: Likewise.
2683         * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
2684         * testsuite/22_locale/num_put/put/wchar_t/8.cc: Likewise.
2685
2686 2004-05-21  Matthias Klose  <doko@debian.org>
2687
2688         * docs/doxygen/run_doxygen:  Bump required version.
2689
2690 2004-05-21  Benjamin Kosnik  <bkoz@redhat.com>
2691
2692         * docs/html/abi.html (libgcc_s): Additions suggested by Matthias Klose.
2693         * docs/doxygen/Intro.3: Subtractions suggested by Phil Edwards.
2694
2695 2004-05-21  Paolo Carlini  <pcarlini@suse.de>
2696
2697         * include/bits/istream.tcc (ignore): Remove redundant line.
2698         (readsome): Tidy, closely following 27.6.1.3, p30.
2699
2700 2004-05-20  Paolo Carlini  <pcarlini@suse.de>
2701
2702         * include/bits/istream.tcc (operator>>(basic_istream<>&,
2703         basic_string<>&)): Use a temporary buffer, thus avoiding
2704         reallocation for common case.
2705         * testsuite/21_strings/basic_string/inserters_extractors/char/11.cc:
2706         New.
2707         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/11.cc:
2708         Likewise.
2709
2710         * include/bits/istream.tcc: Const-ification of a few variables.
2711
2712         * include/bits/ostream.tcc: Trivial formatting fixes and
2713         const-ification of some variables.
2714
2715 2004-05-20  Benjamin Kosnik  <bkoz@redhat.com>
2716
2717         PR libstdc++/15123
2718         PR libstdc++/13928
2719         * docs/doxygen/Intro.3: Remove Allocators.3.
2720         Add new extension headers, extension namespace list.
2721         * docs/doxygen/run_doxygen (problematic): Remove Allocators.3
2722         Rename GLIBCXXSTD names to std::. Rename __gnu_debug to
2723         __gnu_debug::. Remove __policy_ renames.
2724         * docs/doxygen/guide.html: Add dot note.
2725         * docs/doxygen/stdheader.cc: Edit, add files.
2726         * docs/doxygen/user.cfg.in: Regenerate with Doxygen 1.3.7.
2727
2728 2004-05-18  Jonathan Wakely  <redi@gcc.gnu.org>
2729
2730         * include/ext/stdio_filebuf.h: Update comments to reflect PR 11691.
2731
2732 2004-05-18  Jan Beulich  <jbeulich@novell.com>
2733
2734         PR libstdc++/15489
2735         * scripts/create_testsuite_files: Also find source files through
2736         symbolic links.
2737
2738 2004-05-18  Jan Beulich  <jbeulich@novell.com>
2739
2740         PR libstdc++/15488
2741         * testsuite/lib/libstdc++.exp: Make test files writable.
2742
2743 2004-05-18  Paolo Carlini  <pcarlini@suse.de>
2744
2745         * include/ext/mt_allocator.h:(__mt_alloc::allocate): Minor
2746         tweaks.
2747
2748 2004-05-18  Dhruv Matani  <dhruvbird@gmx.net>
2749
2750         * include/ext/mt_allocator.h:(__mt_alloc::allocate): Re-write
2751         allocation loop which removes blocks from the global free list
2752         from O(N) to O(1) when the required blocks are <= the number
2753         available.
2754
2755 2004-05-18  Jonathan Wakely  <redi@gcc.gnu.org>
2756
2757         * include/ext/enc_filebuf.h: Move concept-check macro to class scope.
2758
2759 2004-05-17  Benjamin Kosnik  <bkoz@redhat.com>
2760
2761         * testsuite/testsuite_hooks.h (__gnu_test::conversion): New class.
2762         * testsuite/23_containers/deque/14340.cc: New.
2763         * testsuite/23_containers/list/14340.cc: New.
2764         * testsuite/23_containers/map/14340.cc: New.
2765         * testsuite/23_containers/multimap/14340.cc: New.
2766         * testsuite/23_containers/multiset/14340.cc: New.
2767         * testsuite/23_containers/set/14340.cc: New.
2768         * testsuite/23_containers/vector/14340.cc: New.
2769
2770 2004-05-17  Douglas Gregor   <gregod@cs.rpi.edu>
2771
2772         PR libstdc++/14340
2773         * include/debug/safe_iterator.h (_Safe_iterator converting
2774         constructor): Only allow declaration to instantiate when the
2775         incoming _Safe_iterator has exactly the right iterator type.
2776
2777 2004-05-17  Jonathan Wakely  <redi@gcc.gnu.org>
2778
2779         * include/bits/boost_concept_check.h: Fix old attribute syntax.
2780         * testsuite/23_containers/map/modifiers/swap.cc: Define operator<
2781         to pass concept-checks.
2782         * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
2783         * testsuite/23_containers/set/modifiers/swap.cc: Same.
2784         * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
2785
2786 2004-05-16  Paolo Carlini  <pcarlini@suse.de>
2787
2788         * include/std/std_bitset.h: Minor formatting fixes.
2789
2790 2004-05-16  Paolo Carlini  <pcarlini@suse.de>
2791
2792         * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
2793         Consistently update __bin._M_free[0].
2794         (__mt_alloc<>::allocate): When __bin._M_first[0] != NULL use
2795         __bin._M_free[0] to simplify the while loop (i.e., the number
2796         of iterations becomes known at the outset).
2797
2798 2004-05-15  Paolo Carlini  <pcarlini@suse.de>
2799
2800         * include/std/std_bitset.h: Trivial formatting fixes.
2801
2802 2004-05-14  Paolo Carlini  <pcarlini@suse.de>
2803             Ivan Godard  <igodard@pacbell.net>
2804
2805         PR libstdc++/15361
2806         * include/std/std_bitset.h (_Base_bitset<_Nw>::_M_do_find_next): Fix.
2807         * testsuite/23_containers/bitset/ext/15361.cc: New.
2808
2809 2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2810
2811         PR libstdc++/15046
2812         * crossconfig.m4: Add C99 math bits for linux crosses.
2813         * configure: Regenerate.
2814
2815 2004-05-13  Simon Marshall <simon.marshall@misys.com>
2816             Benjamin Kosnik  <bkoz@redhat.com>
2817
2818         PR libstdc++/15090
2819         * include/bits/locale_facets.h: Fix for -fno-for-scope.
2820         * include/debug/safe_sequence.h: Same.
2821         * include/debug/safe_iterator.tcc: Same.
2822         * src/debug.cc: Same.
2823         * src/locale.cc: Same.
2824         * src/locale_init.cc: Same.
2825         * src/localename.cc: Same.
2826         * config/locale/gnu/ctype_members.cc: Same.
2827         * config/locale/gnu/numeric_members.cc: Same.
2828         * testsuite/testsuite_abi.cc: Same.
2829         * testsuite/testsuite_hooks.cc: Same.
2830
2831 2004-05-13  Jonathan Wakely  <redi@gcc.gnu.org>
2832
2833         * docs/html/abi.html: Document effect of -fabi-version on value
2834         of __GXX_ABI_VERSION, and that it's defined in c-cppbuiltin.c.
2835         Fix markup.
2836
2837 2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2838
2839         PR libstdc++/15074
2840         * docs/html/faq/index.html: Update docs for libsupc++ usage.
2841
2842 2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2843
2844         PR libstdc++/15412
2845         * include/bits/stl_threads.h (_GLIBCXX_mutex): Move to namespace
2846         __gnu_internal.
2847         (_GLIBCXX_mutex_address): Same.
2848         (_GLIBCXX_once): Same.
2849         (_GLIBCXX_mutex_init): Same.
2850         (_GLIBCXX_mutex_address_init): Same.
2851
2852 2004-05-13  Benjamin Kosnik  <bkoz@redhat.com>
2853
2854         * docs/html/abi.html: New.
2855         * docs/html/abi.txt: Remove.
2856         * docs/html/documentation.html: Add link.
2857         * testsuite/Makefile.am: Add files.
2858         * testsuite/Makefile.in: Regenerated.
2859         * testsuite/abi_check.cc: Move and modify code into...
2860         * testsuite/testsuite_abi.cc: Add.
2861         * testsuite/testsuite_abi.h: Add.
2862
2863         * docs/html/17_intro/TODO: Update.
2864         * include/bits/stl_pair.h: Format.
2865
2866 2004-05-06  Matthias Klose  <doko@debian.org>
2867
2868         * include/backward/iterator.h:  Add GPL copyright info,
2869         with exception clause.
2870         * include/bits/boost_concept_check.h: Likewise.
2871         * include
2872         * libsupc++/tinfo.h: Likewise.
2873         * po/string_literals.cc: Likewise.
2874
2875 2004-05-03  Andreas Tobler  <a.tobler@schweiz.ch>
2876
2877         * acinclude.m4: Replace -W with more speaking -Wextra.
2878         * configure: Rebuilt.
2879
2880 2004-05-03  Paolo Carlini  <pcarlini@suse.de>
2881
2882         Optimize locale::_M_impl->_M_names for the most common cases:
2883         !_M_names[0] means unnamed; !_M_names[1] means all the categories
2884         the same name (_M_names[0] && _M_names[1] means that the full set
2885         of _M_names must be processed, the general case).
2886         * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name):
2887         Tweak, saving work when !_M_names[1].
2888         (locale::locale(const locale&, _Facet*): Simplify: now just setting
2889         _M_names[0] = 0 means unnamed.
2890         * src/locale.cc (locale::operator==): Deal first with the common,
2891         easy cases, otherwise fall back to locale::name().
2892         (locale::name()): Tweak, if !_M_names[0] just return "*".
2893         (locale::_Impl::_Impl(const _Impl&, size_t): Tweak, early stop
2894         copying __imp._M_names if !__imp._M_names[0] or !__imp._M_names[1].
2895         * src/locale_init.cc (locale::_Impl::_Impl(size_t)): Tweak.
2896         * src/localename.cc (locale::_Impl::_Impl(const char*, size_t):
2897         Simplify when !std::strchr, just updating _M_names[0]; clean up.
2898         (locale::_Impl::_M_replace_categories): When !_M_names[1] prepare
2899         for the general case (full set of names), then do the usual work;
2900         clean up.
2901
2902         * src/locale.cc (locale::name()): Reserve space in __ret.
2903         * src/locale_init.cc (locale::global(const locale&)): Save
2904         the name in a temporary.
2905         * src/localename.cc (locale::locale(const char*)): Reserve space
2906         in __str.
2907
2908 2004-04-29  Paolo Carlini  <pcarlini@suse.de>
2909
2910         * src/locale.cc (locale::operator==): Always avoid constructing
2911         locale::name(), directly compare pairs of _M_names.
2912
2913 2004-04-26  Paolo Carlini  <pcarlini@suse.de>
2914
2915         * include/bits/istream.tcc: Fix comment.
2916
2917 2004-04-26  Paolo Carlini  <pcarlini@suse.de>
2918
2919         * include/bits/stl_vector.h: Trivial formatting fixes.
2920         * include/bits/vector.tcc: Likewise.
2921
2922 2004-04-25  Paolo Carlini  <pcarlini@suse.de>
2923
2924         PR libstdc++/15002 (continued again)
2925         * include/bits/istream.tcc (getline(basic_istream<>&,
2926         basic_string<>&, _CharT)): Use a temporary buffer, thus
2927         avoiding reallocation for common case.
2928
2929         * include/bits/basic_string.tcc (_S_construct(_InIterator,
2930         _InIterator, const _Alloc&, input_iterator_tag)): Tweak size
2931         of temporary buffer to a power of two.
2932
2933         * testsuite/27_io/basic_istream/getline/char/4.cc: Add comment.
2934
2935 2004-04-25  Paolo Carlini  <pcarlini@suse.de>
2936
2937         * testsuite/21_strings/basic_string/inserters_extractors/char/10.cc:
2938         New.
2939         * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/10.cc:
2940         Likewise.
2941         * testsuite/27_io/basic_istream/getline/char/5.cc: Likewise.
2942
2943 2004-04-24  Paolo Carlini  <pcarlini@suse.de>
2944             Petur Runolfsson  <peturr02@ru.is>
2945
2946         PR libstdc++/15002 (continued)
2947         * include/bits/istream.tcc (basic_istream<>::getline(char_type*,
2948         streamsize, char_type)): Use traits::find/copy in a loop to speed
2949         up greatly the function in the common case (I/O buffer size >> 1).
2950
2951 2004-04-24  Paolo Carlini  <pcarlini@suse.de>
2952
2953         * testsuite/27_io/basic_istream/getline/char/4.cc: New.
2954
2955         * include/bits/istream.tcc (getline(basic_istream<>&,
2956         basic_string<>&, _CharT)): Change to use sgetc()/snextc() instead
2957         of sbumpc(), consistently with the other functions, thus also
2958         dealing correctly with the case of exceeded string::max_size().
2959
2960 2004-04-24  Matthias Klose  <doko@debian.org>
2961
2962         Jonathan Wakely  <cow@compsoc.man.ac.uk>
2963         * docs/html/configopts.html: Fix reference to allocator config option.
2964
2965 2004-04-23  Andrew Pinski  <pinskia@physics.uc.edu>
2966
2967         * linkage.m4 (GLIBCXX_CHECK_MATH_SUPPORT): Check for libmx also.
2968         * configure: Regenerate.
2969
2970 2004-04-23  Daniel Jacobowitz  <drow@mvista.com>
2971
2972         PR libstdc++/15047, libstdc++/11610
2973         * testsuite/lib/libstdc++.exp (v3-copy-files): Use remote_download.
2974         (libstdc++_init): Don't pass outdir to v3-copy-files.
2975
2976 2004-04-21  Paolo Carlini  <pcarlini@suse.de>
2977
2978         * include/bits/deque.tcc: Trivial formatting fixes.
2979         * include/bits/stl_deque.h: Likewise.
2980         * include/bits/stl_list.h: Likewise.
2981         * include/bits/stl_tree.h: Likewise.
2982
2983 2004-04-21  Paolo Carlini  <pcarlini@suse.de>
2984             Andrew Pinski  <pinskia@physics.uc.edu>
2985
2986         * include/bits/basic_string.tcc (_M_mutate): Don't compute
2987         __src unnecessarily.
2988
2989 2004-04-19  Benjamin Kosnik  <bkoz@redhat.com>
2990
2991         * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
2992         Clarify assertion, set test variable to false before assert.
2993         * testsuite/27_io/basic_istringstream/str/char/1.cc: Same.
2994         * testsuite/27_io/basic_stringstream/str/char/1.cc: Same.
2995         * testsuite/27_io/ios_base/storage/2.cc: Same.
2996
2997         * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: Fix
2998         function returns.
2999         * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Same.
3000         * testsuite/27_io/fpos/14320-3.cc: Same.
3001
3002         * testsuite/27_io/basic_filebuf/2.cc: Instantiate in namespace std.
3003         * testsuite/27_io/fpos/1.cc: Same.
3004         * testsuite/27_io/basic_stringstream/2.cc: Same.
3005         * testsuite/27_io/basic_stringbuf/4.cc: Same.
3006         * testsuite/27_io/basic_stringbuf/1.cc: Same.
3007         * testsuite/27_io/basic_stringbuf/2.cc: Same.
3008         * testsuite/27_io/basic_streambuf/2.cc: Same.
3009         * testsuite/27_io/basic_ostringstream/2.cc: Same.
3010         * testsuite/27_io/basic_ostream/2.cc: Same.
3011         * testsuite/27_io/basic_ofstream/2.cc: Same.
3012         * testsuite/27_io/basic_istringstream/2.cc: Same.
3013         * testsuite/27_io/basic_istream/2.cc: Same.
3014         * testsuite/27_io/basic_iostream/2.cc: Same.
3015         * testsuite/27_io/basic_ios/2.cc: Same.
3016         * testsuite/27_io/basic_ifstream/2.cc: Same.
3017         * testsuite/27_io/basic_fstream/2.cc: Same.
3018         * testsuite/ext/stdio_filebuf/char/1.cc: Same, in namespace __gnu_cxx.
3019
3020         * testsuite/21_strings/basic_string/capacity/1.cc: Don't compare
3021         unsigned against zero.
3022         * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Same.
3023         * testsuite/21_strings/basic_string/capacity/char/1.cc: Same.
3024
3025         * testsuite/18_support/new_delete_placement.cc: Initialize
3026         variables before first use.
3027         * testsuite/21_strings/char_traits/requirements/wchar_t/1.cc: Same.
3028         * testsuite/21_strings/char_traits/requirements/char/1.cc: Same.
3029         * testsuite/21_strings/char_traits/requirements/short/1.cc: Same.
3030         * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
3031         Same.
3032         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_badbit_throw.cc: Same.
3033         * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
3034         Same.
3035         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/exceptions_failbit_throw.cc: Same.
3036         * testsuite/27_io/types/2.cc: Same.
3037
3038         * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Fix temporary
3039         file name.
3040         * testsuite/27_io/fpos/14775.cc: Same.
3041
3042 2004-04-19  Paolo Carlini  <pcarlini@suse.de>
3043
3044         PR libstdc++/15002 (partial)
3045         * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
3046         Special case __n2 == 1, not calling traits_type::assign/copy.
3047
3048 2004-04-17  Benjamin Kosnik  <bkoz@redhat.com>
3049
3050         * include/bits/stl_bvector.h: Use _M_impl._M_start.
3051
3052 2004-04-16  Benjamin Kosnik  <bkoz@redhat.com>
3053
3054         * include/bits/c++config (_GLIBCXX_STD): New.
3055         * src/list.cc: Use it.
3056         * include/std/std_bitset.h: Same.
3057         * include/bits/vector.tcc: Same.
3058         * include/bits/stl_set.h: Same.
3059         * include/bits/stl_multiset.h: Same.
3060         * include/bits/stl_multimap.h: Same.
3061         * include/bits/stl_map.h: Same.
3062         * include/bits/stl_list.h: Same.
3063         * include/bits/stl_vector.h: Same.
3064         * include/bits/stl_bvector.h: Same.
3065         * include/bits/stl_deque.h: Same.
3066         * include/bits/deque.tcc: Same.
3067         * include/bits/list.tcc: Same.
3068         * include/debug/vector: Same.
3069         * include/debug/set.h: Same.
3070         * include/debug/multiset.h: Same.
3071         * include/debug/multimap.h: Same.
3072         * include/debug/map.h: Same.
3073         * include/debug/list: Same.
3074         * include/debug/deque: Same.
3075         * include/debug/bitset: Same.
3076         * include/debug/formatter.h (__gnu_debug): Remove using directive.
3077         Add using declaration for std::type_info.
3078         * include/debug/safe_iterator.h: Add using declaration for
3079         std::iterator_traits and std::pair.
3080         * src/debug_list.cc: New.
3081         * src/Makefile.am: Add debug_list.cc.
3082         * src/Makefile.in: Regenerate.
3083         * config/linker-map.gnu: Add _List_node_base exports for std and
3084         __gnu_norm.
3085
3086         * include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
3087         idiom that other containers use.
3088         * testsuite/23_containers/vector/bool/clear_allocator.cc: New.
3089
3090 2004-04-16  Paolo Carlini  <pcarlini@suse.de>
3091
3092         PR libstdc++/14975
3093         * include/bits/fstream.tcc (basic_filebuf::imbue): Zero _M_codecvt
3094         in case of error.
3095         * testsuite/27_io/basic_filebuf/imbue/char/14975-1.cc: New.
3096         * testsuite/27_io/basic_filebuf/imbue/wchar_t/14975-2.cc: New.
3097
3098 2004-04-16  Paolo Carlini  <pcarlini@suse.de>
3099
3100         * acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
3101         used anymore.
3102         * config.h.in: Regenerate.
3103
3104 2004-04-16  Paolo Carlini  <pcarlini@suse.de>
3105
3106         * config/locale/generic/monetary_members.cc
3107         (moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
3108         btowc unnecessarily, just cast to wchar_t (the concerned chars
3109         all belong to the basic character set).
3110         * config/locale/generic/numeric_members.cc
3111         (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
3112         * config/locale/gnu/monetary_members.cc
3113         (moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
3114         * config/locale/gnu/numeric_members.cc
3115         (numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
3116
3117 2004-04-15  Paolo Carlini  <pcarlini@suse.de>
3118
3119         * src/locale.cc (locale::operator==): When _M_impl == __rhs._M_impl
3120         avoid constructing unnecessarily this->name().
3121
3122 2004-04-14  Zack Weinberg  <zack@codesourcery.com>
3123
3124         * testsuite/Makefile.am: Add definition of AM_CXXFLAGS.
3125         Change definition of CXX to use $(shell) instead of backticks.
3126         * testsuite/Makefile.in: Regenerate.
3127
3128 2004-04-12  Dhruv Matani  <dhruvbird@gmx.net>
3129
3130         * testsuite/performance/20_util/allocator/list_sort_search.cc:
3131         Minor formatting fixes.
3132         * testsuite/performance/20_util/allocator/map_mt_find.cc:
3133         Likewise.
3134
3135 2004-04-12  Paolo Carlini <pcarlini@suse.de>
3136
3137         * config/locale/gnu/numeric_members.cc
3138         (numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
3139         in __uselocale, since btowc is called for chars belonging to
3140         the basic character set.
3141
3142 2004-04-09  Paolo Carlini  <pcarlini@suse.de>
3143
3144         * testsuite/22_locale/messages/members/char/1.cc: Remove junk.
3145         * testsuite/22_locale/messages/members/char/2.cc: Ditto.
3146         * testsuite/22_locale/messages/members/char/3.cc: Ditto.
3147         * testsuite/22_locale/num_get/get/char/1.cc: Ditto.
3148         * testsuite/22_locale/num_get/get/char/2.cc: Ditto.
3149         * testsuite/22_locale/num_get/get/char/3.cc: Ditto.
3150         * testsuite/22_locale/num_get/get/wchar_t/1.cc: Ditto.
3151         * testsuite/22_locale/num_get/get/wchar_t/2.cc: Ditto.
3152         * testsuite/22_locale/num_get/get/wchar_t/3.cc: Ditto.
3153         * testsuite/22_locale/num_put/put/char/1.cc: Ditto.
3154         * testsuite/22_locale/num_put/put/char/2.cc: Ditto.
3155         * testsuite/22_locale/num_put/put/char/3.cc: Ditto.
3156         * testsuite/22_locale/num_put/put/wchar_t/1.cc: Ditto.
3157         * testsuite/22_locale/num_put/put/wchar_t/2.cc: Ditto.
3158         * testsuite/22_locale/num_put/put/wchar_t/3.cc: Ditto.
3159         * testsuite/22_locale/numpunct/members/char/1.cc: Ditto.
3160         * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Ditto.
3161
3162 2004-04-07  Paolo Carlini  <pcarlini@suse.de>
3163
3164         * config/locale/generic/time_members.cc
3165         (__timepunct<char>::_M_initialize_timepunct,
3166         __timepunct<wchar_t>::_M_initialize_timepunct): the correct
3167         _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
3168         * config/locale/gnu/time_members.cc
3169         (__timepunct<char>::_M_initialize_timepunct,
3170         __timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
3171         * testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
3172         * testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
3173
3174         * testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
3175         * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
3176         * testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
3177         * testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
3178         * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
3179         * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
3180         * testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
3181         * testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
3182         * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
3183         * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
3184         * testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
3185         * testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
3186         * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
3187         * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
3188         * testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
3189         * testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
3190         * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
3191         * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
3192         * testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
3193         * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
3194         * testsuite/22_locale/time_put/put/char/1.cc: Ditto.
3195         * testsuite/22_locale/time_put/put/char/2.cc: Ditto.
3196         * testsuite/22_locale/time_put/put/char/3.cc: Ditto.
3197         * testsuite/22_locale/time_put/put/char/4.cc: Ditto.
3198         * testsuite/22_locale/time_put/put/char/5.cc: Ditto.
3199         * testsuite/22_locale/time_put/put/char/6.cc: Ditto.
3200         * testsuite/22_locale/time_put/put/char/7.cc: Ditto.
3201         * testsuite/22_locale/time_put/put/char/8.cc: Ditto.
3202         * testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
3203         * testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
3204         * testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
3205         * testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
3206         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
3207         * testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
3208         * testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
3209         * testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
3210
3211         * testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
3212
3213 2004-04-07  Paolo Carlini  <pcarlini@suse.de>
3214
3215         * config/locale/gnu/monetary_members.cc
3216         (moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
3217         _NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
3218         and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
3219         _NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
3220         * config/locale/gnu/numeric_members.cc
3221         (numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
3222         and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
3223
3224 2004-04-06  Benjamin Kosnik  <bkoz@redhat.com>
3225
3226         Fixups for EDG front end.
3227         * include/ext/rope: Instead of non-existent function
3228         _Data_allocate, use allocator's allocate. Use this.
3229         (namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
3230         enumerations from _Rope_RopeRep here.
3231         * include/ext/ropeimpl.h: Same.
3232         * src/ext-inst.cc (_S_min_len): Fix up definition.
3233
3234         * config/locale/gnu/ctype_members.cc: Qualify base class members
3235         with this.
3236         * config/locale/generic/ctype_members.cc: Same.
3237         * config/locale/gnu/messages_members.h: Same.
3238         * config/locale/generic/messages_members.h: Same.
3239         * src/ctype.cc: Same.
3240         * include/bits/codecvt.h: Same.
3241
3242         * include/bits/boost_concept_check.h: Declare.
3243         (__error_type_must_be_an_unsigned_integer_type): Remove this.
3244         (__error_type_must_be_an_integer_type): Remove this.
3245         (__error_type_must_be_a_signed_integer_type): Remove this.
3246
3247         * config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
3248
3249         * libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
3250         specification to definition.
3251         (__cxa_allocate_exception): Same.
3252         * libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
3253         * libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
3254         (__cxa_get_globals): Same.
3255
3256         * libsupc++/del_op.cc: Add comment about freestanding.
3257
3258 2004-04-05  Paolo Carlini  <pcarlini@suse.de>
3259
3260         * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
3261         The critical section is actually very small, only two assignments.
3262
3263 2004-04-04  Paolo Carlini  <pcarlini@suse.de>
3264             Petur Runolfsson  <peturr02@ru.is>
3265
3266         * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: New,
3267         adapted from libstdc++/11378.
3268
3269 2004-04-03  Paolo Carlini  <pcarlini@suse.de>
3270
3271         * include/ext/mt_allocator.h (__mt_alloc<>::allocate): Factor out
3272         some duplicated code.
3273         (__mt_alloc<>::_Bin_record): Spare the space of _M_free and _M_used
3274         in the single threaded case.
3275         * testsuite/performance/20_util/allocator/list_sort_search.cc:
3276         Reorder and renumber the tests consistently with the other testfiles.
3277         * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
3278         * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
3279         * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
3280
3281 2004-04-02  Paolo Carlini  <pcarlini@suse.de>
3282
3283         * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
3284         Rearrange arithmetic to avoid computing two divisions at
3285         each deallocation.
3286
3287 2004-04-01  Paolo Carlini  <pcarlini@suse.de>
3288
3289         * include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
3290         Streamline the second half, wrapping it in a single
3291         '#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
3292         conditionals inside loops.
3293
3294 2004-04-01  Paolo Carlini  <pcarlini@suse.de>
3295
3296         PR libstdc++/14775
3297         * acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
3298         * acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
3299         GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
3300         to _GLIBCXX_RES_LIMITS.
3301         (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
3302         HAVE_LIMIT_*.
3303         * testsuite/testsuite_hooks.h: Declare set_file_limit.
3304         * testsuite/testsuite_hooks.cc: Define it, using getrlimit
3305         and setrlimit(RLIMIT_FSIZE).
3306         * testsuite/27_io/fpos/14775.cc: New.
3307         * config.h.in: Regenerate.
3308         * configure: Likewise.
3309
3310 2004-03-31  Paolo Carlini  <pcarlini@suse.de>
3311
3312         * config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
3313         In v3 uses of sscanf, the special floating-point numbers INF,
3314         INFINITY, etc., cannot occur in input, therefore, if the latter
3315         is too large, ERANGE is always stored in errno, no need of finitel.
3316
3317 2004-03-30  Benjamin Kosnik  <bkoz@redhat.com>
3318
3319         PR libstdc++/14783
3320         * include/bits/stl_tree.h: Adjust initialization list order.
3321
3322 2004-03-29  Loren J. Rittle  <ljrittle@acm.org>
3323
3324         * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
3325
3326 2004-03-29  Paolo Carlini  <pcarlini@suse.de>
3327
3328         * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
3329         on allocator behavior, the memory pointed by data2 may well be not