]> gcc.gnu.org Git - gcc.git/blob - libstdc++-v3/ChangeLog
Reshuffle performance testsuite.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2004-01-30 Paolo Carlini <pcarlini@suse.de>
2
3 Reshuffle performance testsuite.
4 * testsuite/performance/allocator.cc, allocator_map_thread.cc,
5 allocator_thread.cc, complex_norm.cc, container_benchmark.cc,
6 cout_insert_int.cc, filebuf_copy.cc, filebuf_sputc.cc,
7 fstream_seek_write.cc, ifstream_extract_float.cc,
8 ifstream_extract_int.cc, ifstream_getline.cc, is_wchar_t.cc,
9 list_create_fill_sort.cc, map_create_fill.cc,
10 narrow_widen_char.cc, narrow_widen_wchar_t.cc,
11 ofstream_insert_float.cc, ofstream_insert_int.cc,
12 string_append.cc, wchar_t_in.cc, wchar_t_length.cc,
13 wchar_t_out.cc: Split into...
14 * testsuite/performance/20_util/allocator.cc: New.
15 * testsuite/performance/20_util/allocator_map_thread.cc: New.
16 * testsuite/performance/20_util/allocator_thread.cc: New.
17 * testsuite/performance/21_strings/string_append: New.
18 * testsuite/performance/22_locale/is_wchar_t.cc: New.
19 * testsuite/performance/22_locale/narrow_widen_char.cc: New.
20 * testsuite/performance/22_locale/narrow_widen_wchar_t.cc: New.
21 * testsuite/performance/22_locale/wchar_t_in.cc: New.
22 * testsuite/performance/22_locale/wchar_t_length.cc: New.
23 * testsuite/performance/22_locale/wchar_t_out.cc: New.
24 * testsuite/performance/23_containers/container_benchmark.cc: New.
25 * testsuite/performance/23_containers/list_create_fill_sort.cc: New.
26 * testsuite/performance/23_containers/map_create_fill.cc: New.
27 * testsuite/performance/26_numerics/complex_norm.cc: New.
28 * testsuite/performance/27_io/cout_insert_int.cc: New.
29 * testsuite/performance/27_io/filebuf_copy.cc: New.
30 * testsuite/performance/27_io/filebuf_sputc.cc: New.
31 * testsuite/performance/27_io/fstream_seek_write.cc: New.
32 * testsuite/performance/27_io/ifstream_extract_float.cc: New.
33 * testsuite/performance/27_io/ifstream_extract_int.cc: New.
34 * testsuite/performance/27_io/ifstream_getline.cc: New.
35 * testsuite/performance/27_io/ofstream_insert_float.cc: New.
36 * testsuite/performance/27_io/ofstream_insert_int.cc: New.
37
38 2004-01-30 Paolo Carlini <pcarlini@suse.de>
39
40 * include/bits/basic_string.tcc (_Rep::_S_create):
41 Never allocate a string bigger than max_size(); always keep
42 __capacity and __size in sync to avoid memory leaks at
43 deallocation time.
44
45 2004-01-30 Paolo Carlini <pcarlini@suse.de>
46
47 * include/bits/basic_string.tcc (_S_construct(_InIterator,
48 _InIterator, const _Alloc&, input_iterator_tag)): Simplify
49 the double loop, streamline.
50
51 * include/bits/basic_string.tcc: Very minor tweaks.
52
53 2004-01-30 Loren J. Rittle <ljrittle@acm.org>
54
55 * scripts/check_performance: Only compile with $THREAD_FLAG
56 when test is marked to require it. Allow multiple
57 compilations/executions of marked tests.
58 * testsuite/testsuite_performance.h (report_performance):
59 Report dynamic thread support status.
60 (report_header): Likewise.
61 * testsuite/performance/allocator.cc: Stabilize iteration
62 count. Support more allocators. Mark each allocator test to
63 run and report independently.
64 * testsuite/performance/allocator_map_thread.cc: Likewise.
65 * testsuite/performance/allocator_thread.cc: Likewise.
66
67 2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
68
69 * config/local/generic/c_locale.h: Change ::malloc() to new char[].
70 * config/local/gnu/c_locale.h: Change ::malloc() to new char[].
71 * include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
72 std::get_temporary_buffer() instead of duplicating its code.
73 Update to C++STYLE conventions.
74 * include/std/std_memory.h (get_temporary_buffer): Use ::operator
75 new() instead of std::malloc().
76 (return_temporary_buffer): Use ::operator delete() instead of
77 std::free().
78
79 2004-01-29 Benjamin Kosnik <bkoz@redhat.com>
80
81 * include/bits/allocator.h: Temporary switch to new_allocator as
82 the default to unjam bootstraps.
83
84 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
85
86 * include/Makefile.am (bits_headers): Remove allocator_traits.h.
87 * include/Makefile.in: Regenerate.
88 * include/bits/allocator_traits.h: Remove.
89 * include/bits/allocator.h: Remove allocator_traits.h include, and
90 relevant comments.
91 (allocator): Empty base class, inherit from the underlying allocator.
92 * src/allocator-inst.cc: Move __pool_alloc instantiation to...
93 * src/allocator.cc: ...here. New. For the underlying allocators.
94 Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
95 * config/linker-map.gnu: Remove __pool_alloc bits.
96 * src/Makefile.am (sources): Add allocator.cc.
97 * src/Makefile.in: Regenerate.
98 * testsuite/20_util/allocator/1.cc: Split second test into...
99 * testsuite/20_util/allocator/8230.cc: ...this.
100 * include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
101 typedef to use std::allocatore. Format.
102 * include/ext/pool_allocator.h: Remove allocator_traits.h include,
103 _Alloc_traits.
104 * include/ext/mt_allocator.h (__gnu_cxx): Qualify
105 __throw_bad_alloc calls. Don't include <memory>.
106 * include/ext/malloc_allocator.h: Remove <memory> include.
107 * include/ext/new_allocator.h (new_allocator): Same.
108 * include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
109 declaration. Switch __alloc to _Alloc.
110 * include/ext/hashtable.h: Remove __alloc.
111 * include/backward/alloc.h: Only inject allocator, not
112 implementation details.
113
114 * include/ext/mt_allocator.h: Replace free with delete.
115
116 2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
117
118 * src/globals_io.cc: Change to __gnu_internal namespace.
119 * src/globals_locale.cc: Same.
120 * src/locale_init.cc: Same.
121 * src/ios_init.cc: Same.
122
123 2004-01-28 Stefan Olsson <stefan@snon.net>
124
125 * include/ext/mt_allocator.h: Replaced all malloc() calls with
126 operator new(). Added support for the env variable
127 GLIBCXX_FORCE_NEW (this required the _S_init call to be the first
128 one in allocate() as well). Fix typos.
129
130 2004-01-28 Paolo Carlini <pcarlini@suse.de>
131
132 * include/bits/basic_string.h (_S_create(size_t,
133 const _Alloc&): Change signature to take two size_type
134 arguments.
135 * include/bits/basic_string.tcc (_S_construct(_InIterator,
136 _InIterator, const _Alloc&, input_iterator_tag)): Update
137 call, tweak a bit.
138 (_S_construct(_InIterator, _InIterator, const _Alloc&,
139 forward_iterator_tag)): Likewise.
140 (_S_construct(size_type, _CharT, const _Alloc&)): Likewise.
141 (_M_mutate(size_type, size_type, size_type)): Don't
142 implement the exponential growth policy, demand it to
143 _S_create, update call and simplify.
144 (_M_clone(const _Alloc&, size_type)): Likewise.
145 (_S_create(size_type, size_type, const _Alloc&)): Implement
146 the growth policy, simplify otherwise.
147
148 * include/bits/basic_string.h (_Rep::operator[]): Tweak
149 signature to take a size_type, consistently with the other
150 members.
151
152 2004-01-27 Benjamin Kosnik <bkoz@redhat.com>
153
154 * testsuite/27_io/ios_base/storage/11584.cc: Correct new and
155 delete declarations, add include and test variable.
156
157 2003-01-27 Jerry Quinn <jlquinn@optonline.net>
158
159 * include/bits/codecvt.h, include/bits/locale_facets.h,
160 include/bits/postypes.h, include/bits/stl_bvector.h,
161 include/bits/stl_multiset.h, include/bits/stl_set.h,
162 include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
163 include/std/std_complex.h: Document.
164
165 2004-01-27 Jerry Quinn <jlquinn@optonline.net>
166
167 PR libstdc++/11584
168 * include/bits/ios_base.h (ios_base::_M_grow_words): Add
169 iword/pword selector.
170 (ios_base::iword, ios_base::pword): Use it.
171 * src/ios.cc (ios_base::_M_grow_words): Clear _M_word_zero
172 iword or pword member on alloc failure.
173 * testsuite/27_io/ios_base/storage/11584.cc: New test.
174
175 2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
176 PJ Darcy <darcypj@us.ibm.com>
177
178 * configure.host: Add support for *-tpf.
179 * crossconfig.m4: Likewise.
180 * configure: Regenerate.
181 * config/os/tpf: New directory.
182 * config/os/tpf/os_defines.h: New file.
183 * config/os/tpf/ctype_base.h: Likewise.
184 * config/os/tpf/ctype_inline.h: Likewise.
185 * config/os/tpf/ctype_noninline.h: Likewise.
186
187 2004-01-27 Paolo Carlini <pcarlini@suse.de>
188
189 PR libstdc++/13884
190 * include/bits/sstream.tcc: Guard use of extern template.
191
192 2004-01-27 Paolo Carlini <pcarlini@suse.de>
193
194 * include/bits/basic_string.tcc
195 (basic_string(const basic_string&, size_type, size_type),
196 basic_string(const basic_string&, size_type, size_type,
197 const _Alloc&)): Avoid unnecessarily constructing iterators.
198
199 2004-01-26 Paolo Carlini <pcarlini@suse.de>
200
201 * config/locale/generic/c_locale.cc: Fix throw messages
202 to use the __N marker.
203 * config/locale/gnu/c_locale.cc: Likewise.
204 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
205 Likewise.
206 * docs/html/17_intro/C++STYLE: Likewise.
207 * include/bits/basic_ios.tcc: Likewise.
208 * include/bits/fstream.tcc: Likewise.
209 * include/bits/vector.tcc: Likewise.
210 * include/ext/ropeimpl.h: Likewise.
211 * include/std/std_bitset.h: Likewise.
212 * src/ios.cc: Likewise.
213 * src/locale.cc: Likewise.
214 * src/localename.cc: Likewise.
215
216 2004-01-26 Paolo Carlini <pcarlini@suse.de>
217
218 * include/bits/basic_string.h (_M_replace_aux): Use the
219 __N marker in throw message.
220 * include/bits/basic_string.tcc (assign(const _CharT*,
221 size_type), insert(size_type, const _CharT*, size_type),
222 replace(size_type, size_type, const _CharT*, size_type),
223 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
224 Likewise.
225
226 * include/bits/basic_string.h, include/bits/basic_string.tcc:
227 Fold overlong lines, minor formatting changes.
228
229 2004-01-26 Paolo Carlini <pcarlini@suse.de>
230
231 * include/bits/basic_string.h (replace(iterator, iterator,
232 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
233 (replace(iterator, iterator, const _CharT*)): Ditto.
234 (replace(iterator, iterator, const _CharT*, size_type)):
235 Add missing _GLIBCXX_DEBUG_PEDASSERT.
236
237 2004-01-26 Paolo Carlini <pcarlini@suse.de>
238
239 * include/bits/basic_string.tcc (replace(size_type,
240 size_type, const _CharT*, size_type)): Implement optimized
241 in-place algorithm for non-overlapping ranges.
242 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
243 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
244
245 * include/bits/basic_string.tcc (insert(size_type,
246 const _CharT*, size_type)): Tweak slightly.
247
248 2004-01-26 Andreas Schwab <schwab@suse.de>
249
250 * config/locale/gnu/monetary_members.cc: Restore locale before
251 rethrowing exception.
252
253 2004-01-25 Paolo Carlini <pcarlini@suse.de>
254
255 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
256 Define inline here.
257 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
258 Move inline.
259
260 * include/bits/basic_string.tcc: Very minor tweaks.
261
262 2004-01-25 Paolo Carlini <pcarlini@suse.de>
263
264 * testsuite/performance/string_append.cc: Increase number
265 of iterations.
266
267 2004-01-25 Paolo Carlini <pcarlini@suse.de>
268
269 * include/bits/basic_string.h (erase(size_type, size_type),
270 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
271 instead, thus avoiding redundant check for length_error.
272
273 * include/bits/basic_string.h: Tweak some comments.
274
275 2004-01-24 Paolo Carlini <pcarlini@suse.de>
276
277 * include/bits/basic_string.tcc (operator+(const _CharT*,
278 const basic_string&)): No need to go through the append
279 taking two iterators.
280
281 2004-01-24 Paolo Carlini <pcarlini@suse.de>
282
283 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
284 Revert last change to use std::min: machine language is worse.
285 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
286 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
287 (find_last_not_of(_CharT, size_type)): Ditto.
288
289 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
290 size_type)): Discard the value returned by _M_check.
291 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
292 (append(const basic_string&, size_type, size_type)): Ditto.
293 (copy(_CharT*, size_type, size_type)): Ditto.
294 (compare(size_type, size_type, const basic_string&)): Ditto.
295 (compare(size_type, size_type, const basic_string&,
296 size_type, size_type)): Ditto.
297 (compare(size_type, size_type, const _CharT*)): Ditto.
298 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
299
300 2004-01-24 Paolo Carlini <pcarlini@suse.de>
301
302 * include/bits/basic_string.h (insert(size_type,
303 const basic_string&, size_type, size_type)): Define inline here.
304 * include/bits/basic_string.tcc (insert(size_type,
305 const basic_string&, size_type, size_type)): Move inline.
306
307 2004-01-24 Paolo Carlini <pcarlini@suse.de>
308
309 * include/bits/basic_string.h (assign(const basic_string&,
310 size_type, size_type)): Define inline here.
311 (replace(size_type, size_type, const basic_string&,
312 size_type, size_type)): Ditto.
313 (_M_replace_dispatch(iterator, iterator, _InputIterator,
314 _InputIterator, __false_type)): Only declare.
315 (_M_replace(iterator, iterator, _InputIterator,
316 _InputIterator)): Remove.
317 * include/bits/basic_string.tcc (assign(const basic_string&,
318 size_type, size_type)): Move inline.
319 (replace(size_type, size_type, const basic_string&,
320 size_type, size_type)): Ditto.
321 (_M_replace_dispatch(iterator, iterator, _InputIterator,
322 _InputIterator, __false_type)): Define, now does also what
323 _M_replace did before.
324 * src/string-inst.cc (_M_replace): Don't instantiate.
325
326 * include/bits/basic_string.tcc (find(const _CharT*,
327 size_type, size_type)): Tidy.
328 (rfind(_CharT, size_type)): Ditto.
329 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
330 (find_first_not_of(_CharT, size_type)): Ditto.
331 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
332 (find_last_not_of(_CharT, size_type)): Ditto.
333
334 2004-01-23 Paolo Carlini <pcarlini@suse.de>
335
336 PR libstdc++/13838
337 * include/debug/bitset (operator|=): Fix typo.
338 * testsuite/23_containers/bitset/operations/13838.cc: New.
339
340 2004-01-23 Paolo Carlini <pcarlini@suse.de>
341
342 * include/bits/basic_string.tcc (insert(size_type,
343 const _CharT*, size_type __n)): Fix length_error check.
344 (replace(size_type, size_type, const _CharT*, size_type):
345 Ditto; call _M_replace_safe.
346 (_M_replace_aux(size_type, size_type, size_type, _CharT):
347 Fix length_error check.
348 (_M_replace(iterator, iterator, _InputIterator,
349 _InputIterator)): Ditto, tweak.
350 (_M_replace_safe(size_type, size_type, const _CharT*,
351 size_type)): Remove length_error check.
352
353 * include/bits/basic_string.tcc (append(const basic_string&),
354 append(const basic_string&, size_type, size_type)): Tweak
355 comment.
356
357 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
358 size_type)): If __n == 0 don't call traits::copy.
359
360 2004-01-23 Stefan Olsson <stefan@snon.net>
361
362 * include/ext/mt_allocator.h: Reduce lock contention.
363
364 2004-01-23 Paolo Carlini <pcarlini@suse.de>
365
366 PR libstdc++/13831
367 * include/bits/fstream.tcc (underflow): Remove unused
368 variable.
369 * include/bits/streambuf_iterator.h (equal): Ditto.
370 * include/bits/locale_facets.h (_M_convert_from_char):
371 Ditto.
372
373 2004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
374
375 PR c/13814
376 * config/linker-map.gnu (nan): Delete.
377 * libmath/mathconf.h (NAN, nan): Delete.
378 * linkage.m4 (nan): Don't check for it.
379 * libmath/nan.c: Delete file.
380
381 * config.h.in, configure: Regenerate.
382
383 2004-01-23 Paolo Carlini <pcarlini@suse.de>
384
385 * include/bits/basic_string.h (push_back(_CharT)):
386 Call _M_replace_aux.
387 (insert(size_type, const basic_string&)): Trivial tweak.
388 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
389 (insert(iterator, _CharT)): Ditto.
390 (erase(size_type, size_type)): Ditto.
391 (erase(iterator)): Ditto.
392 (erase(iterator, iterator)): Ditto.
393 (replace(size_type, size_type, size_type, _CharT)): Ditto.
394
395 2004-01-23 Loren J. Rittle <ljrittle@acm.org>
396
397 libstdc++/13823
398 * testsuite/performance/allocator_map_thread.cc: New test.
399
400 2004-01-22 Paolo Carlini <pcarlini@suse.de>
401
402 * include/bits/locale_facets.tcc
403 (money_put::do_put(..., long double)): Use the basic_string
404 constructor for char arrays, not that for C-strings, to pass
405 __digits to do_put(..., const string_type&): __ws isn't
406 null-terminated.
407
408 2004-01-22 Paolo Carlini <pcarlini@suse.de>
409
410 * include/bits/basic_string.h (_M_replace_safe): Change
411 signatures to take size_types and const _CharT*.
412 (_M_replace_aux): Likewise, takes size_types instead of
413 iterators.
414 (append(size_type, _CharT)): Update call.
415 (assign(size_type, _CharT)): Ditto.
416 (replace(iterator, iterator, size_type, _CharT)): Ditto.
417 (_M_replace_dispatch(iterator, iterator, _Integer,
418 _Integer, __true_type)): Ditto.
419 * include/bits/basic_string.tcc (assign(const _CharT*,
420 size_type)): Ditto.
421 (insert(size_type, const _CharT*, size_type)): Ditto.
422 (replace(size_type, size_type, const _CharT*,
423 size_type)): Ditto.
424 (_M_replace(iterator, iterator, _InputIterator,
425 _InputIterator)): Ditto.
426 (append(const basic_string&)): Ditto.
427 (append(const basic_string&, size_type, size_type): Ditto.
428 (append(const _CharT*, size_type): Ditto.
429 (_M_replace_safe, _M_replace_safe): Change definitions
430 accordingly, simplify.
431 * string-inst.cc (_M_replace_safe): Don't instantiate.
432
433 2004-01-21 Paolo Carlini <pcarlini@suse.de>
434
435 * include/bits/basic_string.tcc (append(const basic_string&)):
436 Revert previous change.
437 (append(const basic_string&, size_type, size_type)): Revert
438 previous change, use _M_check and _M_limit.
439
440 2004-01-21 Paolo Carlini <pcarlini@suse.de>
441
442 * include/bits/basic_string.h (_M_check): Change to return
443 a checked __pos and take an additional const char* argument.
444 (_M_fold): Rename to _M_limit, change to return a size_type,
445 corresponding to the __off limited to the actual length.
446 (insert(size_type, size_type, _CharT)): Update call, call
447 replace.
448 (insert(iterator, _CharT)): Call replace(iterator, iterator,
449 size_type, _CharT) instead.
450 (erase(size_type, size_type)): Update calls.
451 (replace(size_type, size_type, size_type, _CharT)): Ditto.
452 (substr(size_type, size_type)): Use _M_check.
453 * include/bits/basic_string.tcc (basic_string(const basic_string&,
454 size_type, size_type)): Update calls.
455 (basic_string(const basic_string&, size_type, size_type,
456 const _Alloc&)): Ditto.
457 (assign(const basic_string&, size_type, size_type)): Use the
458 new _M_check and _M_limit.
459 (insert(size_type, const basic_string&, size_type, size_type):
460 Ditto.
461 (insert(size_type, const _CharT*, size_type)): Ditto.
462 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
463 (replace(size_type, size_type, const basic_string&,
464 size_type, size_type)): Ditto.
465 (append(const basic_string&)): Ditto.
466 (append(const basic_string&, size_type, size_type)): Ditto.
467 (copy(_CharT*, size_type, size_type)): Ditto.
468 (compare(size_type, size_type, const basic_string&)): Ditto.
469 (compare(size_type, size_type, const basic_string&,size_type,
470 size_type)): Ditto.
471 (compare(size_type, size_type, const _CharT*)): Ditto.
472 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
473
474 2004-01-19 Stefan Olsson <stefan@snon.net>
475
476 * include/ext/mt_allocator.h: If a thread, when it dies, still has
477 memory on it's freelist this memory is not returned to global
478 list. Simplification of deallocate so that memory is always
479 returned to the calling thread id's freelist instead of to
480 global. Fix typos. Add volatile where appropriate.
481
482 2004-01-19 Loren J. Rittle <ljrittle@acm.org>
483
484 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
485 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
486 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
487
488 2004-01-19 Paolo Carlini <pcarlini@suse.de>
489
490 * src/debug.cc: Make sure all the names are prefixed with
491 double (or single) underscore.
492
493 2004-01-19 Paolo Carlini <pcarlini@suse.de>
494
495 * src/debug.cc: Trivial formatting change.
496
497 2004-01-19 Paolo Carlini <pcarlini@suse.de>
498
499 * include/bits/basic_string.tcc (_S_construct(size_type,
500 _CharT, const _Alloc&)): Remove redundant try/catch.
501 (_M_mutate(size_type, size_type, size_type)): Ditto.
502 (_M_clone(const _Alloc&, size_type)): Ditto.
503
504 2004-01-18 Paolo Carlini <pcarlini@suse.de>
505
506 * include/bits/basic_string.h (c_str()): Simplify, due to
507 21.3.4 the internal representation is always kept null-terminated.
508 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
509 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
510 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
511 Ditto.
512
513 2004-01-18 Paolo Carlini <pcarlini@suse.de>
514
515 * include/bits/basic_string.h (append(size_type, _CharT)):
516 Moved inline, just call _M_replace_aux, no source iterators at
517 risk of being clobbered.
518 (assign(size_type, _CharT)): Call directly _M_replace_aux.
519 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
520 input_iterator_tag)): Remove fifth unused argument.
521 (_M_replace_dispatch(iterator, iterator, _InputIterator,
522 _InputIterator, __false_type)): Update call.
523 * include/bits/basic_string.tcc (replace(size_type, size_type,
524 const _CharT*, size_type)): Update call.
525 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
526 throw string literal.
527 (_M_replace_safe(iterator, iterator, _ForwardIterator,
528 _ForwardIterator)): Likewise.
529 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
530 input_iterator_tag)): Remove fifth unused argument.
531 (append(size_type __n, _CharT __c)): Move inline.
532 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
533 const C*, const C*, input_iterator_tag)): Remove fifth unused
534 argument.
535
536 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
537
538 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
539 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
540
541 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
542
543 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
544 mkfifo for mingw32.
545
546 2004-01-15 Stefan Olsson <stefan@snon.net>
547
548 * include/ext/mt_allocator.h: Reuse thread id's as soon as
549 possible by changing the behaviour of thread_freelist to do
550 push_front when threads die instead of push_back.
551
552 2004-01-14 Paolo Carlini <pcarlini@suse.de>
553
554 * include/bits/locale_facets.h (struct __numpunct_cache):
555 Add member _M_grouping_size, caching the length of _M_grouping.
556 (__numpunct_cache<>::_M_cache): Assign the latter.
557 (__verify_grouping): Move declaration...
558 * include/bits/locale_facets.tcc (__verify_grouping):
559 ... here, change signature to take a const char* and a size_t
560 for the grouping; not a template anymore.
561 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
562 Likewise change signature and tweak consistently.
563 (num_get::_M_extract_float, num_get::_M_extract_int,
564 num_put::_M_insert_int, num_put::_M_insert_float,
565 money_get::do_get(string_type&), money_get::do_put(string_type)):
566 Update callers.
567 * config/locale/generic/numeric_members.cc
568 (numpunct<>::_M_initialize_numpunct): Assign the new member.
569 * config/locale/gnu/numeric_members.cc
570 (numpunct<>::_M_initialize_numpunct): Likewise.
571 * src/locale-inst.cc (__add_grouping): Tweak signature.
572 (__verify_grouping): Don't instantiate, not a template anymore.
573
574 * include/bits/locale_facets.h: Rename _M_truename_len ->
575 _M_truename_size, _M_falsename_len -> _M_falsename_size.
576 * include/bits/locale_facets.tcc: Likewise.
577 * config/locale/generic/numeric_members.cc: Likewise.
578 * config/locale/gnu/numeric_members.cc: Likewise.
579
580 2004-01-14 Stefan Olsson <stefan@snon.net>
581
582 * include/ext/mt_allocator.h: Fixups.
583 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
584 * testsuite/performance/allocator_thread.cc: Same.
585
586 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
587
588 * testsuite/performance/ifstream_extract_float.cc: Add higher
589 precision tests.
590 * testsuite/performance/ofstream_insert_float.cc: Same.
591
592 2004-01-13 Paolo Carlini <pcarlini@suse.de>
593
594 * src/locale-misc-inst.cc (__convert_from_v(long),
595 __convert_from_v(unsigned long), __convert_from_v(long long),
596 __convert_from_v(unsigned long long)): Remove, unused.
597
598 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
599
600 * testsuite/performance/ifstream_extract_float.cc: New.
601 * testsuite/performance/ofstream_insert_float.cc: Float generation
602 matches above.
603
604 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
605 * 20_util/auto_ptr/1.cc: ...this.
606 * 20_util/auto_ptr/2.cc: Same.
607 * 20_util/auto_ptr/3.cc: Same.
608 * 20_util/auto_ptr/3946.cc: Same.
609 * 20_util/auto_ptr/4.cc: Same.
610 * 20_util/auto_ptr/5.cc: Same.
611 * 20_util/auto_ptr/6.cc: Same.
612 * 20_util/auto_ptr/7.cc: Same.
613 * 20_util/auto_ptr/assign_neg.cc
614 * 20_util/pairs.cc: Break into...
615 * 20_util/pair/1.cc: ...this.
616 * 20_util/pair/2.cc: Same.
617 * 20_util/pair/3.cc: Same.
618 * 20_util/pair/4.cc: Same.
619
620 2004-01-13 Paolo Carlini <pcarlini@suse.de>
621
622 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
623 Set correctly just basefield, the only group that matters.
624
625 2004-01-13 Paolo Carlini <pcarlini@suse.de>
626
627 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
628 (_Rope_rep_base): Inherit directly from the rope allocator;
629 use rebinding instead of _Alloc_traits; pick up data member
630 from _Rope_rep_alloc_base.
631 (_Rope_alloc_base): Eliminate.
632 (_Rope_base): Inherit directly from the rope allocator; use
633 rebinding instead of _Alloc_traits; pick up data member from
634 _Rope_alloc_base.
635 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
636 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
637
638 2004-01-13 Paolo Carlini <pcarlini@suse.de>
639
640 PR libstdc++/13650
641 * include/bits/basic_string.tcc (compare(size_type, size_type,
642 const _CharT*, size_type)): Implement correctly the resolution
643 of DR 5: basically, s is a char array, -not- a C string.
644 * include/bits/basic_string.h: Tweak some comments.
645 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
646 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
647
648 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
649
650 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
651 Solaris.
652
653 2004-01-12 Paolo Carlini <pcarlini@suse.de>
654
655 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
656 Use try_mkfifo.
657 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
658 Likewise.
659
660 2004-01-12 Paolo Carlini <pcarlini@suse.de>
661
662 * include/bits/locale_facets.h (struct __numpunct_cache):
663 Add members _M_truename_len and _M_falsename_len, caching
664 the lengths of _M_truename and _M_falsename.
665 (__numpunct_cache<>::_M_cache): Assign the latter.
666 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
667 num_put::do_put(bool)): Use the new members, thus avoiding
668 computing string lengths again and again.
669 * config/locale/generic/numeric_members.cc
670 (numpunct<>::_M_initialize_numpunct): Assign the new members.
671 * config/locale/gnu/numeric_members.cc
672 (numpunct<>::_M_initialize_numpunct): Likewise.
673
674 2004-01-12 Mark Mitchell <mark@codesourcery.com>
675
676 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
677 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
678 it.
679 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
680 and remove Cygwin XFAIL.
681 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
682 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
683 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
684 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
685 Likewise.
686 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
687 * testsuite/27_io/objects/char/7.cc: Likewise.
688 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
689 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
690 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
691
692 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
693
694 * include/std/std_complex.h (std::complex<>::real): Return a
695 reference. Add non-const overload.
696 (std::complex<>::real): Likewise.
697 (std::real): Likewise.
698 (std::imag): Likewise.
699 (std::operator+): Tidy.
700 (std::operator-): Likewise.
701 (std::operator*): Likewise.
702 (std::operator/): Likewise.
703 (std::operator>>): Likewise.
704
705 2004-01-11 Paolo Carlini <pcarlini@suse.de>
706
707 PR libstdc++/13582
708 * include/bits/fstream.tcc (imbue): Exploit the external
709 buffer to imbue 'on the fly' a new locale and convert its
710 remainder with the new codecvt facet.
711 (underflow): Tweak slightly to deal with this special case.
712 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
713 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
714 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
715 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
716 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
717
718 2004-01-10 Paolo Carlini <pcarlini@suse.de>
719
720 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
721 Import Revision 28.
722
723 2004-01-10 Paolo Carlini <pcarlini@suse.de>
724
725 PR libstdc++/13630
726 * include/bits/locale_classes.h (class locale): Fix category
727 typedef.
728 * testsuite/22_locale/locale/13630.cc: Add.
729
730 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
731
732 * include/bits/locale_facets.h: Make a name really dependent. This
733 will be needed when Core Issue 224 is implemented.
734
735 2004-01-09 Paolo Carlini <pcarlini@suse.de>
736
737 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
738 * testsuite/performance/allocator_thread.cc: Likewise.
739
740 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
741
742 * crossconfig.m4: Add LFS, io bits to linux cross config.
743 * acconfig.h: Remove obsolete bits, reorder.
744 * config.h.in: Regenerate.
745 * aclocal.m4: Same.
746 * configure: Same.
747
748 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
749
750 * include/bits/stl_list.h:
751 * include/bits/list.tc:
752 * src/list.cc:
753 Performance enhancements for destructor, push_front(),
754 push_back(), pop_front(), pop_back(), sort()
755 Eliminated static_casts where possible.
756 Moved code out of header files into new src/list.cc
757 implementation file for library where possible.
758 Remove inheritance from iterator class and create separate
759 classes for non-constant and constant iterators.
760 * include/bits/stl_tree.h (_Rb_tree class):
761 * src/tree.cc:
762 Only erase contents in destructor.
763 Eliminate unnecessary initialization in assignment operator.
764 Optimize for the nominal case by not checking whether
765 container is empty in clear().
766 Re-order test in _M_insert() to improve performance.
767 Move initialization of new node's left & right pointers to
768 src/tree.cc to where new node's colour is initialized
769 and to reduce the amount of inline code.
770 Use _M_leftmost() and _M_end() to improve readability where
771 appropriate.
772 Create separate classes for non-constant and constant
773 iterators to clarify code, avoid extra template parameters and
774 casting away constness.
775
776 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
777
778 * src/Makefile.am (sources): Add list.cc, tree.cc.
779 * src/stl_tree.cc: Move to...
780 * src/tree.cc: ...here.
781 * src/list.cc: Add.
782 * config/linker-map.gnu: Tweaks.
783 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
784 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
785
786 * bits/stl_vector.h: Column wrap comments.
787
788 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
789
790 (re-open) PR libstdc++/12658
791 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
792 (locale::global): Likewise.
793
794 2004-01-07 Paolo Carlini <pcarlini@suse.de>
795
796 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
797 Remove redundant #include.
798 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
799 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
800 re-enable normal testing.
801 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
802 #include.
803 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
804 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
805 Likewise.
806 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
807 Likewise.
808 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
809 Likewise.
810 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
811 Likewise.
812 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
813 Likewise.
814 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
815 Likewise.
816 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
817 Likewise.
818 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
819 More properly, #include <locale>.
820 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
821 Remove redundant #include.
822 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
823 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
824 redundant DejaGnu directive.
825 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
826 redundant #include.
827
828 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
829 Stefan Olsson <stefan@snon.net>
830
831 * scripts/check_performance: Use -pthread.
832 * testsuite/performance/allocator.cc: Tweaks, add list.
833 * testsuite/performance/allocator_thread.cc: New.
834
835 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
836
837 * include/bits/locale_facets.h: Document public classes and
838 functions.
839 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
840 Add comment.
841
842 2004-01-06 Paolo Carlini <pcarlini@suse.de>
843
844 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
845 Remove redundant #includes.
846 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
847 Likewise.
848 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
849 Likewise.
850 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
851 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
852 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
853 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
854 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
855 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
856 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
857 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
858 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
859 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
860 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
861 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
862 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
863 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
864 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
865 Likewise.
866 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
867 Likewise.
868 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
869 Likewise.
870 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
871 Likewise.
872 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
873 Likewise.
874 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
875 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
876 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
877
878 2004-01-04 Paolo Carlini <pcarlini@suse.de>
879
880 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
881 Remove redundant #includes.
882 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
883 Likewise.
884 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
885 Likewise.
886 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
887 Likewise.
888 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
889 Likewise.
890 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
891 Likewise.
892 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
893 Likewise.
894 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
895 Likewise.
896 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
897 Likewise.
898 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
899 Likewise.
900 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
901 Likewise.
902 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
903 Likewise.
904 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
905 Likewise.
906
907 2004-01-04 Mark Mitchell <mark@codesourcery.com>
908
909 PR c++/12226
910 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
911 constructor.
912 * testsuite/27_io/basic_fstream/4.cc: Likewise.
913 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
914 * testsuite/27_io/basic_ios/4.cc: Likewise.
915 * testsuite/27_io/basic_iostream/4.cc: Likewise.
916 * testsuite/27_io/basic_istream/4.cc: Likewise.
917 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
918 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
919 * testsuite/27_io/basic_ostream/4.cc: Likewise.
920 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
921 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
922 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
923
924 2004-01-04 Paolo Carlini <pcarlini@suse.de>
925
926 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
927 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
928 always use double underscored names.
929 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
930 Likewise.
931 * include/bits/locale_facets.h (struct __numpunct_cache):
932 Dimension _M_atoms_out and _M_atoms_in one position smaller.
933 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
934 and _M_atoms_in.
This page took 0.086187 seconds and 6 git commands to generate.