1 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
3 * include/bits/gslice.h, include/bits/gslice_array.h,
4 include/bits/indirect_array.h, include/bits/mask_array.h,
5 include/bits/slice_array.h, include/bits/stl_numeric.h,
6 include/std/std_valarray.h: Update copyright years.
8 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
10 * include/bits/gslice.h (gslice): Document.
11 * include/bits/gslice_array.h (gslice_array): Document.
12 * include/bits/indirect_array (indirect_array): Document.
13 * include/bits/mask_array (mask_array): Document.
14 * include/bits/slice_array.h (slice,slice_array): Document.
15 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
16 adjacent_difference): Document
17 * include/std/std_valarray.h (valarray): Document.
19 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
21 * docs/html/19_diagnostics/howto.html: Move verbose terminate
23 * docs/html/18_support/howto.html: Here.
24 * docs/html/documentation.html: Add reference here.
26 2004-02-02 Paolo Carlini <pcarlini@suse.de>
28 * config/locale/gnu/c++locale_internal.h: Remove prototypes
29 of no longer used GLIBC thread locale functions.
31 2004-02-02 Eric Christopher <echristo@redhat.com>
32 Zack Weinberg <zack@codesourcery.com>
34 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
36 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
37 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
38 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
39 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
40 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
41 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
42 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
43 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
46 2004-02-02 Paolo Carlini <pcarlini@suse.de>
48 * include/bits/stl_function.h: Additional minor tweaks.
49 * include/bits/stl_multiset.h: Likewise.
51 * include/bits/stl_queue.h: Minor tweaks.
53 2004-02-02 Paolo Carlini <pcarlini@suse.de>
55 PR libstdc++/13976 (continued)
56 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
57 Make the second parameter unnamed, to void unused parameter
59 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
61 2004-02-02 Paolo Carlini <pcarlini@suse.de>
64 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
65 Make the second parameter unnamed, to void unused parameter
67 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
68 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
70 2004-02-01 Paolo Carlini <pcarlini@suse.de>
72 * include/bits/stl_algo.h: Additional minor tweaks.
73 * include/bits/stl_map.h: Likewise.
74 * include/bits/stl_multimap.h: Likewise.
75 * include/bits/stl_multiset.h: Likewise.
76 * include/bits/stl_set.h: Likewise.
77 * include/bits/stl_tree.h: Likewise.
79 2004-02-01 Paolo Carlini <pcarlini@suse.de>
81 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
84 2004-02-01 Paolo Carlini <pcarlini@suse.de>
86 * include/bits/stl_function.h: Additional minor tweaks.
88 2004-02-01 Paolo Carlini <pcarlini@suse.de>
90 * include/bits/deque.tcc: Wrap overlong lines, constify
91 a few variables, reformat according to the coding standards.
92 * include/bits/list.tcc: Likewise.
93 * include/bits/stl_deque.h: Likewise.
94 * include/bits/stl_function.h: Likewise.
95 * include/bits/stl_iterator.h: Likewise.
96 * include/bits/stl_iterator_base_funcs.h: Likewise.
97 * include/bits/stl_iterator_base_types.h: Likewise.
98 * include/bits/stl_list.h: Likewise.
99 * include/bits/stl_map.h: Likewise.
100 * include/bits/stl_multimap.h: Likewise.
101 * include/bits/stl_multiset.h: Likewise.
102 * include/bits/stl_relops.h: Likewise.
103 * include/bits/stl_set.h: Likewise.
105 2004-02-01 Paolo Carlini <pcarlini@suse.de>
107 * include/bits/stl_bvector.h: Wrap overlong lines, constify
108 a few variables, reformat according to the coding standards.
109 * include/bits/stl_tree.h: Likewise.
111 2004-01-31 Paolo Carlini <pcarlini@suse.de>
113 * include/bits/stl_algo.h: Minor additional reformat, add
115 * include/bits/stl_algobase.h: Add copyright year.
117 2004-01-31 Paolo Carlini <pcarlini@suse.de>
119 * include/bits/stl_algo.h: Wrap overlong lines, constify
120 a few variables, reformat according to the coding standards.
121 * include/bits/stl_algobase.h: Likewise.
122 * include/bits/stl_heap.h: Likewise.
124 2004-01-31 Paolo Carlini <pcarlini@suse.de>
126 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
128 * include/bits/basic_string.h: Fix two comments.
130 2004-01-31 Per Bothner <per@bothner.com>
132 * include/ext/mt_allocator.h
133 (__mt_alloc::_S_thread_freelist_mutex): Guard with
134 __GTHREAD_MUTEX_INIT.
136 2004-01-31 Paolo Carlini <pcarlini@suse.de>
138 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
140 2004-01-30 Paolo Carlini <pcarlini@suse.de>
142 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
143 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
144 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
146 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
148 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
149 Don't use clear, but instead assign. Use insert.
151 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
153 * src/demangle.cc: Add instantiations.
154 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
155 * src/Makefile.in: Regenerate.
157 2004-01-30 David Edelsohn <edelsohn@gnu.org>
159 * src/allocator.cc: Protect _S_get_thread_id() and
160 _S_thread_key_destr() with #ifdef __GTHREADS.
162 2004-01-30 Paolo Carlini <pcarlini@suse.de>
164 Reshuffle performance testsuite.
165 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
166 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
167 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
168 fstream_seek_write.cc, ifstream_extract_float.cc,
169 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
170 list_create_fill_sort.cc, map_create_fill.cc,
171 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
172 ofstream_insert_float.cc, ofstream_insert_int.cc,
173 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
174 wchar_t_out.cc: Split into...
175 * testsuite/performance/20_util/allocator.cc: New.
176 * testsuite/performance/20_util/allocator_map_thread.cc: New.
177 * testsuite/performance/20_util/allocator_thread.cc: New.
178 * testsuite/performance/21_strings/string_append: New.
179 * testsuite/performance/22_locale/is_wchar_t.cc: New.
180 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
181 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
182 * testsuite/performance/22_locale/wchar_t_in.cc: New.
183 * testsuite/performance/22_locale/wchar_t_length.cc: New.
184 * testsuite/performance/22_locale/wchar_t_out.cc: New.
185 * testsuite/performance/23_containers/container_benchmark.cc: New.
186 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
187 * testsuite/performance/23_containers/map_create_fill.cc: New.
188 * testsuite/performance/26_numerics/complex_norm.cc: New.
189 * testsuite/performance/27_io/cout_insert_int.cc: New.
190 * testsuite/performance/27_io/filebuf_copy.cc: New.
191 * testsuite/performance/27_io/filebuf_sputc.cc: New.
192 * testsuite/performance/27_io/fstream_seek_write.cc: New.
193 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
194 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
195 * testsuite/performance/27_io/ifstream_getline.cc: New.
196 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
197 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
199 2004-01-30 Paolo Carlini <pcarlini@suse.de>
201 * include/bits/basic_string.tcc (_Rep::_S_create):
202 Never allocate a string bigger than max_size(); always keep
203 __capacity and __size in sync to avoid memory leaks at
206 2004-01-30 Paolo Carlini <pcarlini@suse.de>
208 * include/bits/basic_string.tcc (_S_construct(_InIterator,
209 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
210 the double loop, streamline.
212 * include/bits/basic_string.tcc: Very minor tweaks.
214 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
216 * scripts/check_performance: Only compile with $THREAD_FLAG
217 when test is marked to require it. Allow multiple
218 compilations/executions of marked tests.
219 * testsuite/testsuite_performance.h (report_performance):
220 Report dynamic thread support status.
221 (report_header): Likewise.
222 * testsuite/performance/allocator.cc: Stabilize iteration
223 count. Support more allocators. Mark each allocator test to
224 run and report independently.
225 * testsuite/performance/allocator_map_thread.cc: Likewise.
226 * testsuite/performance/allocator_thread.cc: Likewise.
228 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
230 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
231 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
232 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
233 std::get_temporary_buffer() instead of duplicating its code.
234 Update to C++STYLE conventions.
235 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
236 new() instead of std::malloc().
237 (return_temporary_buffer): Use ::operator delete() instead of
240 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
242 * include/bits/allocator.h: Temporary switch to new_allocator as
243 the default to unjam bootstraps.
245 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
247 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
248 * include/Makefile.in: Regenerate.
249 * include/bits/allocator_traits.h: Remove.
250 * include/bits/allocator.h: Remove allocator_traits.h include, and
252 (allocator): Empty base class, inherit from the underlying allocator.
253 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
254 * src/allocator.cc: ...here. New. For the underlying allocators.
255 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
256 * config/linker-map.gnu: Remove __pool_alloc bits.
257 * src/Makefile.am (sources): Add allocator.cc.
258 * src/Makefile.in: Regenerate.
259 * testsuite/20_util/allocator/1.cc: Split second test into...
260 * testsuite/20_util/allocator/8230.cc: ...this.
261 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
262 typedef to use std::allocatore. Format.
263 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
265 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
266 __throw_bad_alloc calls. Don't include <memory>.
267 * include/ext/malloc_allocator.h: Remove <memory> include.
268 * include/ext/new_allocator.h (new_allocator): Same.
269 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
270 declaration. Switch __alloc to _Alloc.
271 * include/ext/hashtable.h: Remove __alloc.
272 * include/backward/alloc.h: Only inject allocator, not
273 implementation details.
275 * include/ext/mt_allocator.h: Replace free with delete.
277 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
279 * src/globals_io.cc: Change to __gnu_internal namespace.
280 * src/globals_locale.cc: Same.
281 * src/locale_init.cc: Same.
282 * src/ios_init.cc: Same.
284 2004-01-28 Stefan Olsson <stefan@snon.net>
286 * include/ext/mt_allocator.h: Replaced all malloc() calls with
287 operator new(). Added support for the env variable
288 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
289 one in allocate() as well). Fix typos.
291 2004-01-28 Paolo Carlini <pcarlini@suse.de>
293 * include/bits/basic_string.h (_S_create(size_t,
294 const _Alloc&): Change signature to take two size_type
296 * include/bits/basic_string.tcc (_S_construct(_InIterator,
297 _InIterator, const _Alloc&, input_iterator_tag)): Update
299 (_S_construct(_InIterator, _InIterator, const _Alloc&,
300 forward_iterator_tag)): Likewise.
301 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
302 (_M_mutate(size_type, size_type, size_type)): Don't
303 implement the exponential growth policy, demand it to
304 _S_create, update call and simplify.
305 (_M_clone(const _Alloc&, size_type)): Likewise.
306 (_S_create(size_type, size_type, const _Alloc&)): Implement
307 the growth policy, simplify otherwise.
309 * include/bits/basic_string.h (_Rep::operator[]): Tweak
310 signature to take a size_type, consistently with the other
313 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
315 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
316 delete declarations, add include and test variable.
318 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
320 * include/bits/codecvt.h, include/bits/locale_facets.h,
321 include/bits/postypes.h, include/bits/stl_bvector.h,
322 include/bits/stl_multiset.h, include/bits/stl_set.h,
323 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
324 include/std/std_complex.h: Document.
326 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
329 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
330 iword/pword selector.
331 (ios_base::iword, ios_base::pword): Use it.
332 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
333 iword or pword member on alloc failure.
334 * testsuite/27_io/ios_base/storage/11584.cc: New test.
336 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
337 PJ Darcy <darcypj@us.ibm.com>
339 * configure.host: Add support for *-tpf.
340 * crossconfig.m4: Likewise.
341 * configure: Regenerate.
342 * config/os/tpf: New directory.
343 * config/os/tpf/os_defines.h: New file.
344 * config/os/tpf/ctype_base.h: Likewise.
345 * config/os/tpf/ctype_inline.h: Likewise.
346 * config/os/tpf/ctype_noninline.h: Likewise.
348 2004-01-27 Paolo Carlini <pcarlini@suse.de>
351 * include/bits/sstream.tcc: Guard use of extern template.
353 2004-01-27 Paolo Carlini <pcarlini@suse.de>
355 * include/bits/basic_string.tcc
356 (basic_string(const basic_string&, size_type, size_type),
357 basic_string(const basic_string&, size_type, size_type,
358 const _Alloc&)): Avoid unnecessarily constructing iterators.
360 2004-01-26 Paolo Carlini <pcarlini@suse.de>
362 * config/locale/generic/c_locale.cc: Fix throw messages
363 to use the __N marker.
364 * config/locale/gnu/c_locale.cc: Likewise.
365 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
367 * docs/html/17_intro/C++STYLE: Likewise.
368 * include/bits/basic_ios.tcc: Likewise.
369 * include/bits/fstream.tcc: Likewise.
370 * include/bits/vector.tcc: Likewise.
371 * include/ext/ropeimpl.h: Likewise.
372 * include/std/std_bitset.h: Likewise.
373 * src/ios.cc: Likewise.
374 * src/locale.cc: Likewise.
375 * src/localename.cc: Likewise.
377 2004-01-26 Paolo Carlini <pcarlini@suse.de>
379 * include/bits/basic_string.h (_M_replace_aux): Use the
380 __N marker in throw message.
381 * include/bits/basic_string.tcc (assign(const _CharT*,
382 size_type), insert(size_type, const _CharT*, size_type),
383 replace(size_type, size_type, const _CharT*, size_type),
384 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
387 * include/bits/basic_string.h, include/bits/basic_string.tcc:
388 Fold overlong lines, minor formatting changes.
390 2004-01-26 Paolo Carlini <pcarlini@suse.de>
392 * include/bits/basic_string.h (replace(iterator, iterator,
393 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
394 (replace(iterator, iterator, const _CharT*)): Ditto.
395 (replace(iterator, iterator, const _CharT*, size_type)):
396 Add missing _GLIBCXX_DEBUG_PEDASSERT.
398 2004-01-26 Paolo Carlini <pcarlini@suse.de>
400 * include/bits/basic_string.tcc (replace(size_type,
401 size_type, const _CharT*, size_type)): Implement optimized
402 in-place algorithm for non-overlapping ranges.
403 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
404 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
406 * include/bits/basic_string.tcc (insert(size_type,
407 const _CharT*, size_type)): Tweak slightly.
409 2004-01-26 Andreas Schwab <schwab@suse.de>
411 * config/locale/gnu/monetary_members.cc: Restore locale before
412 rethrowing exception.
414 2004-01-25 Paolo Carlini <pcarlini@suse.de>
416 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
418 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
421 * include/bits/basic_string.tcc: Very minor tweaks.
423 2004-01-25 Paolo Carlini <pcarlini@suse.de>
425 * testsuite/performance/string_append.cc: Increase number
428 2004-01-25 Paolo Carlini <pcarlini@suse.de>
430 * include/bits/basic_string.h (erase(size_type, size_type),
431 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
432 instead, thus avoiding redundant check for length_error.
434 * include/bits/basic_string.h: Tweak some comments.
436 2004-01-24 Paolo Carlini <pcarlini@suse.de>
438 * include/bits/basic_string.tcc (operator+(const _CharT*,
439 const basic_string&)): No need to go through the append
440 taking two iterators.
442 2004-01-24 Paolo Carlini <pcarlini@suse.de>
444 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
445 Revert last change to use std::min: machine language is worse.
446 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
447 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
448 (find_last_not_of(_CharT, size_type)): Ditto.
450 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
451 size_type)): Discard the value returned by _M_check.
452 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
453 (append(const basic_string&, size_type, size_type)): Ditto.
454 (copy(_CharT*, size_type, size_type)): Ditto.
455 (compare(size_type, size_type, const basic_string&)): Ditto.
456 (compare(size_type, size_type, const basic_string&,
457 size_type, size_type)): Ditto.
458 (compare(size_type, size_type, const _CharT*)): Ditto.
459 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
461 2004-01-24 Paolo Carlini <pcarlini@suse.de>
463 * include/bits/basic_string.h (insert(size_type,
464 const basic_string&, size_type, size_type)): Define inline here.
465 * include/bits/basic_string.tcc (insert(size_type,
466 const basic_string&, size_type, size_type)): Move inline.
468 2004-01-24 Paolo Carlini <pcarlini@suse.de>
470 * include/bits/basic_string.h (assign(const basic_string&,
471 size_type, size_type)): Define inline here.
472 (replace(size_type, size_type, const basic_string&,
473 size_type, size_type)): Ditto.
474 (_M_replace_dispatch(iterator, iterator, _InputIterator,
475 _InputIterator, __false_type)): Only declare.
476 (_M_replace(iterator, iterator, _InputIterator,
477 _InputIterator)): Remove.
478 * include/bits/basic_string.tcc (assign(const basic_string&,
479 size_type, size_type)): Move inline.
480 (replace(size_type, size_type, const basic_string&,
481 size_type, size_type)): Ditto.
482 (_M_replace_dispatch(iterator, iterator, _InputIterator,
483 _InputIterator, __false_type)): Define, now does also what
484 _M_replace did before.
485 * src/string-inst.cc (_M_replace): Don't instantiate.
487 * include/bits/basic_string.tcc (find(const _CharT*,
488 size_type, size_type)): Tidy.
489 (rfind(_CharT, size_type)): Ditto.
490 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
491 (find_first_not_of(_CharT, size_type)): Ditto.
492 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
493 (find_last_not_of(_CharT, size_type)): Ditto.
495 2004-01-23 Paolo Carlini <pcarlini@suse.de>
498 * include/debug/bitset (operator|=): Fix typo.
499 * testsuite/23_containers/bitset/operations/13838.cc: New.
501 2004-01-23 Paolo Carlini <pcarlini@suse.de>
503 * include/bits/basic_string.tcc (insert(size_type,
504 const _CharT*, size_type __n)): Fix length_error check.
505 (replace(size_type, size_type, const _CharT*, size_type):
506 Ditto; call _M_replace_safe.
507 (_M_replace_aux(size_type, size_type, size_type, _CharT):
508 Fix length_error check.
509 (_M_replace(iterator, iterator, _InputIterator,
510 _InputIterator)): Ditto, tweak.
511 (_M_replace_safe(size_type, size_type, const _CharT*,
512 size_type)): Remove length_error check.
514 * include/bits/basic_string.tcc (append(const basic_string&),
515 append(const basic_string&, size_type, size_type)): Tweak
518 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
519 size_type)): If __n == 0 don't call traits::copy.
521 2004-01-23 Stefan Olsson <stefan@snon.net>
523 * include/ext/mt_allocator.h: Reduce lock contention.
525 2004-01-23 Paolo Carlini <pcarlini@suse.de>
528 * include/bits/fstream.tcc (underflow): Remove unused
530 * include/bits/streambuf_iterator.h (equal): Ditto.
531 * include/bits/locale_facets.h (_M_convert_from_char):
534 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
537 * config/linker-map.gnu (nan): Delete.
538 * libmath/mathconf.h (NAN, nan): Delete.
539 * linkage.m4 (nan): Don't check for it.
540 * libmath/nan.c: Delete file.
542 * config.h.in, configure: Regenerate.
544 2004-01-23 Paolo Carlini <pcarlini@suse.de>
546 * include/bits/basic_string.h (push_back(_CharT)):
548 (insert(size_type, const basic_string&)): Trivial tweak.
549 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
550 (insert(iterator, _CharT)): Ditto.
551 (erase(size_type, size_type)): Ditto.
552 (erase(iterator)): Ditto.
553 (erase(iterator, iterator)): Ditto.
554 (replace(size_type, size_type, size_type, _CharT)): Ditto.
556 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
559 * testsuite/performance/allocator_map_thread.cc: New test.
561 2004-01-22 Paolo Carlini <pcarlini@suse.de>
563 * include/bits/locale_facets.tcc
564 (money_put::do_put(..., long double)): Use the basic_string
565 constructor for char arrays, not that for C-strings, to pass
566 __digits to do_put(..., const string_type&): __ws isn't
569 2004-01-22 Paolo Carlini <pcarlini@suse.de>
571 * include/bits/basic_string.h (_M_replace_safe): Change
572 signatures to take size_types and const _CharT*.
573 (_M_replace_aux): Likewise, takes size_types instead of
575 (append(size_type, _CharT)): Update call.
576 (assign(size_type, _CharT)): Ditto.
577 (replace(iterator, iterator, size_type, _CharT)): Ditto.
578 (_M_replace_dispatch(iterator, iterator, _Integer,
579 _Integer, __true_type)): Ditto.
580 * include/bits/basic_string.tcc (assign(const _CharT*,
582 (insert(size_type, const _CharT*, size_type)): Ditto.
583 (replace(size_type, size_type, const _CharT*,
585 (_M_replace(iterator, iterator, _InputIterator,
586 _InputIterator)): Ditto.
587 (append(const basic_string&)): Ditto.
588 (append(const basic_string&, size_type, size_type): Ditto.
589 (append(const _CharT*, size_type): Ditto.
590 (_M_replace_safe, _M_replace_safe): Change definitions
591 accordingly, simplify.
592 * string-inst.cc (_M_replace_safe): Don't instantiate.
594 2004-01-21 Paolo Carlini <pcarlini@suse.de>
596 * include/bits/basic_string.tcc (append(const basic_string&)):
597 Revert previous change.
598 (append(const basic_string&, size_type, size_type)): Revert
599 previous change, use _M_check and _M_limit.
601 2004-01-21 Paolo Carlini <pcarlini@suse.de>
603 * include/bits/basic_string.h (_M_check): Change to return
604 a checked __pos and take an additional const char* argument.
605 (_M_fold): Rename to _M_limit, change to return a size_type,
606 corresponding to the __off limited to the actual length.
607 (insert(size_type, size_type, _CharT)): Update call, call
609 (insert(iterator, _CharT)): Call replace(iterator, iterator,
610 size_type, _CharT) instead.
611 (erase(size_type, size_type)): Update calls.
612 (replace(size_type, size_type, size_type, _CharT)): Ditto.
613 (substr(size_type, size_type)): Use _M_check.
614 * include/bits/basic_string.tcc (basic_string(const basic_string&,
615 size_type, size_type)): Update calls.
616 (basic_string(const basic_string&, size_type, size_type,
617 const _Alloc&)): Ditto.
618 (assign(const basic_string&, size_type, size_type)): Use the
619 new _M_check and _M_limit.
620 (insert(size_type, const basic_string&, size_type, size_type):
622 (insert(size_type, const _CharT*, size_type)): Ditto.
623 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
624 (replace(size_type, size_type, const basic_string&,
625 size_type, size_type)): Ditto.
626 (append(const basic_string&)): Ditto.
627 (append(const basic_string&, size_type, size_type)): Ditto.
628 (copy(_CharT*, size_type, size_type)): Ditto.
629 (compare(size_type, size_type, const basic_string&)): Ditto.
630 (compare(size_type, size_type, const basic_string&,size_type,
632 (compare(size_type, size_type, const _CharT*)): Ditto.
633 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
635 2004-01-19 Stefan Olsson <stefan@snon.net>
637 * include/ext/mt_allocator.h: If a thread, when it dies, still has
638 memory on it's freelist this memory is not returned to global
639 list. Simplification of deallocate so that memory is always
640 returned to the calling thread id's freelist instead of to
641 global. Fix typos. Add volatile where appropriate.
643 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
645 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
646 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
647 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
649 2004-01-19 Paolo Carlini <pcarlini@suse.de>
651 * src/debug.cc: Make sure all the names are prefixed with
652 double (or single) underscore.
654 2004-01-19 Paolo Carlini <pcarlini@suse.de>
656 * src/debug.cc: Trivial formatting change.
658 2004-01-19 Paolo Carlini <pcarlini@suse.de>
660 * include/bits/basic_string.tcc (_S_construct(size_type,
661 _CharT, const _Alloc&)): Remove redundant try/catch.
662 (_M_mutate(size_type, size_type, size_type)): Ditto.
663 (_M_clone(const _Alloc&, size_type)): Ditto.
665 2004-01-18 Paolo Carlini <pcarlini@suse.de>
667 * include/bits/basic_string.h (c_str()): Simplify, due to
668 21.3.4 the internal representation is always kept null-terminated.
669 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
670 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
671 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
674 2004-01-18 Paolo Carlini <pcarlini@suse.de>
676 * include/bits/basic_string.h (append(size_type, _CharT)):
677 Moved inline, just call _M_replace_aux, no source iterators at
678 risk of being clobbered.
679 (assign(size_type, _CharT)): Call directly _M_replace_aux.
680 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
681 input_iterator_tag)): Remove fifth unused argument.
682 (_M_replace_dispatch(iterator, iterator, _InputIterator,
683 _InputIterator, __false_type)): Update call.
684 * include/bits/basic_string.tcc (replace(size_type, size_type,
685 const _CharT*, size_type)): Update call.
686 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
687 throw string literal.
688 (_M_replace_safe(iterator, iterator, _ForwardIterator,
689 _ForwardIterator)): Likewise.
690 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
691 input_iterator_tag)): Remove fifth unused argument.
692 (append(size_type __n, _CharT __c)): Move inline.
693 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
694 const C*, const C*, input_iterator_tag)): Remove fifth unused
697 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
699 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
700 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
702 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
704 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
707 2004-01-15 Stefan Olsson <stefan@snon.net>
709 * include/ext/mt_allocator.h: Reuse thread id's as soon as
710 possible by changing the behaviour of thread_freelist to do
711 push_front when threads die instead of push_back.
713 2004-01-14 Paolo Carlini <pcarlini@suse.de>
715 * include/bits/locale_facets.h (struct __numpunct_cache):
716 Add member _M_grouping_size, caching the length of _M_grouping.
717 (__numpunct_cache<>::_M_cache): Assign the latter.
718 (__verify_grouping): Move declaration...
719 * include/bits/locale_facets.tcc (__verify_grouping):
720 ... here, change signature to take a const char* and a size_t
721 for the grouping; not a template anymore.
722 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
723 Likewise change signature and tweak consistently.
724 (num_get::_M_extract_float, num_get::_M_extract_int,
725 num_put::_M_insert_int, num_put::_M_insert_float,
726 money_get::do_get(string_type&), money_get::do_put(string_type)):
728 * config/locale/generic/numeric_members.cc
729 (numpunct<>::_M_initialize_numpunct): Assign the new member.
730 * config/locale/gnu/numeric_members.cc
731 (numpunct<>::_M_initialize_numpunct): Likewise.
732 * src/locale-inst.cc (__add_grouping): Tweak signature.
733 (__verify_grouping): Don't instantiate, not a template anymore.
735 * include/bits/locale_facets.h: Rename _M_truename_len ->
736 _M_truename_size, _M_falsename_len -> _M_falsename_size.
737 * include/bits/locale_facets.tcc: Likewise.
738 * config/locale/generic/numeric_members.cc: Likewise.
739 * config/locale/gnu/numeric_members.cc: Likewise.
741 2004-01-14 Stefan Olsson <stefan@snon.net>
743 * include/ext/mt_allocator.h: Fixups.
744 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
745 * testsuite/performance/allocator_thread.cc: Same.
747 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
749 * testsuite/performance/ifstream_extract_float.cc: Add higher
751 * testsuite/performance/ofstream_insert_float.cc: Same.
753 2004-01-13 Paolo Carlini <pcarlini@suse.de>
755 * src/locale-misc-inst.cc (__convert_from_v(long),
756 __convert_from_v(unsigned long), __convert_from_v(long long),
757 __convert_from_v(unsigned long long)): Remove, unused.
759 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
761 * testsuite/performance/ifstream_extract_float.cc: New.
762 * testsuite/performance/ofstream_insert_float.cc: Float generation
765 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
766 * 20_util/auto_ptr/1.cc: ...this.
767 * 20_util/auto_ptr/2.cc: Same.
768 * 20_util/auto_ptr/3.cc: Same.
769 * 20_util/auto_ptr/3946.cc: Same.
770 * 20_util/auto_ptr/4.cc: Same.
771 * 20_util/auto_ptr/5.cc: Same.
772 * 20_util/auto_ptr/6.cc: Same.
773 * 20_util/auto_ptr/7.cc: Same.
774 * 20_util/auto_ptr/assign_neg.cc
775 * 20_util/pairs.cc: Break into...
776 * 20_util/pair/1.cc: ...this.
777 * 20_util/pair/2.cc: Same.
778 * 20_util/pair/3.cc: Same.
779 * 20_util/pair/4.cc: Same.
781 2004-01-13 Paolo Carlini <pcarlini@suse.de>
783 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
784 Set correctly just basefield, the only group that matters.
786 2004-01-13 Paolo Carlini <pcarlini@suse.de>
788 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
789 (_Rope_rep_base): Inherit directly from the rope allocator;
790 use rebinding instead of _Alloc_traits; pick up data member
791 from _Rope_rep_alloc_base.
792 (_Rope_alloc_base): Eliminate.
793 (_Rope_base): Inherit directly from the rope allocator; use
794 rebinding instead of _Alloc_traits; pick up data member from
796 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
797 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
799 2004-01-13 Paolo Carlini <pcarlini@suse.de>
802 * include/bits/basic_string.tcc (compare(size_type, size_type,
803 const _CharT*, size_type)): Implement correctly the resolution
804 of DR 5: basically, s is a char array, -not- a C string.
805 * include/bits/basic_string.h: Tweak some comments.
806 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
807 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
809 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
811 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
814 2004-01-12 Paolo Carlini <pcarlini@suse.de>
816 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
818 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
821 2004-01-12 Paolo Carlini <pcarlini@suse.de>
823 * include/bits/locale_facets.h (struct __numpunct_cache):
824 Add members _M_truename_len and _M_falsename_len, caching
825 the lengths of _M_truename and _M_falsename.
826 (__numpunct_cache<>::_M_cache): Assign the latter.
827 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
828 num_put::do_put(bool)): Use the new members, thus avoiding
829 computing string lengths again and again.
830 * config/locale/generic/numeric_members.cc
831 (numpunct<>::_M_initialize_numpunct): Assign the new members.
832 * config/locale/gnu/numeric_members.cc
833 (numpunct<>::_M_initialize_numpunct): Likewise.
835 2004-01-12 Mark Mitchell <mark@codesourcery.com>
837 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
838 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
840 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
841 and remove Cygwin XFAIL.
842 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
843 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
844 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
845 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
847 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
848 * testsuite/27_io/objects/char/7.cc: Likewise.
849 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
850 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
851 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
853 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
855 * include/std/std_complex.h (std::complex<>::real): Return a
856 reference. Add non-const overload.
857 (std::complex<>::real): Likewise.
858 (std::real): Likewise.
859 (std::imag): Likewise.
860 (std::operator+): Tidy.
861 (std::operator-): Likewise.
862 (std::operator*): Likewise.
863 (std::operator/): Likewise.
864 (std::operator>>): Likewise.
866 2004-01-11 Paolo Carlini <pcarlini@suse.de>
869 * include/bits/fstream.tcc (imbue): Exploit the external
870 buffer to imbue 'on the fly' a new locale and convert its
871 remainder with the new codecvt facet.
872 (underflow): Tweak slightly to deal with this special case.
873 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
874 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
875 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
876 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
877 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
879 2004-01-10 Paolo Carlini <pcarlini@suse.de>
881 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
884 2004-01-10 Paolo Carlini <pcarlini@suse.de>
887 * include/bits/locale_classes.h (class locale): Fix category
889 * testsuite/22_locale/locale/13630.cc: Add.
891 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
893 * include/bits/locale_facets.h: Make a name really dependent. This
894 will be needed when Core Issue 224 is implemented.
896 2004-01-09 Paolo Carlini <pcarlini@suse.de>
898 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
899 * testsuite/performance/allocator_thread.cc: Likewise.
901 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
903 * crossconfig.m4: Add LFS, io bits to linux cross config.
904 * acconfig.h: Remove obsolete bits, reorder.
905 * config.h.in: Regenerate.
909 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
911 * include/bits/stl_list.h:
912 * include/bits/list.tc:
914 Performance enhancements for destructor, push_front(),
915 push_back(), pop_front(), pop_back(), sort()
916 Eliminated static_casts where possible.
917 Moved code out of header files into new src/list.cc
918 implementation file for library where possible.
919 Remove inheritance from iterator class and create separate
920 classes for non-constant and constant iterators.
921 * include/bits/stl_tree.h (_Rb_tree class):
923 Only erase contents in destructor.
924 Eliminate unnecessary initialization in assignment operator.
925 Optimize for the nominal case by not checking whether
926 container is empty in clear().
927 Re-order test in _M_insert() to improve performance.
928 Move initialization of new node's left & right pointers to
929 src/tree.cc to where new node's colour is initialized
930 and to reduce the amount of inline code.
931 Use _M_leftmost() and _M_end() to improve readability where
933 Create separate classes for non-constant and constant
934 iterators to clarify code, avoid extra template parameters and
935 casting away constness.
937 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
939 * src/Makefile.am (sources): Add list.cc, tree.cc.
940 * src/stl_tree.cc: Move to...
941 * src/tree.cc: ...here.
943 * config/linker-map.gnu: Tweaks.
944 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
945 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
947 * bits/stl_vector.h: Column wrap comments.
949 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
951 (re-open) PR libstdc++/12658
952 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
953 (locale::global): Likewise.
955 2004-01-07 Paolo Carlini <pcarlini@suse.de>
957 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
958 Remove redundant #include.
959 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
960 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
961 re-enable normal testing.
962 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
964 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
965 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
967 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
969 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
971 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
973 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
975 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
977 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
979 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
980 More properly, #include <locale>.
981 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
982 Remove redundant #include.
983 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
984 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
985 redundant DejaGnu directive.
986 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
989 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
990 Stefan Olsson <stefan@snon.net>
992 * scripts/check_performance: Use -pthread.
993 * testsuite/performance/allocator.cc: Tweaks, add list.
994 * testsuite/performance/allocator_thread.cc: New.
996 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
998 * include/bits/locale_facets.h: Document public classes and
1000 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1003 2004-01-06 Paolo Carlini <pcarlini@suse.de>
1005 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
1006 Remove redundant #includes.
1007 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
1009 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
1011 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1012 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1013 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1014 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1015 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1016 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1017 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1018 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1019 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1020 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1021 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1022 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1023 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1024 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1025 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
1027 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
1029 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
1031 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
1033 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
1035 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1036 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1037 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1039 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1041 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1042 Remove redundant #includes.
1043 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1045 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1047 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1049 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1051 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1053 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1055 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1057 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1059 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1061 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1063 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1065 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1068 2004-01-04 Mark Mitchell <mark@codesourcery.com>
1071 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
1073 * testsuite/27_io/basic_fstream/4.cc: Likewise.
1074 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
1075 * testsuite/27_io/basic_ios/4.cc: Likewise.
1076 * testsuite/27_io/basic_iostream/4.cc: Likewise.
1077 * testsuite/27_io/basic_istream/4.cc: Likewise.
1078 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
1079 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
1080 * testsuite/27_io/basic_ostream/4.cc: Likewise.
1081 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
1082 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
1083 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
1085 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1087 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
1088 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
1089 always use double underscored names.
1090 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
1092 * include/bits/locale_facets.h (struct __numpunct_cache):
1093 Dimension _M_atoms_out and _M_atoms_in one position smaller.
1094 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out