1 2004-03-31 Paolo Carlini <pcarlini@suse.de>
3 * config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
4 In v3 uses of sscanf, the special floating-point numbers INF,
5 INFINITY, etc., cannot occur in input, therefore, if the latter
6 is too large, ERANGE is always stored in errno, no need of finitel.
8 2004-03-30 Benjamin Kosnik <bkoz@redhat.com>
11 * include/bits/stl_tree.h: Adjust initialization list order.
13 2004-03-29 Loren J. Rittle <ljrittle@acm.org>
15 * testsuite/thread/pthread7-rope.cc: Update comment to reflect test.
17 2004-03-29 Paolo Carlini <pcarlini@suse.de>
19 * testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
20 on allocator behavior, the memory pointed by data2 may well be not
23 2004-03-28 Chavdar Botev <cbotev@yahoo.com>
26 * include/bits/basic_string.tcc
27 (basic_string::basic_string(const basic_string&)): Pass to
28 _Rep::_M_grab the actual allocator of the string being constructed
29 not the default constructed one.
31 2004-03-27 Benjamin Kosnik <bkoz@redhat.com>
34 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
35 (__enc_traits::_M_destroy): New.
36 (__enc_traits::~__enc_traits): Use it.
37 (__enc_traits::operator=): Use _M_destroy, _M_init.
38 (__enc_traits::__enc_traits): Same.
40 2004-03-27 Petur Runolfsson <peturr02@ru.is>
42 * testsuite/ext/enc_filebuf/char/13598.cc: New.
44 2004-03-27 Paolo Carlini <pcarlini@suse.de>
46 * include/ext/mt_allocator.h: Uglify consistently names of
47 variables, members and classes; tidy.
49 2004-03-27 Dhruv Matani <dhruvbird@gmx.net>
51 * include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
52 Deallocation loop rewrote.
54 2004-03-26 Paolo Carlini <pcarlini@suse.de>
56 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
57 __mt_alloc<>::deallocate): Protect two instances of
58 block->thread_id with __GTHREADS.
60 2004-03-25 Gawain Bolton <gp.bolton@computer.org>
62 * include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
63 default argument in constructors.
64 (_Rb_tree::_M_empty_initialize): Remove.
66 2004-03-25 Benjamin Kosnik <bkoz@redhat.com>
68 * testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
69 * testsuite/23_containers/set/operators/1_neg.cc: Same.
71 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
73 * include/bits/cpp_type_traits.h: Changed __is_pod
74 completely. Now, it does not use any of the previous type_traits
75 to detect the pod types, and it also detects function pointers as
78 * include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
79 which encapsulates the internal implementation of an rb_tree. Made
80 the allocator a base class of this class instead of the rb_tree,
81 which was not conforming. This _Rb_tree_impl class is also
82 specialized on whether the _Compare parameter is a POD type or
83 not. If so, then it maintains the comparison function as a data
84 member, otherwise it makes the _Compare parameter a base class of
85 itself. Also, _M_key_compare is now a function instead of a data
86 member, so that the above trick can work properly. Delegated the
87 initialization of the other data members to this newly created
88 class. Also, now other member functions of rb_tree must refer to
89 _M_key_compare as _M_impl._M_key_compare(). The other data members
90 (*) can be referenced to as _M_impl.(*), where
91 (*) includes _M_header, and _M_node_count.
93 2004-03-25 Paolo Carlini <pcarlini@suse.de>
95 * include/ext/mt_allocator.h (__mt_alloc<>::tune):
96 Add _M_min_bin, the size in bytes of the smallest bin.
97 (__mt_alloc<>::tune()): Tweak accordingly.
98 (__mt_alloc<>::tune(size_t, ...)): Likewise.
99 (__mt_alloc<>::block_record): Change to a union: members next
100 and thread_id are never used at the same time.
101 (__mt_alloc<>::allocate): Update consistently.
102 (__mt_alloc<>::deallocate): Likewise.
103 (__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
104 _S_bin_size for the configurable _M_min_size.
106 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
108 * include/bits/stl_list.h: Created a _List_impl class and made it
109 derive from the allocator, instead of the list deriving from the
110 allocator class, which was not conformant. Changed all references
111 from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
112 as above (changed all references to the concerned variables).
114 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
116 * include/bits/stl_deque.h: Created a _Deque_impl class and made
117 it derive from the allocator, instead of the deque deriving from
118 the allocator class, which was not conformant. Changed all
119 references to the _M_start, _M_finish, _M_map, and _M_map_size to
121 (_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
122 qualification in 2 places where it was missing.
123 (_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
125 * include/bits/deque.tcc: Same as above (changed all references to
126 the concerned variables).
128 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
130 * include/bits/stl_vector.h: Created a _Vector_impl class and made
131 it derive from the allocator, instead of the _Vector_base class,
132 deriving from the allocator which was not conformant. Changed all
133 references to the _M_start, _M_finish, and _M_end_of_storage to
135 * include/bits/vector.tcc: Same as above (changed all references
136 to the concerned variables).
138 2004-03-25 Dhruv Matani <dhruvbird@gmx.net>
140 * testsuite/23_containers/deque/cons/clear_allocator.cc: New.
141 * testsuite/23_containers/list/cons/clear_allocator.cc: New.
142 * testsuite/23_containers/vector/cons/clear_allocator.cc: New.
144 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
146 * include/ext/malloc_allocator.h: Fixed the construct function to
147 call global placement new instead of assignment. Added a check
148 after the return from malloc to check whether returned pointer is
149 NULL, and if so, throw std::bad_alloc().
150 * include/ext/debug_allocator.h: Added a check in the deallocate
151 function to check whether the user has passed a NULL pointer or
154 2004-03-24 Benjamin Kosnik <bkoz@redhat.com>
156 * docs/html/20_util/allocator.html: Add bitmap_allocator links.
158 2004-03-24 Andreas Schwab <schwab@suse.de>
160 * testsuite/lib/prune.exp (prune_g++_output): Ignore errata
161 warning from IA64 assembler.
163 2004-03-24 Dhruv Matani <dhruvbird@gmx.net>
165 * include/ext/bitmap_allocator.h: (_Bit_scan_forward) -> Made this
166 function call __builtin_ctz instead of the while loop.
167 (allocate) -> If condition has __builtin_expect.
168 (deallocate) -> Ditto.
169 Renamed a few left-over variables and typedefs according to the
170 C++STYLE mentioned in the documentation.
171 Protected calls to __gthread* by __gthread_active_p(), whose value
172 is cached in the local variable __threads_active.
174 2004-03-24 Felix Yen <fwy@alumni.brown.edu>
176 * testsuite/performance/20_util/allocator/producer_consumer.cc:
177 Use linear algorithm for producer.
179 2004-03-24 Paolo Carlini <pcarlini@suse.de>
181 * include/ext/mt_allocator.h (__mt_alloc<>::allocate,
182 __mt_alloc<>::deallocate): Avoid redundant conditionals.
184 2004-03-23 Benjamin Kosnik <bkoz@redhat.com>
186 * include/bits/locale_facets.h: Tweaks for 80 column.
187 (__numpunct_cache::_M_cache): Move to locale_facets.tcc.
188 (__moneypunct_cache::_M_cache): Same.
189 (num_get): Don't inherit from __num_base.
191 (money_get): Don't inherit from money_base.
193 (__timepunct::_M_am_pm_format): New.
194 (time_get::_M_extract_num): Return iterator, use ios_base as argument.
195 (time_get::_M_extract_name): Same.
196 (time_get::_M_extract_via_format): Same.
197 * include/bits/locale_facets.tcc: Tweaks for 80 column.
198 Use _M_getloc instead of getloc.
199 * testsuite/22_locale/money_put/put/char/9780-3.cc: New.
200 * testsuite/22_locale/num_put/put/char/9780-2.cc: New.
201 * testsuite/22_locale/time_put/put/char/9780-1.cc: New.
203 2004-03-22 Paolo Carlini <pcarlini@suse.de>
205 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
206 * configure: Regenerate.
207 * config/allocator/pool_allocator_base.h: New.
208 * include/ext/pool_allocator.h: Convert to a standard-conforming
210 * src/allocator.cc: Tweak instantiations.
211 * testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
212 * testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
213 * testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
214 * testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
215 * testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
216 * testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
218 2004-03-22 Hans-Peter Nilsson <hp@axis.com>
220 * config/cpu/cris/atomicity.h (__atomic_add): Remove "static
221 inline" and attribute-unused. Qualify parameter __mem with
223 (__exchange_and_add): Ditto. Add back memory clobber to asm.
225 2004-03-20 Paolo Carlini <pcarlini@suse.de>
227 * testsuite/27_io/basic_istream/extractors_arithmetic/char/2.cc:
229 * testsuite/27_io/basic_istream/extractors_arithmetic/char/3.cc:
231 * testsuite/27_io/basic_istream/extractors_arithmetic/char/6.cc:
233 * testsuite/27_io/basic_istream/extractors_arithmetic/char/7.cc:
235 * testsuite/27_io/basic_istream/extractors_arithmetic/char/8.cc:
237 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9.cc:
239 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
241 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
243 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
245 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
248 2004-03-20 Paolo Carlini <pcarlini@suse.de>
250 * include/std/std_valarray.h: Document DR389 [Ready].
251 * docs/html/ext/howto.html: Add an entry for DR389.
253 2004-03-19 Michael Eager <eager@mvista.com>
255 * config/cpu/mips/atomicity.h: Prevent reg loads between LL and
258 2004-03-19 Paolo Carlini <pcarlini@suse.de>
260 * testsuite/22_locale/num_get/get/char/11.cc: Remove redundant
262 * testsuite/22_locale/num_get/get/char/12.cc: Likewise.
263 * testsuite/22_locale/num_get/get/char/13.cc: Likewise.
264 * testsuite/22_locale/num_get/get/char/14.cc: Likewise.
265 * testsuite/22_locale/num_get/get/char/15.cc: Likewise.
266 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
267 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
268 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Likewise.
269 * testsuite/22_locale/num_get/get/wchar_t/14.cc: Likewise.
270 * testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
272 2004-03-19 Paolo Carlini <pcarlini@suse.de>
273 Petur Runolfsson <peturr02@ru.is>
276 * include/ext/stdio_sync_filebuf.h (showmanyc): Remove, there's
277 no way to find out the conversion used by the underlying FILE*.
278 * testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: New.
279 * testsuite/27_io/objects/char/9.cc: Tweak.
281 2004-03-19 Paolo Carlini <pcarlini@suse.de>
284 * include/ext/ropeimpl.h (rope<>::_S_apply_to_pieces): Fix
285 memory allocation/deallocation calls.
286 * testsuite/ext/14648.cc: New.
288 2004-03-19 Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
291 * include/backward/bvector.h (bit_vector): Allocator is in std
294 2004-03-19 Phil Edwards <phil@codesourcery.com>
296 * acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV,
297 not libiconv. SUBST this variable as well.
298 * testsuite/Makefile.am (site.exp): New target, based on that
299 created by automake. Also set libiconv.
301 * configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
302 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
303 testsuite/Makefile.in: Regenerate.
305 2004-03-16 Benjamin Kosnik <bkoz@redhat.com>
307 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Default setting is
308 new_allocator for all hosts.
309 * configure: Regenerate.
311 2004-03-16 Paolo Carlini <pcarlini@suse.de>
313 * testsuite/22_locale/num_put/put/char/4.cc: Fix for 64-bit pointers.
314 * testsuite/22_locale/num_put/put/wchar_t/4.cc: Likewise.
316 2004-03-15 Paolo Carlini <pcarlini@suse.de>
318 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
319 Adjust the logic underlying the parsing of symbol to deal
320 correctly with an optional sign component (i.e., when either
321 negative_sign or positive_sign is empty)
322 * testsuite/22_locale/money_get/get/char/19.cc: New.
323 * testsuite/22_locale/money_get/get/wchar_t/19.cc: New.
325 2004-03-15 Paolo Carlini <pcarlini@suse.de>
327 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
328 Do not accept an incomplete currency symbol.
329 * testsuite/22_locale/money_get/get/char/18.cc: New.
330 * testsuite/22_locale/money_get/get/wchar_t/18.cc: New.
332 2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
334 * config/allocator: New.
335 * config/allocator/bitmap_allocator_base.h: New.
336 * config/allocator/malloc_allocator_base.h: New.
337 * config/allocator/mt_allocator_base.h: New.
338 * config/allocator/new_allocator_base.h: New.
339 * include/bits/allocator.h: Include c++allocator.h.
340 * acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
341 * aclocal.m4: Regenerate.
342 * configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
343 * configure: Regenerate.
344 * include/Makefile.am (host_headers_extra): Add c++allocator.h.
345 * include/Makefile.in: Regenerate.
346 * docs/html/configopts.html: Add enable-libstdcxx-allocator.
348 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
350 * include/bits/allocator.h: Revert.
352 2004-03-12 Paolo Carlini <pcarlini@suse.de>
354 * docs/html/ext/howto.html: Add entry for DR 253 [Ready].
355 * include/bits/gslice_array.h: Add comment about DR 253.
356 * include/bits/indirect_array.h: Likewise.
357 * include/bits/mask_array.h: Likewise.
358 * include/bits/slice_array.h: Likewise.
360 2004-03-12 Benjamin Kosnik <bkoz@redhat.com>
362 * testsuite/20_util/allocator/14176.cc: New.
363 * include/ext/mt_allocator.h: Formatting fixes.
365 2004-03-11 Dhruv Matani <dhruvbird@HotPOP.com>
367 * include/Makefile.am (ext_headers): Add
368 ${ext_srcdir}/bitmap_allocator.h .
369 * include/Makefile.in: Regenerate.
370 * docs/html/ext/ballocator_doc.txt: New file.
371 * include/ext/bitmap_allocator.h: New file.
372 * testsuite/performance/20_util/allocator/list_sort_search.cc: Add
374 * testsuite/performance/20_util/allocator/map_mt_find.cc: Likewise.
375 * testsuite/performance/20_util/allocator/producer_consumer.cc: Add
376 test for the bitmap_allocator<>.
377 * testsuite/performance/20_util/allocator/insert.cc: Likewise.
378 * testsuite/performance/20_util/allocator/insert_insert.cc: Likewise.
379 * testsuite/performance/20_util/allocator/map_thread.cc: Likewise.
381 2004-03-11 Paolo Carlini <pcarlini@suse.de>
383 * include/std/std_complex.h (pow(const complex&, const _Tp&),
384 pow(const _Tp&, const complex&), pow(const complex&,
385 const complex&)): Fully qualify with std:: a few calls.
386 * testsuite/26_numerics/complex/13450.cc: Minor tweak.
388 2004-03-11 Steven Bosscher <stevenb@suse.de>
391 * include/c_std/cmath.tcc (__cmath_power): Define inline.
393 2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
395 * configure.ac: Bump AC_PREREQ to 2.59.
397 2004-03-10 Paolo Carlini <pcarlini@suse.de>
399 * testsuite/26_numerics/valarray_subset_assignment.cc: Fix typos.
401 2004-03-10 Paul Kienzle <pkienzle@nist.gov>
402 Paolo Carlini <pcarlini@suse.de>
405 * include/std/std_complex.h (pow(const complex&, const _Tp&),
406 pow(const _Tp&, const complex&)): Use cmath pow only when safe.
407 * testsuite/26_numerics/complex/13450.cc: New.
409 * testsuite/26_numerics/cmath/overloads.C: Rename to overloads.cc.
410 * testsuite/26_numerics/complex/pow.C: Rename to pow.cc and fix.
412 2004-03-10 Jerry Quinn <jlquinn@optonline.net>
415 * include/bits/gslice_array.h (gslice_array()): Make public.
416 (operator=(gslice_array)): Make public. Implement.
417 * include/bits/indirect_array.h (indirect_array()): Make public.
418 * include/bits/mask_array.h (mask_array()): Make public.
419 (operator=(mask_array)): Make public. Implement.
420 * include/bits/valarray_array.tcc (__valarray_copy):
421 Comment. Add versions for gslice_array and mask_array.
422 * testsuite/26_numerics/valarray_subset_assignment.cc: New test.
424 2004-03-09 Benjamin Kosnik <bkoz@redhat.com>
426 * testsuite/23_containers/deque/modifiers/swap.cc: Add in bits for
428 * testsuite/23_containers/vector/modifiers/swap.cc: Same.
429 * testsuite/23_containers/set/modifiers/swap.cc: Same.
430 * testsuite/23_containers/multiset/modifiers/swap.cc: Same.
431 * testsuite/23_containers/multimap/modifiers/swap.cc: Same.
432 * testsuite/23_containers/map/modifiers/swap.cc: Same.
433 * testsuite/23_containers/list/modifiers/swap.cc: Same.
435 * testsuite/22_locale/locale/cons/12658_thread.cc: Catch exceptions.
437 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
440 * testsuite/23_containers/deque/modifiers/swap.cc: New.
441 * testsuite/23_containers/list/modifiers/swap.cc: New.
442 * testsuite/23_containers/map/modifiers/swap.cc: New.
443 * testsuite/23_containers/multimap/modifiers/swap.cc: New.
444 * testsuite/23_containers/multiset/modifiers/swap.cc: New.
445 * testsuite/23_containers/set/modifiers/swap.cc: New.
446 * testsuite/23_containers/vector/modifiers/swap.cc: New.
448 2004-03-08 Petur Runolfsson <peturr02@ru.is>
451 * testsuite/22_locale/locale/cons/12658_thread.cc: New.
453 2004-03-08 Paolo Carlini <pcarlini@suse.de>
455 * docs/html/ext/howto.html: Add entry for DR 103 [WP].
456 * include/bits/stl_multiset.h: Add comment about DR 103.
457 * include/bits/stl_set.h: Likewise.
459 2004-03-08 Paolo Carlini <pcarlini@suse.de>
461 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
462 The value _space_ indicates that at least one space is required
464 * testsuite/22_locale/money_get/get/char/17.cc: New.
465 * testsuite/22_locale/money_get/get/wchar_t/17.cc: New.
467 * testsuite/22_locale/money_get/get/char/7.cc: Minor tweaks.
468 * testsuite/22_locale/money_get/get/wchar_t/7.cc: Likewise.
470 * include/bits/locale_facets.tcc (money_get<>::do_get(long_double&)):
471 Remove redundant conditional on __str.size().
473 2004-03-08 Benjamin Kosnik <bkoz@redhat.com>
475 * include/bits/allocator.h: Switch defaults to mt_alloc.
477 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
479 * include/ext/mt_allocator.h (_S_initialize): If
480 !__GTHREAD_MUTEX_INIT, then initialize _S_thread_freelist_mutex.
482 2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
485 * src/locale_init.cc (locale::locale): Lock critical regions with
487 (locale::global): Same.
488 * include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
489 Add in once bits for cases without __GTHREAD_MUTEX_INIT.
490 (__glibcxx_mutex_lock): Same.
492 * config/cpu/generic/atomicity.h: Remove
493 _GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
494 * src/misc-inst.cc: Move all locking bits out of this file.
496 * config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
497 * src/misc-inst.cc: Same.
498 * config/cpu/hppa/atomicity.h: Same.
500 * config/linker-map.gnu: Remove types in the signature of atomic
501 exports, as they may vary.
503 2004-03-06 Paolo Carlini <pcarlini@suse.de>
505 * include/bits/locale_facets.tcc: Tweak the comment preceding
506 has_facet: doesn't throw.
508 2004-03-06 Paolo Carlini <pcarlini@suse.de>
510 * testsuite/22_locale/money_get/get/char/1.cc: Clean up.
511 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
512 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
513 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
514 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
515 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
516 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
517 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
519 2004-03-06 Paolo Carlini <pcarlini@suse.de>
521 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
522 num_get<>::_M_extract_int, num_get<>::do_get(bool&),
523 __pad<>::_S_pad): Prefer plain operator== to traits::eq().
524 * testsuite/testsuite_character.h (struct __gnu_test::character):
526 * testsuite/testsuite_hooks.h (struct __gnu_test::pod_char):
529 2004-03-05 Paolo Carlini <pcarlini@suse.de>
531 * testsuite/27_io/fpos/14320-2.cc: Remove xfail.
533 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
535 * testsuite/23_containers/multiset/insert/1.cc: Test result string.
537 * testsuite/23_containers/bitset/invalidation/1.cc: Main always
539 * testsuite/23_containers/deque/invalidation/4.cc: Same.
540 * testsuite/23_containers/list/invalidation/1.cc: Same.
541 * testsuite/23_containers/list/invalidation/2.cc: Same.
542 * testsuite/23_containers/list/invalidation/3.cc: Same.
543 * testsuite/23_containers/list/invalidation/4.cc: Same.
544 * testsuite/23_containers/map/invalidation/2.cc: Same.
545 * testsuite/23_containers/multimap/invalidation/1.cc: Same.
546 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
547 * testsuite/23_containers/multiset/invalidation/1.cc: Same.
548 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
549 * testsuite/23_containers/set/invalidation/1.cc: Same.
550 * testsuite/23_containers/set/invalidation/2.cc: Same.
551 * testsuite/23_containers/vector/invalidation/1.cc: Same.
552 * testsuite/23_containers/vector/invalidation/2.cc: Same.
553 * testsuite/23_containers/vector/invalidation/3.cc: Same.
554 * testsuite/23_containers/vector/invalidation/4.cc: Same.
556 2004-03-04 Paolo Carlini <pcarlini@suse.de>
558 * scripts/testsuite_flags.in: Add "-D_GLIBCXX_ASSERT" to
560 * testsuite/lib/libstdc++.exp: Don't add it conditionally to
562 * testsuite/18_support/numeric_limits.cc: Remove "-D_GLIBCXX_ASSERT"
564 * testsuite/23_containers/vector/invalidation/1.cc: Likewise.
565 * testsuite/23_containers/vector/invalidation/2.cc: Likewise.
566 * testsuite/23_containers/vector/invalidation/3.cc: Likewise.
567 * testsuite/23_containers/vector/invalidation/4.cc: Likewise.
568 * testsuite/23_containers/vector/resize/1.cc: Likewise.
569 * testsuite/26_numerics/complex_value.cc: Likewise.
570 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
571 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
572 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
573 * testsuite/27_io/manipulators/standard/char/2.cc: Likewise.
574 * testsuite/27_io/objects/char/5.cc: Likewise.
575 * testsuite/27_io/objects/wchar_t/5.cc: Likewise.
576 * testsuite/backward/11460.cc: Likewise.
577 * testsuite/thread/pthread7-rope.cc: Likewise.
579 * testsuite/21_strings/basic_string/compare/char/1.cc: Add
580 missing test variable.
581 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Add
582 missing test variable.
584 2004-03-04 Benjamin Kosnik <bkoz@redhat.com>
586 * testsuite/20_util/allocator/1.cc: Provide explicit
587 instantiations for non-weak systems.
588 * testsuite/20_util/binders.cc: Same.
589 * testsuite/20_util/allocator/8230.cc: Same.
590 * testsuite/20_util/allocator/10378.cc: Same.
591 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
592 * testsuite/22_locale/ctype/is/char/2.cc: Same.
593 * testsuite/thread/pthread7-rope.cc: Same.
594 * testsuite/thread/pthread6.cc: Same.
595 * testsuite/thread/pthread5.cc: Same.
596 * testsuite/thread/pthread4.cc: Same.
597 * testsuite/thread/pthread1.cc: Same.
598 * testsuite/ext/rope.cc: Same.
599 * testsuite/ext/hash_set.cc: Same.
600 * testsuite/ext/hash_map.cc: Same.
601 * testsuite/ext/concept_checks.cc: Same.
602 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Same.
603 * testsuite/25_algorithms/unique/2.cc: Same.
604 * testsuite/25_algorithms/unique/1.cc: Same.
605 * testsuite/25_algorithms/rotate.cc: Same.
606 * testsuite/25_algorithms/min_max.cc: Same.
607 * testsuite/25_algorithms/equal.cc: Same.
608 * testsuite/24_iterators/rel_ops.cc: Same.
609 * testsuite/24_iterators/iterator.cc: Same.
610 * testsuite/24_iterators/insert_iterator.cc: Same.
611 * testsuite/24_iterators/front_insert_iterator.cc: Same.
612 * testsuite/24_iterators/back_insert_iterator.cc: Same.
613 * testsuite/23_containers/vector/resize/1.cc: Same.
614 * testsuite/23_containers/vector/modifiers/2.cc: Same.
615 * testsuite/23_containers/vector/modifiers/1.cc: Same.
616 * testsuite/23_containers/vector/invalidation/4.cc: Same.
617 * testsuite/23_containers/vector/invalidation/3.cc: Same.
618 * testsuite/23_containers/vector/invalidation/2.cc: Same.
619 * testsuite/23_containers/vector/invalidation/1.cc: Same.
620 * testsuite/23_containers/vector/element_access/1.cc: Same.
621 * testsuite/23_containers/vector/cons/6513.cc: Same.
622 * testsuite/23_containers/vector/cons/3.cc: Same.
623 * testsuite/23_containers/vector/cons/2.cc: Same.
624 * testsuite/23_containers/vector/cons/1.cc: Same.
625 * testsuite/23_containers/vector/capacity/8230.cc: Same.
626 * testsuite/23_containers/vector/capacity/1.cc: Same.
627 * testsuite/23_containers/vector/bool/6886.cc: Same.
628 * testsuite/23_containers/stack/members/7158.cc: Same.
629 * testsuite/23_containers/set/invalidation/2.cc: Same.
630 * testsuite/23_containers/set/invalidation/1.cc: Same.
631 * testsuite/23_containers/queue/members/7157.cc: Same.
632 * testsuite/23_containers/priority_queue/members/7161.cc: Same.
633 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
634 * testsuite/23_containers/multiset/invalidation/2.cc: Same.
635 * testsuite/23_containers/multiset/insert/1.cc: Same.
636 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
637 * testsuite/23_containers/multimap/invalidation/2.cc: Same.
638 * testsuite/23_containers/map/operators/1.cc: Same.
639 * testsuite/23_containers/map/invalidation/2.cc: Same.
640 * testsuite/23_containers/map/invalidation/1.cc: Same.
641 * testsuite/23_containers/map/insert/1.cc: Same.
642 * testsuite/23_containers/list/operators/4.cc: Same.
643 * testsuite/23_containers/list/operators/3.cc: Same.
644 * testsuite/23_containers/list/operators/2.cc: Same.
645 * testsuite/23_containers/list/operators/1.cc: Same.
646 * testsuite/23_containers/list/modifiers/3.cc: Same.
647 * testsuite/23_containers/list/modifiers/2.cc: Same.
648 * testsuite/23_containers/list/modifiers/1.cc: Same.
649 * testsuite/23_containers/list/invalidation/4.cc: Same.
650 * testsuite/23_containers/list/invalidation/3.cc: Same.
651 * testsuite/23_containers/list/invalidation/2.cc: Same.
652 * testsuite/23_containers/list/invalidation/1.cc: Same.
653 * testsuite/23_containers/list/cons/9.cc: Same.
654 * testsuite/23_containers/list/cons/8.cc: Same.
655 * testsuite/23_containers/list/cons/7.cc: Same.
656 * testsuite/23_containers/list/cons/6.cc: Same.
657 * testsuite/23_containers/list/cons/5.cc: Same.
658 * testsuite/23_containers/list/cons/4.cc: Same.
659 * testsuite/23_containers/list/cons/3.cc: Same.
660 * testsuite/23_containers/list/cons/2.cc: Same.
661 * testsuite/23_containers/list/cons/1.cc: Same.
662 * testsuite/23_containers/list/capacity/1.cc: Same.
663 * testsuite/23_containers/deque/operators/1.cc: Same.
664 * testsuite/23_containers/deque/invalidation/4.cc: Same.
665 * testsuite/23_containers/deque/invalidation/3.cc: Same.
666 * testsuite/23_containers/deque/invalidation/2.cc: Same.
667 * testsuite/23_containers/deque/invalidation/1.cc: Same.
668 * testsuite/23_containers/deque/cons/2.cc: Same.
669 * testsuite/23_containers/deque/cons/1.cc: Same.
671 * src/allocator.cc: Add char, wchar_t instantiations
672 to match extern template declarations in memory.h.
674 2004-03-03 Paolo Carlini <pcarlini@suse.de>
676 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
677 Fix warning regression.
679 2004-03-03 Paolo Carlini <pcarlini@suse.de>
681 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
682 Deal properly with empty __digits and negative frac_digits,
685 2004-03-03 Jonathan Wakely <redi@gcc.gnu.org>
687 * docs/html/documentation.html: Regenerate.
689 2004-03-02 Paolo Carlini <pcarlini@suse.de>
692 * include/bits/postypes.h (class streamoff): Remove, now
693 streamoff is just typedef a 64 bit signed integer type.
694 (class fpos): Tweak consistently.
695 * testsuite/27_io/fpos/14320-1.cc: New.
696 * testsuite/27_io/fpos/14320-2.cc: New.
697 * testsuite/27_io/fpos/14320-3.cc: New.
698 * testsuite/27_io/fpos/14320-4.cc: New.
699 * testsuite/27_io/fpos/14320-5.cc: New.
700 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.
702 2004-03-02 Paolo Carlini <pcarlini@suse.de>
704 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
705 Reorganize a bit the main parsing loop, thus early detecting
706 an empty value component.
707 * testsuite/22_locale/money_get/get/char/16.cc: New.
708 * testsuite/22_locale/money_get/get/wchar_t/16.cc: New.
710 2004-03-02 Benjamin Kosnik <bkoz@redhat.com>
712 Support automake 1.8.2
713 * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
714 * po/Makefile.am (EXTRA_DIST): New.
715 * po/Makefile.in: Regenerate.
717 * include/Makefile.in: Same.
718 * libmath/Makefile.in: Same.
719 * libsupc++/Makefile.in: Same.
720 * src/Makefile.in: Same.
721 * testsuite/Makefile.in: Same.
723 * include/Makefile.am (${host_builddir}/gthr-posix.h): Use
724 __GXX_WEAK__ instead of SUPPORTS_WEAK.
725 (${host_builddir}/gthr-default.h): Same.
726 (${host_builddir}/gthr.h): Same.
727 * acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
728 _GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
730 * aclocal.m4: Regenerate.
731 * acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
732 * config.h.in: Regenerate.
735 2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
737 Support autoconf 2.59
738 * acinclude.m4: Quote correctly.
739 * aclocal.m4: Regenerate.
742 2004-03-01 Benjamin Kosnik <bkoz@redhat.com>
744 * docs/html/test.html: Add multilib RUNTESTFLAGS example.
746 * docs/html/18_support/howto.html: Add bit about writing to
747 stderr, mostly by Zack.
749 2004-03-01 Paolo Carlini <pcarlini@suse.de>
751 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
752 money_get<>::do_get(string_type&)): ... and two more.
754 2004-03-01 Paolo Carlini <pcarlini@suse.de>
756 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
757 Fix thinkos in the switch from string_type& to string& as last
760 2004-03-01 Paolo Carlini <pcarlini@suse.de>
762 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
763 Also when parsing exponent sign, first look for thousands_sep
764 and decimal_point; tweak a bit.
765 * testsuite/22_locale/num_get/get/char/15.cc: New.
766 * testsuite/22_locale/num_get/get/wchar_t/15.cc: New.
768 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
769 num_get<>::_M_extract_int): Reorder some conditionals.
771 2004-03-01 Paolo Carlini <pcarlini@suse.de>
773 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
774 Consistently with numpunct, enforce the requirements in
775 22.2.6.3, p3 for the thousands separators; tweak a bit.
776 * testsuite/22_locale/money_get/get/char/15.cc: New.
777 * testsuite/22_locale/money_get/get/wchar_t/15.cc: New.
779 2004-03-01 David Billinghurst <David.Billinghurst@riotinto.com>
781 * testsuite/lib/libstdc++.exp (v3-list-tests): Use
782 testsuite_files from correct multilib blddir when running
785 2004-02-29 Phil Edwards <phil@codesourcery.com>
787 * testsuite/Makefile.am (check-abi, check-abi-verbose): Copy
788 the summary file to the logfile.
789 * testsuite/Makefile.in: Regenerate.
791 2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
793 * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
795 * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
796 __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
798 2004-02-28 Paolo Carlini <pcarlini@suse.de>
800 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
801 According to 22.2.3.1, p2, 'units' may be followed by 'e' with
802 no 'decimal-point' in the middle: in this case too we must fix
803 up __found_grouping; slightly tweak.
804 * testsuite/22_locale/num_get/get/char/14.cc: New.
805 * testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
807 2004-02-27 Eric Christopher <echristo@redhat.com>
808 Phil Edwards <phil@codesourcery.com>
810 * testsuite/22_locale/collate/compare/wchar_t/2.cc,
811 testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc,
812 testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc,
813 testsuite/22_locale/collate/hash/wchar_t/2.cc,
814 testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc,
815 testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc,
816 testsuite/22_locale/collate/transform/wchar_t/2.cc,
817 testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc,
818 testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
819 Use dg-require-iconv.
820 * testsuite/lib/libstdc++.exp: Load target-supports.exp.
822 2004-02-27 Phil Edwards <phil@codesourcery.com>
823 Eric Christopher <echristo@redhat.com>
825 * testsuite/config/default.exp: Update with comments.
826 (${tool}_target_compile): New wrapper routine.
827 * testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
828 * testsuite/lib/libstdc++.exp: Update with comments and cosmetic
830 (load_gcc_lib, v3track): New routines.
831 (v3-init): Rename to libstdc++_init.
832 * testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
833 Move DEFAULT_CXXFLAGS handling into libstdc++_init.
835 2004-02-27 Benjamin Kosnik <bkoz@redhat.com>
837 * config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
839 * src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
841 * config/os/irix/irix5.2/atomicity.h: Merge..
842 * config/os/irix/irix6.5/atomicity.h: Merge..
843 * config/os/irix/atomicity.h: ...into this.
844 * config/os/irix/atomic_word.h: New.
845 * configure.host: Set atomic_word_dir for irix.
847 * hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
848 * i386/atomicity.h: Same.
849 * m68k/atomicity.h: Same.
850 * sparc/atomicity.h: Same.
852 2004-02-27 David Edelsohn <edelsohn@gnu.org>
854 * config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
855 static, and inline keywords.
857 2004-02-27 Paolo Carlini <pcarlini@suse.de>
859 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
860 num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
861 call reserve on the __tmp_gruping string.
862 (num_get<>::_M_extract_float): Don't append unnecessarily a
863 char() to the returned string.
864 * include/bits/locale_facets.tcc: Trivial reformattings.
866 2004-02-27 Paolo Carlini <pcarlini@suse.de>
868 * include/bits/locale_facets.h (money_get<>::_M_extract):
869 Change signature: now takes a plain string&.
870 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
871 Update consistently the definition; use the moneypunct cache
872 to parse the value; use swap to change __units.
873 (money_get<>::do_get(long double&)): Update call of _M_extract,
874 avoid ctype::narrow, not correct wrt the standard.
875 (money_get<>::do_get(string_type&)): Likewise, update call
876 of _M_extract, use ctype::widen.
877 * src/locale-inst.cc: Tweak instantiations of _M_extract.
879 2004-02-26 Ian Lance Taylor <ian@wasabisystems.com>
881 * testsuite/demangle/abi_examples/01.cc: Expect error -2.
882 * testsuite/demangle/abi_examples/02.cc: Likewise.
883 * testsuite/demangle/regression/cw-11.cc: Likewise.
884 * testsuite/demangle/regression/cw-16.cc: Change two expected
885 results to match libiberty demangler output.
887 2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
890 * libsupc++/Makefile.am: Use libiberty demangler.
891 (c_sources): Add cp-demangle.c.
892 * libsupc++/Makefile.in: Regenerate.
893 * src/Makefile.am (sources): Remove demangle.cc.
894 * src/Makefile.in: Regenerate.
895 * include/Makefile.am (bits_headers): Move demangle.h.
896 (ext_headers): ...here.
897 * include/Makefile.in: Regenerate.
898 * include/bits/demangle.h: Move...
899 * include/ext/demangle.h: ...here.
900 * src/demangle.cc: Remove.
902 2004-02-26 Benjamin Kosnik <bkoz@redhat.com>
904 * include/bits/demangle.h: Add type template parameter to all
905 templates with just an Allocator template parameter.
907 2004-02-25 Benjamin Kosnik <bkoz@redhat.com>
909 * include/bits/atomicity.h: New, forward declarations for __atomic_add
910 and __exchange_and_add.
911 * config/cpu/generic/atomic_word.h: New, typdef for atomic word.
912 * config/cpu/cris/atomic_word.h: Same.
913 * config/cpu/sparc/atomic_word.h: Same.
914 * include/bits/ios_base.h (_Callback_list::_M_remove_reference):
915 Qualifiy with __gnu_cxx.
916 (_Callback_list::_M_add_reference): Same.
917 * include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
918 (locale::facet::_M_remove_reference): Same.
919 (locale::_Impl::_M_add_reference): Add.
920 (locale::_Impl::_M_remove_reference): Same.
921 * include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
922 (basic_string::_Rep::_M_dispose): Same.
923 * src/ios.cc (ios_base::xalloc): Same.
924 * src/ios_init.cc (ios_base::Init::Init): Same.
925 (ios_base::Init::~Init): Same.
926 * src/locale.cc (locale::id::_M_id): Same.
927 * config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
928 static, and inline keywords.
929 * config/cpu/alpha/atomicity.h: Same.
930 * config/cpu/cris/atomicity.h: Same.
931 * config/cpu/generic/atomicity.h: Same.
932 * config/cpu/hppa/atomicity.h: Same.
933 * config/cpu/i386/atomicity.h: Same.
934 * config/cpu/ia64/atomicity.h: Same.
935 * config/cpu/m68k/atomicity.h: Same.
936 * config/cpu/mips/atomicity.h: Same.
937 * config/cpu/powerpc/atomicity.h: Same.
938 * config/cpu/s390/atomicity.h: Same.
939 * config/cpu/sparc/atomicity.h: Same.
941 * src/Makefile.am (host_sources): Add atomicity.cc.
942 (atomicity.cc): New rule.
943 * src/Makefile.in: Regenerate.
944 * include/Makefile.am (host_headers): Remove host atomicity.h.
945 (host_headers): Add atomic_word.h.
946 (bits_headers): Add bits atomicity.h.
947 Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
948 * include/Makefile.in: Regenerate.
949 * configure.host (atomic_word_dir): Add.
950 * configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
951 ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
952 * configure: Regenerate.
953 * config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
955 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
956 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
958 2004-02-25 Jonathan Wakely <redi@gcc.gnu.org>
960 * docs/html/20_util/howto.html, docs/html/20_util/allocator.html,
961 docs/html/ext/howto.html, docs/html/ext/mt_allocator.html:
962 Fix markup, more <link> tags.
964 2004-02-25 Carlo Wood <carlo@alinoe.com>
967 namespace __gnu_cxx::demangler
968 (session<Allocator>::qualifier_list_Allocator): Add
969 (session<Allocator>::M_qualifier_list_alloc): Add
970 (session<Allocator>::decode_type_with_postfix):
971 Use M_qualifier_list_alloc instead of calling operator new/delete.
973 2004-02-24 Paolo Carlini <pcarlini@suse.de>
976 * include/bits/postypes.h (class streamoff): Add operator++(),
977 operator++(int), operator--() and operator--(int).
978 * testsuite/27_io/fpos/14252.cc: New.
980 2004-02-24 Richard Sandiford <rsandifo@redhat.com>
982 * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
983 error in handling of hex constants.
985 2004-02-24 Paolo Carlini <pcarlini@suse.de>
987 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
988 Prefer basic_string::append to operator+= and a temporary.
990 2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
992 * libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
993 Only use fputs, not write.
995 2004-02-23 Benjamin Kosnik <bkoz@redhat.com>
997 * include/ext/malloc_allocator.h: Add operators ==, !=.
998 * include/ext/new_allocator.h: Add operators ==, !=.
999 * include/ext/mt_allocator.h (__mt_alloc::tune): New.
1000 (__mt_alloc::_S_get_options): New.
1001 (__mt_alloc::_S_set_options): New.
1002 (__mt_alloc::_S_thread_key_destr): To _S_destroy_thread_key.
1003 (__mt_alloc::_S_no_of_bins): To _S_bin_size.
1004 Move functions out of line, simplify, format.
1005 * src/allocator.cc: Simplify explicit instantiations.
1006 * include/bits/allocator.h: Tweak.
1008 2004-02-22 Paolo Carlini <pcarlini@suse.de>
1010 * include/bits/locale_facets.tcc (money_put<>::_M_insert):
1011 Restructure formatting of value component, first dealing with
1012 the non-decimal digits; use reserve.
1014 2004-02-22 Paolo Carlini <pcarlini@suse.de>
1016 * include/bits/locale_facets.h (class money_get): Inherit
1017 from money_base too; tweak declaration of _M_extract, now
1018 parameterized on _Intl too.
1019 * include/bits/locale_facets.tcc (money_get<>::_M_extract):
1020 Update definition to use the cache; call reserve on __res to
1021 avoid multiple reallocations; fix parsing of sign component
1022 according to 22.2.6.1.2, p3.
1023 (money_get<>::do_get(long double&),
1024 money_get<>::do_get(string_type&)): Update calls of _M_extract.
1025 * src/locale-inst.cc: Add instantiations of
1026 money_get::_M_extract<false> and money_get::_M_extract<true>.
1027 * testsuite/22_locale/money_get/get/char/14.cc: New.
1028 * testsuite/22_locale/money_get/get/wchar_t/14.cc: Ditto.
1030 2004-02-21 Mark Mitchell <mark@codesourcery.com>
1032 * libsupc++/vterminate.cc
1033 (__gnu_cxx::__verbose_terminate_handler): Guard against recursive
1035 * src/demangle.cc (__cxa_demangle): Wrap in try-catch block.
1037 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1038 not set RLIMIT_AS on HP-UX.
1040 2004-02-21 Mark Mitchell <mark@codesourcery.com>
1042 * testsuite/testsuite_hooks.cc (__gnu_test::set_memory_limits): Do
1043 not set RLIMIT_AS on HP-UX.
1045 2004-02-21 Paolo Carlini <pcarlini@suse.de>
1047 * include/bits/locale_facets.h (class money_base): Add { _S_minus,
1048 _S_zero, _S_end } enum, _S_atoms.
1049 (struct __moneypunct_cache<>): Parameterize on _Intl too; add
1050 _M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
1051 _M_negative_sign_size, _M_atoms; tweak constructor consistently.
1052 (__moneypunct_cache<>::~__moneypunct_cache): Update.
1053 (__moneypunct_cache<>::_M_cache): Fill the cache.
1054 (class moneypunct): Tweak __cache_type typedef.
1055 (class money_put): Inherit from money_base too; tweak declaration
1056 of _M_insert, now parameterized on _Intl.
1057 * include/bits/locale_facets.tcc
1058 (struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
1059 (money_put<>::_M_insert): Update definition to use the cache;
1060 call reserve on __res to avoid multiple reallocations.
1061 (money_put<>::do_put(long double),
1062 money_put<>::do_put(const string_type&): Update calls of _M_insert.
1063 * config/locale/generic/monetary_members.cc
1064 (moneypunct<char, true>::_M_initialize_moneypunct,
1065 moneypunct<char, false>::_M_initialize_moneypunct,
1066 moneypunct<wchar_t, true>::_M_initialize_moneypunct,
1067 moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
1068 * config/locale/gnu/monetary_members.cc: Likewise.
1069 * config/locale/gnu/monetary_members.cc
1070 (moneypunct<wchar_t, true>::~moneypunct(),
1071 moneypunct<wchar_t, false>::~moneypunct()): Likewise.
1072 * src/globals_locale.cc: Tweak fake_money_cache_c.
1073 * src/locale-inst.cc: Add instantiations for
1074 money_put::_M_insert<false> and money_put::_M_insert<true> and
1075 __moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
1076 * src/locale_facets.cc: Define money_base::_S_atoms.
1077 * src/locale_init.cc: Update placement new of
1078 __moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
1079 __moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
1081 * config/locale/generic/numeric_members.cc: Clean up.
1082 * config/locale/gnu/numeric_members.cc: Likewise.
1083 * testsuite/22_locale/money_put/put/char/1.cc: Likewise.
1084 * testsuite/22_locale/money_put/put/char/2.cc: Likewise.
1085 * testsuite/22_locale/money_put/put/char/3.cc: Likewise.
1086 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
1087 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
1088 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
1090 2004-02-20 Mark Mitchell <mark@codesourcery.com>
1092 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Open
1093 FIFO for writing with ios_base::in|ios_base::out.
1094 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1095 * testsuite/27_io/objects/char/7.cc: Likewise.
1096 * testsuite/27_io/objects/char/9661-1.cc: Open FIFO for writing
1099 2004-02-19 David Edelsohn <edelsohn@gnu.org>
1101 * 22_locale/collate/compare/wchar_t/2.cc: Change input-charset
1102 from iso-8859-1 to ISO8859-1.
1103 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: Same.
1104 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: Same.
1105 * 22_locale/collate/hash/wchar_t/2.cc: Same.
1106 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: Same.
1107 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: Same.
1108 * 22_locale/collate/transform/wchar_t/2.cc: Same.
1109 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: Same.
1110 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: Same.
1112 2004-02-18 Paolo Carlini <pcarlini@suse.de>
1114 * include/bits/locale_facets.h (money_get<>::_M_extract):
1115 New, helper for do_get.
1116 (money_put<>::_M_insert): Likewise, for do_put.
1117 * include/bits/locale_facets.tcc (money_get<>::_M_extract,
1118 money_put<>::_M_insert): Define.
1119 (money_get<>::do_get(long double&), money_get<>::do_get(
1120 string_type&), money_put::do_put(long double),
1121 money_put::do_put(const string_type&)): Use the helpers.
1123 2004-02-18 Paolo Carlini <pcarlini@suse.de>
1125 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
1126 Rewrite, avoiding recursion.
1127 (__gnu_internal::xwrite): Minor tweaks.
1129 2004-02-17 Stefan Olsson <stefan@xapa.se>
1131 * include/ext/mt_allocator.h: Removed the last
1132 pointer. Deallocated blocks are now added to the front of
1133 freelists as proposed by Felix Yen. This gives roughly 10%
1134 performance boost and saves some memory.
1135 * docs/html/ext/mt_allocator.html: Change due to that deallocated
1136 blocks now are added to the front of freelists. The reason to this
1137 approach is also explained.
1139 2004-02-17 Paolo Carlini <pcarlini@suse.de>
1141 * include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
1142 num_get<>::_M_extract_int, money_get<>::do_get): Simplify
1143 grouping fidelity conditional.
1145 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1147 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc:
1148 Qualify exception with std::.
1149 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Ditto.
1150 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1151 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1152 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1153 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1155 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1157 * testsuite/ext/enc_filebuf/char/13189.cc: Don't check
1158 for now that the catch block is not reached.
1159 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Likewise.
1161 2004-02-16 Paolo Carlini <pcarlini@suse.de>
1163 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1164 Fix parsing of the remaining sign characters.
1165 * 22_locale/money_get/get/char/2.cc: Tweak: now, correctly,
1166 the input is scanned 'til eof.
1167 * 22_locale/money_get/get/char/4.cc: Likewise.
1168 * 22_locale/money_get/get/wchar_t/2.cc: Likewise.
1169 * 22_locale/money_get/get/wchar_t/4.cc: Likewise.
1170 * 22_locale/money_get/get/char/8.cc: Tweak: override do_neg_format,
1171 not do_pos_format: the former is the only one that matters during
1173 * 22_locale/money_get/get/wchar_t/8.cc: Likewise.
1175 * 22_locale/money_get/get/char/6.cc: Minor tweak.
1176 * 22_locale/money_get/get/wchar_t/6.cc: Likewise.
1178 2004-02-15 David Asher <david.asher@cavium.com>
1181 * include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't
1182 access __olds beyond __oldlen.
1184 2004-02-14 Paolo Carlini <pcarlini@suse.de>
1186 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Make
1187 sure the exception is actually thrown.
1188 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1189 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1190 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1192 2004-02-14 Paolo Carlini <pcarlini@suse.de>
1195 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external):
1196 In case of conversion errors, throw ios_failure; simplify.
1197 * testsuite/27_io/basic_filebuf/overflow/char/13858.cc: New.
1198 * testsuite/27_io/basic_filebuf/overflow/wchar_t/13858.cc: Ditto.
1199 * testsuite/27_io/basic_filebuf/overflow/char/9182-2.cc: Tweak,
1200 previously we didn't throw in case of conversion errors, instead
1201 just returned eof().
1202 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc: Ditto.
1203 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc: Ditto.
1204 * testsuite/27_io/basic_filebuf/sync/char/9182-1.cc: Ditto.
1206 * include/bits/fstream.tcc (basic_filebuf<>::overflow):
1207 Trivial simplification of a conditional.
1209 2004-02-12 Paolo Carlini <pcarlini@suse.de>
1211 PR libstdc++/13731 (final part: writev)
1212 * config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
1213 New, a wrapper around writev() handling partial writes.
1214 (__basic_file<char>::xwrite): Move to __gnu_internal and make
1216 (__basic_file<char>::xsputn): Update call.
1217 (__basic_file<char>::xsputn_2): Likewise.
1218 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
1219 Don't declare, now static.
1221 2004-02-11 Stefan Olsson <stefan@xapa.se>
1223 * docs/html/ext/mt_allocator.html: New.
1225 2004-02-11 Benjamin Kosnik <bkoz@redhat.com>
1227 * docs/html/20_util/allocator.html: New file, consolidate
1228 allocator information here. Revamp.
1229 * docs/html/documentation.html: Change links.
1230 * docs/html/20_util/howto.html: Same.
1231 * docs/html/ext/howto.html: Same.
1233 2004-02-11 Paolo Carlini <pcarlini@suse.de>
1235 PR libstdc++/13731 (first part: write)
1236 * config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
1238 * config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
1239 Define it: a wrapper around write() handling partial write.
1240 (__basic_file<char>::xsputn): Use it.
1241 (__basic_file<char>::xsputn_2): Likewise.
1243 2004-02-11 Paolo Carlini <pcarlini@suse.de>
1244 Petur Runolfsson <peturr02@ru.is>
1247 * include/std/std_istream.h (operator>>(__istream_type& (*)
1248 (__istream_type&)), operator>>(__ios_type& (*)(__ios_type&)),
1249 operator>>(ios_base& (*)(ios_base&))): Declare inline.
1250 * include/std/std_ostream.h (operator<<(__ostream_type& (*)
1251 (__ostream_type&)), operator<<(__ios_type& (*)(__ios_type&)),
1252 operator<<(ios_base& (*) (ios_base&))): Likewise.
1253 * testsuite/performance/27_io/fmtflags_manipulators.cc: New.
1255 2004-02-10 Loren J. Rittle <ljrittle@acm.org>
1258 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1259 __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
1262 * config/linker-map.gnu: Add typeinfo and typeinfo name for
1263 __gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
1265 2004-02-09 Loren J. Rittle <ljrittle@acm.org>
1267 * include/ext/pool_allocator.h: Include c++config.h.
1269 2004-02-09 Stefan Olsson <stefan@xapa.se>
1271 * include/ext/mt_allocator.h: thread_id is unused in non threaded
1272 applications and now has a ifdef to remove it completely on
1273 compilers without thread support. Include stdlib.h due to a
1274 compiler warning on getenv().
1276 2004-02-09 Paul Brook <paul@codesourcery.com>
1278 * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
1280 2004-02-09 Paolo Carlini <pcarlini@suse.de>
1283 * src/locale_init.cc (locale::global(const locale&)): Use
1284 locale::name() in order to decide whether calling setlocale.
1285 * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
1287 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
1288 Avoid computing &= unnecessarily.
1290 2004-02-09 James E Wilson <wilson@specifixinc.com>
1293 * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
1294 __builtin_extend_pointer.
1296 2004-02-09 Paolo Carlini <pcarlini@suse.de>
1299 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
1300 Don't leave dangling pointers.
1301 * testsuite/27_io/basic_ios/imbue/14072.cc: New.
1302 * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
1303 facet is needed in the final test.
1305 2004-02-09 Bernardo Innocenti <bernie@develer.com>
1307 * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
1308 * configure: Regenerate.
1310 2004-02-08 Richard Henderson <rth@redhat.com>
1313 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
1314 uncaughtExceptions during nested catch rethrow.
1315 * testsuite/18_support/14026.cc: New.
1317 2004-02-08 Paolo Carlini <pcarlini@suse.de>
1319 * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
1320 When working in place remember to set the state to sharable
1321 (otherwise, _M_mutate does it).
1323 2004-02-08 Bernardo Innocenti <bernie@develer.com>
1325 * include/bits/allocator.h, include/bits/basic_ios.h,
1326 include/bits/basic_ios.tcc, include/bits/basic_string.h,
1327 include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
1328 include/bits/char_traits.h, include/bits/codecvt.h,
1329 include/bits/concurrence.h, include/bits/cpp_type_traits.h,
1330 include/bits/demangle.h, include/bits/deque.tcc,
1331 include/bits/fstream.tcc, include/bits/functexcept.h,
1332 include/bits/gslice.h, include/bits/gslice_array.h,
1333 include/bits/indirect_array.h, include/bits/ios_base.h,
1334 include/bits/istream.tcc, include/bits/list.tcc,
1335 include/bits/locale_classes.h, include/bits/locale_facets.h,
1336 include/bits/locale_facets.tcc, include/bits/localefwd.h,
1337 include/bits/mask_array.h, include/bits/ostream.tcc,
1338 include/bits/postypes.h, include/bits/slice_array.h,
1339 include/bits/sstream.tcc, include/bits/stl_algo.h,
1340 include/bits/stl_algobase.h, include/bits/stl_bvector.h,
1341 include/bits/stl_construct.h, include/bits/stl_deque.h,
1342 include/bits/stl_function.h, include/bits/stl_heap.h,
1343 include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
1344 include/bits/stl_list.h, include/bits/stl_map.h,
1345 include/bits/stl_multimap.h, include/bits/stl_multiset.h,
1346 include/bits/stl_numeric.h, include/bits/stl_pair.h,
1347 include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
1348 include/bits/stl_relops.h, include/bits/stl_set.h,
1349 include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
1350 include/bits/stl_threads.h, include/bits/stl_tree.h,
1351 include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
1352 include/bits/stream_iterator.h, include/bits/streambuf.tcc,
1353 include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
1354 include/bits/type_traits.h, include/bits/valarray_after.h,
1355 include/bits/valarray_array.h, include/bits/valarray_array.tcc,
1356 include/bits/valarray_before.h, include/bits/vector.tcc: Remove
1357 trailing whitespace.
1359 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1361 * include/bits/basic_string.h: Fix comment.
1363 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1365 * include/bits/stl_construct.h: Wrap overlong lines, reformat
1366 according to the coding standards.
1367 * include/bits/stl_pair.h: Likewise.
1368 * include/bits/stl_raw_storage_iter.h: Likewise.
1369 * include/bits/stl_stack.h: Likewise.
1370 * include/bits/stl_uninitialized.h: Likewise.
1371 * include/bits/stream_iterator.h: Likewise.
1372 * include/bits/streambuf_iterator.h: Likewise.
1373 * include/bits/type_traits.h: Likewise.
1375 2004-02-06 Paolo Carlini <pcarlini@suse.de>
1377 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
1380 2004-02-05 Loren J. Rittle <ljrittle@acm.org>
1382 * scripts/check_performance: Support PCH.
1384 * scripts/check_performance (CXX): Add -DNOTHREAD.
1385 * testsuite/performance/20_util/allocator/insert.cc: Integrate
1386 threaded tests from insert_insert.cc. Tweak iterations,
1387 remove special cases.
1388 * testsuite/performance/20_util/allocator/insert_insert.cc:
1389 Make all tests single-threaded. Tweak iterations.
1390 * testsuite/performance/20_util/allocator/map_thread.cc:
1392 * testsuite/performance/20_util/allocator/producer_consumer.cc:
1395 2004-02-05 Geoffrey Keating <geoffk@apple.com>
1399 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
1400 'gcc-lib'. Add comment about poorly-named variables.
1401 * aclocal.m4: Regenerate.
1402 * configure: Regenerate.
1404 2004-02-05 Paolo Carlini <pcarlini@suse.de>
1406 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
1407 Thousands-sep are always optional; thousands-sep are not allowed
1408 after the decimal_point.
1409 * testsuite/22_locale/money_get/get/char/12.cc: New.
1410 * testsuite/22_locale/money_get/get/char/13.cc: New.
1411 * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
1412 * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
1414 * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
1415 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
1416 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
1417 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
1418 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
1419 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
1420 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
1421 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
1423 * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
1425 * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
1427 2004-02-05 Richard Sandiford <rsandifo@redhat.com>
1429 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
1431 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
1432 it to decide whether FIONREAD should take an off_t or int argument.
1434 2004-02-05 Paolo Carlini <pcarlini@suse.de>
1436 * include/bits/stl_function.h: Minor formatting changes.
1438 2004-02-04 Zack Weinberg <zack@codesourcery.com>
1440 Revert previous change to config/abi/*/baseline_symbols.txt.
1442 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
1443 Zack Weinberg <zack@codesourcery.com>
1445 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
1447 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
1448 (__basic_file<char>::_M_open_mode): Delete.
1449 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
1451 * testsuite/27_io/basic_filebuf/close/char/9964.cc
1452 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
1453 Correct flags to filebuf::open calls.
1455 * config/abi/alpha-freebsd5/baseline_symbols.txt
1456 * config/abi/alpha-linux-gnu/baseline_symbols.txt
1457 * config/abi/hppa-linux-gnu/baseline_symbols.txt
1458 * config/abi/i386-freebsd4/baseline_symbols.txt
1459 * config/abi/i386-freebsd5/baseline_symbols.txt
1460 * config/abi/i486-linux-gnu/baseline_symbols.txt
1461 * config/abi/ia64-linux-gnu/baseline_symbols.txt
1462 * config/abi/mips-linux-gnu/baseline_symbols.txt
1463 * config/abi/sparc-freebsd5/baseline_symbols.txt
1464 * config/abi/sparc-linux-gnu/baseline_symbols.txt
1465 * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
1466 Remove entry for __basic_file<char>::_M_open_mode.
1468 2004-02-04 Loren J. Rittle <ljrittle@acm.org>
1470 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
1472 2004-02-04 Felix Yen <fwy@alumni.brown.edu>
1474 * testsuite/performance/20_util/producer_consumer.cc: New.
1475 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
1477 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
1479 * testsuite/performance/20_util/allocator.cc: Move to..
1480 * testsuite/performance/20_util/allocator/insert.cc: ...here.
1481 * testsuite/performance/20_util/allocator_thread.cc: Move to...
1482 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
1483 * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
1484 * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
1486 2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
1488 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
1489 * docs/html/faq/index.txt: Regenerate.
1491 2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
1493 * include/ext/debug_allocator.h: _M_extra now stands for the
1494 number of extra objects instead of the number of extra bytes.
1495 (debug_allocator::allocate): Adjust.
1496 (debug_allocator::deallocate): Adjust.
1498 * include/ext/pool_allocator.h: Fix typo.
1500 2004-02-03 Felix Yen <fwy@alumni.brown.edu>
1501 Benjamin Kosnik <bkoz@redhat.com>
1503 * testsuite/performance/20_util/allocator.cc: Add map,
1505 * testsuite/performance/20_util/allocator_thread.cc: Same.
1507 2004-02-03 Paolo Carlini <pcarlini@suse.de>
1509 * include/bits/basic_string.h (insert(iterator)): Remove,
1510 non-standard and already scheduled for removal.
1512 2004-02-03 Paolo Carlini <pcarlini@suse.de>
1514 * include/bits/stl_iterator_base_funcs.h: Minor formatting
1515 and indentation tweaks.
1516 * include/bits/stl_iterator_base_types.h: Likewise.
1517 * include/bits/stl_list.h: Likewise.
1518 * include/bits/stl_map.h: Likewise.
1519 * include/bits/stl_tempbuf.h: Likewise.
1521 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
1523 * include/bits/gslice.h, include/bits/gslice_array.h,
1524 include/bits/indirect_array.h, include/bits/mask_array.h,
1525 include/bits/slice_array.h, include/bits/stl_numeric.h,
1526 include/std/std_valarray.h: Update copyright years.
1528 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
1530 * include/bits/gslice.h (gslice): Document.
1531 * include/bits/gslice_array.h (gslice_array): Document.
1532 * include/bits/indirect_array (indirect_array): Document.
1533 * include/bits/mask_array (mask_array): Document.
1534 * include/bits/slice_array.h (slice,slice_array): Document.
1535 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
1536 adjacent_difference): Document
1537 * include/std/std_valarray.h (valarray): Document.
1539 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
1541 * docs/html/19_diagnostics/howto.html: Move verbose terminate
1543 * docs/html/18_support/howto.html: Here.
1544 * docs/html/documentation.html: Add reference here.
1546 2004-02-02 Paolo Carlini <pcarlini@suse.de>
1548 * config/locale/gnu/c++locale_internal.h: Remove prototypes
1549 of no longer used GLIBC thread locale functions.
1551 2004-02-02 Eric Christopher <echristo@redhat.com>
1552 Zack Weinberg <zack@codesourcery.com>
1554 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
1556 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
1557 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
1558 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
1559 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
1560 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
1561 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
1562 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
1563 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
1566 2004-02-02 Paolo Carlini <pcarlini@suse.de>
1568 * include/bits/stl_function.h: Additional minor tweaks.
1569 * include/bits/stl_multiset.h: Likewise.
1571 * include/bits/stl_queue.h: Minor tweaks.
1573 2004-02-02 Paolo Carlini <pcarlini@suse.de>
1575 PR libstdc++/13976 (continued)
1576 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
1577 Make the second parameter unnamed, to void unused parameter
1579 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
1581 2004-02-02 Paolo Carlini <pcarlini@suse.de>
1584 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
1585 Make the second parameter unnamed, to void unused parameter
1587 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
1588 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
1590 2004-02-01 Paolo Carlini <pcarlini@suse.de>
1592 * include/bits/stl_algo.h: Additional minor tweaks.
1593 * include/bits/stl_map.h: Likewise.
1594 * include/bits/stl_multimap.h: Likewise.
1595 * include/bits/stl_multiset.h: Likewise.
1596 * include/bits/stl_set.h: Likewise.
1597 * include/bits/stl_tree.h: Likewise.
1599 2004-02-01 Paolo Carlini <pcarlini@suse.de>
1601 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
1604 2004-02-01 Paolo Carlini <pcarlini@suse.de>
1606 * include/bits/stl_function.h: Additional minor tweaks.
1608 2004-02-01 Paolo Carlini <pcarlini@suse.de>
1610 * include/bits/deque.tcc: Wrap overlong lines, constify
1611 a few variables, reformat according to the coding standards.
1612 * include/bits/list.tcc: Likewise.
1613 * include/bits/stl_deque.h: Likewise.
1614 * include/bits/stl_function.h: Likewise.
1615 * include/bits/stl_iterator.h: Likewise.
1616 * include/bits/stl_iterator_base_funcs.h: Likewise.
1617 * include/bits/stl_iterator_base_types.h: Likewise.
1618 * include/bits/stl_list.h: Likewise.
1619 * include/bits/stl_map.h: Likewise.
1620 * include/bits/stl_multimap.h: Likewise.
1621 * include/bits/stl_multiset.h: Likewise.
1622 * include/bits/stl_relops.h: Likewise.
1623 * include/bits/stl_set.h: Likewise.
1625 2004-02-01 Paolo Carlini <pcarlini@suse.de>
1627 * include/bits/stl_bvector.h: Wrap overlong lines, constify
1628 a few variables, reformat according to the coding standards.
1629 * include/bits/stl_tree.h: Likewise.
1631 2004-01-31 Paolo Carlini <pcarlini@suse.de>
1633 * include/bits/stl_algo.h: Minor additional reformat, add
1635 * include/bits/stl_algobase.h: Add copyright year.
1637 2004-01-31 Paolo Carlini <pcarlini@suse.de>
1639 * include/bits/stl_algo.h: Wrap overlong lines, constify
1640 a few variables, reformat according to the coding standards.
1641 * include/bits/stl_algobase.h: Likewise.
1642 * include/bits/stl_heap.h: Likewise.
1644 2004-01-31 Paolo Carlini <pcarlini@suse.de>
1646 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
1648 * include/bits/basic_string.h: Fix two comments.
1650 2004-01-31 Per Bothner <per@bothner.com>
1652 * include/ext/mt_allocator.h
1653 (__mt_alloc::_S_thread_freelist_mutex): Guard with
1654 __GTHREAD_MUTEX_INIT.
1656 2004-01-31 Paolo Carlini <pcarlini@suse.de>
1658 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
1660 2004-01-30 Paolo Carlini <pcarlini@suse.de>
1662 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
1663 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
1664 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
1666 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
1668 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
1669 Don't use clear, but instead assign. Use insert.
1671 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
1673 * src/demangle.cc: Add instantiations.
1674 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
1675 * src/Makefile.in: Regenerate.
1677 2004-01-30 David Edelsohn <edelsohn@gnu.org>
1679 * src/allocator.cc: Protect _S_get_thread_id() and
1680 _S_thread_key_destr() with #ifdef __GTHREADS.
1682 2004-01-30 Paolo Carlini <pcarlini@suse.de>
1684 Reshuffle performance testsuite.
1685 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
1686 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
1687 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
1688 fstream_seek_write.cc, ifstream_extract_float.cc,
1689 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
1690 list_create_fill_sort.cc, map_create_fill.cc,
1691 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
1692 ofstream_insert_float.cc, ofstream_insert_int.cc,
1693 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
1694 wchar_t_out.cc: Split into...
1695 * testsuite/performance/20_util/allocator.cc: New.
1696 * testsuite/performance/20_util/allocator_map_thread.cc: New.
1697 * testsuite/performance/20_util/allocator_thread.cc: New.
1698 * testsuite/performance/21_strings/string_append: New.
1699 * testsuite/performance/22_locale/is_wchar_t.cc: New.
1700 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
1701 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
1702 * testsuite/performance/22_locale/wchar_t_in.cc: New.
1703 * testsuite/performance/22_locale/wchar_t_length.cc: New.
1704 * testsuite/performance/22_locale/wchar_t_out.cc: New.
1705 * testsuite/performance/23_containers/container_benchmark.cc: New.
1706 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
1707 * testsuite/performance/23_containers/map_create_fill.cc: New.
1708 * testsuite/performance/26_numerics/complex_norm.cc: New.
1709 * testsuite/performance/27_io/cout_insert_int.cc: New.
1710 * testsuite/performance/27_io/filebuf_copy.cc: New.
1711 * testsuite/performance/27_io/filebuf_sputc.cc: New.
1712 * testsuite/performance/27_io/fstream_seek_write.cc: New.
1713 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
1714 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
1715 * testsuite/performance/27_io/ifstream_getline.cc: New.
1716 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
1717 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
1719 2004-01-30 Paolo Carlini <pcarlini@suse.de>
1721 * include/bits/basic_string.tcc (_Rep::_S_create):
1722 Never allocate a string bigger than max_size(); always keep
1723 __capacity and __size in sync to avoid memory leaks at
1726 2004-01-30 Paolo Carlini <pcarlini@suse.de>
1728 * include/bits/basic_string.tcc (_S_construct(_InIterator,
1729 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
1730 the double loop, streamline.
1732 * include/bits/basic_string.tcc: Very minor tweaks.
1734 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
1736 * scripts/check_performance: Only compile with $THREAD_FLAG
1737 when test is marked to require it. Allow multiple
1738 compilations/executions of marked tests.
1739 * testsuite/testsuite_performance.h (report_performance):
1740 Report dynamic thread support status.
1741 (report_header): Likewise.
1742 * testsuite/performance/allocator.cc: Stabilize iteration
1743 count. Support more allocators. Mark each allocator test to
1744 run and report independently.
1745 * testsuite/performance/allocator_map_thread.cc: Likewise.
1746 * testsuite/performance/allocator_thread.cc: Likewise.
1748 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
1750 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
1751 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
1752 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
1753 std::get_temporary_buffer() instead of duplicating its code.
1754 Update to C++STYLE conventions.
1755 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
1756 new() instead of std::malloc().
1757 (return_temporary_buffer): Use ::operator delete() instead of
1760 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
1762 * include/bits/allocator.h: Temporary switch to new_allocator as
1763 the default to unjam bootstraps.
1765 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
1767 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
1768 * include/Makefile.in: Regenerate.
1769 * include/bits/allocator_traits.h: Remove.
1770 * include/bits/allocator.h: Remove allocator_traits.h include, and
1772 (allocator): Empty base class, inherit from the underlying allocator.
1773 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
1774 * src/allocator.cc: ...here. New. For the underlying allocators.
1775 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
1776 * config/linker-map.gnu: Remove __pool_alloc bits.
1777 * src/Makefile.am (sources): Add allocator.cc.
1778 * src/Makefile.in: Regenerate.
1779 * testsuite/20_util/allocator/1.cc: Split second test into...
1780 * testsuite/20_util/allocator/8230.cc: ...this.
1781 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
1782 typedef to use std::allocatore. Format.
1783 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
1785 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
1786 __throw_bad_alloc calls. Don't include <memory>.
1787 * include/ext/malloc_allocator.h: Remove <memory> include.
1788 * include/ext/new_allocator.h (new_allocator): Same.
1789 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
1790 declaration. Switch __alloc to _Alloc.
1791 * include/ext/hashtable.h: Remove __alloc.
1792 * include/backward/alloc.h: Only inject allocator, not
1793 implementation details.
1795 * include/ext/mt_allocator.h: Replace free with delete.
1797 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
1799 * src/globals_io.cc: Change to __gnu_internal namespace.
1800 * src/globals_locale.cc: Same.
1801 * src/locale_init.cc: Same.
1802 * src/ios_init.cc: Same.
1804 2004-01-28 Stefan Olsson <stefan@snon.net>
1806 * include/ext/mt_allocator.h: Replaced all malloc() calls with
1807 operator new(). Added support for the env variable
1808 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
1809 one in allocate() as well). Fix typos.
1811 2004-01-28 Paolo Carlini <pcarlini@suse.de>
1813 * include/bits/basic_string.h (_S_create(size_t,
1814 const _Alloc&): Change signature to take two size_type
1816 * include/bits/basic_string.tcc (_S_construct(_InIterator,
1817 _InIterator, const _Alloc&, input_iterator_tag)): Update
1819 (_S_construct(_InIterator, _InIterator, const _Alloc&,
1820 forward_iterator_tag)): Likewise.
1821 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
1822 (_M_mutate(size_type, size_type, size_type)): Don't
1823 implement the exponential growth policy, demand it to
1824 _S_create, update call and simplify.
1825 (_M_clone(const _Alloc&, size_type)): Likewise.
1826 (_S_create(size_type, size_type, const _Alloc&)): Implement
1827 the growth policy, simplify otherwise.
1829 * include/bits/basic_string.h (_Rep::operator[]): Tweak
1830 signature to take a size_type, consistently with the other
1833 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
1835 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
1836 delete declarations, add include and test variable.
1838 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
1840 * include/bits/codecvt.h, include/bits/locale_facets.h,
1841 include/bits/postypes.h, include/bits/stl_bvector.h,
1842 include/bits/stl_multiset.h, include/bits/stl_set.h,
1843 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
1844 include/std/std_complex.h: Document.
1846 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
1849 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
1850 iword/pword selector.
1851 (ios_base::iword, ios_base::pword): Use it.
1852 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
1853 iword or pword member on alloc failure.
1854 * testsuite/27_io/ios_base/storage/11584.cc: New test.
1856 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
1857 PJ Darcy <darcypj@us.ibm.com>
1859 * configure.host: Add support for *-tpf.
1860 * crossconfig.m4: Likewise.
1861 * configure: Regenerate.
1862 * config/os/tpf: New directory.
1863 * config/os/tpf/os_defines.h: New file.
1864 * config/os/tpf/ctype_base.h: Likewise.
1865 * config/os/tpf/ctype_inline.h: Likewise.
1866 * config/os/tpf/ctype_noninline.h: Likewise.
1868 2004-01-27 Paolo Carlini <pcarlini@suse.de>
1871 * include/bits/sstream.tcc: Guard use of extern template.
1873 2004-01-27 Paolo Carlini <pcarlini@suse.de>
1875 * include/bits/basic_string.tcc
1876 (basic_string(const basic_string&, size_type, size_type),
1877 basic_string(const basic_string&, size_type, size_type,
1878 const _Alloc&)): Avoid unnecessarily constructing iterators.
1880 2004-01-26 Paolo Carlini <pcarlini@suse.de>
1882 * config/locale/generic/c_locale.cc: Fix throw messages
1883 to use the __N marker.
1884 * config/locale/gnu/c_locale.cc: Likewise.
1885 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
1887 * docs/html/17_intro/C++STYLE: Likewise.
1888 * include/bits/basic_ios.tcc: Likewise.
1889 * include/bits/fstream.tcc: Likewise.
1890 * include/bits/vector.tcc: Likewise.
1891 * include/ext/ropeimpl.h: Likewise.
1892 * include/std/std_bitset.h: Likewise.
1893 * src/ios.cc: Likewise.
1894 * src/locale.cc: Likewise.
1895 * src/localename.cc: Likewise.
1897 2004-01-26 Paolo Carlini <pcarlini@suse.de>
1899 * include/bits/basic_string.h (_M_replace_aux): Use the
1900 __N marker in throw message.
1901 * include/bits/basic_string.tcc (assign(const _CharT*,
1902 size_type), insert(size_type, const _CharT*, size_type),
1903 replace(size_type, size_type, const _CharT*, size_type),
1904 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
1907 * include/bits/basic_string.h, include/bits/basic_string.tcc:
1908 Fold overlong lines, minor formatting changes.
1910 2004-01-26 Paolo Carlini <pcarlini@suse.de>
1912 * include/bits/basic_string.h (replace(iterator, iterator,
1913 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
1914 (replace(iterator, iterator, const _CharT*)): Ditto.
1915 (replace(iterator, iterator, const _CharT*, size_type)):
1916 Add missing _GLIBCXX_DEBUG_PEDASSERT.
1918 2004-01-26 Paolo Carlini <pcarlini@suse.de>
1920 * include/bits/basic_string.tcc (replace(size_type,
1921 size_type, const _CharT*, size_type)): Implement optimized
1922 in-place algorithm for non-overlapping ranges.
1923 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
1924 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
1926 * include/bits/basic_string.tcc (insert(size_type,
1927 const _CharT*, size_type)): Tweak slightly.
1929 2004-01-26 Andreas Schwab <schwab@suse.de>
1931 * config/locale/gnu/monetary_members.cc: Restore locale before
1932 rethrowing exception.
1934 2004-01-25 Paolo Carlini <pcarlini@suse.de>
1936 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
1938 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
1941 * include/bits/basic_string.tcc: Very minor tweaks.
1943 2004-01-25 Paolo Carlini <pcarlini@suse.de>
1945 * testsuite/performance/string_append.cc: Increase number
1948 2004-01-25 Paolo Carlini <pcarlini@suse.de>
1950 * include/bits/basic_string.h (erase(size_type, size_type),
1951 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
1952 instead, thus avoiding redundant check for length_error.
1954 * include/bits/basic_string.h: Tweak some comments.
1956 2004-01-24 Paolo Carlini <pcarlini@suse.de>
1958 * include/bits/basic_string.tcc (operator+(const _CharT*,
1959 const basic_string&)): No need to go through the append
1960 taking two iterators.
1962 2004-01-24 Paolo Carlini <pcarlini@suse.de>
1964 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
1965 Revert last change to use std::min: machine language is worse.
1966 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
1967 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
1968 (find_last_not_of(_CharT, size_type)): Ditto.
1970 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
1971 size_type)): Discard the value returned by _M_check.
1972 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
1973 (append(const basic_string&, size_type, size_type)): Ditto.
1974 (copy(_CharT*, size_type, size_type)): Ditto.
1975 (compare(size_type, size_type, const basic_string&)): Ditto.
1976 (compare(size_type, size_type, const basic_string&,
1977 size_type, size_type)): Ditto.
1978 (compare(size_type, size_type, const _CharT*)): Ditto.
1979 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
1981 2004-01-24 Paolo Carlini <pcarlini@suse.de>
1983 * include/bits/basic_string.h (insert(size_type,
1984 const basic_string&, size_type, size_type)): Define inline here.
1985 * include/bits/basic_string.tcc (insert(size_type,
1986 const basic_string&, size_type, size_type)): Move inline.
1988 2004-01-24 Paolo Carlini <pcarlini@suse.de>
1990 * include/bits/basic_string.h (assign(const basic_string&,
1991 size_type, size_type)): Define inline here.
1992 (replace(size_type, size_type, const basic_string&,
1993 size_type, size_type)): Ditto.
1994 (_M_replace_dispatch(iterator, iterator, _InputIterator,
1995 _InputIterator, __false_type)): Only declare.
1996 (_M_replace(iterator, iterator, _InputIterator,
1997 _InputIterator)): Remove.
1998 * include/bits/basic_string.tcc (assign(const basic_string&,
1999 size_type, size_type)): Move inline.
2000 (replace(size_type, size_type, const basic_string&,
2001 size_type, size_type)): Ditto.
2002 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2003 _InputIterator, __false_type)): Define, now does also what
2004 _M_replace did before.
2005 * src/string-inst.cc (_M_replace): Don't instantiate.
2007 * include/bits/basic_string.tcc (find(const _CharT*,
2008 size_type, size_type)): Tidy.
2009 (rfind(_CharT, size_type)): Ditto.
2010 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
2011 (find_first_not_of(_CharT, size_type)): Ditto.
2012 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
2013 (find_last_not_of(_CharT, size_type)): Ditto.
2015 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2018 * include/debug/bitset (operator|=): Fix typo.
2019 * testsuite/23_containers/bitset/operations/13838.cc: New.
2021 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2023 * include/bits/basic_string.tcc (insert(size_type,
2024 const _CharT*, size_type __n)): Fix length_error check.
2025 (replace(size_type, size_type, const _CharT*, size_type):
2026 Ditto; call _M_replace_safe.
2027 (_M_replace_aux(size_type, size_type, size_type, _CharT):
2028 Fix length_error check.
2029 (_M_replace(iterator, iterator, _InputIterator,
2030 _InputIterator)): Ditto, tweak.
2031 (_M_replace_safe(size_type, size_type, const _CharT*,
2032 size_type)): Remove length_error check.
2034 * include/bits/basic_string.tcc (append(const basic_string&),
2035 append(const basic_string&, size_type, size_type)): Tweak
2038 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
2039 size_type)): If __n == 0 don't call traits::copy.
2041 2004-01-23 Stefan Olsson <stefan@snon.net>
2043 * include/ext/mt_allocator.h: Reduce lock contention.
2045 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2048 * include/bits/fstream.tcc (underflow): Remove unused
2050 * include/bits/streambuf_iterator.h (equal): Ditto.
2051 * include/bits/locale_facets.h (_M_convert_from_char):
2054 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2057 * config/linker-map.gnu (nan): Delete.
2058 * libmath/mathconf.h (NAN, nan): Delete.
2059 * linkage.m4 (nan): Don't check for it.
2060 * libmath/nan.c: Delete file.
2062 * config.h.in, configure: Regenerate.
2064 2004-01-23 Paolo Carlini <pcarlini@suse.de>
2066 * include/bits/basic_string.h (push_back(_CharT)):
2067 Call _M_replace_aux.
2068 (insert(size_type, const basic_string&)): Trivial tweak.
2069 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
2070 (insert(iterator, _CharT)): Ditto.
2071 (erase(size_type, size_type)): Ditto.
2072 (erase(iterator)): Ditto.
2073 (erase(iterator, iterator)): Ditto.
2074 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2076 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
2079 * testsuite/performance/allocator_map_thread.cc: New test.
2081 2004-01-22 Paolo Carlini <pcarlini@suse.de>
2083 * include/bits/locale_facets.tcc
2084 (money_put::do_put(..., long double)): Use the basic_string
2085 constructor for char arrays, not that for C-strings, to pass
2086 __digits to do_put(..., const string_type&): __ws isn't
2089 2004-01-22 Paolo Carlini <pcarlini@suse.de>
2091 * include/bits/basic_string.h (_M_replace_safe): Change
2092 signatures to take size_types and const _CharT*.
2093 (_M_replace_aux): Likewise, takes size_types instead of
2095 (append(size_type, _CharT)): Update call.
2096 (assign(size_type, _CharT)): Ditto.
2097 (replace(iterator, iterator, size_type, _CharT)): Ditto.
2098 (_M_replace_dispatch(iterator, iterator, _Integer,
2099 _Integer, __true_type)): Ditto.
2100 * include/bits/basic_string.tcc (assign(const _CharT*,
2102 (insert(size_type, const _CharT*, size_type)): Ditto.
2103 (replace(size_type, size_type, const _CharT*,
2105 (_M_replace(iterator, iterator, _InputIterator,
2106 _InputIterator)): Ditto.
2107 (append(const basic_string&)): Ditto.
2108 (append(const basic_string&, size_type, size_type): Ditto.
2109 (append(const _CharT*, size_type): Ditto.
2110 (_M_replace_safe, _M_replace_safe): Change definitions
2111 accordingly, simplify.
2112 * string-inst.cc (_M_replace_safe): Don't instantiate.
2114 2004-01-21 Paolo Carlini <pcarlini@suse.de>
2116 * include/bits/basic_string.tcc (append(const basic_string&)):
2117 Revert previous change.
2118 (append(const basic_string&, size_type, size_type)): Revert
2119 previous change, use _M_check and _M_limit.
2121 2004-01-21 Paolo Carlini <pcarlini@suse.de>
2123 * include/bits/basic_string.h (_M_check): Change to return
2124 a checked __pos and take an additional const char* argument.
2125 (_M_fold): Rename to _M_limit, change to return a size_type,
2126 corresponding to the __off limited to the actual length.
2127 (insert(size_type, size_type, _CharT)): Update call, call
2129 (insert(iterator, _CharT)): Call replace(iterator, iterator,
2130 size_type, _CharT) instead.
2131 (erase(size_type, size_type)): Update calls.
2132 (replace(size_type, size_type, size_type, _CharT)): Ditto.
2133 (substr(size_type, size_type)): Use _M_check.
2134 * include/bits/basic_string.tcc (basic_string(const basic_string&,
2135 size_type, size_type)): Update calls.
2136 (basic_string(const basic_string&, size_type, size_type,
2137 const _Alloc&)): Ditto.
2138 (assign(const basic_string&, size_type, size_type)): Use the
2139 new _M_check and _M_limit.
2140 (insert(size_type, const basic_string&, size_type, size_type):
2142 (insert(size_type, const _CharT*, size_type)): Ditto.
2143 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
2144 (replace(size_type, size_type, const basic_string&,
2145 size_type, size_type)): Ditto.
2146 (append(const basic_string&)): Ditto.
2147 (append(const basic_string&, size_type, size_type)): Ditto.
2148 (copy(_CharT*, size_type, size_type)): Ditto.
2149 (compare(size_type, size_type, const basic_string&)): Ditto.
2150 (compare(size_type, size_type, const basic_string&,size_type,
2152 (compare(size_type, size_type, const _CharT*)): Ditto.
2153 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
2155 2004-01-19 Stefan Olsson <stefan@snon.net>
2157 * include/ext/mt_allocator.h: If a thread, when it dies, still has
2158 memory on it's freelist this memory is not returned to global
2159 list. Simplification of deallocate so that memory is always
2160 returned to the calling thread id's freelist instead of to
2161 global. Fix typos. Add volatile where appropriate.
2163 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
2165 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
2166 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
2167 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
2169 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2171 * src/debug.cc: Make sure all the names are prefixed with
2172 double (or single) underscore.
2174 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2176 * src/debug.cc: Trivial formatting change.
2178 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2180 * include/bits/basic_string.tcc (_S_construct(size_type,
2181 _CharT, const _Alloc&)): Remove redundant try/catch.
2182 (_M_mutate(size_type, size_type, size_type)): Ditto.
2183 (_M_clone(const _Alloc&, size_type)): Ditto.
2185 2004-01-18 Paolo Carlini <pcarlini@suse.de>
2187 * include/bits/basic_string.h (c_str()): Simplify, due to
2188 21.3.4 the internal representation is always kept null-terminated.
2189 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
2190 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
2191 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
2194 2004-01-18 Paolo Carlini <pcarlini@suse.de>
2196 * include/bits/basic_string.h (append(size_type, _CharT)):
2197 Moved inline, just call _M_replace_aux, no source iterators at
2198 risk of being clobbered.
2199 (assign(size_type, _CharT)): Call directly _M_replace_aux.
2200 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2201 input_iterator_tag)): Remove fifth unused argument.
2202 (_M_replace_dispatch(iterator, iterator, _InputIterator,
2203 _InputIterator, __false_type)): Update call.
2204 * include/bits/basic_string.tcc (replace(size_type, size_type,
2205 const _CharT*, size_type)): Update call.
2206 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
2207 throw string literal.
2208 (_M_replace_safe(iterator, iterator, _ForwardIterator,
2209 _ForwardIterator)): Likewise.
2210 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
2211 input_iterator_tag)): Remove fifth unused argument.
2212 (append(size_type __n, _CharT __c)): Move inline.
2213 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
2214 const C*, const C*, input_iterator_tag)): Remove fifth unused
2217 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
2219 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
2220 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
2222 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
2224 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
2227 2004-01-15 Stefan Olsson <stefan@snon.net>
2229 * include/ext/mt_allocator.h: Reuse thread id's as soon as
2230 possible by changing the behaviour of thread_freelist to do
2231 push_front when threads die instead of push_back.
2233 2004-01-14 Paolo Carlini <pcarlini@suse.de>
2235 * include/bits/locale_facets.h (struct __numpunct_cache):
2236 Add member _M_grouping_size, caching the length of _M_grouping.
2237 (__numpunct_cache<>::_M_cache): Assign the latter.
2238 (__verify_grouping): Move declaration...
2239 * include/bits/locale_facets.tcc (__verify_grouping):
2240 ... here, change signature to take a const char* and a size_t
2241 for the grouping; not a template anymore.
2242 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
2243 Likewise change signature and tweak consistently.
2244 (num_get::_M_extract_float, num_get::_M_extract_int,
2245 num_put::_M_insert_int, num_put::_M_insert_float,
2246 money_get::do_get(string_type&), money_get::do_put(string_type)):
2248 * config/locale/generic/numeric_members.cc
2249 (numpunct<>::_M_initialize_numpunct): Assign the new member.
2250 * config/locale/gnu/numeric_members.cc
2251 (numpunct<>::_M_initialize_numpunct): Likewise.
2252 * src/locale-inst.cc (__add_grouping): Tweak signature.
2253 (__verify_grouping): Don't instantiate, not a template anymore.
2255 * include/bits/locale_facets.h: Rename _M_truename_len ->
2256 _M_truename_size, _M_falsename_len -> _M_falsename_size.
2257 * include/bits/locale_facets.tcc: Likewise.
2258 * config/locale/generic/numeric_members.cc: Likewise.
2259 * config/locale/gnu/numeric_members.cc: Likewise.
2261 2004-01-14 Stefan Olsson <stefan@snon.net>
2263 * include/ext/mt_allocator.h: Fixups.
2264 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
2265 * testsuite/performance/allocator_thread.cc: Same.
2267 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2269 * testsuite/performance/ifstream_extract_float.cc: Add higher
2271 * testsuite/performance/ofstream_insert_float.cc: Same.
2273 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2275 * src/locale-misc-inst.cc (__convert_from_v(long),
2276 __convert_from_v(unsigned long), __convert_from_v(long long),
2277 __convert_from_v(unsigned long long)): Remove, unused.
2279 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
2281 * testsuite/performance/ifstream_extract_float.cc: New.
2282 * testsuite/performance/ofstream_insert_float.cc: Float generation
2285 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
2286 * 20_util/auto_ptr/1.cc: ...this.
2287 * 20_util/auto_ptr/2.cc: Same.
2288 * 20_util/auto_ptr/3.cc: Same.
2289 * 20_util/auto_ptr/3946.cc: Same.
2290 * 20_util/auto_ptr/4.cc: Same.
2291 * 20_util/auto_ptr/5.cc: Same.
2292 * 20_util/auto_ptr/6.cc: Same.
2293 * 20_util/auto_ptr/7.cc: Same.
2294 * 20_util/auto_ptr/assign_neg.cc
2295 * 20_util/pairs.cc: Break into...
2296 * 20_util/pair/1.cc: ...this.
2297 * 20_util/pair/2.cc: Same.
2298 * 20_util/pair/3.cc: Same.
2299 * 20_util/pair/4.cc: Same.
2301 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2303 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
2304 Set correctly just basefield, the only group that matters.
2306 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2308 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
2309 (_Rope_rep_base): Inherit directly from the rope allocator;
2310 use rebinding instead of _Alloc_traits; pick up data member
2311 from _Rope_rep_alloc_base.
2312 (_Rope_alloc_base): Eliminate.
2313 (_Rope_base): Inherit directly from the rope allocator; use
2314 rebinding instead of _Alloc_traits; pick up data member from
2316 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
2317 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
2319 2004-01-13 Paolo Carlini <pcarlini@suse.de>
2322 * include/bits/basic_string.tcc (compare(size_type, size_type,
2323 const _CharT*, size_type)): Implement correctly the resolution
2324 of DR 5: basically, s is a char array, -not- a C string.
2325 * include/bits/basic_string.h: Tweak some comments.
2326 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
2327 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
2329 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
2331 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
2334 2004-01-12 Paolo Carlini <pcarlini@suse.de>
2336 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
2338 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
2341 2004-01-12 Paolo Carlini <pcarlini@suse.de>
2343 * include/bits/locale_facets.h (struct __numpunct_cache):
2344 Add members _M_truename_len and _M_falsename_len, caching
2345 the lengths of _M_truename and _M_falsename.
2346 (__numpunct_cache<>::_M_cache): Assign the latter.
2347 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
2348 num_put::do_put(bool)): Use the new members, thus avoiding
2349 computing string lengths again and again.
2350 * config/locale/generic/numeric_members.cc
2351 (numpunct<>::_M_initialize_numpunct): Assign the new members.
2352 * config/locale/gnu/numeric_members.cc
2353 (numpunct<>::_M_initialize_numpunct): Likewise.
2355 2004-01-12 Mark Mitchell <mark@codesourcery.com>
2357 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
2358 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
2360 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
2361 and remove Cygwin XFAIL.
2362 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
2363 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
2364 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
2365 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
2367 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
2368 * testsuite/27_io/objects/char/7.cc: Likewise.
2369 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
2370 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
2371 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
2373 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
2375 * include/std/std_complex.h (std::complex<>::real): Return a
2376 reference. Add non-const overload.
2377 (std::complex<>::real): Likewise.
2378 (std::real): Likewise.
2379 (std::imag): Likewise.
2380 (std::operator+): Tidy.
2381 (std::operator-): Likewise.
2382 (std::operator*): Likewise.
2383 (std::operator/): Likewise.
2384 (std::operator>>): Likewise.
2386 2004-01-11 Paolo Carlini <pcarlini@suse.de>
2389 * include/bits/fstream.tcc (imbue): Exploit the external
2390 buffer to imbue 'on the fly' a new locale and convert its
2391 remainder with the new codecvt facet.
2392 (underflow): Tweak slightly to deal with this special case.
2393 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
2394 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
2395 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
2396 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
2397 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
2399 2004-01-10 Paolo Carlini <pcarlini@suse.de>
2401 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
2404 2004-01-10 Paolo Carlini <pcarlini@suse.de>
2407 * include/bits/locale_classes.h (class locale): Fix category
2409 * testsuite/22_locale/locale/13630.cc: Add.
2411 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
2413 * include/bits/locale_facets.h: Make a name really dependent. This
2414 will be needed when Core Issue 224 is implemented.
2416 2004-01-09 Paolo Carlini <pcarlini@suse.de>
2418 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
2419 * testsuite/performance/allocator_thread.cc: Likewise.
2421 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
2423 * crossconfig.m4: Add LFS, io bits to linux cross config.
2424 * acconfig.h: Remove obsolete bits, reorder.
2425 * config.h.in: Regenerate.
2429 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
2431 * include/bits/stl_list.h:
2432 * include/bits/list.tc:
2434 Performance enhancements for destructor, push_front(),
2435 push_back(), pop_front(), pop_back(), sort()
2436 Eliminated static_casts where possible.
2437 Moved code out of header files into new src/list.cc
2438 implementation file for library where possible.
2439 Remove inheritance from iterator class and create separate
2440 classes for non-constant and constant iterators.
2441 * include/bits/stl_tree.h (_Rb_tree class):
2443 Only erase contents in destructor.
2444 Eliminate unnecessary initialization in assignment operator.
2445 Optimize for the nominal case by not checking whether
2446 container is empty in clear().
2447 Re-order test in _M_insert() to improve performance.
2448 Move initialization of new node's left & right pointers to
2449 src/tree.cc to where new node's colour is initialized
2450 and to reduce the amount of inline code.
2451 Use _M_leftmost() and _M_end() to improve readability where
2453 Create separate classes for non-constant and constant
2454 iterators to clarify code, avoid extra template parameters and
2455 casting away constness.
2457 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
2459 * src/Makefile.am (sources): Add list.cc, tree.cc.
2460 * src/stl_tree.cc: Move to...
2461 * src/tree.cc: ...here.
2463 * config/linker-map.gnu: Tweaks.
2464 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
2465 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
2467 * bits/stl_vector.h: Column wrap comments.
2469 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
2471 (re-open) PR libstdc++/12658
2472 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
2473 (locale::global): Likewise.
2475 2004-01-07 Paolo Carlini <pcarlini@suse.de>
2477 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
2478 Remove redundant #include.
2479 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
2480 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
2481 re-enable normal testing.
2482 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
2484 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
2485 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
2487 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
2489 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
2491 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
2493 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
2495 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
2497 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
2499 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
2500 More properly, #include <locale>.
2501 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
2502 Remove redundant #include.
2503 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
2504 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
2505 redundant DejaGnu directive.
2506 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
2509 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
2510 Stefan Olsson <stefan@snon.net>
2512 * scripts/check_performance: Use -pthread.
2513 * testsuite/performance/allocator.cc: Tweaks, add list.
2514 * testsuite/performance/allocator_thread.cc: New.
2516 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
2518 * include/bits/locale_facets.h: Document public classes and
2520 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
2523 2004-01-06 Paolo Carlini <pcarlini@suse.de>
2525 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
2526 Remove redundant #includes.
2527 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
2529 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
2531 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
2532 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
2533 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
2534 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
2535 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
2536 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
2537 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
2538 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
2539 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
2540 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
2541 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
2542 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
2543 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
2544 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
2545 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
2547 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
2549 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
2551 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
2553 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
2555 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
2556 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
2557 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
2559 2004-01-04 Paolo Carlini <pcarlini@suse.de>
2561 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
2562 Remove redundant #includes.
2563 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
2565 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
2567 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
2569 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
2571 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
2573 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
2575 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
2577 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
2579 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
2581 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
2583 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
2585 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
2588 2004-01-04 Mark Mitchell <mark@codesourcery.com>
2591 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
2593 * testsuite/27_io/basic_fstream/4.cc: Likewise.
2594 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
2595 * testsuite/27_io/basic_ios/4.cc: Likewise.
2596 * testsuite/27_io/basic_iostream/4.cc: Likewise.
2597 * testsuite/27_io/basic_istream/4.cc: Likewise.
2598 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
2599 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
2600 * testsuite/27_io/basic_ostream/4.cc: Likewise.
2601 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
2602 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
2603 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
2605 2004-01-04 Paolo Carlini <pcarlini@suse.de>
2607 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
2608 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
2609 always use double underscored names.
2610 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
2612 * include/bits/locale_facets.h (struct __numpunct_cache):
2613 Dimension _M_atoms_out and _M_atoms_in one position smaller.
2614 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out