1 2004-02-05 Richard Sandiford <rsandifo@redhat.com>
3 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
5 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
6 it to decide whether FIONREAD should take an off_t or int argument.
8 2004-02-05 Paolo Carlini <pcarlini@suse.de>
10 * include/bits/stl_function.h: Minor formatting changes.
12 2004-02-04 Zack Weinberg <zack@codesourcery.com>
14 Revert previous change to config/abi/*/baseline_symbols.txt.
16 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
17 Zack Weinberg <zack@codesourcery.com>
19 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
21 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
22 (__basic_file<char>::_M_open_mode): Delete.
23 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
25 * testsuite/27_io/basic_filebuf/close/char/9964.cc
26 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
27 Correct flags to filebuf::open calls.
29 * config/abi/alpha-freebsd5/baseline_symbols.txt
30 * config/abi/alpha-linux-gnu/baseline_symbols.txt
31 * config/abi/hppa-linux-gnu/baseline_symbols.txt
32 * config/abi/i386-freebsd4/baseline_symbols.txt
33 * config/abi/i386-freebsd5/baseline_symbols.txt
34 * config/abi/i486-linux-gnu/baseline_symbols.txt
35 * config/abi/ia64-linux-gnu/baseline_symbols.txt
36 * config/abi/mips-linux-gnu/baseline_symbols.txt
37 * config/abi/sparc-freebsd5/baseline_symbols.txt
38 * config/abi/sparc-linux-gnu/baseline_symbols.txt
39 * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
40 Remove entry for __basic_file<char>::_M_open_mode.
42 2004-02-04 Loren J. Rittle <ljrittle@acm.org>
44 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
46 2004-02-04 Felix Yen <fwy@alumni.brown.edu>
48 * testsuite/performance/20_util/producer_consumer.cc: New.
49 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
51 2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
53 * testsuite/performance/20_util/allocator.cc: Move to..
54 * testsuite/performance/20_util/allocator/insert.cc: ...here.
55 * testsuite/performance/20_util/allocator_thread.cc: Move to...
56 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
57 * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
58 * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
60 2004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
62 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
63 * docs/html/faq/index.txt: Regenerate.
65 2004-02-04 Dhruv Matani <dhruvbird@gmx.net>
67 * include/ext/debug_allocator.h: _M_extra now stands for the
68 number of extra objects instead of the number of extra bytes.
69 (debug_allocator::allocate): Adjust.
70 (debug_allocator::deallocate): Adjust.
72 * include/ext/pool_allocator.h: Fix typo.
74 2004-02-03 Felix Yen <fwy@alumni.brown.edu>
75 Benjamin Kosnik <bkoz@redhat.com>
77 * testsuite/performance/20_util/allocator.cc: Add map,
79 * testsuite/performance/20_util/allocator_thread.cc: Same.
81 2004-02-03 Paolo Carlini <pcarlini@suse.de>
83 * include/bits/basic_string.h (insert(iterator)): Remove,
84 non-standard and already scheduled for removal.
86 2004-02-03 Paolo Carlini <pcarlini@suse.de>
88 * include/bits/stl_iterator_base_funcs.h: Minor formatting
89 and indentation tweaks.
90 * include/bits/stl_iterator_base_types.h: Likewise.
91 * include/bits/stl_list.h: Likewise.
92 * include/bits/stl_map.h: Likewise.
93 * include/bits/stl_tempbuf.h: Likewise.
95 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
97 * include/bits/gslice.h, include/bits/gslice_array.h,
98 include/bits/indirect_array.h, include/bits/mask_array.h,
99 include/bits/slice_array.h, include/bits/stl_numeric.h,
100 include/std/std_valarray.h: Update copyright years.
102 2004-02-02 Jerry Quinn <jlquinn@optonline.net>
104 * include/bits/gslice.h (gslice): Document.
105 * include/bits/gslice_array.h (gslice_array): Document.
106 * include/bits/indirect_array (indirect_array): Document.
107 * include/bits/mask_array (mask_array): Document.
108 * include/bits/slice_array.h (slice,slice_array): Document.
109 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
110 adjacent_difference): Document
111 * include/std/std_valarray.h (valarray): Document.
113 2004-02-02 Benjamin Kosnik <bkoz@redhat.com>
115 * docs/html/19_diagnostics/howto.html: Move verbose terminate
117 * docs/html/18_support/howto.html: Here.
118 * docs/html/documentation.html: Add reference here.
120 2004-02-02 Paolo Carlini <pcarlini@suse.de>
122 * config/locale/gnu/c++locale_internal.h: Remove prototypes
123 of no longer used GLIBC thread locale functions.
125 2004-02-02 Eric Christopher <echristo@redhat.com>
126 Zack Weinberg <zack@codesourcery.com>
128 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
130 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
131 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
132 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
133 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
134 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
135 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
136 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
137 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
140 2004-02-02 Paolo Carlini <pcarlini@suse.de>
142 * include/bits/stl_function.h: Additional minor tweaks.
143 * include/bits/stl_multiset.h: Likewise.
145 * include/bits/stl_queue.h: Minor tweaks.
147 2004-02-02 Paolo Carlini <pcarlini@suse.de>
149 PR libstdc++/13976 (continued)
150 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
151 Make the second parameter unnamed, to void unused parameter
153 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
155 2004-02-02 Paolo Carlini <pcarlini@suse.de>
158 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
159 Make the second parameter unnamed, to void unused parameter
161 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
162 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
164 2004-02-01 Paolo Carlini <pcarlini@suse.de>
166 * include/bits/stl_algo.h: Additional minor tweaks.
167 * include/bits/stl_map.h: Likewise.
168 * include/bits/stl_multimap.h: Likewise.
169 * include/bits/stl_multiset.h: Likewise.
170 * include/bits/stl_set.h: Likewise.
171 * include/bits/stl_tree.h: Likewise.
173 2004-02-01 Paolo Carlini <pcarlini@suse.de>
175 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
178 2004-02-01 Paolo Carlini <pcarlini@suse.de>
180 * include/bits/stl_function.h: Additional minor tweaks.
182 2004-02-01 Paolo Carlini <pcarlini@suse.de>
184 * include/bits/deque.tcc: Wrap overlong lines, constify
185 a few variables, reformat according to the coding standards.
186 * include/bits/list.tcc: Likewise.
187 * include/bits/stl_deque.h: Likewise.
188 * include/bits/stl_function.h: Likewise.
189 * include/bits/stl_iterator.h: Likewise.
190 * include/bits/stl_iterator_base_funcs.h: Likewise.
191 * include/bits/stl_iterator_base_types.h: Likewise.
192 * include/bits/stl_list.h: Likewise.
193 * include/bits/stl_map.h: Likewise.
194 * include/bits/stl_multimap.h: Likewise.
195 * include/bits/stl_multiset.h: Likewise.
196 * include/bits/stl_relops.h: Likewise.
197 * include/bits/stl_set.h: Likewise.
199 2004-02-01 Paolo Carlini <pcarlini@suse.de>
201 * include/bits/stl_bvector.h: Wrap overlong lines, constify
202 a few variables, reformat according to the coding standards.
203 * include/bits/stl_tree.h: Likewise.
205 2004-01-31 Paolo Carlini <pcarlini@suse.de>
207 * include/bits/stl_algo.h: Minor additional reformat, add
209 * include/bits/stl_algobase.h: Add copyright year.
211 2004-01-31 Paolo Carlini <pcarlini@suse.de>
213 * include/bits/stl_algo.h: Wrap overlong lines, constify
214 a few variables, reformat according to the coding standards.
215 * include/bits/stl_algobase.h: Likewise.
216 * include/bits/stl_heap.h: Likewise.
218 2004-01-31 Paolo Carlini <pcarlini@suse.de>
220 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
222 * include/bits/basic_string.h: Fix two comments.
224 2004-01-31 Per Bothner <per@bothner.com>
226 * include/ext/mt_allocator.h
227 (__mt_alloc::_S_thread_freelist_mutex): Guard with
228 __GTHREAD_MUTEX_INIT.
230 2004-01-31 Paolo Carlini <pcarlini@suse.de>
232 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
234 2004-01-30 Paolo Carlini <pcarlini@suse.de>
236 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
237 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
238 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
240 2004-01-30 Felix Yen <fwy@alumni.brown.edu>
242 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
243 Don't use clear, but instead assign. Use insert.
245 2004-01-30 Benjamin Kosnik <bkoz@redhat.com>
247 * src/demangle.cc: Add instantiations.
248 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
249 * src/Makefile.in: Regenerate.
251 2004-01-30 David Edelsohn <edelsohn@gnu.org>
253 * src/allocator.cc: Protect _S_get_thread_id() and
254 _S_thread_key_destr() with #ifdef __GTHREADS.
256 2004-01-30 Paolo Carlini <pcarlini@suse.de>
258 Reshuffle performance testsuite.
259 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
260 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
261 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
262 fstream_seek_write.cc, ifstream_extract_float.cc,
263 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
264 list_create_fill_sort.cc, map_create_fill.cc,
265 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
266 ofstream_insert_float.cc, ofstream_insert_int.cc,
267 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
268 wchar_t_out.cc: Split into...
269 * testsuite/performance/20_util/allocator.cc: New.
270 * testsuite/performance/20_util/allocator_map_thread.cc: New.
271 * testsuite/performance/20_util/allocator_thread.cc: New.
272 * testsuite/performance/21_strings/string_append: New.
273 * testsuite/performance/22_locale/is_wchar_t.cc: New.
274 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
275 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
276 * testsuite/performance/22_locale/wchar_t_in.cc: New.
277 * testsuite/performance/22_locale/wchar_t_length.cc: New.
278 * testsuite/performance/22_locale/wchar_t_out.cc: New.
279 * testsuite/performance/23_containers/container_benchmark.cc: New.
280 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
281 * testsuite/performance/23_containers/map_create_fill.cc: New.
282 * testsuite/performance/26_numerics/complex_norm.cc: New.
283 * testsuite/performance/27_io/cout_insert_int.cc: New.
284 * testsuite/performance/27_io/filebuf_copy.cc: New.
285 * testsuite/performance/27_io/filebuf_sputc.cc: New.
286 * testsuite/performance/27_io/fstream_seek_write.cc: New.
287 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
288 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
289 * testsuite/performance/27_io/ifstream_getline.cc: New.
290 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
291 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
293 2004-01-30 Paolo Carlini <pcarlini@suse.de>
295 * include/bits/basic_string.tcc (_Rep::_S_create):
296 Never allocate a string bigger than max_size(); always keep
297 __capacity and __size in sync to avoid memory leaks at
300 2004-01-30 Paolo Carlini <pcarlini@suse.de>
302 * include/bits/basic_string.tcc (_S_construct(_InIterator,
303 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
304 the double loop, streamline.
306 * include/bits/basic_string.tcc: Very minor tweaks.
308 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
310 * scripts/check_performance: Only compile with $THREAD_FLAG
311 when test is marked to require it. Allow multiple
312 compilations/executions of marked tests.
313 * testsuite/testsuite_performance.h (report_performance):
314 Report dynamic thread support status.
315 (report_header): Likewise.
316 * testsuite/performance/allocator.cc: Stabilize iteration
317 count. Support more allocators. Mark each allocator test to
318 run and report independently.
319 * testsuite/performance/allocator_map_thread.cc: Likewise.
320 * testsuite/performance/allocator_thread.cc: Likewise.
322 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
324 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
325 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
326 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
327 std::get_temporary_buffer() instead of duplicating its code.
328 Update to C++STYLE conventions.
329 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
330 new() instead of std::malloc().
331 (return_temporary_buffer): Use ::operator delete() instead of
334 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
336 * include/bits/allocator.h: Temporary switch to new_allocator as
337 the default to unjam bootstraps.
339 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
341 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
342 * include/Makefile.in: Regenerate.
343 * include/bits/allocator_traits.h: Remove.
344 * include/bits/allocator.h: Remove allocator_traits.h include, and
346 (allocator): Empty base class, inherit from the underlying allocator.
347 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
348 * src/allocator.cc: ...here. New. For the underlying allocators.
349 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
350 * config/linker-map.gnu: Remove __pool_alloc bits.
351 * src/Makefile.am (sources): Add allocator.cc.
352 * src/Makefile.in: Regenerate.
353 * testsuite/20_util/allocator/1.cc: Split second test into...
354 * testsuite/20_util/allocator/8230.cc: ...this.
355 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
356 typedef to use std::allocatore. Format.
357 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
359 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
360 __throw_bad_alloc calls. Don't include <memory>.
361 * include/ext/malloc_allocator.h: Remove <memory> include.
362 * include/ext/new_allocator.h (new_allocator): Same.
363 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
364 declaration. Switch __alloc to _Alloc.
365 * include/ext/hashtable.h: Remove __alloc.
366 * include/backward/alloc.h: Only inject allocator, not
367 implementation details.
369 * include/ext/mt_allocator.h: Replace free with delete.
371 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
373 * src/globals_io.cc: Change to __gnu_internal namespace.
374 * src/globals_locale.cc: Same.
375 * src/locale_init.cc: Same.
376 * src/ios_init.cc: Same.
378 2004-01-28 Stefan Olsson <stefan@snon.net>
380 * include/ext/mt_allocator.h: Replaced all malloc() calls with
381 operator new(). Added support for the env variable
382 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
383 one in allocate() as well). Fix typos.
385 2004-01-28 Paolo Carlini <pcarlini@suse.de>
387 * include/bits/basic_string.h (_S_create(size_t,
388 const _Alloc&): Change signature to take two size_type
390 * include/bits/basic_string.tcc (_S_construct(_InIterator,
391 _InIterator, const _Alloc&, input_iterator_tag)): Update
393 (_S_construct(_InIterator, _InIterator, const _Alloc&,
394 forward_iterator_tag)): Likewise.
395 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
396 (_M_mutate(size_type, size_type, size_type)): Don't
397 implement the exponential growth policy, demand it to
398 _S_create, update call and simplify.
399 (_M_clone(const _Alloc&, size_type)): Likewise.
400 (_S_create(size_type, size_type, const _Alloc&)): Implement
401 the growth policy, simplify otherwise.
403 * include/bits/basic_string.h (_Rep::operator[]): Tweak
404 signature to take a size_type, consistently with the other
407 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
409 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
410 delete declarations, add include and test variable.
412 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
414 * include/bits/codecvt.h, include/bits/locale_facets.h,
415 include/bits/postypes.h, include/bits/stl_bvector.h,
416 include/bits/stl_multiset.h, include/bits/stl_set.h,
417 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
418 include/std/std_complex.h: Document.
420 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
423 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
424 iword/pword selector.
425 (ios_base::iword, ios_base::pword): Use it.
426 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
427 iword or pword member on alloc failure.
428 * testsuite/27_io/ios_base/storage/11584.cc: New test.
430 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
431 PJ Darcy <darcypj@us.ibm.com>
433 * configure.host: Add support for *-tpf.
434 * crossconfig.m4: Likewise.
435 * configure: Regenerate.
436 * config/os/tpf: New directory.
437 * config/os/tpf/os_defines.h: New file.
438 * config/os/tpf/ctype_base.h: Likewise.
439 * config/os/tpf/ctype_inline.h: Likewise.
440 * config/os/tpf/ctype_noninline.h: Likewise.
442 2004-01-27 Paolo Carlini <pcarlini@suse.de>
445 * include/bits/sstream.tcc: Guard use of extern template.
447 2004-01-27 Paolo Carlini <pcarlini@suse.de>
449 * include/bits/basic_string.tcc
450 (basic_string(const basic_string&, size_type, size_type),
451 basic_string(const basic_string&, size_type, size_type,
452 const _Alloc&)): Avoid unnecessarily constructing iterators.
454 2004-01-26 Paolo Carlini <pcarlini@suse.de>
456 * config/locale/generic/c_locale.cc: Fix throw messages
457 to use the __N marker.
458 * config/locale/gnu/c_locale.cc: Likewise.
459 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
461 * docs/html/17_intro/C++STYLE: Likewise.
462 * include/bits/basic_ios.tcc: Likewise.
463 * include/bits/fstream.tcc: Likewise.
464 * include/bits/vector.tcc: Likewise.
465 * include/ext/ropeimpl.h: Likewise.
466 * include/std/std_bitset.h: Likewise.
467 * src/ios.cc: Likewise.
468 * src/locale.cc: Likewise.
469 * src/localename.cc: Likewise.
471 2004-01-26 Paolo Carlini <pcarlini@suse.de>
473 * include/bits/basic_string.h (_M_replace_aux): Use the
474 __N marker in throw message.
475 * include/bits/basic_string.tcc (assign(const _CharT*,
476 size_type), insert(size_type, const _CharT*, size_type),
477 replace(size_type, size_type, const _CharT*, size_type),
478 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
481 * include/bits/basic_string.h, include/bits/basic_string.tcc:
482 Fold overlong lines, minor formatting changes.
484 2004-01-26 Paolo Carlini <pcarlini@suse.de>
486 * include/bits/basic_string.h (replace(iterator, iterator,
487 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
488 (replace(iterator, iterator, const _CharT*)): Ditto.
489 (replace(iterator, iterator, const _CharT*, size_type)):
490 Add missing _GLIBCXX_DEBUG_PEDASSERT.
492 2004-01-26 Paolo Carlini <pcarlini@suse.de>
494 * include/bits/basic_string.tcc (replace(size_type,
495 size_type, const _CharT*, size_type)): Implement optimized
496 in-place algorithm for non-overlapping ranges.
497 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
498 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
500 * include/bits/basic_string.tcc (insert(size_type,
501 const _CharT*, size_type)): Tweak slightly.
503 2004-01-26 Andreas Schwab <schwab@suse.de>
505 * config/locale/gnu/monetary_members.cc: Restore locale before
506 rethrowing exception.
508 2004-01-25 Paolo Carlini <pcarlini@suse.de>
510 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
512 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
515 * include/bits/basic_string.tcc: Very minor tweaks.
517 2004-01-25 Paolo Carlini <pcarlini@suse.de>
519 * testsuite/performance/string_append.cc: Increase number
522 2004-01-25 Paolo Carlini <pcarlini@suse.de>
524 * include/bits/basic_string.h (erase(size_type, size_type),
525 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
526 instead, thus avoiding redundant check for length_error.
528 * include/bits/basic_string.h: Tweak some comments.
530 2004-01-24 Paolo Carlini <pcarlini@suse.de>
532 * include/bits/basic_string.tcc (operator+(const _CharT*,
533 const basic_string&)): No need to go through the append
534 taking two iterators.
536 2004-01-24 Paolo Carlini <pcarlini@suse.de>
538 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
539 Revert last change to use std::min: machine language is worse.
540 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
541 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
542 (find_last_not_of(_CharT, size_type)): Ditto.
544 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
545 size_type)): Discard the value returned by _M_check.
546 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
547 (append(const basic_string&, size_type, size_type)): Ditto.
548 (copy(_CharT*, size_type, size_type)): Ditto.
549 (compare(size_type, size_type, const basic_string&)): Ditto.
550 (compare(size_type, size_type, const basic_string&,
551 size_type, size_type)): Ditto.
552 (compare(size_type, size_type, const _CharT*)): Ditto.
553 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
555 2004-01-24 Paolo Carlini <pcarlini@suse.de>
557 * include/bits/basic_string.h (insert(size_type,
558 const basic_string&, size_type, size_type)): Define inline here.
559 * include/bits/basic_string.tcc (insert(size_type,
560 const basic_string&, size_type, size_type)): Move inline.
562 2004-01-24 Paolo Carlini <pcarlini@suse.de>
564 * include/bits/basic_string.h (assign(const basic_string&,
565 size_type, size_type)): Define inline here.
566 (replace(size_type, size_type, const basic_string&,
567 size_type, size_type)): Ditto.
568 (_M_replace_dispatch(iterator, iterator, _InputIterator,
569 _InputIterator, __false_type)): Only declare.
570 (_M_replace(iterator, iterator, _InputIterator,
571 _InputIterator)): Remove.
572 * include/bits/basic_string.tcc (assign(const basic_string&,
573 size_type, size_type)): Move inline.
574 (replace(size_type, size_type, const basic_string&,
575 size_type, size_type)): Ditto.
576 (_M_replace_dispatch(iterator, iterator, _InputIterator,
577 _InputIterator, __false_type)): Define, now does also what
578 _M_replace did before.
579 * src/string-inst.cc (_M_replace): Don't instantiate.
581 * include/bits/basic_string.tcc (find(const _CharT*,
582 size_type, size_type)): Tidy.
583 (rfind(_CharT, size_type)): Ditto.
584 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
585 (find_first_not_of(_CharT, size_type)): Ditto.
586 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
587 (find_last_not_of(_CharT, size_type)): Ditto.
589 2004-01-23 Paolo Carlini <pcarlini@suse.de>
592 * include/debug/bitset (operator|=): Fix typo.
593 * testsuite/23_containers/bitset/operations/13838.cc: New.
595 2004-01-23 Paolo Carlini <pcarlini@suse.de>
597 * include/bits/basic_string.tcc (insert(size_type,
598 const _CharT*, size_type __n)): Fix length_error check.
599 (replace(size_type, size_type, const _CharT*, size_type):
600 Ditto; call _M_replace_safe.
601 (_M_replace_aux(size_type, size_type, size_type, _CharT):
602 Fix length_error check.
603 (_M_replace(iterator, iterator, _InputIterator,
604 _InputIterator)): Ditto, tweak.
605 (_M_replace_safe(size_type, size_type, const _CharT*,
606 size_type)): Remove length_error check.
608 * include/bits/basic_string.tcc (append(const basic_string&),
609 append(const basic_string&, size_type, size_type)): Tweak
612 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
613 size_type)): If __n == 0 don't call traits::copy.
615 2004-01-23 Stefan Olsson <stefan@snon.net>
617 * include/ext/mt_allocator.h: Reduce lock contention.
619 2004-01-23 Paolo Carlini <pcarlini@suse.de>
622 * include/bits/fstream.tcc (underflow): Remove unused
624 * include/bits/streambuf_iterator.h (equal): Ditto.
625 * include/bits/locale_facets.h (_M_convert_from_char):
628 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
631 * config/linker-map.gnu (nan): Delete.
632 * libmath/mathconf.h (NAN, nan): Delete.
633 * linkage.m4 (nan): Don't check for it.
634 * libmath/nan.c: Delete file.
636 * config.h.in, configure: Regenerate.
638 2004-01-23 Paolo Carlini <pcarlini@suse.de>
640 * include/bits/basic_string.h (push_back(_CharT)):
642 (insert(size_type, const basic_string&)): Trivial tweak.
643 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
644 (insert(iterator, _CharT)): Ditto.
645 (erase(size_type, size_type)): Ditto.
646 (erase(iterator)): Ditto.
647 (erase(iterator, iterator)): Ditto.
648 (replace(size_type, size_type, size_type, _CharT)): Ditto.
650 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
653 * testsuite/performance/allocator_map_thread.cc: New test.
655 2004-01-22 Paolo Carlini <pcarlini@suse.de>
657 * include/bits/locale_facets.tcc
658 (money_put::do_put(..., long double)): Use the basic_string
659 constructor for char arrays, not that for C-strings, to pass
660 __digits to do_put(..., const string_type&): __ws isn't
663 2004-01-22 Paolo Carlini <pcarlini@suse.de>
665 * include/bits/basic_string.h (_M_replace_safe): Change
666 signatures to take size_types and const _CharT*.
667 (_M_replace_aux): Likewise, takes size_types instead of
669 (append(size_type, _CharT)): Update call.
670 (assign(size_type, _CharT)): Ditto.
671 (replace(iterator, iterator, size_type, _CharT)): Ditto.
672 (_M_replace_dispatch(iterator, iterator, _Integer,
673 _Integer, __true_type)): Ditto.
674 * include/bits/basic_string.tcc (assign(const _CharT*,
676 (insert(size_type, const _CharT*, size_type)): Ditto.
677 (replace(size_type, size_type, const _CharT*,
679 (_M_replace(iterator, iterator, _InputIterator,
680 _InputIterator)): Ditto.
681 (append(const basic_string&)): Ditto.
682 (append(const basic_string&, size_type, size_type): Ditto.
683 (append(const _CharT*, size_type): Ditto.
684 (_M_replace_safe, _M_replace_safe): Change definitions
685 accordingly, simplify.
686 * string-inst.cc (_M_replace_safe): Don't instantiate.
688 2004-01-21 Paolo Carlini <pcarlini@suse.de>
690 * include/bits/basic_string.tcc (append(const basic_string&)):
691 Revert previous change.
692 (append(const basic_string&, size_type, size_type)): Revert
693 previous change, use _M_check and _M_limit.
695 2004-01-21 Paolo Carlini <pcarlini@suse.de>
697 * include/bits/basic_string.h (_M_check): Change to return
698 a checked __pos and take an additional const char* argument.
699 (_M_fold): Rename to _M_limit, change to return a size_type,
700 corresponding to the __off limited to the actual length.
701 (insert(size_type, size_type, _CharT)): Update call, call
703 (insert(iterator, _CharT)): Call replace(iterator, iterator,
704 size_type, _CharT) instead.
705 (erase(size_type, size_type)): Update calls.
706 (replace(size_type, size_type, size_type, _CharT)): Ditto.
707 (substr(size_type, size_type)): Use _M_check.
708 * include/bits/basic_string.tcc (basic_string(const basic_string&,
709 size_type, size_type)): Update calls.
710 (basic_string(const basic_string&, size_type, size_type,
711 const _Alloc&)): Ditto.
712 (assign(const basic_string&, size_type, size_type)): Use the
713 new _M_check and _M_limit.
714 (insert(size_type, const basic_string&, size_type, size_type):
716 (insert(size_type, const _CharT*, size_type)): Ditto.
717 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
718 (replace(size_type, size_type, const basic_string&,
719 size_type, size_type)): Ditto.
720 (append(const basic_string&)): Ditto.
721 (append(const basic_string&, size_type, size_type)): Ditto.
722 (copy(_CharT*, size_type, size_type)): Ditto.
723 (compare(size_type, size_type, const basic_string&)): Ditto.
724 (compare(size_type, size_type, const basic_string&,size_type,
726 (compare(size_type, size_type, const _CharT*)): Ditto.
727 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
729 2004-01-19 Stefan Olsson <stefan@snon.net>
731 * include/ext/mt_allocator.h: If a thread, when it dies, still has
732 memory on it's freelist this memory is not returned to global
733 list. Simplification of deallocate so that memory is always
734 returned to the calling thread id's freelist instead of to
735 global. Fix typos. Add volatile where appropriate.
737 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
739 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
740 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
741 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
743 2004-01-19 Paolo Carlini <pcarlini@suse.de>
745 * src/debug.cc: Make sure all the names are prefixed with
746 double (or single) underscore.
748 2004-01-19 Paolo Carlini <pcarlini@suse.de>
750 * src/debug.cc: Trivial formatting change.
752 2004-01-19 Paolo Carlini <pcarlini@suse.de>
754 * include/bits/basic_string.tcc (_S_construct(size_type,
755 _CharT, const _Alloc&)): Remove redundant try/catch.
756 (_M_mutate(size_type, size_type, size_type)): Ditto.
757 (_M_clone(const _Alloc&, size_type)): Ditto.
759 2004-01-18 Paolo Carlini <pcarlini@suse.de>
761 * include/bits/basic_string.h (c_str()): Simplify, due to
762 21.3.4 the internal representation is always kept null-terminated.
763 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
764 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
765 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
768 2004-01-18 Paolo Carlini <pcarlini@suse.de>
770 * include/bits/basic_string.h (append(size_type, _CharT)):
771 Moved inline, just call _M_replace_aux, no source iterators at
772 risk of being clobbered.
773 (assign(size_type, _CharT)): Call directly _M_replace_aux.
774 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
775 input_iterator_tag)): Remove fifth unused argument.
776 (_M_replace_dispatch(iterator, iterator, _InputIterator,
777 _InputIterator, __false_type)): Update call.
778 * include/bits/basic_string.tcc (replace(size_type, size_type,
779 const _CharT*, size_type)): Update call.
780 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
781 throw string literal.
782 (_M_replace_safe(iterator, iterator, _ForwardIterator,
783 _ForwardIterator)): Likewise.
784 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
785 input_iterator_tag)): Remove fifth unused argument.
786 (append(size_type __n, _CharT __c)): Move inline.
787 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
788 const C*, const C*, input_iterator_tag)): Remove fifth unused
791 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
793 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
794 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
796 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
798 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
801 2004-01-15 Stefan Olsson <stefan@snon.net>
803 * include/ext/mt_allocator.h: Reuse thread id's as soon as
804 possible by changing the behaviour of thread_freelist to do
805 push_front when threads die instead of push_back.
807 2004-01-14 Paolo Carlini <pcarlini@suse.de>
809 * include/bits/locale_facets.h (struct __numpunct_cache):
810 Add member _M_grouping_size, caching the length of _M_grouping.
811 (__numpunct_cache<>::_M_cache): Assign the latter.
812 (__verify_grouping): Move declaration...
813 * include/bits/locale_facets.tcc (__verify_grouping):
814 ... here, change signature to take a const char* and a size_t
815 for the grouping; not a template anymore.
816 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
817 Likewise change signature and tweak consistently.
818 (num_get::_M_extract_float, num_get::_M_extract_int,
819 num_put::_M_insert_int, num_put::_M_insert_float,
820 money_get::do_get(string_type&), money_get::do_put(string_type)):
822 * config/locale/generic/numeric_members.cc
823 (numpunct<>::_M_initialize_numpunct): Assign the new member.
824 * config/locale/gnu/numeric_members.cc
825 (numpunct<>::_M_initialize_numpunct): Likewise.
826 * src/locale-inst.cc (__add_grouping): Tweak signature.
827 (__verify_grouping): Don't instantiate, not a template anymore.
829 * include/bits/locale_facets.h: Rename _M_truename_len ->
830 _M_truename_size, _M_falsename_len -> _M_falsename_size.
831 * include/bits/locale_facets.tcc: Likewise.
832 * config/locale/generic/numeric_members.cc: Likewise.
833 * config/locale/gnu/numeric_members.cc: Likewise.
835 2004-01-14 Stefan Olsson <stefan@snon.net>
837 * include/ext/mt_allocator.h: Fixups.
838 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
839 * testsuite/performance/allocator_thread.cc: Same.
841 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
843 * testsuite/performance/ifstream_extract_float.cc: Add higher
845 * testsuite/performance/ofstream_insert_float.cc: Same.
847 2004-01-13 Paolo Carlini <pcarlini@suse.de>
849 * src/locale-misc-inst.cc (__convert_from_v(long),
850 __convert_from_v(unsigned long), __convert_from_v(long long),
851 __convert_from_v(unsigned long long)): Remove, unused.
853 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
855 * testsuite/performance/ifstream_extract_float.cc: New.
856 * testsuite/performance/ofstream_insert_float.cc: Float generation
859 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
860 * 20_util/auto_ptr/1.cc: ...this.
861 * 20_util/auto_ptr/2.cc: Same.
862 * 20_util/auto_ptr/3.cc: Same.
863 * 20_util/auto_ptr/3946.cc: Same.
864 * 20_util/auto_ptr/4.cc: Same.
865 * 20_util/auto_ptr/5.cc: Same.
866 * 20_util/auto_ptr/6.cc: Same.
867 * 20_util/auto_ptr/7.cc: Same.
868 * 20_util/auto_ptr/assign_neg.cc
869 * 20_util/pairs.cc: Break into...
870 * 20_util/pair/1.cc: ...this.
871 * 20_util/pair/2.cc: Same.
872 * 20_util/pair/3.cc: Same.
873 * 20_util/pair/4.cc: Same.
875 2004-01-13 Paolo Carlini <pcarlini@suse.de>
877 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
878 Set correctly just basefield, the only group that matters.
880 2004-01-13 Paolo Carlini <pcarlini@suse.de>
882 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
883 (_Rope_rep_base): Inherit directly from the rope allocator;
884 use rebinding instead of _Alloc_traits; pick up data member
885 from _Rope_rep_alloc_base.
886 (_Rope_alloc_base): Eliminate.
887 (_Rope_base): Inherit directly from the rope allocator; use
888 rebinding instead of _Alloc_traits; pick up data member from
890 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
891 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
893 2004-01-13 Paolo Carlini <pcarlini@suse.de>
896 * include/bits/basic_string.tcc (compare(size_type, size_type,
897 const _CharT*, size_type)): Implement correctly the resolution
898 of DR 5: basically, s is a char array, -not- a C string.
899 * include/bits/basic_string.h: Tweak some comments.
900 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
901 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
903 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
905 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
908 2004-01-12 Paolo Carlini <pcarlini@suse.de>
910 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
912 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
915 2004-01-12 Paolo Carlini <pcarlini@suse.de>
917 * include/bits/locale_facets.h (struct __numpunct_cache):
918 Add members _M_truename_len and _M_falsename_len, caching
919 the lengths of _M_truename and _M_falsename.
920 (__numpunct_cache<>::_M_cache): Assign the latter.
921 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
922 num_put::do_put(bool)): Use the new members, thus avoiding
923 computing string lengths again and again.
924 * config/locale/generic/numeric_members.cc
925 (numpunct<>::_M_initialize_numpunct): Assign the new members.
926 * config/locale/gnu/numeric_members.cc
927 (numpunct<>::_M_initialize_numpunct): Likewise.
929 2004-01-12 Mark Mitchell <mark@codesourcery.com>
931 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
932 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
934 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
935 and remove Cygwin XFAIL.
936 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
937 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
938 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
939 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
941 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
942 * testsuite/27_io/objects/char/7.cc: Likewise.
943 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
944 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
945 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
947 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
949 * include/std/std_complex.h (std::complex<>::real): Return a
950 reference. Add non-const overload.
951 (std::complex<>::real): Likewise.
952 (std::real): Likewise.
953 (std::imag): Likewise.
954 (std::operator+): Tidy.
955 (std::operator-): Likewise.
956 (std::operator*): Likewise.
957 (std::operator/): Likewise.
958 (std::operator>>): Likewise.
960 2004-01-11 Paolo Carlini <pcarlini@suse.de>
963 * include/bits/fstream.tcc (imbue): Exploit the external
964 buffer to imbue 'on the fly' a new locale and convert its
965 remainder with the new codecvt facet.
966 (underflow): Tweak slightly to deal with this special case.
967 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
968 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
969 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
970 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
971 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
973 2004-01-10 Paolo Carlini <pcarlini@suse.de>
975 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
978 2004-01-10 Paolo Carlini <pcarlini@suse.de>
981 * include/bits/locale_classes.h (class locale): Fix category
983 * testsuite/22_locale/locale/13630.cc: Add.
985 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
987 * include/bits/locale_facets.h: Make a name really dependent. This
988 will be needed when Core Issue 224 is implemented.
990 2004-01-09 Paolo Carlini <pcarlini@suse.de>
992 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
993 * testsuite/performance/allocator_thread.cc: Likewise.
995 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
997 * crossconfig.m4: Add LFS, io bits to linux cross config.
998 * acconfig.h: Remove obsolete bits, reorder.
999 * config.h.in: Regenerate.
1003 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
1005 * include/bits/stl_list.h:
1006 * include/bits/list.tc:
1008 Performance enhancements for destructor, push_front(),
1009 push_back(), pop_front(), pop_back(), sort()
1010 Eliminated static_casts where possible.
1011 Moved code out of header files into new src/list.cc
1012 implementation file for library where possible.
1013 Remove inheritance from iterator class and create separate
1014 classes for non-constant and constant iterators.
1015 * include/bits/stl_tree.h (_Rb_tree class):
1017 Only erase contents in destructor.
1018 Eliminate unnecessary initialization in assignment operator.
1019 Optimize for the nominal case by not checking whether
1020 container is empty in clear().
1021 Re-order test in _M_insert() to improve performance.
1022 Move initialization of new node's left & right pointers to
1023 src/tree.cc to where new node's colour is initialized
1024 and to reduce the amount of inline code.
1025 Use _M_leftmost() and _M_end() to improve readability where
1027 Create separate classes for non-constant and constant
1028 iterators to clarify code, avoid extra template parameters and
1029 casting away constness.
1031 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
1033 * src/Makefile.am (sources): Add list.cc, tree.cc.
1034 * src/stl_tree.cc: Move to...
1035 * src/tree.cc: ...here.
1037 * config/linker-map.gnu: Tweaks.
1038 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
1039 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
1041 * bits/stl_vector.h: Column wrap comments.
1043 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
1045 (re-open) PR libstdc++/12658
1046 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
1047 (locale::global): Likewise.
1049 2004-01-07 Paolo Carlini <pcarlini@suse.de>
1051 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
1052 Remove redundant #include.
1053 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
1054 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
1055 re-enable normal testing.
1056 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
1058 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1059 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
1061 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
1063 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
1065 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
1067 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
1069 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
1071 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
1073 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1074 More properly, #include <locale>.
1075 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1076 Remove redundant #include.
1077 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
1078 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
1079 redundant DejaGnu directive.
1080 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
1083 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
1084 Stefan Olsson <stefan@snon.net>
1086 * scripts/check_performance: Use -pthread.
1087 * testsuite/performance/allocator.cc: Tweaks, add list.
1088 * testsuite/performance/allocator_thread.cc: New.
1090 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
1092 * include/bits/locale_facets.h: Document public classes and
1094 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1097 2004-01-06 Paolo Carlini <pcarlini@suse.de>
1099 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
1100 Remove redundant #includes.
1101 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
1103 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
1105 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1106 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1107 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1108 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1109 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1110 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1111 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1112 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1113 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1114 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1115 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1116 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1117 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1118 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1119 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
1121 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
1123 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
1125 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
1127 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
1129 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1130 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1131 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1133 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1135 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1136 Remove redundant #includes.
1137 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1139 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1141 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1143 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1145 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1147 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1149 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1151 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1153 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1155 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1157 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1159 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1162 2004-01-04 Mark Mitchell <mark@codesourcery.com>
1165 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
1167 * testsuite/27_io/basic_fstream/4.cc: Likewise.
1168 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
1169 * testsuite/27_io/basic_ios/4.cc: Likewise.
1170 * testsuite/27_io/basic_iostream/4.cc: Likewise.
1171 * testsuite/27_io/basic_istream/4.cc: Likewise.
1172 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
1173 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
1174 * testsuite/27_io/basic_ostream/4.cc: Likewise.
1175 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
1176 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
1177 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
1179 2004-01-04 Paolo Carlini <pcarlini@suse.de>
1181 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
1182 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
1183 always use double underscored names.
1184 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
1186 * include/bits/locale_facets.h (struct __numpunct_cache):
1187 Dimension _M_atoms_out and _M_atoms_in one position smaller.
1188 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out