1 2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
3 * include/ext/debug_allocator.h: _M_extra now stands for the
4 number of extra objects instead of the number of extra bytes.
5 (debug_allocator::allocate): Adjust.
6 (debug_allocator::deallocate): Adjust.
8 * include/ext/pool_allocator.h: Fix typo.
10 2004-02-03 Felix Yen <fwy@alumni.brown.edu>
11 Benjamin Kosnik <bkoz@redhat.com>
13 * testsuite/performance/20_util/allocator.cc: Add map,
15 * testsuite/performance/20_util/allocator_thread.cc: Same.
17 2004-02-03 Paolo Carlini <pcarlini@suse.de>
19 * include/bits/basic_string.h (insert(iterator)): Remove,
20 non-standard and already scheduled for removal.
22 2004-02-03 Paolo Carlini <pcarlini@suse.de>
24 * include/bits/stl_iterator_base_funcs.h: Minor formatting
25 and indentation tweaks.
26 * include/bits/stl_iterator_base_types.h: Likewise.
27 * include/bits/stl_list.h: Likewise.
28 * include/bits/stl_map.h: Likewise.
29 * include/bits/stl_tempbuf.h: Likewise.
31 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
33 * include/bits/gslice.h, include/bits/gslice_array.h,
34 include/bits/indirect_array.h, include/bits/mask_array.h,
35 include/bits/slice_array.h, include/bits/stl_numeric.h,
36 include/std/std_valarray.h: Update copyright years.
38 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
40 * include/bits/gslice.h (gslice): Document.
41 * include/bits/gslice_array.h (gslice_array): Document.
42 * include/bits/indirect_array (indirect_array): Document.
43 * include/bits/mask_array (mask_array): Document.
44 * include/bits/slice_array.h (slice,slice_array): Document.
45 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
46 adjacent_difference): Document
47 * include/std/std_valarray.h (valarray): Document.
49 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
51 * docs/html/19_diagnostics/howto.html: Move verbose terminate
53 * docs/html/18_support/howto.html: Here.
54 * docs/html/documentation.html: Add reference here.
56 2004-02-02 Paolo Carlini <pcarlini@suse.de>
58 * config/locale/gnu/c++locale_internal.h: Remove prototypes
59 of no longer used GLIBC thread locale functions.
61 2004-02-02 Eric Christopher <echristo@redhat.com>
62 Zack Weinberg <zack@codesourcery.com>
64 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
66 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
67 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
68 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
69 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
70 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
71 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
72 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
73 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
76 2004-02-02 Paolo Carlini <pcarlini@suse.de>
78 * include/bits/stl_function.h: Additional minor tweaks.
79 * include/bits/stl_multiset.h: Likewise.
81 * include/bits/stl_queue.h: Minor tweaks.
83 2004-02-02 Paolo Carlini <pcarlini@suse.de>
85 PR libstdc++/13976 (continued)
86 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
87 Make the second parameter unnamed, to void unused parameter
89 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
91 2004-02-02 Paolo Carlini <pcarlini@suse.de>
94 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
95 Make the second parameter unnamed, to void unused parameter
97 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
98 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
100 2004-02-01 Paolo Carlini <pcarlini@suse.de>
102 * include/bits/stl_algo.h: Additional minor tweaks.
103 * include/bits/stl_map.h: Likewise.
104 * include/bits/stl_multimap.h: Likewise.
105 * include/bits/stl_multiset.h: Likewise.
106 * include/bits/stl_set.h: Likewise.
107 * include/bits/stl_tree.h: Likewise.
109 2004-02-01 Paolo Carlini <pcarlini@suse.de>
111 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
114 2004-02-01 Paolo Carlini <pcarlini@suse.de>
116 * include/bits/stl_function.h: Additional minor tweaks.
118 2004-02-01 Paolo Carlini <pcarlini@suse.de>
120 * include/bits/deque.tcc: Wrap overlong lines, constify
121 a few variables, reformat according to the coding standards.
122 * include/bits/list.tcc: Likewise.
123 * include/bits/stl_deque.h: Likewise.
124 * include/bits/stl_function.h: Likewise.
125 * include/bits/stl_iterator.h: Likewise.
126 * include/bits/stl_iterator_base_funcs.h: Likewise.
127 * include/bits/stl_iterator_base_types.h: Likewise.
128 * include/bits/stl_list.h: Likewise.
129 * include/bits/stl_map.h: Likewise.
130 * include/bits/stl_multimap.h: Likewise.
131 * include/bits/stl_multiset.h: Likewise.
132 * include/bits/stl_relops.h: Likewise.
133 * include/bits/stl_set.h: Likewise.
135 2004-02-01 Paolo Carlini <pcarlini@suse.de>
137 * include/bits/stl_bvector.h: Wrap overlong lines, constify
138 a few variables, reformat according to the coding standards.
139 * include/bits/stl_tree.h: Likewise.
141 2004-01-31 Paolo Carlini <pcarlini@suse.de>
143 * include/bits/stl_algo.h: Minor additional reformat, add
145 * include/bits/stl_algobase.h: Add copyright year.
147 2004-01-31 Paolo Carlini <pcarlini@suse.de>
149 * include/bits/stl_algo.h: Wrap overlong lines, constify
150 a few variables, reformat according to the coding standards.
151 * include/bits/stl_algobase.h: Likewise.
152 * include/bits/stl_heap.h: Likewise.
154 2004-01-31 Paolo Carlini <pcarlini@suse.de>
156 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
158 * include/bits/basic_string.h: Fix two comments.
160 2004-01-31 Per Bothner <per@bothner.com>
162 * include/ext/mt_allocator.h
163 (__mt_alloc::_S_thread_freelist_mutex): Guard with
164 __GTHREAD_MUTEX_INIT.
166 2004-01-31 Paolo Carlini <pcarlini@suse.de>
168 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
170 2004-01-30 Paolo Carlini <pcarlini@suse.de>
172 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
173 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
174 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
176 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
178 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
179 Don't use clear, but instead assign. Use insert.
181 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
183 * src/demangle.cc: Add instantiations.
184 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
185 * src/Makefile.in: Regenerate.
187 2004-01-30 David Edelsohn <edelsohn@gnu.org>
189 * src/allocator.cc: Protect _S_get_thread_id() and
190 _S_thread_key_destr() with #ifdef __GTHREADS.
192 2004-01-30 Paolo Carlini <pcarlini@suse.de>
194 Reshuffle performance testsuite.
195 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
196 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
197 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
198 fstream_seek_write.cc, ifstream_extract_float.cc,
199 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
200 list_create_fill_sort.cc, map_create_fill.cc,
201 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
202 ofstream_insert_float.cc, ofstream_insert_int.cc,
203 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
204 wchar_t_out.cc: Split into...
205 * testsuite/performance/20_util/allocator.cc: New.
206 * testsuite/performance/20_util/allocator_map_thread.cc: New.
207 * testsuite/performance/20_util/allocator_thread.cc: New.
208 * testsuite/performance/21_strings/string_append: New.
209 * testsuite/performance/22_locale/is_wchar_t.cc: New.
210 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
211 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
212 * testsuite/performance/22_locale/wchar_t_in.cc: New.
213 * testsuite/performance/22_locale/wchar_t_length.cc: New.
214 * testsuite/performance/22_locale/wchar_t_out.cc: New.
215 * testsuite/performance/23_containers/container_benchmark.cc: New.
216 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
217 * testsuite/performance/23_containers/map_create_fill.cc: New.
218 * testsuite/performance/26_numerics/complex_norm.cc: New.
219 * testsuite/performance/27_io/cout_insert_int.cc: New.
220 * testsuite/performance/27_io/filebuf_copy.cc: New.
221 * testsuite/performance/27_io/filebuf_sputc.cc: New.
222 * testsuite/performance/27_io/fstream_seek_write.cc: New.
223 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
224 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
225 * testsuite/performance/27_io/ifstream_getline.cc: New.
226 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
227 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
229 2004-01-30 Paolo Carlini <pcarlini@suse.de>
231 * include/bits/basic_string.tcc (_Rep::_S_create):
232 Never allocate a string bigger than max_size(); always keep
233 __capacity and __size in sync to avoid memory leaks at
236 2004-01-30 Paolo Carlini <pcarlini@suse.de>
238 * include/bits/basic_string.tcc (_S_construct(_InIterator,
239 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
240 the double loop, streamline.
242 * include/bits/basic_string.tcc: Very minor tweaks.
244 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
246 * scripts/check_performance: Only compile with $THREAD_FLAG
247 when test is marked to require it. Allow multiple
248 compilations/executions of marked tests.
249 * testsuite/testsuite_performance.h (report_performance):
250 Report dynamic thread support status.
251 (report_header): Likewise.
252 * testsuite/performance/allocator.cc: Stabilize iteration
253 count. Support more allocators. Mark each allocator test to
254 run and report independently.
255 * testsuite/performance/allocator_map_thread.cc: Likewise.
256 * testsuite/performance/allocator_thread.cc: Likewise.
258 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
260 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
261 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
262 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
263 std::get_temporary_buffer() instead of duplicating its code.
264 Update to C++STYLE conventions.
265 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
266 new() instead of std::malloc().
267 (return_temporary_buffer): Use ::operator delete() instead of
270 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
272 * include/bits/allocator.h: Temporary switch to new_allocator as
273 the default to unjam bootstraps.
275 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
277 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
278 * include/Makefile.in: Regenerate.
279 * include/bits/allocator_traits.h: Remove.
280 * include/bits/allocator.h: Remove allocator_traits.h include, and
282 (allocator): Empty base class, inherit from the underlying allocator.
283 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
284 * src/allocator.cc: ...here. New. For the underlying allocators.
285 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
286 * config/linker-map.gnu: Remove __pool_alloc bits.
287 * src/Makefile.am (sources): Add allocator.cc.
288 * src/Makefile.in: Regenerate.
289 * testsuite/20_util/allocator/1.cc: Split second test into...
290 * testsuite/20_util/allocator/8230.cc: ...this.
291 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
292 typedef to use std::allocatore. Format.
293 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
295 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
296 __throw_bad_alloc calls. Don't include <memory>.
297 * include/ext/malloc_allocator.h: Remove <memory> include.
298 * include/ext/new_allocator.h (new_allocator): Same.
299 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
300 declaration. Switch __alloc to _Alloc.
301 * include/ext/hashtable.h: Remove __alloc.
302 * include/backward/alloc.h: Only inject allocator, not
303 implementation details.
305 * include/ext/mt_allocator.h: Replace free with delete.
307 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
309 * src/globals_io.cc: Change to __gnu_internal namespace.
310 * src/globals_locale.cc: Same.
311 * src/locale_init.cc: Same.
312 * src/ios_init.cc: Same.
314 2004-01-28 Stefan Olsson <stefan@snon.net>
316 * include/ext/mt_allocator.h: Replaced all malloc() calls with
317 operator new(). Added support for the env variable
318 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
319 one in allocate() as well). Fix typos.
321 2004-01-28 Paolo Carlini <pcarlini@suse.de>
323 * include/bits/basic_string.h (_S_create(size_t,
324 const _Alloc&): Change signature to take two size_type
326 * include/bits/basic_string.tcc (_S_construct(_InIterator,
327 _InIterator, const _Alloc&, input_iterator_tag)): Update
329 (_S_construct(_InIterator, _InIterator, const _Alloc&,
330 forward_iterator_tag)): Likewise.
331 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
332 (_M_mutate(size_type, size_type, size_type)): Don't
333 implement the exponential growth policy, demand it to
334 _S_create, update call and simplify.
335 (_M_clone(const _Alloc&, size_type)): Likewise.
336 (_S_create(size_type, size_type, const _Alloc&)): Implement
337 the growth policy, simplify otherwise.
339 * include/bits/basic_string.h (_Rep::operator[]): Tweak
340 signature to take a size_type, consistently with the other
343 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
345 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
346 delete declarations, add include and test variable.
348 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
350 * include/bits/codecvt.h, include/bits/locale_facets.h,
351 include/bits/postypes.h, include/bits/stl_bvector.h,
352 include/bits/stl_multiset.h, include/bits/stl_set.h,
353 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
354 include/std/std_complex.h: Document.
356 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
359 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
360 iword/pword selector.
361 (ios_base::iword, ios_base::pword): Use it.
362 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
363 iword or pword member on alloc failure.
364 * testsuite/27_io/ios_base/storage/11584.cc: New test.
366 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
367 PJ Darcy <darcypj@us.ibm.com>
369 * configure.host: Add support for *-tpf.
370 * crossconfig.m4: Likewise.
371 * configure: Regenerate.
372 * config/os/tpf: New directory.
373 * config/os/tpf/os_defines.h: New file.
374 * config/os/tpf/ctype_base.h: Likewise.
375 * config/os/tpf/ctype_inline.h: Likewise.
376 * config/os/tpf/ctype_noninline.h: Likewise.
378 2004-01-27 Paolo Carlini <pcarlini@suse.de>
381 * include/bits/sstream.tcc: Guard use of extern template.
383 2004-01-27 Paolo Carlini <pcarlini@suse.de>
385 * include/bits/basic_string.tcc
386 (basic_string(const basic_string&, size_type, size_type),
387 basic_string(const basic_string&, size_type, size_type,
388 const _Alloc&)): Avoid unnecessarily constructing iterators.
390 2004-01-26 Paolo Carlini <pcarlini@suse.de>
392 * config/locale/generic/c_locale.cc: Fix throw messages
393 to use the __N marker.
394 * config/locale/gnu/c_locale.cc: Likewise.
395 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
397 * docs/html/17_intro/C++STYLE: Likewise.
398 * include/bits/basic_ios.tcc: Likewise.
399 * include/bits/fstream.tcc: Likewise.
400 * include/bits/vector.tcc: Likewise.
401 * include/ext/ropeimpl.h: Likewise.
402 * include/std/std_bitset.h: Likewise.
403 * src/ios.cc: Likewise.
404 * src/locale.cc: Likewise.
405 * src/localename.cc: Likewise.
407 2004-01-26 Paolo Carlini <pcarlini@suse.de>
409 * include/bits/basic_string.h (_M_replace_aux): Use the
410 __N marker in throw message.
411 * include/bits/basic_string.tcc (assign(const _CharT*,
412 size_type), insert(size_type, const _CharT*, size_type),
413 replace(size_type, size_type, const _CharT*, size_type),
414 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
417 * include/bits/basic_string.h, include/bits/basic_string.tcc:
418 Fold overlong lines, minor formatting changes.
420 2004-01-26 Paolo Carlini <pcarlini@suse.de>
422 * include/bits/basic_string.h (replace(iterator, iterator,
423 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
424 (replace(iterator, iterator, const _CharT*)): Ditto.
425 (replace(iterator, iterator, const _CharT*, size_type)):
426 Add missing _GLIBCXX_DEBUG_PEDASSERT.
428 2004-01-26 Paolo Carlini <pcarlini@suse.de>
430 * include/bits/basic_string.tcc (replace(size_type,
431 size_type, const _CharT*, size_type)): Implement optimized
432 in-place algorithm for non-overlapping ranges.
433 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
434 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
436 * include/bits/basic_string.tcc (insert(size_type,
437 const _CharT*, size_type)): Tweak slightly.
439 2004-01-26 Andreas Schwab <schwab@suse.de>
441 * config/locale/gnu/monetary_members.cc: Restore locale before
442 rethrowing exception.
444 2004-01-25 Paolo Carlini <pcarlini@suse.de>
446 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
448 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
451 * include/bits/basic_string.tcc: Very minor tweaks.
453 2004-01-25 Paolo Carlini <pcarlini@suse.de>
455 * testsuite/performance/string_append.cc: Increase number
458 2004-01-25 Paolo Carlini <pcarlini@suse.de>
460 * include/bits/basic_string.h (erase(size_type, size_type),
461 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
462 instead, thus avoiding redundant check for length_error.
464 * include/bits/basic_string.h: Tweak some comments.
466 2004-01-24 Paolo Carlini <pcarlini@suse.de>
468 * include/bits/basic_string.tcc (operator+(const _CharT*,
469 const basic_string&)): No need to go through the append
470 taking two iterators.
472 2004-01-24 Paolo Carlini <pcarlini@suse.de>
474 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
475 Revert last change to use std::min: machine language is worse.
476 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
477 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
478 (find_last_not_of(_CharT, size_type)): Ditto.
480 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
481 size_type)): Discard the value returned by _M_check.
482 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
483 (append(const basic_string&, size_type, size_type)): Ditto.
484 (copy(_CharT*, size_type, size_type)): Ditto.
485 (compare(size_type, size_type, const basic_string&)): Ditto.
486 (compare(size_type, size_type, const basic_string&,
487 size_type, size_type)): Ditto.
488 (compare(size_type, size_type, const _CharT*)): Ditto.
489 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
491 2004-01-24 Paolo Carlini <pcarlini@suse.de>
493 * include/bits/basic_string.h (insert(size_type,
494 const basic_string&, size_type, size_type)): Define inline here.
495 * include/bits/basic_string.tcc (insert(size_type,
496 const basic_string&, size_type, size_type)): Move inline.
498 2004-01-24 Paolo Carlini <pcarlini@suse.de>
500 * include/bits/basic_string.h (assign(const basic_string&,
501 size_type, size_type)): Define inline here.
502 (replace(size_type, size_type, const basic_string&,
503 size_type, size_type)): Ditto.
504 (_M_replace_dispatch(iterator, iterator, _InputIterator,
505 _InputIterator, __false_type)): Only declare.
506 (_M_replace(iterator, iterator, _InputIterator,
507 _InputIterator)): Remove.
508 * include/bits/basic_string.tcc (assign(const basic_string&,
509 size_type, size_type)): Move inline.
510 (replace(size_type, size_type, const basic_string&,
511 size_type, size_type)): Ditto.
512 (_M_replace_dispatch(iterator, iterator, _InputIterator,
513 _InputIterator, __false_type)): Define, now does also what
514 _M_replace did before.
515 * src/string-inst.cc (_M_replace): Don't instantiate.
517 * include/bits/basic_string.tcc (find(const _CharT*,
518 size_type, size_type)): Tidy.
519 (rfind(_CharT, size_type)): Ditto.
520 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
521 (find_first_not_of(_CharT, size_type)): Ditto.
522 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
523 (find_last_not_of(_CharT, size_type)): Ditto.
525 2004-01-23 Paolo Carlini <pcarlini@suse.de>
528 * include/debug/bitset (operator|=): Fix typo.
529 * testsuite/23_containers/bitset/operations/13838.cc: New.
531 2004-01-23 Paolo Carlini <pcarlini@suse.de>
533 * include/bits/basic_string.tcc (insert(size_type,
534 const _CharT*, size_type __n)): Fix length_error check.
535 (replace(size_type, size_type, const _CharT*, size_type):
536 Ditto; call _M_replace_safe.
537 (_M_replace_aux(size_type, size_type, size_type, _CharT):
538 Fix length_error check.
539 (_M_replace(iterator, iterator, _InputIterator,
540 _InputIterator)): Ditto, tweak.
541 (_M_replace_safe(size_type, size_type, const _CharT*,
542 size_type)): Remove length_error check.
544 * include/bits/basic_string.tcc (append(const basic_string&),
545 append(const basic_string&, size_type, size_type)): Tweak
548 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
549 size_type)): If __n == 0 don't call traits::copy.
551 2004-01-23 Stefan Olsson <stefan@snon.net>
553 * include/ext/mt_allocator.h: Reduce lock contention.
555 2004-01-23 Paolo Carlini <pcarlini@suse.de>
558 * include/bits/fstream.tcc (underflow): Remove unused
560 * include/bits/streambuf_iterator.h (equal): Ditto.
561 * include/bits/locale_facets.h (_M_convert_from_char):
564 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
567 * config/linker-map.gnu (nan): Delete.
568 * libmath/mathconf.h (NAN, nan): Delete.
569 * linkage.m4 (nan): Don't check for it.
570 * libmath/nan.c: Delete file.
572 * config.h.in, configure: Regenerate.
574 2004-01-23 Paolo Carlini <pcarlini@suse.de>
576 * include/bits/basic_string.h (push_back(_CharT)):
578 (insert(size_type, const basic_string&)): Trivial tweak.
579 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
580 (insert(iterator, _CharT)): Ditto.
581 (erase(size_type, size_type)): Ditto.
582 (erase(iterator)): Ditto.
583 (erase(iterator, iterator)): Ditto.
584 (replace(size_type, size_type, size_type, _CharT)): Ditto.
586 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
589 * testsuite/performance/allocator_map_thread.cc: New test.
591 2004-01-22 Paolo Carlini <pcarlini@suse.de>
593 * include/bits/locale_facets.tcc
594 (money_put::do_put(..., long double)): Use the basic_string
595 constructor for char arrays, not that for C-strings, to pass
596 __digits to do_put(..., const string_type&): __ws isn't
599 2004-01-22 Paolo Carlini <pcarlini@suse.de>
601 * include/bits/basic_string.h (_M_replace_safe): Change
602 signatures to take size_types and const _CharT*.
603 (_M_replace_aux): Likewise, takes size_types instead of
605 (append(size_type, _CharT)): Update call.
606 (assign(size_type, _CharT)): Ditto.
607 (replace(iterator, iterator, size_type, _CharT)): Ditto.
608 (_M_replace_dispatch(iterator, iterator, _Integer,
609 _Integer, __true_type)): Ditto.
610 * include/bits/basic_string.tcc (assign(const _CharT*,
612 (insert(size_type, const _CharT*, size_type)): Ditto.
613 (replace(size_type, size_type, const _CharT*,
615 (_M_replace(iterator, iterator, _InputIterator,
616 _InputIterator)): Ditto.
617 (append(const basic_string&)): Ditto.
618 (append(const basic_string&, size_type, size_type): Ditto.
619 (append(const _CharT*, size_type): Ditto.
620 (_M_replace_safe, _M_replace_safe): Change definitions
621 accordingly, simplify.
622 * string-inst.cc (_M_replace_safe): Don't instantiate.
624 2004-01-21 Paolo Carlini <pcarlini@suse.de>
626 * include/bits/basic_string.tcc (append(const basic_string&)):
627 Revert previous change.
628 (append(const basic_string&, size_type, size_type)): Revert
629 previous change, use _M_check and _M_limit.
631 2004-01-21 Paolo Carlini <pcarlini@suse.de>
633 * include/bits/basic_string.h (_M_check): Change to return
634 a checked __pos and take an additional const char* argument.
635 (_M_fold): Rename to _M_limit, change to return a size_type,
636 corresponding to the __off limited to the actual length.
637 (insert(size_type, size_type, _CharT)): Update call, call
639 (insert(iterator, _CharT)): Call replace(iterator, iterator,
640 size_type, _CharT) instead.
641 (erase(size_type, size_type)): Update calls.
642 (replace(size_type, size_type, size_type, _CharT)): Ditto.
643 (substr(size_type, size_type)): Use _M_check.
644 * include/bits/basic_string.tcc (basic_string(const basic_string&,
645 size_type, size_type)): Update calls.
646 (basic_string(const basic_string&, size_type, size_type,
647 const _Alloc&)): Ditto.
648 (assign(const basic_string&, size_type, size_type)): Use the
649 new _M_check and _M_limit.
650 (insert(size_type, const basic_string&, size_type, size_type):
652 (insert(size_type, const _CharT*, size_type)): Ditto.
653 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
654 (replace(size_type, size_type, const basic_string&,
655 size_type, size_type)): Ditto.
656 (append(const basic_string&)): Ditto.
657 (append(const basic_string&, size_type, size_type)): Ditto.
658 (copy(_CharT*, size_type, size_type)): Ditto.
659 (compare(size_type, size_type, const basic_string&)): Ditto.
660 (compare(size_type, size_type, const basic_string&,size_type,
662 (compare(size_type, size_type, const _CharT*)): Ditto.
663 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
665 2004-01-19 Stefan Olsson <stefan@snon.net>
667 * include/ext/mt_allocator.h: If a thread, when it dies, still has
668 memory on it's freelist this memory is not returned to global
669 list. Simplification of deallocate so that memory is always
670 returned to the calling thread id's freelist instead of to
671 global. Fix typos. Add volatile where appropriate.
673 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
675 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
676 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
677 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
679 2004-01-19 Paolo Carlini <pcarlini@suse.de>
681 * src/debug.cc: Make sure all the names are prefixed with
682 double (or single) underscore.
684 2004-01-19 Paolo Carlini <pcarlini@suse.de>
686 * src/debug.cc: Trivial formatting change.
688 2004-01-19 Paolo Carlini <pcarlini@suse.de>
690 * include/bits/basic_string.tcc (_S_construct(size_type,
691 _CharT, const _Alloc&)): Remove redundant try/catch.
692 (_M_mutate(size_type, size_type, size_type)): Ditto.
693 (_M_clone(const _Alloc&, size_type)): Ditto.
695 2004-01-18 Paolo Carlini <pcarlini@suse.de>
697 * include/bits/basic_string.h (c_str()): Simplify, due to
698 21.3.4 the internal representation is always kept null-terminated.
699 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
700 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
701 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
704 2004-01-18 Paolo Carlini <pcarlini@suse.de>
706 * include/bits/basic_string.h (append(size_type, _CharT)):
707 Moved inline, just call _M_replace_aux, no source iterators at
708 risk of being clobbered.
709 (assign(size_type, _CharT)): Call directly _M_replace_aux.
710 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
711 input_iterator_tag)): Remove fifth unused argument.
712 (_M_replace_dispatch(iterator, iterator, _InputIterator,
713 _InputIterator, __false_type)): Update call.
714 * include/bits/basic_string.tcc (replace(size_type, size_type,
715 const _CharT*, size_type)): Update call.
716 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
717 throw string literal.
718 (_M_replace_safe(iterator, iterator, _ForwardIterator,
719 _ForwardIterator)): Likewise.
720 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
721 input_iterator_tag)): Remove fifth unused argument.
722 (append(size_type __n, _CharT __c)): Move inline.
723 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
724 const C*, const C*, input_iterator_tag)): Remove fifth unused
727 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
729 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
730 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
732 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
734 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
737 2004-01-15 Stefan Olsson <stefan@snon.net>
739 * include/ext/mt_allocator.h: Reuse thread id's as soon as
740 possible by changing the behaviour of thread_freelist to do
741 push_front when threads die instead of push_back.
743 2004-01-14 Paolo Carlini <pcarlini@suse.de>
745 * include/bits/locale_facets.h (struct __numpunct_cache):
746 Add member _M_grouping_size, caching the length of _M_grouping.
747 (__numpunct_cache<>::_M_cache): Assign the latter.
748 (__verify_grouping): Move declaration...
749 * include/bits/locale_facets.tcc (__verify_grouping):
750 ... here, change signature to take a const char* and a size_t
751 for the grouping; not a template anymore.
752 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
753 Likewise change signature and tweak consistently.
754 (num_get::_M_extract_float, num_get::_M_extract_int,
755 num_put::_M_insert_int, num_put::_M_insert_float,
756 money_get::do_get(string_type&), money_get::do_put(string_type)):
758 * config/locale/generic/numeric_members.cc
759 (numpunct<>::_M_initialize_numpunct): Assign the new member.
760 * config/locale/gnu/numeric_members.cc
761 (numpunct<>::_M_initialize_numpunct): Likewise.
762 * src/locale-inst.cc (__add_grouping): Tweak signature.
763 (__verify_grouping): Don't instantiate, not a template anymore.
765 * include/bits/locale_facets.h: Rename _M_truename_len ->
766 _M_truename_size, _M_falsename_len -> _M_falsename_size.
767 * include/bits/locale_facets.tcc: Likewise.
768 * config/locale/generic/numeric_members.cc: Likewise.
769 * config/locale/gnu/numeric_members.cc: Likewise.
771 2004-01-14 Stefan Olsson <stefan@snon.net>
773 * include/ext/mt_allocator.h: Fixups.
774 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
775 * testsuite/performance/allocator_thread.cc: Same.
777 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
779 * testsuite/performance/ifstream_extract_float.cc: Add higher
781 * testsuite/performance/ofstream_insert_float.cc: Same.
783 2004-01-13 Paolo Carlini <pcarlini@suse.de>
785 * src/locale-misc-inst.cc (__convert_from_v(long),
786 __convert_from_v(unsigned long), __convert_from_v(long long),
787 __convert_from_v(unsigned long long)): Remove, unused.
789 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
791 * testsuite/performance/ifstream_extract_float.cc: New.
792 * testsuite/performance/ofstream_insert_float.cc: Float generation
795 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
796 * 20_util/auto_ptr/1.cc: ...this.
797 * 20_util/auto_ptr/2.cc: Same.
798 * 20_util/auto_ptr/3.cc: Same.
799 * 20_util/auto_ptr/3946.cc: Same.
800 * 20_util/auto_ptr/4.cc: Same.
801 * 20_util/auto_ptr/5.cc: Same.
802 * 20_util/auto_ptr/6.cc: Same.
803 * 20_util/auto_ptr/7.cc: Same.
804 * 20_util/auto_ptr/assign_neg.cc
805 * 20_util/pairs.cc: Break into...
806 * 20_util/pair/1.cc: ...this.
807 * 20_util/pair/2.cc: Same.
808 * 20_util/pair/3.cc: Same.
809 * 20_util/pair/4.cc: Same.
811 2004-01-13 Paolo Carlini <pcarlini@suse.de>
813 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
814 Set correctly just basefield, the only group that matters.
816 2004-01-13 Paolo Carlini <pcarlini@suse.de>
818 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
819 (_Rope_rep_base): Inherit directly from the rope allocator;
820 use rebinding instead of _Alloc_traits; pick up data member
821 from _Rope_rep_alloc_base.
822 (_Rope_alloc_base): Eliminate.
823 (_Rope_base): Inherit directly from the rope allocator; use
824 rebinding instead of _Alloc_traits; pick up data member from
826 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
827 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
829 2004-01-13 Paolo Carlini <pcarlini@suse.de>
832 * include/bits/basic_string.tcc (compare(size_type, size_type,
833 const _CharT*, size_type)): Implement correctly the resolution
834 of DR 5: basically, s is a char array, -not- a C string.
835 * include/bits/basic_string.h: Tweak some comments.
836 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
837 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
839 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
841 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
844 2004-01-12 Paolo Carlini <pcarlini@suse.de>
846 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
848 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
851 2004-01-12 Paolo Carlini <pcarlini@suse.de>
853 * include/bits/locale_facets.h (struct __numpunct_cache):
854 Add members _M_truename_len and _M_falsename_len, caching
855 the lengths of _M_truename and _M_falsename.
856 (__numpunct_cache<>::_M_cache): Assign the latter.
857 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
858 num_put::do_put(bool)): Use the new members, thus avoiding
859 computing string lengths again and again.
860 * config/locale/generic/numeric_members.cc
861 (numpunct<>::_M_initialize_numpunct): Assign the new members.
862 * config/locale/gnu/numeric_members.cc
863 (numpunct<>::_M_initialize_numpunct): Likewise.
865 2004-01-12 Mark Mitchell <mark@codesourcery.com>
867 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
868 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
870 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
871 and remove Cygwin XFAIL.
872 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
873 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
874 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
875 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
877 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
878 * testsuite/27_io/objects/char/7.cc: Likewise.
879 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
880 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
881 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
883 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
885 * include/std/std_complex.h (std::complex<>::real): Return a
886 reference. Add non-const overload.
887 (std::complex<>::real): Likewise.
888 (std::real): Likewise.
889 (std::imag): Likewise.
890 (std::operator+): Tidy.
891 (std::operator-): Likewise.
892 (std::operator*): Likewise.
893 (std::operator/): Likewise.
894 (std::operator>>): Likewise.
896 2004-01-11 Paolo Carlini <pcarlini@suse.de>
899 * include/bits/fstream.tcc (imbue): Exploit the external
900 buffer to imbue 'on the fly' a new locale and convert its
901 remainder with the new codecvt facet.
902 (underflow): Tweak slightly to deal with this special case.
903 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
904 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
905 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
906 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
907 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
909 2004-01-10 Paolo Carlini <pcarlini@suse.de>
911 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
914 2004-01-10 Paolo Carlini <pcarlini@suse.de>
917 * include/bits/locale_classes.h (class locale): Fix category
919 * testsuite/22_locale/locale/13630.cc: Add.
921 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
923 * include/bits/locale_facets.h: Make a name really dependent. This
924 will be needed when Core Issue 224 is implemented.
926 2004-01-09 Paolo Carlini <pcarlini@suse.de>
928 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
929 * testsuite/performance/allocator_thread.cc: Likewise.
931 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
933 * crossconfig.m4: Add LFS, io bits to linux cross config.
934 * acconfig.h: Remove obsolete bits, reorder.
935 * config.h.in: Regenerate.
939 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
941 * include/bits/stl_list.h:
942 * include/bits/list.tc:
944 Performance enhancements for destructor, push_front(),
945 push_back(), pop_front(), pop_back(), sort()
946 Eliminated static_casts where possible.
947 Moved code out of header files into new src/list.cc
948 implementation file for library where possible.
949 Remove inheritance from iterator class and create separate
950 classes for non-constant and constant iterators.
951 * include/bits/stl_tree.h (_Rb_tree class):
953 Only erase contents in destructor.
954 Eliminate unnecessary initialization in assignment operator.
955 Optimize for the nominal case by not checking whether
956 container is empty in clear().
957 Re-order test in _M_insert() to improve performance.
958 Move initialization of new node's left & right pointers to
959 src/tree.cc to where new node's colour is initialized
960 and to reduce the amount of inline code.
961 Use _M_leftmost() and _M_end() to improve readability where
963 Create separate classes for non-constant and constant
964 iterators to clarify code, avoid extra template parameters and
965 casting away constness.
967 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
969 * src/Makefile.am (sources): Add list.cc, tree.cc.
970 * src/stl_tree.cc: Move to...
971 * src/tree.cc: ...here.
973 * config/linker-map.gnu: Tweaks.
974 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
975 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
977 * bits/stl_vector.h: Column wrap comments.
979 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
981 (re-open) PR libstdc++/12658
982 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
983 (locale::global): Likewise.
985 2004-01-07 Paolo Carlini <pcarlini@suse.de>
987 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
988 Remove redundant #include.
989 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
990 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
991 re-enable normal testing.
992 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
994 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
995 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
997 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
999 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
1001 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
1003 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
1005 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
1007 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
1009 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1010 More properly, #include <locale>.
1011 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1012 Remove redundant #include.
1013 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
1014 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
1015 redundant DejaGnu directive.
1016 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
1019 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
1020 Stefan Olsson <stefan@snon.net>
1022 * scripts/check_performance: Use -pthread.
1023 * testsuite/performance/allocator.cc: Tweaks, add list.
1024 * testsuite/performance/allocator_thread.cc: New.
1026 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
1028 * include/bits/locale_facets.h: Document public classes and
1030 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1033 2004-01-06 Paolo Carlini <pcarlini@suse.de>
1035 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
1036 Remove redundant #includes.
1037 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
1039 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
1041 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1042 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1043 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1044 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1045 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1046 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1047 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1048 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1049 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1050 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1051 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1052 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1053 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1054 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1055 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
1057 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
1059 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
1061 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
1063 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
1065 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1066 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1067 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1069 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1071 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1072 Remove redundant #includes.
1073 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1075 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1077 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1079 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1081 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1083 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1085 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1087 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1089 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1091 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1093 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1095 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1098 2004-01-04 Mark Mitchell <mark@codesourcery.com>
1101 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
1103 * testsuite/27_io/basic_fstream/4.cc: Likewise.
1104 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
1105 * testsuite/27_io/basic_ios/4.cc: Likewise.
1106 * testsuite/27_io/basic_iostream/4.cc: Likewise.
1107 * testsuite/27_io/basic_istream/4.cc: Likewise.
1108 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
1109 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
1110 * testsuite/27_io/basic_ostream/4.cc: Likewise.
1111 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
1112 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
1113 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
1115 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1117 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
1118 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
1119 always use double underscored names.
1120 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
1122 * include/bits/locale_facets.h (struct __numpunct_cache):
1123 Dimension _M_atoms_out and _M_atoms_in one position smaller.
1124 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out