]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
configure.host: Add support for *-tpf.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
6e198ee0
UW
12004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
2 PJ Darcy <darcypj@us.ibm.com>
3
4 * configure.host: Add support for *-tpf.
5 * crossconfig.m4: Likewise.
6 * configure: Regenerate.
7 * config/os/tpf: New directory.
8 * config/os/tpf/os_defines.h: New file.
9 * config/os/tpf/ctype_base.h: Likewise.
10 * config/os/tpf/ctype_inline.h: Likewise.
11 * config/os/tpf/ctype_noninline.h: Likewise.
12
51b6facb
PC
132004-01-27 Paolo Carlini <pcarlini@suse.de>
14
15 PR libstdc++/13884
16 * include/bits/sstream.tcc: Guard use of extern template.
17
a3af79ea
PC
182004-01-27 Paolo Carlini <pcarlini@suse.de>
19
20 * include/bits/basic_string.tcc
21 (basic_string(const basic_string&, size_type, size_type),
22 basic_string(const basic_string&, size_type, size_type,
23 const _Alloc&)): Avoid unnecessarily constructing iterators.
24
ba9119ec
PC
252004-01-26 Paolo Carlini <pcarlini@suse.de>
26
27 * config/locale/generic/c_locale.cc: Fix throw messages
28 to use the __N marker.
29 * config/locale/gnu/c_locale.cc: Likewise.
30 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
31 Likewise.
32 * docs/html/17_intro/C++STYLE: Likewise.
33 * include/bits/basic_ios.tcc: Likewise.
34 * include/bits/fstream.tcc: Likewise.
35 * include/bits/vector.tcc: Likewise.
36 * include/ext/ropeimpl.h: Likewise.
37 * include/std/std_bitset.h: Likewise.
38 * src/ios.cc: Likewise.
39 * src/locale.cc: Likewise.
40 * src/localename.cc: Likewise.
41
0e50667c
PC
422004-01-26 Paolo Carlini <pcarlini@suse.de>
43
44 * include/bits/basic_string.h (_M_replace_aux): Use the
45 __N marker in throw message.
46 * include/bits/basic_string.tcc (assign(const _CharT*,
47 size_type), insert(size_type, const _CharT*, size_type),
48 replace(size_type, size_type, const _CharT*, size_type),
49 reserve, _Rep::_S_create, resize, _M_replace_dispatch):
50 Likewise.
51
52 * include/bits/basic_string.h, include/bits/basic_string.tcc:
53 Fold overlong lines, minor formatting changes.
54
4d39d873
PC
552004-01-26 Paolo Carlini <pcarlini@suse.de>
56
57 * include/bits/basic_string.h (replace(iterator, iterator,
58 const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
59 (replace(iterator, iterator, const _CharT*)): Ditto.
60 (replace(iterator, iterator, const _CharT*, size_type)):
61 Add missing _GLIBCXX_DEBUG_PEDASSERT.
62
2cb612d1
PC
632004-01-26 Paolo Carlini <pcarlini@suse.de>
64
65 * include/bits/basic_string.tcc (replace(size_type,
66 size_type, const _CharT*, size_type)): Implement optimized
67 in-place algorithm for non-overlapping ranges.
68 * testsuite/21_strings/basic_string/replace/char/6.cc: New.
69 * testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.
70
71 * include/bits/basic_string.tcc (insert(size_type,
72 const _CharT*, size_type)): Tweak slightly.
73
f942e78d
AS
742004-01-26 Andreas Schwab <schwab@suse.de>
75
76 * config/locale/gnu/monetary_members.cc: Restore locale before
77 rethrowing exception.
78
91eab378
PC
792004-01-25 Paolo Carlini <pcarlini@suse.de>
80
81 * include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
82 Define inline here.
83 * include/bits/basic_string.tcc (_M_replace_aux, _M_replace_safe):
84 Move inline.
85
86 * include/bits/basic_string.tcc: Very minor tweaks.
87
9c519c93
PC
882004-01-25 Paolo Carlini <pcarlini@suse.de>
89
90 * testsuite/performance/string_append.cc: Increase number
91 of iterations.
92
30f315cd
PC
932004-01-25 Paolo Carlini <pcarlini@suse.de>
94
95 * include/bits/basic_string.h (erase(size_type, size_type),
96 erase(iterator), erase(iterator, iterator)): Call _M_replace_safe
97 instead, thus avoiding redundant check for length_error.
98
99 * include/bits/basic_string.h: Tweak some comments.
100
bb9909b0
PC
1012004-01-24 Paolo Carlini <pcarlini@suse.de>
102
103 * include/bits/basic_string.tcc (operator+(const _CharT*,
104 const basic_string&)): No need to go through the append
105 taking two iterators.
106
04cc8aef
PC
1072004-01-24 Paolo Carlini <pcarlini@suse.de>
108
109 * include/bits/basic_string.tcc (rfind(_CharT, size_type)):
110 Revert last change to use std::min: machine language is worse.
111 (find_last_of(const _CharT*, size_type, size_type)): Ditto.
112 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
113 (find_last_not_of(_CharT, size_type)): Ditto.
114
115 * include/bits/basic_string.tcc (insert(size_type, const _CharT*,
116 size_type)): Discard the value returned by _M_check.
117 (replace(size_type, size_type, const _CharT*, size_type)): Ditto.
118 (append(const basic_string&, size_type, size_type)): Ditto.
119 (copy(_CharT*, size_type, size_type)): Ditto.
120 (compare(size_type, size_type, const basic_string&)): Ditto.
121 (compare(size_type, size_type, const basic_string&,
122 size_type, size_type)): Ditto.
123 (compare(size_type, size_type, const _CharT*)): Ditto.
124 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
125
8865bf80
PC
1262004-01-24 Paolo Carlini <pcarlini@suse.de>
127
128 * include/bits/basic_string.h (insert(size_type,
129 const basic_string&, size_type, size_type)): Define inline here.
130 * include/bits/basic_string.tcc (insert(size_type,
131 const basic_string&, size_type, size_type)): Move inline.
132
fefe561e
PC
1332004-01-24 Paolo Carlini <pcarlini@suse.de>
134
135 * include/bits/basic_string.h (assign(const basic_string&,
136 size_type, size_type)): Define inline here.
137 (replace(size_type, size_type, const basic_string&,
138 size_type, size_type)): Ditto.
139 (_M_replace_dispatch(iterator, iterator, _InputIterator,
140 _InputIterator, __false_type)): Only declare.
141 (_M_replace(iterator, iterator, _InputIterator,
142 _InputIterator)): Remove.
143 * include/bits/basic_string.tcc (assign(const basic_string&,
144 size_type, size_type)): Move inline.
145 (replace(size_type, size_type, const basic_string&,
146 size_type, size_type)): Ditto.
147 (_M_replace_dispatch(iterator, iterator, _InputIterator,
148 _InputIterator, __false_type)): Define, now does also what
149 _M_replace did before.
150 * src/string-inst.cc (_M_replace): Don't instantiate.
151
152 * include/bits/basic_string.tcc (find(const _CharT*,
153 size_type, size_type)): Tidy.
154 (rfind(_CharT, size_type)): Ditto.
155 (find_first_not_of(const _CharT*, size_type, size_type)): Ditto.
156 (find_first_not_of(_CharT, size_type)): Ditto.
157 (find_last_not_of(const _CharT*, size_type, size_type)): Ditto.
158 (find_last_not_of(_CharT, size_type)): Ditto.
159
72afd981
PC
1602004-01-23 Paolo Carlini <pcarlini@suse.de>
161
162 PR libstdc++/13838
163 * include/debug/bitset (operator|=): Fix typo.
164 * testsuite/23_containers/bitset/operations/13838.cc: New.
165
251804e6
PC
1662004-01-23 Paolo Carlini <pcarlini@suse.de>
167
168 * include/bits/basic_string.tcc (insert(size_type,
169 const _CharT*, size_type __n)): Fix length_error check.
170 (replace(size_type, size_type, const _CharT*, size_type):
171 Ditto; call _M_replace_safe.
172 (_M_replace_aux(size_type, size_type, size_type, _CharT):
173 Fix length_error check.
174 (_M_replace(iterator, iterator, _InputIterator,
175 _InputIterator)): Ditto, tweak.
176 (_M_replace_safe(size_type, size_type, const _CharT*,
177 size_type)): Remove length_error check.
178
179 * include/bits/basic_string.tcc (append(const basic_string&),
180 append(const basic_string&, size_type, size_type)): Tweak
181 comment.
182
183 * include/bits/basic_string.tcc (copy(_CharT*, size_type,
184 size_type)): If __n == 0 don't call traits::copy.
185
3cfb44c2
SO
1862004-01-23 Stefan Olsson <stefan@snon.net>
187
188 * include/ext/mt_allocator.h: Reduce lock contention.
189
22352844
PC
1902004-01-23 Paolo Carlini <pcarlini@suse.de>
191
192 PR libstdc++/13831
193 * include/bits/fstream.tcc (underflow): Remove unused
194 variable.
195 * include/bits/streambuf_iterator.h (equal): Ditto.
196 * include/bits/locale_facets.h (_M_convert_from_char):
197 Ditto.
198
129057c1
KG
1992004-01-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
200
201 PR c/13814
202 * config/linker-map.gnu (nan): Delete.
203 * libmath/mathconf.h (NAN, nan): Delete.
204 * linkage.m4 (nan): Don't check for it.
205 * libmath/nan.c: Delete file.
206
207 * config.h.in, configure: Regenerate.
208
0e707673
PC
2092004-01-23 Paolo Carlini <pcarlini@suse.de>
210
211 * include/bits/basic_string.h (push_back(_CharT)):
212 Call _M_replace_aux.
213 (insert(size_type, const basic_string&)): Trivial tweak.
214 (insert(size_type, size_type, _CharT)): Call _M_replace_aux.
215 (insert(iterator, _CharT)): Ditto.
216 (erase(size_type, size_type)): Ditto.
217 (erase(iterator)): Ditto.
218 (erase(iterator, iterator)): Ditto.
219 (replace(size_type, size_type, size_type, _CharT)): Ditto.
220
402b0954
LR
2212004-01-23 Loren J. Rittle <ljrittle@acm.org>
222
223 libstdc++/13823
224 * testsuite/performance/allocator_map_thread.cc: New test.
225
ba46e66a
PC
2262004-01-22 Paolo Carlini <pcarlini@suse.de>
227
228 * include/bits/locale_facets.tcc
229 (money_put::do_put(..., long double)): Use the basic_string
230 constructor for char arrays, not that for C-strings, to pass
231 __digits to do_put(..., const string_type&): __ws isn't
232 null-terminated.
233
7bb9b33b
PC
2342004-01-22 Paolo Carlini <pcarlini@suse.de>
235
236 * include/bits/basic_string.h (_M_replace_safe): Change
237 signatures to take size_types and const _CharT*.
238 (_M_replace_aux): Likewise, takes size_types instead of
239 iterators.
240 (append(size_type, _CharT)): Update call.
241 (assign(size_type, _CharT)): Ditto.
242 (replace(iterator, iterator, size_type, _CharT)): Ditto.
243 (_M_replace_dispatch(iterator, iterator, _Integer,
244 _Integer, __true_type)): Ditto.
245 * include/bits/basic_string.tcc (assign(const _CharT*,
246 size_type)): Ditto.
247 (insert(size_type, const _CharT*, size_type)): Ditto.
248 (replace(size_type, size_type, const _CharT*,
249 size_type)): Ditto.
250 (_M_replace(iterator, iterator, _InputIterator,
251 _InputIterator)): Ditto.
252 (append(const basic_string&)): Ditto.
253 (append(const basic_string&, size_type, size_type): Ditto.
254 (append(const _CharT*, size_type): Ditto.
255 (_M_replace_safe, _M_replace_safe): Change definitions
256 accordingly, simplify.
257 * string-inst.cc (_M_replace_safe): Don't instantiate.
258
3e7782b2
PC
2592004-01-21 Paolo Carlini <pcarlini@suse.de>
260
261 * include/bits/basic_string.tcc (append(const basic_string&)):
262 Revert previous change.
263 (append(const basic_string&, size_type, size_type)): Revert
264 previous change, use _M_check and _M_limit.
265
e03a6fb7
PC
2662004-01-21 Paolo Carlini <pcarlini@suse.de>
267
268 * include/bits/basic_string.h (_M_check): Change to return
269 a checked __pos and take an additional const char* argument.
270 (_M_fold): Rename to _M_limit, change to return a size_type,
271 corresponding to the __off limited to the actual length.
272 (insert(size_type, size_type, _CharT)): Update call, call
273 replace.
274 (insert(iterator, _CharT)): Call replace(iterator, iterator,
275 size_type, _CharT) instead.
276 (erase(size_type, size_type)): Update calls.
277 (replace(size_type, size_type, size_type, _CharT)): Ditto.
278 (substr(size_type, size_type)): Use _M_check.
279 * include/bits/basic_string.tcc (basic_string(const basic_string&,
280 size_type, size_type)): Update calls.
281 (basic_string(const basic_string&, size_type, size_type,
282 const _Alloc&)): Ditto.
283 (assign(const basic_string&, size_type, size_type)): Use the
284 new _M_check and _M_limit.
285 (insert(size_type, const basic_string&, size_type, size_type):
286 Ditto.
287 (insert(size_type, const _CharT*, size_type)): Ditto.
288 (replace(size_type, size_type, const _CharT*, size_type): Ditto.
289 (replace(size_type, size_type, const basic_string&,
290 size_type, size_type)): Ditto.
291 (append(const basic_string&)): 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&,size_type,
296 size_type)): Ditto.
297 (compare(size_type, size_type, const _CharT*)): Ditto.
298 (compare(size_type, size_type, const _CharT*, size_type)): Ditto.
299
cec73eb5
SO
3002004-01-19 Stefan Olsson <stefan@snon.net>
301
302 * include/ext/mt_allocator.h: If a thread, when it dies, still has
303 memory on it's freelist this memory is not returned to global
304 list. Simplification of deallocate so that memory is always
305 returned to the calling thread id's freelist instead of to
306 global. Fix typos. Add volatile where appropriate.
307
87d11ccc
LR
3082004-01-19 Loren J. Rittle <ljrittle@acm.org>
309
310 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Treat unbuffered.
311 * testsuite/ext/stdio_filebuf/char/10063-3.cc: New test. Like -2 but
312 use __gnu_cxx::stdio_sync_filebuf<char> instead; allow buffered stream.
313
f18be892
PC
3142004-01-19 Paolo Carlini <pcarlini@suse.de>
315
316 * src/debug.cc: Make sure all the names are prefixed with
317 double (or single) underscore.
318
33d4e9b2
PC
3192004-01-19 Paolo Carlini <pcarlini@suse.de>
320
321 * src/debug.cc: Trivial formatting change.
322
954b12d2
PC
3232004-01-19 Paolo Carlini <pcarlini@suse.de>
324
325 * include/bits/basic_string.tcc (_S_construct(size_type,
326 _CharT, const _Alloc&)): Remove redundant try/catch.
327 (_M_mutate(size_type, size_type, size_type)): Ditto.
328 (_M_clone(const _Alloc&, size_type)): Ditto.
329
acbab5bf
PC
3302004-01-18 Paolo Carlini <pcarlini@suse.de>
331
332 * include/bits/basic_string.h (c_str()): Simplify, due to
333 21.3.4 the internal representation is always kept null-terminated.
334 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
335 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
336 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
337 Ditto.
338
9c96a689
PC
3392004-01-18 Paolo Carlini <pcarlini@suse.de>
340
341 * include/bits/basic_string.h (append(size_type, _CharT)):
342 Moved inline, just call _M_replace_aux, no source iterators at
343 risk of being clobbered.
344 (assign(size_type, _CharT)): Call directly _M_replace_aux.
345 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
346 input_iterator_tag)): Remove fifth unused argument.
347 (_M_replace_dispatch(iterator, iterator, _InputIterator,
348 _InputIterator, __false_type)): Update call.
349 * include/bits/basic_string.tcc (replace(size_type, size_type,
350 const _CharT*, size_type)): Update call.
351 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
352 throw string literal.
353 (_M_replace_safe(iterator, iterator, _ForwardIterator,
354 _ForwardIterator)): Likewise.
355 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
356 input_iterator_tag)): Remove fifth unused argument.
357 (append(size_type __n, _CharT __c)): Move inline.
358 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
359 const C*, const C*, input_iterator_tag)): Remove fifth unused
360 argument.
361
d517f626
BK
3622004-01-16 Benjamin Kosnik <bkoz@redhat.com>
363
364 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
365 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
366
701b701b
DS
3672004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
368
369 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
370 mkfifo for mingw32.
371
2913770f
SO
3722004-01-15 Stefan Olsson <stefan@snon.net>
373
374 * include/ext/mt_allocator.h: Reuse thread id's as soon as
375 possible by changing the behaviour of thread_freelist to do
376 push_front when threads die instead of push_back.
377
47f62b27
PC
3782004-01-14 Paolo Carlini <pcarlini@suse.de>
379
380 * include/bits/locale_facets.h (struct __numpunct_cache):
381 Add member _M_grouping_size, caching the length of _M_grouping.
382 (__numpunct_cache<>::_M_cache): Assign the latter.
383 (__verify_grouping): Move declaration...
384 * include/bits/locale_facets.tcc (__verify_grouping):
385 ... here, change signature to take a const char* and a size_t
386 for the grouping; not a template anymore.
387 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
388 Likewise change signature and tweak consistently.
389 (num_get::_M_extract_float, num_get::_M_extract_int,
390 num_put::_M_insert_int, num_put::_M_insert_float,
391 money_get::do_get(string_type&), money_get::do_put(string_type)):
392 Update callers.
393 * config/locale/generic/numeric_members.cc
394 (numpunct<>::_M_initialize_numpunct): Assign the new member.
395 * config/locale/gnu/numeric_members.cc
396 (numpunct<>::_M_initialize_numpunct): Likewise.
397 * src/locale-inst.cc (__add_grouping): Tweak signature.
398 (__verify_grouping): Don't instantiate, not a template anymore.
399
400 * include/bits/locale_facets.h: Rename _M_truename_len ->
401 _M_truename_size, _M_falsename_len -> _M_falsename_size.
402 * include/bits/locale_facets.tcc: Likewise.
403 * config/locale/generic/numeric_members.cc: Likewise.
404 * config/locale/gnu/numeric_members.cc: Likewise.
405
41f24725
SO
4062004-01-14 Stefan Olsson <stefan@snon.net>
407
408 * include/ext/mt_allocator.h: Fixups.
409 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
410 * testsuite/performance/allocator_thread.cc: Same.
411
070ce57b
BK
4122004-01-13 Benjamin Kosnik <bkoz@redhat.com>
413
414 * testsuite/performance/ifstream_extract_float.cc: Add higher
415 precision tests.
416 * testsuite/performance/ofstream_insert_float.cc: Same.
417
c9513590
PC
4182004-01-13 Paolo Carlini <pcarlini@suse.de>
419
420 * src/locale-misc-inst.cc (__convert_from_v(long),
421 __convert_from_v(unsigned long), __convert_from_v(long long),
422 __convert_from_v(unsigned long long)): Remove, unused.
423
60af005f
BK
4242004-01-13 Benjamin Kosnik <bkoz@redhat.com>
425
426 * testsuite/performance/ifstream_extract_float.cc: New.
427 * testsuite/performance/ofstream_insert_float.cc: Float generation
428 matches above.
429
430 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
431 * 20_util/auto_ptr/1.cc: ...this.
432 * 20_util/auto_ptr/2.cc: Same.
433 * 20_util/auto_ptr/3.cc: Same.
434 * 20_util/auto_ptr/3946.cc: Same.
435 * 20_util/auto_ptr/4.cc: Same.
436 * 20_util/auto_ptr/5.cc: Same.
437 * 20_util/auto_ptr/6.cc: Same.
438 * 20_util/auto_ptr/7.cc: Same.
439 * 20_util/auto_ptr/assign_neg.cc
440 * 20_util/pairs.cc: Break into...
441 * 20_util/pair/1.cc: ...this.
442 * 20_util/pair/2.cc: Same.
443 * 20_util/pair/3.cc: Same.
444 * 20_util/pair/4.cc: Same.
445
d8ef7dec
PC
4462004-01-13 Paolo Carlini <pcarlini@suse.de>
447
448 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
449 Set correctly just basefield, the only group that matters.
450
5640461d
PC
4512004-01-13 Paolo Carlini <pcarlini@suse.de>
452
453 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
454 (_Rope_rep_base): Inherit directly from the rope allocator;
455 use rebinding instead of _Alloc_traits; pick up data member
456 from _Rope_rep_alloc_base.
457 (_Rope_alloc_base): Eliminate.
458 (_Rope_base): Inherit directly from the rope allocator; use
459 rebinding instead of _Alloc_traits; pick up data member from
460 _Rope_alloc_base.
461 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
462 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
463
95c9624f
PC
4642004-01-13 Paolo Carlini <pcarlini@suse.de>
465
466 PR libstdc++/13650
467 * include/bits/basic_string.tcc (compare(size_type, size_type,
468 const _CharT*, size_type)): Implement correctly the resolution
469 of DR 5: basically, s is a char array, -not- a C string.
470 * include/bits/basic_string.h: Tweak some comments.
471 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
472 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
473
c91de77a
AT
4742004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
475
476 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
477 Solaris.
478
300b3317
PC
4792004-01-12 Paolo Carlini <pcarlini@suse.de>
480
481 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
482 Use try_mkfifo.
483 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
484 Likewise.
485
dc6798f8
PC
4862004-01-12 Paolo Carlini <pcarlini@suse.de>
487
488 * include/bits/locale_facets.h (struct __numpunct_cache):
489 Add members _M_truename_len and _M_falsename_len, caching
490 the lengths of _M_truename and _M_falsename.
491 (__numpunct_cache<>::_M_cache): Assign the latter.
492 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
493 num_put::do_put(bool)): Use the new members, thus avoiding
494 computing string lengths again and again.
495 * config/locale/generic/numeric_members.cc
496 (numpunct<>::_M_initialize_numpunct): Assign the new members.
497 * config/locale/gnu/numeric_members.cc
498 (numpunct<>::_M_initialize_numpunct): Likewise.
499
ea1ea21a
MM
5002004-01-12 Mark Mitchell <mark@codesourcery.com>
501
502 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
503 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
504 it.
505 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
506 and remove Cygwin XFAIL.
507 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
508 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
509 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
510 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
511 Likewise.
512 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
513 * testsuite/27_io/objects/char/7.cc: Likewise.
514 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
515 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
516 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
517
3b3bfc0e
GDR
5182004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
519
520 * include/std/std_complex.h (std::complex<>::real): Return a
521 reference. Add non-const overload.
522 (std::complex<>::real): Likewise.
523 (std::real): Likewise.
524 (std::imag): Likewise.
525 (std::operator+): Tidy.
526 (std::operator-): Likewise.
527 (std::operator*): Likewise.
528 (std::operator/): Likewise.
529 (std::operator>>): Likewise.
530
09625c16
PC
5312004-01-11 Paolo Carlini <pcarlini@suse.de>
532
533 PR libstdc++/13582
534 * include/bits/fstream.tcc (imbue): Exploit the external
535 buffer to imbue 'on the fly' a new locale and convert its
536 remainder with the new codecvt facet.
537 (underflow): Tweak slightly to deal with this special case.
538 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
539 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
540 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
541 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
542 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
543
a8d65349
PC
5442004-01-10 Paolo Carlini <pcarlini@suse.de>
545
546 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
547 Import Revision 28.
548
b656faa8
PC
5492004-01-10 Paolo Carlini <pcarlini@suse.de>
550
551 PR libstdc++/13630
552 * include/bits/locale_classes.h (class locale): Fix category
553 typedef.
554 * testsuite/22_locale/locale/13630.cc: Add.
555
f88e4715
GB
5562004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
557
558 * include/bits/locale_facets.h: Make a name really dependent. This
559 will be needed when Core Issue 224 is implemented.
560
64cb2c4a
PC
5612004-01-09 Paolo Carlini <pcarlini@suse.de>
562
563 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
564 * testsuite/performance/allocator_thread.cc: Likewise.
565
158960ba
BK
5662004-01-07 Benjamin Kosnik <bkoz@redhat.com>
567
568 * crossconfig.m4: Add LFS, io bits to linux cross config.
569 * acconfig.h: Remove obsolete bits, reorder.
570 * config.h.in: Regenerate.
571 * aclocal.m4: Same.
572 * configure: Same.
573
e135a038
BK
5742004-01-07 Gawain Bolton <gp.bolton@computer.org>
575
576 * include/bits/stl_list.h:
577 * include/bits/list.tc:
578 * src/list.cc:
579 Performance enhancements for destructor, push_front(),
580 push_back(), pop_front(), pop_back(), sort()
581 Eliminated static_casts where possible.
582 Moved code out of header files into new src/list.cc
583 implementation file for library where possible.
584 Remove inheritance from iterator class and create separate
585 classes for non-constant and constant iterators.
586 * include/bits/stl_tree.h (_Rb_tree class):
587 * src/tree.cc:
588 Only erase contents in destructor.
589 Eliminate unnecessary initialization in assignment operator.
590 Optimize for the nominal case by not checking whether
591 container is empty in clear().
592 Re-order test in _M_insert() to improve performance.
593 Move initialization of new node's left & right pointers to
594 src/tree.cc to where new node's colour is initialized
595 and to reduce the amount of inline code.
596 Use _M_leftmost() and _M_end() to improve readability where
597 appropriate.
598 Create separate classes for non-constant and constant
599 iterators to clarify code, avoid extra template parameters and
600 casting away constness.
601
6022004-01-07 Benjamin Kosnik <bkoz@redhat.com>
603
604 * src/Makefile.am (sources): Add list.cc, tree.cc.
605 * src/stl_tree.cc: Move to...
606 * src/tree.cc: ...here.
607 * src/list.cc: Add.
608 * config/linker-map.gnu: Tweaks.
609 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
610 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
611
612 * bits/stl_vector.h: Column wrap comments.
613
677e7ddc
LR
6142004-01-07 Loren J. Rittle <ljrittle@acm.org>
615
616 (re-open) PR libstdc++/12658
617 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
618 (locale::global): Likewise.
619
d8f5bd50
PC
6202004-01-07 Paolo Carlini <pcarlini@suse.de>
621
622 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
623 Remove redundant #include.
624 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
625 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
626 re-enable normal testing.
627 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
628 #include.
629 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
630 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
631 Likewise.
632 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
633 Likewise.
634 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
635 Likewise.
636 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
637 Likewise.
638 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
639 Likewise.
640 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
641 Likewise.
642 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
643 Likewise.
644 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
645 More properly, #include <locale>.
646 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
647 Remove redundant #include.
648 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
649 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
650 redundant DejaGnu directive.
651 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
652 redundant #include.
653
b61f9bf0
BK
6542004-01-06 Benjamin Kosnik <bkoz@redhat.com>
655 Stefan Olsson <stefan@snon.net>
656
657 * scripts/check_performance: Use -pthread.
658 * testsuite/performance/allocator.cc: Tweaks, add list.
659 * testsuite/performance/allocator_thread.cc: New.
660
b74a6851 6612004-01-06 Jerry Quinn <jlquinn@optonline.net>
9a01c9b0
JQ
662
663 * include/bits/locale_facets.h: Document public classes and
664 functions.
665 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
666 Add comment.
667
b80115c4
PC
6682004-01-06 Paolo Carlini <pcarlini@suse.de>
669
670 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
671 Remove redundant #includes.
672 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
673 Likewise.
674 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
675 Likewise.
676 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
677 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
678 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
679 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
680 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
681 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
682 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
683 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
684 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
685 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
686 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
687 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
688 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
689 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
690 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
691 Likewise.
692 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
693 Likewise.
694 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
695 Likewise.
696 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
697 Likewise.
698 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
699 Likewise.
700 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
701 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
702 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
703
22ed0590 7042004-01-04 Paolo Carlini <pcarlini@suse.de>
223b5084
PC
705
706 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
707 Remove redundant #includes.
708 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
709 Likewise.
710 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
711 Likewise.
712 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
713 Likewise.
714 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
715 Likewise.
716 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
717 Likewise.
718 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
719 Likewise.
720 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
721 Likewise.
722 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
723 Likewise.
724 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
725 Likewise.
726 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
727 Likewise.
728 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
729 Likewise.
730 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
731 Likewise.
732
4f8163b1
MM
7332004-01-04 Mark Mitchell <mark@codesourcery.com>
734
735 PR c++/12226
736 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
737 constructor.
738 * testsuite/27_io/basic_fstream/4.cc: Likewise.
739 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
740 * testsuite/27_io/basic_ios/4.cc: Likewise.
741 * testsuite/27_io/basic_iostream/4.cc: Likewise.
742 * testsuite/27_io/basic_istream/4.cc: Likewise.
743 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
744 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
745 * testsuite/27_io/basic_ostream/4.cc: Likewise.
746 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
747 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
748 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
749
17fa5560
PC
7502004-01-04 Paolo Carlini <pcarlini@suse.de>
751
752 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
753 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
754 always use double underscored names.
755 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
756 Likewise.
757 * include/bits/locale_facets.h (struct __numpunct_cache):
758 Dimension _M_atoms_out and _M_atoms_in one position smaller.
759 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
760 and _M_atoms_in.