]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
1b81e1b5
PB
12004-02-09 Paul Brook <paul@codesourcery.com>
2
3 * libstdc++-v3/configure.host: Explicitly check for atomicity.h file.
4
cf0d2c40
PC
52004-02-09 Paolo Carlini <pcarlini@suse.de>
6
7 PR libstdc++/14071
8 * src/locale_init.cc (locale::global(const locale&)): Use
9 locale::name() in order to decide whether calling setlocale.
10 * testsuite/22_locale/locale/global_locale_objects/14071.cc: New.
11
12 * include/bits/locale_classes.h (locale::_Impl::_M_check_same_name()):
13 Avoid computing &= unnecessarily.
14
664fc5df
JW
152004-02-09 James E Wilson <wilson@specifixinc.com>
16
17 PR libstdc++/5625
18 * libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
19 __builtin_extend_pointer.
20
86fd2b51
PC
212004-02-09 Paolo Carlini <pcarlini@suse.de>
22
23 PR libstdc++/14072
24 * include/bits/basic_ios.tcc (basic_ios<>::_M_cache_locale):
25 Don't leave dangling pointers.
26 * testsuite/27_io/basic_ios/imbue/14072.cc: New.
27 * testsuite/22_locale/numpunct/members/pod/2.cc: Tweak, the num_put
28 facet is needed in the final test.
29
f19e9e4d
BI
302004-02-09 Bernardo Innocenti <bernie@develer.com>
31
32 * crossconfig.m4: Don't enable _GLIBCXX_USE_LFS on *-uclinux*.
33 * configure: Regenerate.
34
c3862806
RH
352004-02-08 Richard Henderson <rth@redhat.com>
36
37 PR libstdc++/14026
38 * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
39 uncaughtExceptions during nested catch rethrow.
40 * testsuite/18_support/14026.cc: New.
41
fd95f498
PC
422004-02-08 Paolo Carlini <pcarlini@suse.de>
43
44 * include/bits/basic_string.tcc (assign(const _CharT*, size_type)):
45 When working in place remember to set the state to sharable
46 (otherwise, _M_mutate does it).
47
ed6814f7
BI
482004-02-08 Bernardo Innocenti <bernie@develer.com>
49
50 * include/bits/allocator.h, include/bits/basic_ios.h,
51 include/bits/basic_ios.tcc, include/bits/basic_string.h,
52 include/bits/basic_string.tcc, include/bits/boost_concept_check.h,
53 include/bits/char_traits.h, include/bits/codecvt.h,
54 include/bits/concurrence.h, include/bits/cpp_type_traits.h,
55 include/bits/demangle.h, include/bits/deque.tcc,
56 include/bits/fstream.tcc, include/bits/functexcept.h,
57 include/bits/gslice.h, include/bits/gslice_array.h,
58 include/bits/indirect_array.h, include/bits/ios_base.h,
59 include/bits/istream.tcc, include/bits/list.tcc,
60 include/bits/locale_classes.h, include/bits/locale_facets.h,
61 include/bits/locale_facets.tcc, include/bits/localefwd.h,
62 include/bits/mask_array.h, include/bits/ostream.tcc,
63 include/bits/postypes.h, include/bits/slice_array.h,
64 include/bits/sstream.tcc, include/bits/stl_algo.h,
65 include/bits/stl_algobase.h, include/bits/stl_bvector.h,
66 include/bits/stl_construct.h, include/bits/stl_deque.h,
67 include/bits/stl_function.h, include/bits/stl_heap.h,
68 include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
69 include/bits/stl_list.h, include/bits/stl_map.h,
70 include/bits/stl_multimap.h, include/bits/stl_multiset.h,
71 include/bits/stl_numeric.h, include/bits/stl_pair.h,
72 include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
73 include/bits/stl_relops.h, include/bits/stl_set.h,
74 include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
75 include/bits/stl_threads.h, include/bits/stl_tree.h,
76 include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
77 include/bits/stream_iterator.h, include/bits/streambuf.tcc,
78 include/bits/streambuf_iterator.h,include/bits/stringfwd.h,
79 include/bits/type_traits.h, include/bits/valarray_after.h,
80 include/bits/valarray_array.h, include/bits/valarray_array.tcc,
81 include/bits/valarray_before.h, include/bits/vector.tcc: Remove
82 trailing whitespace.
83
eee54836
PC
842004-02-06 Paolo Carlini <pcarlini@suse.de>
85
86 * include/bits/basic_string.h: Fix comment.
87
15d72060
PC
882004-02-06 Paolo Carlini <pcarlini@suse.de>
89
90 * include/bits/stl_construct.h: Wrap overlong lines, reformat
91 according to the coding standards.
92 * include/bits/stl_pair.h: Likewise.
93 * include/bits/stl_raw_storage_iter.h: Likewise.
94 * include/bits/stl_stack.h: Likewise.
95 * include/bits/stl_uninitialized.h: Likewise.
96 * include/bits/stream_iterator.h: Likewise.
97 * include/bits/streambuf_iterator.h: Likewise.
98 * include/bits/type_traits.h: Likewise.
99
c5dd98f3
PC
1002004-02-06 Paolo Carlini <pcarlini@suse.de>
101
102 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
103 Adjust timings.
104
462f4a81
LR
1052004-02-05 Loren J. Rittle <ljrittle@acm.org>
106
107 * scripts/check_performance: Support PCH.
108
fbdf188d
LR
109 * scripts/check_performance (CXX): Add -DNOTHREAD.
110 * testsuite/performance/20_util/allocator/insert.cc: Integrate
111 threaded tests from insert_insert.cc. Tweak iterations,
112 remove special cases.
113 * testsuite/performance/20_util/allocator/insert_insert.cc:
114 Make all tests single-threaded. Tweak iterations.
115 * testsuite/performance/20_util/allocator/map_thread.cc:
116 Tweak iterations.
117 * testsuite/performance/20_util/allocator/producer_consumer.cc:
118 Likewise.
119
0314451d
GK
1202004-02-05 Geoffrey Keating <geoffk@apple.com>
121
122 PR 12179
123 * .cvsignore: New.
124 * acinclude.m4 (GLIBCXX_EXPORT_INSTALL_INFO): Use 'gcc', not
125 'gcc-lib'. Add comment about poorly-named variables.
126 * aclocal.m4: Regenerate.
127 * configure: Regenerate.
128
d9010fca
PC
1292004-02-05 Paolo Carlini <pcarlini@suse.de>
130
131 * include/bits/locale_facets.tcc (money_get::do_get(string_type&)):
132 Thousands-sep are always optional; thousands-sep are not allowed
133 after the decimal_point.
134 * testsuite/22_locale/money_get/get/char/12.cc: New.
135 * testsuite/22_locale/money_get/get/char/13.cc: New.
136 * testsuite/22_locale/money_get/get/wchar_t/12.cc: New.
137 * testsuite/22_locale/money_get/get/wchar_t/13.cc: New.
138
139 * testsuite/22_locale/money_get/get/char/1.cc: Clean-up.
140 * testsuite/22_locale/money_get/get/char/2.cc: Likewise.
141 * testsuite/22_locale/money_get/get/char/3.cc: Likewise.
142 * testsuite/22_locale/money_get/get/char/4.cc: Likewise.
143 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
144 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Likewise.
145 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Likewise.
146 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Likewise.
147
148 * testsuite/22_locale/money_get/get/char/9.cc: Fix citation from
149 the standard.
150 * testsuite/22_locale/money_get/get/wchar_t/9.cc: Likewise.
151
d232925f
RS
1522004-02-05 Richard Sandiford <rsandifo@redhat.com>
153
154 * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
155 Define.
156 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
157 it to decide whether FIONREAD should take an off_t or int argument.
158
92ff3e43
PC
1592004-02-05 Paolo Carlini <pcarlini@suse.de>
160
161 * include/bits/stl_function.h: Minor formatting changes.
162
9fe7e2b7
ZW
1632004-02-04 Zack Weinberg <zack@codesourcery.com>
164
165 Revert previous change to config/abi/*/baseline_symbols.txt.
166
6a734d61
BK
1672004-02-04 Benjamin Kosnik <bkoz@redhat.com>
168 Zack Weinberg <zack@codesourcery.com>
169
170 * config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
171 New function.
172 (__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
173 (__basic_file<char>::_M_open_mode): Delete.
174 * config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
175
176 * testsuite/27_io/basic_filebuf/close/char/9964.cc
177 * testsuite/27_io/basic_filebuf/open/char/9507.cc:
178 Correct flags to filebuf::open calls.
179
180 * config/abi/alpha-freebsd5/baseline_symbols.txt
181 * config/abi/alpha-linux-gnu/baseline_symbols.txt
182 * config/abi/hppa-linux-gnu/baseline_symbols.txt
183 * config/abi/i386-freebsd4/baseline_symbols.txt
184 * config/abi/i386-freebsd5/baseline_symbols.txt
185 * config/abi/i486-linux-gnu/baseline_symbols.txt
186 * config/abi/ia64-linux-gnu/baseline_symbols.txt
187 * config/abi/mips-linux-gnu/baseline_symbols.txt
188 * config/abi/sparc-freebsd5/baseline_symbols.txt
189 * config/abi/sparc-linux-gnu/baseline_symbols.txt
190 * config/abi/x86_64-linux-gnu/baseline_symbols.txt:
191 Remove entry for __basic_file<char>::_M_open_mode.
192
f63fd68b
LR
1932004-02-04 Loren J. Rittle <ljrittle@acm.org>
194
195 * testsuite/performance/20_util/allocator/insert.cc (main): Tweak.
196
de8a2f87
BK
1972004-02-04 Felix Yen <fwy@alumni.brown.edu>
198
199 * testsuite/performance/20_util/producer_consumer.cc: New.
200 * testsuite/performance/20_util/allocator/insert_insert.cc: Two loops.
6a734d61 201
de8a2f87 2022004-02-04 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 203
de8a2f87 204 * testsuite/performance/20_util/allocator.cc: Move to..
6a734d61 205 * testsuite/performance/20_util/allocator/insert.cc: ...here.
de8a2f87
BK
206 * testsuite/performance/20_util/allocator_thread.cc: Move to...
207 * testsuite/performance/20_util/allocator/insert_insert.cc: ...here.
208 * testsuite/performance/20_util/allocator_map_thread.cc: Move to...
209 * testsuite/performance/20_util/allocator/map_thread.cc: ...here.
6a734d61 210
772fec9a
JW
2112004-02-04 Jonathan Wakely <redi@gcc.gnu.org>
212
213 * docs/html/faq/index.html: Recommend using LD_LIBRARY_PATH.
214 * docs/html/faq/index.txt: Regenerate.
215
56766e0d
DM
2162004-02-04 Dhruv Matani <dhruvbird@gmx.net>
217
218 * include/ext/debug_allocator.h: _M_extra now stands for the
219 number of extra objects instead of the number of extra bytes.
220 (debug_allocator::allocate): Adjust.
221 (debug_allocator::deallocate): Adjust.
222
223 * include/ext/pool_allocator.h: Fix typo.
224
22269632
FY
2252004-02-03 Felix Yen <fwy@alumni.brown.edu>
226 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 227
22269632
FY
228 * testsuite/performance/20_util/allocator.cc: Add map,
229 deque, set tests.
230 * testsuite/performance/20_util/allocator_thread.cc: Same.
6a734d61 231
129e9210
PC
2322004-02-03 Paolo Carlini <pcarlini@suse.de>
233
234 * include/bits/basic_string.h (insert(iterator)): Remove,
235 non-standard and already scheduled for removal.
236
83042fca
PC
2372004-02-03 Paolo Carlini <pcarlini@suse.de>
238
239 * include/bits/stl_iterator_base_funcs.h: Minor formatting
240 and indentation tweaks.
241 * include/bits/stl_iterator_base_types.h: Likewise.
242 * include/bits/stl_list.h: Likewise.
243 * include/bits/stl_map.h: Likewise.
244 * include/bits/stl_tempbuf.h: Likewise.
245
06a81b60
JQ
2462004-02-02 Jerry Quinn <jlquinn@optonline.net>
247
248 * include/bits/gslice.h, include/bits/gslice_array.h,
249 include/bits/indirect_array.h, include/bits/mask_array.h,
250 include/bits/slice_array.h, include/bits/stl_numeric.h,
251 include/std/std_valarray.h: Update copyright years.
252
7fb397a4
JQ
2532004-02-02 Jerry Quinn <jlquinn@optonline.net>
254
255 * include/bits/gslice.h (gslice): Document.
256 * include/bits/gslice_array.h (gslice_array): Document.
257 * include/bits/indirect_array (indirect_array): Document.
258 * include/bits/mask_array (mask_array): Document.
259 * include/bits/slice_array.h (slice,slice_array): Document.
260 * include/bits/stl_numeric.h (accumulate, inner_product, partial_sum,
261 adjacent_difference): Document
262 * include/std/std_valarray.h (valarray): Document.
263
7f7fb4ef
BK
2642004-02-02 Benjamin Kosnik <bkoz@redhat.com>
265
6a734d61
BK
266 * docs/html/19_diagnostics/howto.html: Move verbose terminate
267 documentation...
268 * docs/html/18_support/howto.html: Here.
269 * docs/html/documentation.html: Add reference here.
270
9924f721
PC
2712004-02-02 Paolo Carlini <pcarlini@suse.de>
272
273 * config/locale/gnu/c++locale_internal.h: Remove prototypes
274 of no longer used GLIBC thread locale functions.
275
2ba43229 2762004-02-02 Eric Christopher <echristo@redhat.com>
6a734d61 277 Zack Weinberg <zack@codesourcery.com>
16dd5cfe
EC
278
279 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Remove xfail. Use
6a734d61
BK
280 -finput-charset.
281 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc: Ditto.
282 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc: Ditto
16dd5cfe 283 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Ditto.
6a734d61
BK
284 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc: Ditto.
285 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc: Ditto.
286 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Ditto.
287 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc: Ditto.
288 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
16dd5cfe
EC
289 Ditto.
290
7c920151
PC
2912004-02-02 Paolo Carlini <pcarlini@suse.de>
292
293 * include/bits/stl_function.h: Additional minor tweaks.
294 * include/bits/stl_multiset.h: Likewise.
295
296 * include/bits/stl_queue.h: Minor tweaks.
297
dcec0389
PC
2982004-02-02 Paolo Carlini <pcarlini@suse.de>
299
300 PR libstdc++/13976 (continued)
301 * include/ext/malloc_allocator.h (malloc_allocator::deallocate):
302 Make the second parameter unnamed, to void unused parameter
303 warnings.
304 * include/ext/new_allocator.h (new_allocator::deallocate): Ditto.
305
90f8b692
PC
3062004-02-02 Paolo Carlini <pcarlini@suse.de>
307
308 PR libstdc++/13976
309 * include/ext/malloc_allocator.h (malloc_allocator::allocate):
310 Make the second parameter unnamed, to void unused parameter
311 warnings.
312 * include/ext/mt_allocator.h (__mt_alloc::allocate): Ditto.
313 * include/ext/new_allocator.h (new_allocator::allocate): Ditto.
314
737ab798
PC
3152004-02-01 Paolo Carlini <pcarlini@suse.de>
316
317 * include/bits/stl_algo.h: Additional minor tweaks.
318 * include/bits/stl_map.h: Likewise.
319 * include/bits/stl_multimap.h: Likewise.
320 * include/bits/stl_multiset.h: Likewise.
321 * include/bits/stl_set.h: Likewise.
322 * include/bits/stl_tree.h: Likewise.
323
64ebadac
PC
3242004-02-01 Paolo Carlini <pcarlini@suse.de>
325
326 * include/bits/vector.tcc (vector::_M_insert_aux(iterator)):
327 Remove, unused.
328
afd4cbbb
PC
3292004-02-01 Paolo Carlini <pcarlini@suse.de>
330
331 * include/bits/stl_function.h: Additional minor tweaks.
332
f6592a9e
PC
3332004-02-01 Paolo Carlini <pcarlini@suse.de>
334
335 * include/bits/deque.tcc: Wrap overlong lines, constify
336 a few variables, reformat according to the coding standards.
337 * include/bits/list.tcc: Likewise.
338 * include/bits/stl_deque.h: Likewise.
339 * include/bits/stl_function.h: Likewise.
340 * include/bits/stl_iterator.h: Likewise.
341 * include/bits/stl_iterator_base_funcs.h: Likewise.
342 * include/bits/stl_iterator_base_types.h: Likewise.
343 * include/bits/stl_list.h: Likewise.
344 * include/bits/stl_map.h: Likewise.
345 * include/bits/stl_multimap.h: Likewise.
346 * include/bits/stl_multiset.h: Likewise.
347 * include/bits/stl_relops.h: Likewise.
348 * include/bits/stl_set.h: Likewise.
349
62e67651
PC
3502004-02-01 Paolo Carlini <pcarlini@suse.de>
351
352 * include/bits/stl_bvector.h: Wrap overlong lines, constify
353 a few variables, reformat according to the coding standards.
354 * include/bits/stl_tree.h: Likewise.
355
8f7ca398
PC
3562004-01-31 Paolo Carlini <pcarlini@suse.de>
357
358 * include/bits/stl_algo.h: Minor additional reformat, add
359 copyright year.
360 * include/bits/stl_algobase.h: Add copyright year.
361
ffa67767
PC
3622004-01-31 Paolo Carlini <pcarlini@suse.de>
363
364 * include/bits/stl_algo.h: Wrap overlong lines, constify
365 a few variables, reformat according to the coding standards.
366 * include/bits/stl_algobase.h: Likewise.
367 * include/bits/stl_heap.h: Likewise.
368
8de63ee0
PC
3692004-01-31 Paolo Carlini <pcarlini@suse.de>
370
371 * include/bits/basic_string.h (_Rep::operator[]): Remove, unused.
372
373 * include/bits/basic_string.h: Fix two comments.
374
af3fb3d6
PB
3752004-01-31 Per Bothner <per@bothner.com>
376
377 * include/ext/mt_allocator.h
378 (__mt_alloc::_S_thread_freelist_mutex): Guard with
379 __GTHREAD_MUTEX_INIT.
380
24f33069
PC
3812004-01-31 Paolo Carlini <pcarlini@suse.de>
382
383 * include/bits/basic_string.tcc (_Rep::_S_create): Minor tweak.
384
7c960b3d
PC
3852004-01-30 Paolo Carlini <pcarlini@suse.de>
386
387 * testsuite/21_strings/basic_string/cons/char/6.cc: New.
388 * testsuite/21_strings/basic_string/cons/wchar_t/6.cc: New.
389 * testsuite/performance/21_strings/string_cons_input_iterator.cc: New.
16dd5cfe 390
7b1d1edf
FY
3912004-01-30 Felix Yen <fwy@alumni.brown.edu>
392
393 * testsuite/performance/20_util/allocator_thread.cc (do_loop):
394 Don't use clear, but instead assign. Use insert.
395
c9732ce7
BK
3962004-01-30 Benjamin Kosnik <bkoz@redhat.com>
397
398 * src/demangle.cc: Add instantiations.
399 * src/Makefile.am: Remove special rules for demangle.lo, demangle.o.
400 * src/Makefile.in: Regenerate.
16dd5cfe 401
25d24447
DE
4022004-01-30 David Edelsohn <edelsohn@gnu.org>
403
404 * src/allocator.cc: Protect _S_get_thread_id() and
405 _S_thread_key_destr() with #ifdef __GTHREADS.
406
33e95e9d
PC
4072004-01-30 Paolo Carlini <pcarlini@suse.de>
408
409 Reshuffle performance testsuite.
410 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
411 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
412 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
413 fstream_seek_write.cc, ifstream_extract_float.cc,
414 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
415 list_create_fill_sort.cc, map_create_fill.cc,
416 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
417 ofstream_insert_float.cc, ofstream_insert_int.cc,
418 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
419 wchar_t_out.cc: Split into...
420 * testsuite/performance/20_util/allocator.cc: New.
421 * testsuite/performance/20_util/allocator_map_thread.cc: New.
422 * testsuite/performance/20_util/allocator_thread.cc: New.
423 * testsuite/performance/21_strings/string_append: New.
424 * testsuite/performance/22_locale/is_wchar_t.cc: New.
425 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
426 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
427 * testsuite/performance/22_locale/wchar_t_in.cc: New.
428 * testsuite/performance/22_locale/wchar_t_length.cc: New.
429 * testsuite/performance/22_locale/wchar_t_out.cc: New.
430 * testsuite/performance/23_containers/container_benchmark.cc: New.
431 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
432 * testsuite/performance/23_containers/map_create_fill.cc: New.
433 * testsuite/performance/26_numerics/complex_norm.cc: New.
434 * testsuite/performance/27_io/cout_insert_int.cc: New.
435 * testsuite/performance/27_io/filebuf_copy.cc: New.
436 * testsuite/performance/27_io/filebuf_sputc.cc: New.
437 * testsuite/performance/27_io/fstream_seek_write.cc: New.
438 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
439 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
440 * testsuite/performance/27_io/ifstream_getline.cc: New.
441 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
442 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
443
d1615643
PC
4442004-01-30 Paolo Carlini <pcarlini@suse.de>
445
446 * include/bits/basic_string.tcc (_Rep::_S_create):
447 Never allocate a string bigger than max_size(); always keep
448 __capacity and __size in sync to avoid memory leaks at
449 deallocation time.
450
690495b0
PC
4512004-01-30 Paolo Carlini <pcarlini@suse.de>
452
453 * include/bits/basic_string.tcc (_S_construct(_InIterator,
454 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
455 the double loop, streamline.
456
457 * include/bits/basic_string.tcc: Very minor tweaks.
458
f64f4406
LR
4592004-01-30 Loren J. Rittle <ljrittle@acm.org>
460
461 * scripts/check_performance: Only compile with $THREAD_FLAG
462 when test is marked to require it. Allow multiple
463 compilations/executions of marked tests.
464 * testsuite/testsuite_performance.h (report_performance):
465 Report dynamic thread support status.
466 (report_header): Likewise.
467 * testsuite/performance/allocator.cc: Stabilize iteration
468 count. Support more allocators. Mark each allocator test to
469 run and report independently.
470 * testsuite/performance/allocator_map_thread.cc: Likewise.
471 * testsuite/performance/allocator_thread.cc: Likewise.
472
917a9fd4
SW
4732004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
474
475 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
476 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
477 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
478 std::get_temporary_buffer() instead of duplicating its code.
479 Update to C++STYLE conventions.
480 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
481 new() instead of std::malloc().
482 (return_temporary_buffer): Use ::operator delete() instead of
483 std::free().
484
6efc84f4
BK
4852004-01-29 Benjamin Kosnik <bkoz@redhat.com>
486
487 * include/bits/allocator.h: Temporary switch to new_allocator as
488 the default to unjam bootstraps.
16dd5cfe 489
ba9d552e
BK
4902004-01-28 Benjamin Kosnik <bkoz@redhat.com>
491
492 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
493 * include/Makefile.in: Regenerate.
494 * include/bits/allocator_traits.h: Remove.
495 * include/bits/allocator.h: Remove allocator_traits.h include, and
496 relevant comments.
497 (allocator): Empty base class, inherit from the underlying allocator.
498 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
499 * src/allocator.cc: ...here. New. For the underlying allocators.
500 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
501 * config/linker-map.gnu: Remove __pool_alloc bits.
502 * src/Makefile.am (sources): Add allocator.cc.
503 * src/Makefile.in: Regenerate.
504 * testsuite/20_util/allocator/1.cc: Split second test into...
16dd5cfe 505 * testsuite/20_util/allocator/8230.cc: ...this.
ba9d552e
BK
506 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
507 typedef to use std::allocatore. Format.
508 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
509 _Alloc_traits.
510 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
511 __throw_bad_alloc calls. Don't include <memory>.
512 * include/ext/malloc_allocator.h: Remove <memory> include.
513 * include/ext/new_allocator.h (new_allocator): Same.
514 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
515 declaration. Switch __alloc to _Alloc.
516 * include/ext/hashtable.h: Remove __alloc.
517 * include/backward/alloc.h: Only inject allocator, not
518 implementation details.
519
520 * include/ext/mt_allocator.h: Replace free with delete.
16dd5cfe 521
ff4cf05b
BK
5222004-01-28 Benjamin Kosnik <bkoz@redhat.com>
523
524 * src/globals_io.cc: Change to __gnu_internal namespace.
525 * src/globals_locale.cc: Same.
526 * src/locale_init.cc: Same.
527 * src/ios_init.cc: Same.
16dd5cfe 528
f15f99a1
SO
5292004-01-28 Stefan Olsson <stefan@snon.net>
530
8de63ee0 531 * include/ext/mt_allocator.h: Replaced all malloc() calls with
f15f99a1
SO
532 operator new(). Added support for the env variable
533 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
534 one in allocate() as well). Fix typos.
535
234e0d31
PC
5362004-01-28 Paolo Carlini <pcarlini@suse.de>
537
538 * include/bits/basic_string.h (_S_create(size_t,
539 const _Alloc&): Change signature to take two size_type
540 arguments.
541 * include/bits/basic_string.tcc (_S_construct(_InIterator,
542 _InIterator, const _Alloc&, input_iterator_tag)): Update
543 call, tweak a bit.
544 (_S_construct(_InIterator, _InIterator, const _Alloc&,
545 forward_iterator_tag)): Likewise.
546 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
547 (_M_mutate(size_type, size_type, size_type)): Don't
548 implement the exponential growth policy, demand it to
549 _S_create, update call and simplify.
550 (_M_clone(const _Alloc&, size_type)): Likewise.
551 (_S_create(size_type, size_type, const _Alloc&)): Implement
552 the growth policy, simplify otherwise.
553
554 * include/bits/basic_string.h (_Rep::operator[]): Tweak
555 signature to take a size_type, consistently with the other
556 members.
16dd5cfe 557
62b21ea0
BK
5582004-01-27 Benjamin Kosnik <bkoz@redhat.com>
559
560 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
561 delete declarations, add include and test variable.
562
0b563420
JQ
5632003-01-27 Jerry Quinn <jlquinn@optonline.net>
564
565 * include/bits/codecvt.h, include/bits/locale_facets.h,
566 include/bits/postypes.h, include/bits/stl_bvector.h,
567 include/bits/stl_multiset.h, include/bits/stl_set.h,
568 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
569 include/std/std_complex.h: Document.
570
2a837cf8
JQ
5712004-01-27 Jerry Quinn <jlquinn@optonline.net>
572
573 PR libstdc++/11584
574 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
6a734d61 575 iword/pword selector.
2a837cf8
JQ
576 (ios_base::iword, ios_base::pword): Use it.
577 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
6a734d61 578 iword or pword member on alloc failure.
2a837cf8
JQ
579 * testsuite/27_io/ios_base/storage/11584.cc: New test.
580
6e198ee0
UW
5812004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
582 PJ Darcy <darcypj@us.ibm.com>
583
584 * configure.host: Add support for *-tpf.
585 * crossconfig.m4: Likewise.
586 * configure: Regenerate.
587 * config/os/tpf: New directory.
588 * config/os/tpf/os_defines.h: New file.
589 * config/os/tpf/ctype_base.h: Likewise.
590 * config/os/tpf/ctype_inline.h: Likewise.
591 * config/os/tpf/ctype_noninline.h: Likewise.
592
51b6facb
PC
5932004-01-27 Paolo Carlini <pcarlini@suse.de>
594
595 PR libstdc++/13884
596 * include/bits/sstream.tcc: Guard use of extern template.
16dd5cfe 597
a3af79ea
PC
5982004-01-27 Paolo Carlini <pcarlini@suse.de>
599
600 * include/bits/basic_string.tcc
601 (basic_string(const basic_string&, size_type, size_type),
602 basic_string(const basic_string&, size_type, size_type,
603 const _Alloc&)): Avoid unnecessarily constructing iterators.
604
ba9119ec
PC
6052004-01-26 Paolo Carlini <pcarlini@suse.de>
606
607 * config/locale/generic/c_locale.cc: Fix throw messages
608 to use the __N marker.
609 * config/locale/gnu/c_locale.cc: Likewise.
610 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
611 Likewise.
612 * docs/html/17_intro/C++STYLE: Likewise.
613 * include/bits/basic_ios.tcc: Likewise.
614 * include/bits/fstream.tcc: Likewise.
615 * include/bits/vector.tcc: Likewise.
616 * include/ext/ropeimpl.h: Likewise.
617 * include/std/std_bitset.h: Likewise.
618 * src/ios.cc: Likewise.
619 * src/locale.cc: Likewise.
620 * src/localename.cc: Likewise.
621
0e50667c
PC
6222004-01-26 Paolo Carlini <pcarlini@suse.de>
623
624 * include/bits/basic_string.h (_M_replace_aux): Use the
625 __N marker in throw message.
626 * include/bits/basic_string.tcc (assign(const _CharT*,
627 size_type), insert(size_type, const _CharT*, size_type),
628 replace(size_type, size_type, const _CharT*, size_type),
629 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
630 Likewise.
631
632 * include/bits/basic_string.h, include/bits/basic_string.tcc:
633 Fold overlong lines, minor formatting changes.
634
4d39d873
PC
6352004-01-26 Paolo Carlini <pcarlini@suse.de>
636
637 * include/bits/basic_string.h (replace(iterator, iterator,
638 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
639 (replace(iterator, iterator, const _CharT*)): Ditto.
640 (replace(iterator, iterator, const _CharT*, size_type)):
641 Add missing _GLIBCXX_DEBUG_PEDASSERT.
642
2cb612d1
PC
6432004-01-26 Paolo Carlini <pcarlini@suse.de>
644
645 * include/bits/basic_string.tcc (replace(size_type,
646 size_type, const _CharT*, size_type)): Implement optimized
647 in-place algorithm for non-overlapping ranges.
648 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
649 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
650
651 * include/bits/basic_string.tcc (insert(size_type,
652 const _CharT*, size_type)): Tweak slightly.
653
f942e78d
AS
6542004-01-26 Andreas Schwab <schwab@suse.de>
655
656 * config/locale/gnu/monetary_members.cc: Restore locale before
657 rethrowing exception.
658
91eab378
PC
6592004-01-25 Paolo Carlini <pcarlini@suse.de>
660
661 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
662 Define inline here.
663 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
664 Move inline.
665
666 * include/bits/basic_string.tcc: Very minor tweaks.
667
9c519c93
PC
6682004-01-25 Paolo Carlini <pcarlini@suse.de>
669
670 * testsuite/performance/string_append.cc: Increase number
671 of iterations.
672
30f315cd
PC
6732004-01-25 Paolo Carlini <pcarlini@suse.de>
674
675 * include/bits/basic_string.h (erase(size_type, size_type),
676 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
677 instead, thus avoiding redundant check for length_error.
678
679 * include/bits/basic_string.h: Tweak some comments.
680
bb9909b0
PC
6812004-01-24 Paolo Carlini <pcarlini@suse.de>
682
683 * include/bits/basic_string.tcc (operator+(const _CharT*,
684 const basic_string&)): No need to go through the append
685 taking two iterators.
686
04cc8aef
PC
6872004-01-24 Paolo Carlini <pcarlini@suse.de>
688
689 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
690 Revert last change to use std::min: machine language is worse.
691 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
692 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
693 (find_last_not_of(_CharT, size_type)): Ditto.
694
695 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
696 size_type)): Discard the value returned by _M_check.
697 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
698 (append(const basic_string&, size_type, size_type)): Ditto.
699 (copy(_CharT*, size_type, size_type)): Ditto.
700 (compare(size_type, size_type, const basic_string&)): Ditto.
701 (compare(size_type, size_type, const basic_string&,
702 size_type, size_type)): Ditto.
703 (compare(size_type, size_type, const _CharT*)): Ditto.
704 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
705
8865bf80
PC
7062004-01-24 Paolo Carlini <pcarlini@suse.de>
707
708 * include/bits/basic_string.h (insert(size_type,
709 const basic_string&, size_type, size_type)): Define inline here.
710 * include/bits/basic_string.tcc (insert(size_type,
711 const basic_string&, size_type, size_type)): Move inline.
712
fefe561e
PC
7132004-01-24 Paolo Carlini <pcarlini@suse.de>
714
715 * include/bits/basic_string.h (assign(const basic_string&,
716 size_type, size_type)): Define inline here.
717 (replace(size_type, size_type, const basic_string&,
718 size_type, size_type)): Ditto.
719 (_M_replace_dispatch(iterator, iterator, _InputIterator,
720 _InputIterator, __false_type)): Only declare.
721 (_M_replace(iterator, iterator, _InputIterator,
722 _InputIterator)): Remove.
723 * include/bits/basic_string.tcc (assign(const basic_string&,
724 size_type, size_type)): Move inline.
725 (replace(size_type, size_type, const basic_string&,
726 size_type, size_type)): Ditto.
727 (_M_replace_dispatch(iterator, iterator, _InputIterator,
728 _InputIterator, __false_type)): Define, now does also what
729 _M_replace did before.
730 * src/string-inst.cc (_M_replace): Don't instantiate.
731
732 * include/bits/basic_string.tcc (find(const _CharT*,
733 size_type, size_type)): Tidy.
734 (rfind(_CharT, size_type)): Ditto.
735 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
736 (find_first_not_of(_CharT, size_type)): Ditto.
737 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
738 (find_last_not_of(_CharT, size_type)): Ditto.
739
72afd981
PC
7402004-01-23 Paolo Carlini <pcarlini@suse.de>
741
742 PR libstdc++/13838
743 * include/debug/bitset (operator|=): Fix typo.
744 * testsuite/23_containers/bitset/operations/13838.cc: New.
745
251804e6
PC
7462004-01-23 Paolo Carlini <pcarlini@suse.de>
747
748 * include/bits/basic_string.tcc (insert(size_type,
749 const _CharT*, size_type __n)): Fix length_error check.
750 (replace(size_type, size_type, const _CharT*, size_type):
751 Ditto; call _M_replace_safe.
752 (_M_replace_aux(size_type, size_type, size_type, _CharT):
753 Fix length_error check.
754 (_M_replace(iterator, iterator, _InputIterator,
755 _InputIterator)): Ditto, tweak.
756 (_M_replace_safe(size_type, size_type, const _CharT*,
757 size_type)): Remove length_error check.
758
759 * include/bits/basic_string.tcc (append(const basic_string&),
760 append(const basic_string&, size_type, size_type)): Tweak
761 comment.
762
763 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
764 size_type)): If __n == 0 don't call traits::copy.
765
3cfb44c2
SO
7662004-01-23 Stefan Olsson <stefan@snon.net>
767
768 * include/ext/mt_allocator.h: Reduce lock contention.
769
22352844
PC
7702004-01-23 Paolo Carlini <pcarlini@suse.de>
771
772 PR libstdc++/13831
773 * include/bits/fstream.tcc (underflow): Remove unused
774 variable.
775 * include/bits/streambuf_iterator.h (equal): Ditto.
776 * include/bits/locale_facets.h (_M_convert_from_char):
777 Ditto.
778
129057c1
KG
7792004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
780
781 PR c/13814
782 * config/linker-map.gnu (nan): Delete.
783 * libmath/mathconf.h (NAN, nan): Delete.
784 * linkage.m4 (nan): Don't check for it.
785 * libmath/nan.c: Delete file.
786
787 * config.h.in, configure: Regenerate.
788
0e707673
PC
7892004-01-23 Paolo Carlini <pcarlini@suse.de>
790
791 * include/bits/basic_string.h (push_back(_CharT)):
792 Call _M_replace_aux.
793 (insert(size_type, const basic_string&)): Trivial tweak.
794 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
795 (insert(iterator, _CharT)): Ditto.
796 (erase(size_type, size_type)): Ditto.
797 (erase(iterator)): Ditto.
798 (erase(iterator, iterator)): Ditto.
799 (replace(size_type, size_type, size_type, _CharT)): Ditto.
800
402b0954
LR
8012004-01-23 Loren J. Rittle <ljrittle@acm.org>
802
803 libstdc++/13823
804 * testsuite/performance/allocator_map_thread.cc: New test.
805
ba46e66a
PC
8062004-01-22 Paolo Carlini <pcarlini@suse.de>
807
808 * include/bits/locale_facets.tcc
809 (money_put::do_put(..., long double)): Use the basic_string
810 constructor for char arrays, not that for C-strings, to pass
811 __digits to do_put(..., const string_type&): __ws isn't
812 null-terminated.
813
7bb9b33b
PC
8142004-01-22 Paolo Carlini <pcarlini@suse.de>
815
816 * include/bits/basic_string.h (_M_replace_safe): Change
817 signatures to take size_types and const _CharT*.
818 (_M_replace_aux): Likewise, takes size_types instead of
819 iterators.
820 (append(size_type, _CharT)): Update call.
821 (assign(size_type, _CharT)): Ditto.
822 (replace(iterator, iterator, size_type, _CharT)): Ditto.
823 (_M_replace_dispatch(iterator, iterator, _Integer,
824 _Integer, __true_type)): Ditto.
825 * include/bits/basic_string.tcc (assign(const _CharT*,
826 size_type)): Ditto.
827 (insert(size_type, const _CharT*, size_type)): Ditto.
828 (replace(size_type, size_type, const _CharT*,
829 size_type)): Ditto.
830 (_M_replace(iterator, iterator, _InputIterator,
831 _InputIterator)): Ditto.
832 (append(const basic_string&)): Ditto.
833 (append(const basic_string&, size_type, size_type): Ditto.
834 (append(const _CharT*, size_type): Ditto.
835 (_M_replace_safe, _M_replace_safe): Change definitions
836 accordingly, simplify.
837 * string-inst.cc (_M_replace_safe): Don't instantiate.
838
3e7782b2
PC
8392004-01-21 Paolo Carlini <pcarlini@suse.de>
840
841 * include/bits/basic_string.tcc (append(const basic_string&)):
842 Revert previous change.
843 (append(const basic_string&, size_type, size_type)): Revert
844 previous change, use _M_check and _M_limit.
845
e03a6fb7
PC
8462004-01-21 Paolo Carlini <pcarlini@suse.de>
847
848 * include/bits/basic_string.h (_M_check): Change to return
849 a checked __pos and take an additional const char* argument.
850 (_M_fold): Rename to _M_limit, change to return a size_type,
851 corresponding to the __off limited to the actual length.
852 (insert(size_type, size_type, _CharT)): Update call, call
853 replace.
854 (insert(iterator, _CharT)): Call replace(iterator, iterator,
855 size_type, _CharT) instead.
856 (erase(size_type, size_type)): Update calls.
857 (replace(size_type, size_type, size_type, _CharT)): Ditto.
858 (substr(size_type, size_type)): Use _M_check.
859 * include/bits/basic_string.tcc (basic_string(const basic_string&,
860 size_type, size_type)): Update calls.
861 (basic_string(const basic_string&, size_type, size_type,
862 const _Alloc&)): Ditto.
863 (assign(const basic_string&, size_type, size_type)): Use the
864 new _M_check and _M_limit.
865 (insert(size_type, const basic_string&, size_type, size_type):
866 Ditto.
867 (insert(size_type, const _CharT*, size_type)): Ditto.
868 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
869 (replace(size_type, size_type, const basic_string&,
870 size_type, size_type)): Ditto.
871 (append(const basic_string&)): Ditto.
872 (append(const basic_string&, size_type, size_type)): Ditto.
873 (copy(_CharT*, size_type, size_type)): Ditto.
874 (compare(size_type, size_type, const basic_string&)): Ditto.
875 (compare(size_type, size_type, const basic_string&,size_type,
876 size_type)): Ditto.
877 (compare(size_type, size_type, const _CharT*)): Ditto.
878 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
879
cec73eb5
SO
8802004-01-19 Stefan Olsson <stefan@snon.net>
881
882 * include/ext/mt_allocator.h: If a thread, when it dies, still has
883 memory on it's freelist this memory is not returned to global
884 list. Simplification of deallocate so that memory is always
885 returned to the calling thread id's freelist instead of to
886 global. Fix typos. Add volatile where appropriate.
887
87d11ccc
LR
8882004-01-19 Loren J. Rittle <ljrittle@acm.org>
889
890 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
891 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
892 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
893
f18be892
PC
8942004-01-19 Paolo Carlini <pcarlini@suse.de>
895
896 * src/debug.cc: Make sure all the names are prefixed with
897 double (or single) underscore.
898
33d4e9b2
PC
8992004-01-19 Paolo Carlini <pcarlini@suse.de>
900
901 * src/debug.cc: Trivial formatting change.
902
954b12d2
PC
9032004-01-19 Paolo Carlini <pcarlini@suse.de>
904
905 * include/bits/basic_string.tcc (_S_construct(size_type,
906 _CharT, const _Alloc&)): Remove redundant try/catch.
907 (_M_mutate(size_type, size_type, size_type)): Ditto.
908 (_M_clone(const _Alloc&, size_type)): Ditto.
16dd5cfe 909
acbab5bf
PC
9102004-01-18 Paolo Carlini <pcarlini@suse.de>
911
912 * include/bits/basic_string.h (c_str()): Simplify, due to
913 21.3.4 the internal representation is always kept null-terminated.
914 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
915 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
916 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
917 Ditto.
918
9c96a689
PC
9192004-01-18 Paolo Carlini <pcarlini@suse.de>
920
921 * include/bits/basic_string.h (append(size_type, _CharT)):
922 Moved inline, just call _M_replace_aux, no source iterators at
923 risk of being clobbered.
924 (assign(size_type, _CharT)): Call directly _M_replace_aux.
925 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
926 input_iterator_tag)): Remove fifth unused argument.
927 (_M_replace_dispatch(iterator, iterator, _InputIterator,
928 _InputIterator, __false_type)): Update call.
929 * include/bits/basic_string.tcc (replace(size_type, size_type,
930 const _CharT*, size_type)): Update call.
931 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
932 throw string literal.
933 (_M_replace_safe(iterator, iterator, _ForwardIterator,
934 _ForwardIterator)): Likewise.
935 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
936 input_iterator_tag)): Remove fifth unused argument.
937 (append(size_type __n, _CharT __c)): Move inline.
938 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
939 const C*, const C*, input_iterator_tag)): Remove fifth unused
940 argument.
941
d517f626
BK
9422004-01-16 Benjamin Kosnik <bkoz@redhat.com>
943
944 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
16dd5cfe 945 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
d517f626 946
701b701b
DS
9472004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
948
949 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
950 mkfifo for mingw32.
951
2913770f
SO
9522004-01-15 Stefan Olsson <stefan@snon.net>
953
954 * include/ext/mt_allocator.h: Reuse thread id's as soon as
955 possible by changing the behaviour of thread_freelist to do
956 push_front when threads die instead of push_back.
957
47f62b27
PC
9582004-01-14 Paolo Carlini <pcarlini@suse.de>
959
960 * include/bits/locale_facets.h (struct __numpunct_cache):
961 Add member _M_grouping_size, caching the length of _M_grouping.
962 (__numpunct_cache<>::_M_cache): Assign the latter.
963 (__verify_grouping): Move declaration...
964 * include/bits/locale_facets.tcc (__verify_grouping):
965 ... here, change signature to take a const char* and a size_t
966 for the grouping; not a template anymore.
967 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
16dd5cfe 968 Likewise change signature and tweak consistently.
47f62b27
PC
969 (num_get::_M_extract_float, num_get::_M_extract_int,
970 num_put::_M_insert_int, num_put::_M_insert_float,
971 money_get::do_get(string_type&), money_get::do_put(string_type)):
16dd5cfe 972 Update callers.
47f62b27 973 * config/locale/generic/numeric_members.cc
16dd5cfe 974 (numpunct<>::_M_initialize_numpunct): Assign the new member.
47f62b27 975 * config/locale/gnu/numeric_members.cc
16dd5cfe 976 (numpunct<>::_M_initialize_numpunct): Likewise.
47f62b27
PC
977 * src/locale-inst.cc (__add_grouping): Tweak signature.
978 (__verify_grouping): Don't instantiate, not a template anymore.
979
980 * include/bits/locale_facets.h: Rename _M_truename_len ->
981 _M_truename_size, _M_falsename_len -> _M_falsename_size.
982 * include/bits/locale_facets.tcc: Likewise.
983 * config/locale/generic/numeric_members.cc: Likewise.
984 * config/locale/gnu/numeric_members.cc: Likewise.
985
41f24725
SO
9862004-01-14 Stefan Olsson <stefan@snon.net>
987
988 * include/ext/mt_allocator.h: Fixups.
989 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
990 * testsuite/performance/allocator_thread.cc: Same.
16dd5cfe 991
070ce57b
BK
9922004-01-13 Benjamin Kosnik <bkoz@redhat.com>
993
994 * testsuite/performance/ifstream_extract_float.cc: Add higher
995 precision tests.
996 * testsuite/performance/ofstream_insert_float.cc: Same.
16dd5cfe 997
c9513590
PC
9982004-01-13 Paolo Carlini <pcarlini@suse.de>
999
1000 * src/locale-misc-inst.cc (__convert_from_v(long),
1001 __convert_from_v(unsigned long), __convert_from_v(long long),
1002 __convert_from_v(unsigned long long)): Remove, unused.
1003
60af005f
BK
10042004-01-13 Benjamin Kosnik <bkoz@redhat.com>
1005
1006 * testsuite/performance/ifstream_extract_float.cc: New.
1007 * testsuite/performance/ofstream_insert_float.cc: Float generation
1008 matches above.
1009
1010 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
1011 * 20_util/auto_ptr/1.cc: ...this.
1012 * 20_util/auto_ptr/2.cc: Same.
1013 * 20_util/auto_ptr/3.cc: Same.
1014 * 20_util/auto_ptr/3946.cc: Same.
1015 * 20_util/auto_ptr/4.cc: Same.
1016 * 20_util/auto_ptr/5.cc: Same.
1017 * 20_util/auto_ptr/6.cc: Same.
1018 * 20_util/auto_ptr/7.cc: Same.
1019 * 20_util/auto_ptr/assign_neg.cc
1020 * 20_util/pairs.cc: Break into...
1021 * 20_util/pair/1.cc: ...this.
1022 * 20_util/pair/2.cc: Same.
1023 * 20_util/pair/3.cc: Same.
1024 * 20_util/pair/4.cc: Same.
1025
d8ef7dec
PC
10262004-01-13 Paolo Carlini <pcarlini@suse.de>
1027
1028 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
1029 Set correctly just basefield, the only group that matters.
1030
5640461d
PC
10312004-01-13 Paolo Carlini <pcarlini@suse.de>
1032
1033 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
1034 (_Rope_rep_base): Inherit directly from the rope allocator;
1035 use rebinding instead of _Alloc_traits; pick up data member
1036 from _Rope_rep_alloc_base.
1037 (_Rope_alloc_base): Eliminate.
1038 (_Rope_base): Inherit directly from the rope allocator; use
1039 rebinding instead of _Alloc_traits; pick up data member from
1040 _Rope_alloc_base.
1041 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
1042 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
1043
95c9624f
PC
10442004-01-13 Paolo Carlini <pcarlini@suse.de>
1045
1046 PR libstdc++/13650
1047 * include/bits/basic_string.tcc (compare(size_type, size_type,
1048 const _CharT*, size_type)): Implement correctly the resolution
1049 of DR 5: basically, s is a char array, -not- a C string.
1050 * include/bits/basic_string.h: Tweak some comments.
1051 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
1052 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
1053
c91de77a
AT
10542004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
1055
1056 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
1057 Solaris.
1058
300b3317
PC
10592004-01-12 Paolo Carlini <pcarlini@suse.de>
1060
1061 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
1062 Use try_mkfifo.
1063 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
1064 Likewise.
1065
dc6798f8
PC
10662004-01-12 Paolo Carlini <pcarlini@suse.de>
1067
1068 * include/bits/locale_facets.h (struct __numpunct_cache):
1069 Add members _M_truename_len and _M_falsename_len, caching
1070 the lengths of _M_truename and _M_falsename.
1071 (__numpunct_cache<>::_M_cache): Assign the latter.
1072 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
1073 num_put::do_put(bool)): Use the new members, thus avoiding
1074 computing string lengths again and again.
1075 * config/locale/generic/numeric_members.cc
1076 (numpunct<>::_M_initialize_numpunct): Assign the new members.
1077 * config/locale/gnu/numeric_members.cc
1078 (numpunct<>::_M_initialize_numpunct): Likewise.
1079
ea1ea21a
MM
10802004-01-12 Mark Mitchell <mark@codesourcery.com>
1081
1082 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
1083 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
1084 it.
1085 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
1086 and remove Cygwin XFAIL.
1087 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
1088 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
1089 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
1090 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
1091 Likewise.
1092 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
1093 * testsuite/27_io/objects/char/7.cc: Likewise.
1094 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
1095 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
1096 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
1097
3b3bfc0e
GDR
10982004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
1099
1100 * include/std/std_complex.h (std::complex<>::real): Return a
1101 reference. Add non-const overload.
1102 (std::complex<>::real): Likewise.
1103 (std::real): Likewise.
1104 (std::imag): Likewise.
1105 (std::operator+): Tidy.
1106 (std::operator-): Likewise.
1107 (std::operator*): Likewise.
1108 (std::operator/): Likewise.
1109 (std::operator>>): Likewise.
1110
09625c16
PC
11112004-01-11 Paolo Carlini <pcarlini@suse.de>
1112
1113 PR libstdc++/13582
1114 * include/bits/fstream.tcc (imbue): Exploit the external
1115 buffer to imbue 'on the fly' a new locale and convert its
1116 remainder with the new codecvt facet.
1117 (underflow): Tweak slightly to deal with this special case.
1118 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
1119 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
1120 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
1121 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
1122 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
16dd5cfe 1123
a8d65349
PC
11242004-01-10 Paolo Carlini <pcarlini@suse.de>
1125
1126 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1127 Import Revision 28.
1128
b656faa8
PC
11292004-01-10 Paolo Carlini <pcarlini@suse.de>
1130
1131 PR libstdc++/13630
1132 * include/bits/locale_classes.h (class locale): Fix category
1133 typedef.
1134 * testsuite/22_locale/locale/13630.cc: Add.
1135
f88e4715
GB
11362004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
1137
1138 * include/bits/locale_facets.h: Make a name really dependent. This
1139 will be needed when Core Issue 224 is implemented.
1140
64cb2c4a
PC
11412004-01-09 Paolo Carlini <pcarlini@suse.de>
1142
1143 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
1144 * testsuite/performance/allocator_thread.cc: Likewise.
1145
158960ba
BK
11462004-01-07 Benjamin Kosnik <bkoz@redhat.com>
1147
1148 * crossconfig.m4: Add LFS, io bits to linux cross config.
1149 * acconfig.h: Remove obsolete bits, reorder.
1150 * config.h.in: Regenerate.
1151 * aclocal.m4: Same.
1152 * configure: Same.
16dd5cfe 1153
e135a038
BK
11542004-01-07 Gawain Bolton <gp.bolton@computer.org>
1155
1156 * include/bits/stl_list.h:
1157 * include/bits/list.tc:
1158 * src/list.cc:
6a734d61
BK
1159 Performance enhancements for destructor, push_front(),
1160 push_back(), pop_front(), pop_back(), sort()
1161 Eliminated static_casts where possible.
1162 Moved code out of header files into new src/list.cc
1163 implementation file for library where possible.
1164 Remove inheritance from iterator class and create separate
1165 classes for non-constant and constant iterators.
e135a038 1166 * include/bits/stl_tree.h (_Rb_tree class):
16dd5cfe 1167 * src/tree.cc:
6a734d61
BK
1168 Only erase contents in destructor.
1169 Eliminate unnecessary initialization in assignment operator.
1170 Optimize for the nominal case by not checking whether
1171 container is empty in clear().
1172 Re-order test in _M_insert() to improve performance.
1173 Move initialization of new node's left & right pointers to
1174 src/tree.cc to where new node's colour is initialized
1175 and to reduce the amount of inline code.
1176 Use _M_leftmost() and _M_end() to improve readability where
1177 appropriate.
1178 Create separate classes for non-constant and constant
1179 iterators to clarify code, avoid extra template parameters and
1180 casting away constness.
16dd5cfe 1181
e135a038
BK
11822004-01-07 Benjamin Kosnik <bkoz@redhat.com>
1183
1184 * src/Makefile.am (sources): Add list.cc, tree.cc.
1185 * src/stl_tree.cc: Move to...
1186 * src/tree.cc: ...here.
1187 * src/list.cc: Add.
1188 * config/linker-map.gnu: Tweaks.
1189 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
1190 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
1191
1192 * bits/stl_vector.h: Column wrap comments.
16dd5cfe 1193
677e7ddc
LR
11942004-01-07 Loren J. Rittle <ljrittle@acm.org>
1195
1196 (re-open) PR libstdc++/12658
1197 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
1198 (locale::global): Likewise.
1199
d8f5bd50
PC
12002004-01-07 Paolo Carlini <pcarlini@suse.de>
1201
1202 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
1203 Remove redundant #include.
1204 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
1205 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
1206 re-enable normal testing.
1207 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
1208 #include.
1209 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
1210 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
1211 Likewise.
1212 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
1213 Likewise.
1214 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
1215 Likewise.
1216 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
1217 Likewise.
1218 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
1219 Likewise.
1220 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
1221 Likewise.
1222 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
1223 Likewise.
1224 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
1225 More properly, #include <locale>.
1226 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
1227 Remove redundant #include.
1228 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
1229 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
1230 redundant DejaGnu directive.
1231 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
1232 redundant #include.
1233
b61f9bf0 12342004-01-06 Benjamin Kosnik <bkoz@redhat.com>
6a734d61 1235 Stefan Olsson <stefan@snon.net>
b61f9bf0
BK
1236
1237 * scripts/check_performance: Use -pthread.
1238 * testsuite/performance/allocator.cc: Tweaks, add list.
1239 * testsuite/performance/allocator_thread.cc: New.
1240
b74a6851 12412004-01-06 Jerry Quinn <jlquinn@optonline.net>
9a01c9b0
JQ
1242
1243 * include/bits/locale_facets.h: Document public classes and
1244 functions.
1245 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1246 Add comment.
1247
b80115c4
PC
12482004-01-06 Paolo Carlini <pcarlini@suse.de>
1249
1250 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
1251 Remove redundant #includes.
1252 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
1253 Likewise.
1254 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
1255 Likewise.
1256 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
1257 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
1258 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
1259 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
1260 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
1261 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
1262 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
1263 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
1264 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
1265 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
1266 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
1267 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
1268 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
1269 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
1270 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
1271 Likewise.
1272 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
1273 Likewise.
1274 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
1275 Likewise.
1276 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
1277 Likewise.
1278 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
1279 Likewise.
1280 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
1281 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
1282 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
1283
22ed0590 12842004-01-04 Paolo Carlini <pcarlini@suse.de>
223b5084
PC
1285
1286 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
1287 Remove redundant #includes.
1288 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
1289 Likewise.
1290 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
1291 Likewise.
1292 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
1293 Likewise.
1294 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
1295 Likewise.
1296 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
1297 Likewise.
1298 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
1299 Likewise.
1300 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
1301 Likewise.
1302 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
1303 Likewise.
1304 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
1305 Likewise.
1306 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
1307 Likewise.
1308 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
1309 Likewise.
1310 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
1311 Likewise.
1312
4f8163b1
MM
13132004-01-04 Mark Mitchell <mark@codesourcery.com>
1314
1315 PR c++/12226
1316 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
1317 constructor.
1318 * testsuite/27_io/basic_fstream/4.cc: Likewise.
1319 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
1320 * testsuite/27_io/basic_ios/4.cc: Likewise.
1321 * testsuite/27_io/basic_iostream/4.cc: Likewise.
1322 * testsuite/27_io/basic_istream/4.cc: Likewise.
1323 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
1324 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
1325 * testsuite/27_io/basic_ostream/4.cc: Likewise.
1326 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
1327 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
1328 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
1329
17fa5560
PC
13302004-01-04 Paolo Carlini <pcarlini@suse.de>
1331
1332 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
1333 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
1334 always use double underscored names.
1335 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
1336 Likewise.
1337 * include/bits/locale_facets.h (struct __numpunct_cache):
1338 Dimension _M_atoms_out and _M_atoms_in one position smaller.
1339 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
1340 and _M_atoms_in.