1 2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
3 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
4 * docs/html/faq/index.txt: Regenerate.
6 2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
8 * include/ext/debug_allocator.h: _M_extra now stands for the
9 number of extra objects instead of the number of extra bytes.
10 (debug_allocator::allocate): Adjust.
11 (debug_allocator::deallocate): Adjust.
13 * include/ext/pool_allocator.h: Fix typo.
15 2004-02-03 Felix Yen <fwy@alumni.brown.edu>
16 Benjamin Kosnik <bkoz@redhat.com>
18 * testsuite/performance/20_util/allocator.cc: Add map,
20 * testsuite/performance/20_util/allocator_thread.cc: Same.
22 2004-02-03 Paolo Carlini <pcarlini@suse.de>
24 * include/bits/basic_string.h (insert(iterator)): Remove,
25 non-standard and already scheduled for removal.
27 2004-02-03 Paolo Carlini <pcarlini@suse.de>
29 * include/bits/stl_iterator_base_funcs.h: Minor formatting
30 and indentation tweaks.
31 * include/bits/stl_iterator_base_types.h: Likewise.
32 * include/bits/stl_list.h: Likewise.
33 * include/bits/stl_map.h: Likewise.
34 * include/bits/stl_tempbuf.h: Likewise.
36 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
38 * include/bits/gslice.h, include/bits/gslice_array.h,
39 include/bits/indirect_array.h, include/bits/mask_array.h,
40 include/bits/slice_array.h, include/bits/stl_numeric.h,
41 include/std/std_valarray.h: Update copyright years.
43 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
45 * include/bits/gslice.h (gslice): Document.
46 * include/bits/gslice_array.h (gslice_array): Document.
47 * include/bits/indirect_array (indirect_array): Document.
48 * include/bits/mask_array (mask_array): Document.
49 * include/bits/slice_array.h (slice,slice_array): Document.
50 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
51 adjacent_difference): Document
52 * include/std/std_valarray.h (valarray): Document.
54 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
56 * docs/html/19_diagnostics/howto.html: Move verbose terminate
58 * docs/html/18_support/howto.html: Here.
59 * docs/html/documentation.html: Add reference here.
61 2004-02-02 Paolo Carlini <pcarlini@suse.de>
63 * config/locale/gnu/c++locale_internal.h: Remove prototypes
64 of no longer used GLIBC thread locale functions.
66 2004-02-02 Eric Christopher <echristo@redhat.com>
67 Zack Weinberg <zack@codesourcery.com>
69 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
71 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
72 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
73 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
74 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
75 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
76 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
77 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
78 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
81 2004-02-02 Paolo Carlini <pcarlini@suse.de>
83 * include/bits/stl_function.h: Additional minor tweaks.
84 * include/bits/stl_multiset.h: Likewise.
86 * include/bits/stl_queue.h: Minor tweaks.
88 2004-02-02 Paolo Carlini <pcarlini@suse.de>
90 PR libstdc++/13976 (continued)
91 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
92 Make the second parameter unnamed, to void unused parameter
94 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
96 2004-02-02 Paolo Carlini <pcarlini@suse.de>
99 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
100 Make the second parameter unnamed, to void unused parameter
102 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
103 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
105 2004-02-01 Paolo Carlini <pcarlini@suse.de>
107 * include/bits/stl_algo.h: Additional minor tweaks.
108 * include/bits/stl_map.h: Likewise.
109 * include/bits/stl_multimap.h: Likewise.
110 * include/bits/stl_multiset.h: Likewise.
111 * include/bits/stl_set.h: Likewise.
112 * include/bits/stl_tree.h: Likewise.
114 2004-02-01 Paolo Carlini <pcarlini@suse.de>
116 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
119 2004-02-01 Paolo Carlini <pcarlini@suse.de>
121 * include/bits/stl_function.h: Additional minor tweaks.
123 2004-02-01 Paolo Carlini <pcarlini@suse.de>
125 * include/bits/deque.tcc: Wrap overlong lines, constify
126 a few variables, reformat according to the coding standards.
127 * include/bits/list.tcc: Likewise.
128 * include/bits/stl_deque.h: Likewise.
129 * include/bits/stl_function.h: Likewise.
130 * include/bits/stl_iterator.h: Likewise.
131 * include/bits/stl_iterator_base_funcs.h: Likewise.
132 * include/bits/stl_iterator_base_types.h: Likewise.
133 * include/bits/stl_list.h: Likewise.
134 * include/bits/stl_map.h: Likewise.
135 * include/bits/stl_multimap.h: Likewise.
136 * include/bits/stl_multiset.h: Likewise.
137 * include/bits/stl_relops.h: Likewise.
138 * include/bits/stl_set.h: Likewise.
140 2004-02-01 Paolo Carlini <pcarlini@suse.de>
142 * include/bits/stl_bvector.h: Wrap overlong lines, constify
143 a few variables, reformat according to the coding standards.
144 * include/bits/stl_tree.h: Likewise.
146 2004-01-31 Paolo Carlini <pcarlini@suse.de>
148 * include/bits/stl_algo.h: Minor additional reformat, add
150 * include/bits/stl_algobase.h: Add copyright year.
152 2004-01-31 Paolo Carlini <pcarlini@suse.de>
154 * include/bits/stl_algo.h: Wrap overlong lines, constify
155 a few variables, reformat according to the coding standards.
156 * include/bits/stl_algobase.h: Likewise.
157 * include/bits/stl_heap.h: Likewise.
159 2004-01-31 Paolo Carlini <pcarlini@suse.de>
161 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
163 * include/bits/basic_string.h: Fix two comments.
165 2004-01-31 Per Bothner <per@bothner.com>
167 * include/ext/mt_allocator.h
168 (__mt_alloc::_S_thread_freelist_mutex): Guard with
169 __GTHREAD_MUTEX_INIT.
171 2004-01-31 Paolo Carlini <pcarlini@suse.de>
173 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
175 2004-01-30 Paolo Carlini <pcarlini@suse.de>
177 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
178 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
179 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
181 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
183 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
184 Don't use clear, but instead assign. Use insert.
186 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
188 * src/demangle.cc: Add instantiations.
189 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
190 * src/Makefile.in: Regenerate.
192 2004-01-30 David Edelsohn <edelsohn@gnu.org>
194 * src/allocator.cc: Protect _S_get_thread_id() and
195 _S_thread_key_destr() with #ifdef __GTHREADS.
197 2004-01-30 Paolo Carlini <pcarlini@suse.de>
199 Reshuffle performance testsuite.
200 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
201 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
202 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
203 fstream_seek_write.cc, ifstream_extract_float.cc,
204 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
205 list_create_fill_sort.cc, map_create_fill.cc,
206 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
207 ofstream_insert_float.cc, ofstream_insert_int.cc,
208 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
209 wchar_t_out.cc: Split into...
210 * testsuite/performance/20_util/allocator.cc: New.
211 * testsuite/performance/20_util/allocator_map_thread.cc: New.
212 * testsuite/performance/20_util/allocator_thread.cc: New.
213 * testsuite/performance/21_strings/string_append: New.
214 * testsuite/performance/22_locale/is_wchar_t.cc: New.
215 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
216 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
217 * testsuite/performance/22_locale/wchar_t_in.cc: New.
218 * testsuite/performance/22_locale/wchar_t_length.cc: New.
219 * testsuite/performance/22_locale/wchar_t_out.cc: New.
220 * testsuite/performance/23_containers/container_benchmark.cc: New.
221 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
222 * testsuite/performance/23_containers/map_create_fill.cc: New.
223 * testsuite/performance/26_numerics/complex_norm.cc: New.
224 * testsuite/performance/27_io/cout_insert_int.cc: New.
225 * testsuite/performance/27_io/filebuf_copy.cc: New.
226 * testsuite/performance/27_io/filebuf_sputc.cc: New.
227 * testsuite/performance/27_io/fstream_seek_write.cc: New.
228 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
229 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
230 * testsuite/performance/27_io/ifstream_getline.cc: New.
231 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
232 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
234 2004-01-30 Paolo Carlini <pcarlini@suse.de>
236 * include/bits/basic_string.tcc (_Rep::_S_create):
237 Never allocate a string bigger than max_size(); always keep
238 __capacity and __size in sync to avoid memory leaks at
241 2004-01-30 Paolo Carlini <pcarlini@suse.de>
243 * include/bits/basic_string.tcc (_S_construct(_InIterator,
244 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
245 the double loop, streamline.
247 * include/bits/basic_string.tcc: Very minor tweaks.
249 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
251 * scripts/check_performance: Only compile with $THREAD_FLAG
252 when test is marked to require it. Allow multiple
253 compilations/executions of marked tests.
254 * testsuite/testsuite_performance.h (report_performance):
255 Report dynamic thread support status.
256 (report_header): Likewise.
257 * testsuite/performance/allocator.cc: Stabilize iteration
258 count. Support more allocators. Mark each allocator test to
259 run and report independently.
260 * testsuite/performance/allocator_map_thread.cc: Likewise.
261 * testsuite/performance/allocator_thread.cc: Likewise.
263 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
265 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
266 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
267 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
268 std::get_temporary_buffer() instead of duplicating its code.
269 Update to C++STYLE conventions.
270 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
271 new() instead of std::malloc().
272 (return_temporary_buffer): Use ::operator delete() instead of
275 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
277 * include/bits/allocator.h: Temporary switch to new_allocator as
278 the default to unjam bootstraps.
280 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
282 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
283 * include/Makefile.in: Regenerate.
284 * include/bits/allocator_traits.h: Remove.
285 * include/bits/allocator.h: Remove allocator_traits.h include, and
287 (allocator): Empty base class, inherit from the underlying allocator.
288 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
289 * src/allocator.cc: ...here. New. For the underlying allocators.
290 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
291 * config/linker-map.gnu: Remove __pool_alloc bits.
292 * src/Makefile.am (sources): Add allocator.cc.
293 * src/Makefile.in: Regenerate.
294 * testsuite/20_util/allocator/1.cc: Split second test into...
295 * testsuite/20_util/allocator/8230.cc: ...this.
296 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
297 typedef to use std::allocatore. Format.
298 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
300 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
301 __throw_bad_alloc calls. Don't include <memory>.
302 * include/ext/malloc_allocator.h: Remove <memory> include.
303 * include/ext/new_allocator.h (new_allocator): Same.
304 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
305 declaration. Switch __alloc to _Alloc.
306 * include/ext/hashtable.h: Remove __alloc.
307 * include/backward/alloc.h: Only inject allocator, not
308 implementation details.
310 * include/ext/mt_allocator.h: Replace free with delete.
312 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
314 * src/globals_io.cc: Change to __gnu_internal namespace.
315 * src/globals_locale.cc: Same.
316 * src/locale_init.cc: Same.
317 * src/ios_init.cc: Same.
319 2004-01-28 Stefan Olsson <stefan@snon.net>
321 * include/ext/mt_allocator.h: Replaced all malloc() calls with
322 operator new(). Added support for the env variable
323 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
324 one in allocate() as well). Fix typos.
326 2004-01-28 Paolo Carlini <pcarlini@suse.de>
328 * include/bits/basic_string.h (_S_create(size_t,
329 const _Alloc&): Change signature to take two size_type
331 * include/bits/basic_string.tcc (_S_construct(_InIterator,
332 _InIterator, const _Alloc&, input_iterator_tag)): Update
334 (_S_construct(_InIterator, _InIterator, const _Alloc&,
335 forward_iterator_tag)): Likewise.
336 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
337 (_M_mutate(size_type, size_type, size_type)): Don't
338 implement the exponential growth policy, demand it to
339 _S_create, update call and simplify.
340 (_M_clone(const _Alloc&, size_type)): Likewise.
341 (_S_create(size_type, size_type, const _Alloc&)): Implement
342 the growth policy, simplify otherwise.
344 * include/bits/basic_string.h (_Rep::operator[]): Tweak
345 signature to take a size_type, consistently with the other
348 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
350 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
351 delete declarations, add include and test variable.
353 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
355 * include/bits/codecvt.h, include/bits/locale_facets.h,
356 include/bits/postypes.h, include/bits/stl_bvector.h,
357 include/bits/stl_multiset.h, include/bits/stl_set.h,
358 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
359 include/std/std_complex.h: Document.
361 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
364 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
365 iword/pword selector.
366 (ios_base::iword, ios_base::pword): Use it.
367 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
368 iword or pword member on alloc failure.
369 * testsuite/27_io/ios_base/storage/11584.cc: New test.
371 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
372 PJ Darcy <darcypj@us.ibm.com>
374 * configure.host: Add support for *-tpf.
375 * crossconfig.m4: Likewise.
376 * configure: Regenerate.
377 * config/os/tpf: New directory.
378 * config/os/tpf/os_defines.h: New file.
379 * config/os/tpf/ctype_base.h: Likewise.
380 * config/os/tpf/ctype_inline.h: Likewise.
381 * config/os/tpf/ctype_noninline.h: Likewise.
383 2004-01-27 Paolo Carlini <pcarlini@suse.de>
386 * include/bits/sstream.tcc: Guard use of extern template.
388 2004-01-27 Paolo Carlini <pcarlini@suse.de>
390 * include/bits/basic_string.tcc
391 (basic_string(const basic_string&, size_type, size_type),
392 basic_string(const basic_string&, size_type, size_type,
393 const _Alloc&)): Avoid unnecessarily constructing iterators.
395 2004-01-26 Paolo Carlini <pcarlini@suse.de>
397 * config/locale/generic/c_locale.cc: Fix throw messages
398 to use the __N marker.
399 * config/locale/gnu/c_locale.cc: Likewise.
400 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
402 * docs/html/17_intro/C++STYLE: Likewise.
403 * include/bits/basic_ios.tcc: Likewise.
404 * include/bits/fstream.tcc: Likewise.
405 * include/bits/vector.tcc: Likewise.
406 * include/ext/ropeimpl.h: Likewise.
407 * include/std/std_bitset.h: Likewise.
408 * src/ios.cc: Likewise.
409 * src/locale.cc: Likewise.
410 * src/localename.cc: Likewise.
412 2004-01-26 Paolo Carlini <pcarlini@suse.de>
414 * include/bits/basic_string.h (_M_replace_aux): Use the
415 __N marker in throw message.
416 * include/bits/basic_string.tcc (assign(const _CharT*,
417 size_type), insert(size_type, const _CharT*, size_type),
418 replace(size_type, size_type, const _CharT*, size_type),
419 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
422 * include/bits/basic_string.h, include/bits/basic_string.tcc:
423 Fold overlong lines, minor formatting changes.
425 2004-01-26 Paolo Carlini <pcarlini@suse.de>
427 * include/bits/basic_string.h (replace(iterator, iterator,
428 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
429 (replace(iterator, iterator, const _CharT*)): Ditto.
430 (replace(iterator, iterator, const _CharT*, size_type)):
431 Add missing _GLIBCXX_DEBUG_PEDASSERT.
433 2004-01-26 Paolo Carlini <pcarlini@suse.de>
435 * include/bits/basic_string.tcc (replace(size_type,
436 size_type, const _CharT*, size_type)): Implement optimized
437 in-place algorithm for non-overlapping ranges.
438 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
439 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
441 * include/bits/basic_string.tcc (insert(size_type,
442 const _CharT*, size_type)): Tweak slightly.
444 2004-01-26 Andreas Schwab <schwab@suse.de>
446 * config/locale/gnu/monetary_members.cc: Restore locale before
447 rethrowing exception.
449 2004-01-25 Paolo Carlini <pcarlini@suse.de>
451 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
453 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
456 * include/bits/basic_string.tcc: Very minor tweaks.
458 2004-01-25 Paolo Carlini <pcarlini@suse.de>
460 * testsuite/performance/string_append.cc: Increase number
463 2004-01-25 Paolo Carlini <pcarlini@suse.de>
465 * include/bits/basic_string.h (erase(size_type, size_type),
466 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
467 instead, thus avoiding redundant check for length_error.
469 * include/bits/basic_string.h: Tweak some comments.
471 2004-01-24 Paolo Carlini <pcarlini@suse.de>
473 * include/bits/basic_string.tcc (operator+(const _CharT*,
474 const basic_string&)): No need to go through the append
475 taking two iterators.
477 2004-01-24 Paolo Carlini <pcarlini@suse.de>
479 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
480 Revert last change to use std::min: machine language is worse.
481 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
482 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
483 (find_last_not_of(_CharT, size_type)): Ditto.
485 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
486 size_type)): Discard the value returned by _M_check.
487 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
488 (append(const basic_string&, size_type, size_type)): Ditto.
489 (copy(_CharT*, size_type, size_type)): Ditto.
490 (compare(size_type, size_type, const basic_string&)): Ditto.
491 (compare(size_type, size_type, const basic_string&,
492 size_type, size_type)): Ditto.
493 (compare(size_type, size_type, const _CharT*)): Ditto.
494 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
496 2004-01-24 Paolo Carlini <pcarlini@suse.de>
498 * include/bits/basic_string.h (insert(size_type,
499 const basic_string&, size_type, size_type)): Define inline here.
500 * include/bits/basic_string.tcc (insert(size_type,
501 const basic_string&, size_type, size_type)): Move inline.
503 2004-01-24 Paolo Carlini <pcarlini@suse.de>
505 * include/bits/basic_string.h (assign(const basic_string&,
506 size_type, size_type)): Define inline here.
507 (replace(size_type, size_type, const basic_string&,
508 size_type, size_type)): Ditto.
509 (_M_replace_dispatch(iterator, iterator, _InputIterator,
510 _InputIterator, __false_type)): Only declare.
511 (_M_replace(iterator, iterator, _InputIterator,
512 _InputIterator)): Remove.
513 * include/bits/basic_string.tcc (assign(const basic_string&,
514 size_type, size_type)): Move inline.
515 (replace(size_type, size_type, const basic_string&,
516 size_type, size_type)): Ditto.
517 (_M_replace_dispatch(iterator, iterator, _InputIterator,
518 _InputIterator, __false_type)): Define, now does also what
519 _M_replace did before.
520 * src/string-inst.cc (_M_replace): Don't instantiate.
522 * include/bits/basic_string.tcc (find(const _CharT*,
523 size_type, size_type)): Tidy.
524 (rfind(_CharT, size_type)): Ditto.
525 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
526 (find_first_not_of(_CharT, size_type)): Ditto.
527 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
528 (find_last_not_of(_CharT, size_type)): Ditto.
530 2004-01-23 Paolo Carlini <pcarlini@suse.de>
533 * include/debug/bitset (operator|=): Fix typo.
534 * testsuite/23_containers/bitset/operations/13838.cc: New.
536 2004-01-23 Paolo Carlini <pcarlini@suse.de>
538 * include/bits/basic_string.tcc (insert(size_type,
539 const _CharT*, size_type __n)): Fix length_error check.
540 (replace(size_type, size_type, const _CharT*, size_type):
541 Ditto; call _M_replace_safe.
542 (_M_replace_aux(size_type, size_type, size_type, _CharT):
543 Fix length_error check.
544 (_M_replace(iterator, iterator, _InputIterator,
545 _InputIterator)): Ditto, tweak.
546 (_M_replace_safe(size_type, size_type, const _CharT*,
547 size_type)): Remove length_error check.
549 * include/bits/basic_string.tcc (append(const basic_string&),
550 append(const basic_string&, size_type, size_type)): Tweak
553 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
554 size_type)): If __n == 0 don't call traits::copy.
556 2004-01-23 Stefan Olsson <stefan@snon.net>
558 * include/ext/mt_allocator.h: Reduce lock contention.
560 2004-01-23 Paolo Carlini <pcarlini@suse.de>
563 * include/bits/fstream.tcc (underflow): Remove unused
565 * include/bits/streambuf_iterator.h (equal): Ditto.
566 * include/bits/locale_facets.h (_M_convert_from_char):
569 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
572 * config/linker-map.gnu (nan): Delete.
573 * libmath/mathconf.h (NAN, nan): Delete.
574 * linkage.m4 (nan): Don't check for it.
575 * libmath/nan.c: Delete file.
577 * config.h.in, configure: Regenerate.
579 2004-01-23 Paolo Carlini <pcarlini@suse.de>
581 * include/bits/basic_string.h (push_back(_CharT)):
583 (insert(size_type, const basic_string&)): Trivial tweak.
584 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
585 (insert(iterator, _CharT)): Ditto.
586 (erase(size_type, size_type)): Ditto.
587 (erase(iterator)): Ditto.
588 (erase(iterator, iterator)): Ditto.
589 (replace(size_type, size_type, size_type, _CharT)): Ditto.
591 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
594 * testsuite/performance/allocator_map_thread.cc: New test.
596 2004-01-22 Paolo Carlini <pcarlini@suse.de>
598 * include/bits/locale_facets.tcc
599 (money_put::do_put(..., long double)): Use the basic_string
600 constructor for char arrays, not that for C-strings, to pass
601 __digits to do_put(..., const string_type&): __ws isn't
604 2004-01-22 Paolo Carlini <pcarlini@suse.de>
606 * include/bits/basic_string.h (_M_replace_safe): Change
607 signatures to take size_types and const _CharT*.
608 (_M_replace_aux): Likewise, takes size_types instead of
610 (append(size_type, _CharT)): Update call.
611 (assign(size_type, _CharT)): Ditto.
612 (replace(iterator, iterator, size_type, _CharT)): Ditto.
613 (_M_replace_dispatch(iterator, iterator, _Integer,
614 _Integer, __true_type)): Ditto.
615 * include/bits/basic_string.tcc (assign(const _CharT*,
617 (insert(size_type, const _CharT*, size_type)): Ditto.
618 (replace(size_type, size_type, const _CharT*,
620 (_M_replace(iterator, iterator, _InputIterator,
621 _InputIterator)): Ditto.
622 (append(const basic_string&)): Ditto.
623 (append(const basic_string&, size_type, size_type): Ditto.
624 (append(const _CharT*, size_type): Ditto.
625 (_M_replace_safe, _M_replace_safe): Change definitions
626 accordingly, simplify.
627 * string-inst.cc (_M_replace_safe): Don't instantiate.
629 2004-01-21 Paolo Carlini <pcarlini@suse.de>
631 * include/bits/basic_string.tcc (append(const basic_string&)):
632 Revert previous change.
633 (append(const basic_string&, size_type, size_type)): Revert
634 previous change, use _M_check and _M_limit.
636 2004-01-21 Paolo Carlini <pcarlini@suse.de>
638 * include/bits/basic_string.h (_M_check): Change to return
639 a checked __pos and take an additional const char* argument.
640 (_M_fold): Rename to _M_limit, change to return a size_type,
641 corresponding to the __off limited to the actual length.
642 (insert(size_type, size_type, _CharT)): Update call, call
644 (insert(iterator, _CharT)): Call replace(iterator, iterator,
645 size_type, _CharT) instead.
646 (erase(size_type, size_type)): Update calls.
647 (replace(size_type, size_type, size_type, _CharT)): Ditto.
648 (substr(size_type, size_type)): Use _M_check.
649 * include/bits/basic_string.tcc (basic_string(const basic_string&,
650 size_type, size_type)): Update calls.
651 (basic_string(const basic_string&, size_type, size_type,
652 const _Alloc&)): Ditto.
653 (assign(const basic_string&, size_type, size_type)): Use the
654 new _M_check and _M_limit.
655 (insert(size_type, const basic_string&, size_type, size_type):
657 (insert(size_type, const _CharT*, size_type)): Ditto.
658 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
659 (replace(size_type, size_type, const basic_string&,
660 size_type, size_type)): Ditto.
661 (append(const basic_string&)): Ditto.
662 (append(const basic_string&, size_type, size_type)): Ditto.
663 (copy(_CharT*, size_type, size_type)): Ditto.
664 (compare(size_type, size_type, const basic_string&)): Ditto.
665 (compare(size_type, size_type, const basic_string&,size_type,
667 (compare(size_type, size_type, const _CharT*)): Ditto.
668 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
670 2004-01-19 Stefan Olsson <stefan@snon.net>
672 * include/ext/mt_allocator.h: If a thread, when it dies, still has
673 memory on it's freelist this memory is not returned to global
674 list. Simplification of deallocate so that memory is always
675 returned to the calling thread id's freelist instead of to
676 global. Fix typos. Add volatile where appropriate.
678 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
680 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
681 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
682 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
684 2004-01-19 Paolo Carlini <pcarlini@suse.de>
686 * src/debug.cc: Make sure all the names are prefixed with
687 double (or single) underscore.
689 2004-01-19 Paolo Carlini <pcarlini@suse.de>
691 * src/debug.cc: Trivial formatting change.
693 2004-01-19 Paolo Carlini <pcarlini@suse.de>
695 * include/bits/basic_string.tcc (_S_construct(size_type,
696 _CharT, const _Alloc&)): Remove redundant try/catch.
697 (_M_mutate(size_type, size_type, size_type)): Ditto.
698 (_M_clone(const _Alloc&, size_type)): Ditto.
700 2004-01-18 Paolo Carlini <pcarlini@suse.de>
702 * include/bits/basic_string.h (c_str()): Simplify, due to
703 21.3.4 the internal representation is always kept null-terminated.
704 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
705 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
706 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
709 2004-01-18 Paolo Carlini <pcarlini@suse.de>
711 * include/bits/basic_string.h (append(size_type, _CharT)):
712 Moved inline, just call _M_replace_aux, no source iterators at
713 risk of being clobbered.
714 (assign(size_type, _CharT)): Call directly _M_replace_aux.
715 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
716 input_iterator_tag)): Remove fifth unused argument.
717 (_M_replace_dispatch(iterator, iterator, _InputIterator,
718 _InputIterator, __false_type)): Update call.
719 * include/bits/basic_string.tcc (replace(size_type, size_type,
720 const _CharT*, size_type)): Update call.
721 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
722 throw string literal.
723 (_M_replace_safe(iterator, iterator, _ForwardIterator,
724 _ForwardIterator)): Likewise.
725 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
726 input_iterator_tag)): Remove fifth unused argument.
727 (append(size_type __n, _CharT __c)): Move inline.
728 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
729 const C*, const C*, input_iterator_tag)): Remove fifth unused
732 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
734 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
735 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
737 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
739 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
742 2004-01-15 Stefan Olsson <stefan@snon.net>
744 * include/ext/mt_allocator.h: Reuse thread id's as soon as
745 possible by changing the behaviour of thread_freelist to do
746 push_front when threads die instead of push_back.
748 2004-01-14 Paolo Carlini <pcarlini@suse.de>
750 * include/bits/locale_facets.h (struct __numpunct_cache):
751 Add member _M_grouping_size, caching the length of _M_grouping.
752 (__numpunct_cache<>::_M_cache): Assign the latter.
753 (__verify_grouping): Move declaration...
754 * include/bits/locale_facets.tcc (__verify_grouping):
755 ... here, change signature to take a const char* and a size_t
756 for the grouping; not a template anymore.
757 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
758 Likewise change signature and tweak consistently.
759 (num_get::_M_extract_float, num_get::_M_extract_int,
760 num_put::_M_insert_int, num_put::_M_insert_float,
761 money_get::do_get(string_type&), money_get::do_put(string_type)):
763 * config/locale/generic/numeric_members.cc
764 (numpunct<>::_M_initialize_numpunct): Assign the new member.
765 * config/locale/gnu/numeric_members.cc
766 (numpunct<>::_M_initialize_numpunct): Likewise.
767 * src/locale-inst.cc (__add_grouping): Tweak signature.
768 (__verify_grouping): Don't instantiate, not a template anymore.
770 * include/bits/locale_facets.h: Rename _M_truename_len ->
771 _M_truename_size, _M_falsename_len -> _M_falsename_size.
772 * include/bits/locale_facets.tcc: Likewise.
773 * config/locale/generic/numeric_members.cc: Likewise.
774 * config/locale/gnu/numeric_members.cc: Likewise.
776 2004-01-14 Stefan Olsson <stefan@snon.net>
778 * include/ext/mt_allocator.h: Fixups.
779 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
780 * testsuite/performance/allocator_thread.cc: Same.
782 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
784 * testsuite/performance/ifstream_extract_float.cc: Add higher
786 * testsuite/performance/ofstream_insert_float.cc: Same.
788 2004-01-13 Paolo Carlini <pcarlini@suse.de>
790 * src/locale-misc-inst.cc (__convert_from_v(long),
791 __convert_from_v(unsigned long), __convert_from_v(long long),
792 __convert_from_v(unsigned long long)): Remove, unused.
794 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
796 * testsuite/performance/ifstream_extract_float.cc: New.
797 * testsuite/performance/ofstream_insert_float.cc: Float generation
800 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
801 * 20_util/auto_ptr/1.cc: ...this.
802 * 20_util/auto_ptr/2.cc: Same.
803 * 20_util/auto_ptr/3.cc: Same.
804 * 20_util/auto_ptr/3946.cc: Same.
805 * 20_util/auto_ptr/4.cc: Same.
806 * 20_util/auto_ptr/5.cc: Same.
807 * 20_util/auto_ptr/6.cc: Same.
808 * 20_util/auto_ptr/7.cc: Same.
809 * 20_util/auto_ptr/assign_neg.cc
810 * 20_util/pairs.cc: Break into...
811 * 20_util/pair/1.cc: ...this.
812 * 20_util/pair/2.cc: Same.
813 * 20_util/pair/3.cc: Same.
814 * 20_util/pair/4.cc: Same.
816 2004-01-13 Paolo Carlini <pcarlini@suse.de>
818 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
819 Set correctly just basefield, the only group that matters.
821 2004-01-13 Paolo Carlini <pcarlini@suse.de>
823 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
824 (_Rope_rep_base): Inherit directly from the rope allocator;
825 use rebinding instead of _Alloc_traits; pick up data member
826 from _Rope_rep_alloc_base.
827 (_Rope_alloc_base): Eliminate.
828 (_Rope_base): Inherit directly from the rope allocator; use
829 rebinding instead of _Alloc_traits; pick up data member from
831 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
832 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
834 2004-01-13 Paolo Carlini <pcarlini@suse.de>
837 * include/bits/basic_string.tcc (compare(size_type, size_type,
838 const _CharT*, size_type)): Implement correctly the resolution
839 of DR 5: basically, s is a char array, -not- a C string.
840 * include/bits/basic_string.h: Tweak some comments.
841 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
842 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
844 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
846 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
849 2004-01-12 Paolo Carlini <pcarlini@suse.de>
851 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
853 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
856 2004-01-12 Paolo Carlini <pcarlini@suse.de>
858 * include/bits/locale_facets.h (struct __numpunct_cache):
859 Add members _M_truename_len and _M_falsename_len, caching
860 the lengths of _M_truename and _M_falsename.
861 (__numpunct_cache<>::_M_cache): Assign the latter.
862 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
863 num_put::do_put(bool)): Use the new members, thus avoiding
864 computing string lengths again and again.
865 * config/locale/generic/numeric_members.cc
866 (numpunct<>::_M_initialize_numpunct): Assign the new members.
867 * config/locale/gnu/numeric_members.cc
868 (numpunct<>::_M_initialize_numpunct): Likewise.
870 2004-01-12 Mark Mitchell <mark@codesourcery.com>
872 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
873 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
875 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
876 and remove Cygwin XFAIL.
877 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
878 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
879 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
880 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
882 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
883 * testsuite/27_io/objects/char/7.cc: Likewise.
884 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
885 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
886 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
888 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
890 * include/std/std_complex.h (std::complex<>::real): Return a
891 reference. Add non-const overload.
892 (std::complex<>::real): Likewise.
893 (std::real): Likewise.
894 (std::imag): Likewise.
895 (std::operator+): Tidy.
896 (std::operator-): Likewise.
897 (std::operator*): Likewise.
898 (std::operator/): Likewise.
899 (std::operator>>): Likewise.
901 2004-01-11 Paolo Carlini <pcarlini@suse.de>
904 * include/bits/fstream.tcc (imbue): Exploit the external
905 buffer to imbue 'on the fly' a new locale and convert its
906 remainder with the new codecvt facet.
907 (underflow): Tweak slightly to deal with this special case.
908 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
909 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
910 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
911 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
912 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
914 2004-01-10 Paolo Carlini <pcarlini@suse.de>
916 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
919 2004-01-10 Paolo Carlini <pcarlini@suse.de>
922 * include/bits/locale_classes.h (class locale): Fix category
924 * testsuite/22_locale/locale/13630.cc: Add.
926 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
928 * include/bits/locale_facets.h: Make a name really dependent. This
929 will be needed when Core Issue 224 is implemented.
931 2004-01-09 Paolo Carlini <pcarlini@suse.de>
933 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
934 * testsuite/performance/allocator_thread.cc: Likewise.
936 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
938 * crossconfig.m4: Add LFS, io bits to linux cross config.
939 * acconfig.h: Remove obsolete bits, reorder.
940 * config.h.in: Regenerate.
944 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
946 * include/bits/stl_list.h:
947 * include/bits/list.tc:
949 Performance enhancements for destructor, push_front(),
950 push_back(), pop_front(), pop_back(), sort()
951 Eliminated static_casts where possible.
952 Moved code out of header files into new src/list.cc
953 implementation file for library where possible.
954 Remove inheritance from iterator class and create separate
955 classes for non-constant and constant iterators.
956 * include/bits/stl_tree.h (_Rb_tree class):
958 Only erase contents in destructor.
959 Eliminate unnecessary initialization in assignment operator.
960 Optimize for the nominal case by not checking whether
961 container is empty in clear().
962 Re-order test in _M_insert() to improve performance.
963 Move initialization of new node's left & right pointers to
964 src/tree.cc to where new node's colour is initialized
965 and to reduce the amount of inline code.
966 Use _M_leftmost() and _M_end() to improve readability where
968 Create separate classes for non-constant and constant
969 iterators to clarify code, avoid extra template parameters and
970 casting away constness.
972 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
974 * src/Makefile.am (sources): Add list.cc, tree.cc.
975 * src/stl_tree.cc: Move to...
976 * src/tree.cc: ...here.
978 * config/linker-map.gnu: Tweaks.
979 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
980 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
982 * bits/stl_vector.h: Column wrap comments.
984 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
986 (re-open) PR libstdc++/12658
987 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
988 (locale::global): Likewise.
990 2004-01-07 Paolo Carlini <pcarlini@suse.de>
992 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
993 Remove redundant #include.
994 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
995 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
996 re-enable normal testing.
997 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
999 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1000 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
1002 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
1004 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
1006 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
1008 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
1010 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
1012 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
1014 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1015 More properly, #include <locale>.
1016 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1017 Remove redundant #include.
1018 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
1019 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
1020 redundant DejaGnu directive.
1021 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
1024 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
1025 Stefan Olsson <stefan@snon.net>
1027 * scripts/check_performance: Use -pthread.
1028 * testsuite/performance/allocator.cc: Tweaks, add list.
1029 * testsuite/performance/allocator_thread.cc: New.
1031 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
1033 * include/bits/locale_facets.h: Document public classes and
1035 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1038 2004-01-06 Paolo Carlini <pcarlini@suse.de>
1040 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
1041 Remove redundant #includes.
1042 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
1044 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
1046 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1047 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1048 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1049 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1050 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1051 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1052 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1053 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1054 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1055 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1056 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1057 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1058 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1059 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1060 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
1062 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
1064 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
1066 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
1068 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
1070 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1071 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1072 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1074 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1076 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1077 Remove redundant #includes.
1078 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1080 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1082 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1084 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1086 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1088 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1090 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1092 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1094 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1096 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1098 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1100 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1103 2004-01-04 Mark Mitchell <mark@codesourcery.com>
1106 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
1108 * testsuite/27_io/basic_fstream/4.cc: Likewise.
1109 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
1110 * testsuite/27_io/basic_ios/4.cc: Likewise.
1111 * testsuite/27_io/basic_iostream/4.cc: Likewise.
1112 * testsuite/27_io/basic_istream/4.cc: Likewise.
1113 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
1114 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
1115 * testsuite/27_io/basic_ostream/4.cc: Likewise.
1116 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
1117 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
1118 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
1120 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1122 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
1123 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
1124 always use double underscored names.
1125 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
1127 * include/bits/locale_facets.h (struct __numpunct_cache):
1128 Dimension _M_atoms_out and _M_atoms_in one position smaller.
1129 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out