debug.cc: Trivial formatting change.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2004-01-19 Paolo Carlini <pcarlini@suse.de>
2
3 * src/debug.cc: Trivial formatting change.
4
5 2004-01-19 Paolo Carlini <pcarlini@suse.de>
6
7 * include/bits/basic_string.tcc (_S_construct(size_type,
8 _CharT, const _Alloc&)): Remove redundant try/catch.
9 (_M_mutate(size_type, size_type, size_type)): Ditto.
10 (_M_clone(const _Alloc&, size_type)): Ditto.
11
12 2004-01-18 Paolo Carlini <pcarlini@suse.de>
13
14 * include/bits/basic_string.h (c_str()): Simplify, due to
15 21.3.4 the internal representation is always kept null-terminated.
16 * include/bits/basic_string.tcc (_M_clone): Null-terminate.
17 * testsuite/21_strings/basic_string/element_access/char/4.cc: New.
18 * testsuite/21_strings/basic_string/element_access/wchar_t/4.cc:
19 Ditto.
20
21 2004-01-18 Paolo Carlini <pcarlini@suse.de>
22
23 * include/bits/basic_string.h (append(size_type, _CharT)):
24 Moved inline, just call _M_replace_aux, no source iterators at
25 risk of being clobbered.
26 (assign(size_type, _CharT)): Call directly _M_replace_aux.
27 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
28 input_iterator_tag)): Remove fifth unused argument.
29 (_M_replace_dispatch(iterator, iterator, _InputIterator,
30 _InputIterator, __false_type)): Update call.
31 * include/bits/basic_string.tcc (replace(size_type, size_type,
32 const _CharT*, size_type)): Update call.
33 (_M_replace_aux(iterator, iterator, size_type, _CharT)): Tweak
34 throw string literal.
35 (_M_replace_safe(iterator, iterator, _ForwardIterator,
36 _ForwardIterator)): Likewise.
37 (_M_replace(iterator, iterator, _InputIterator, _InputIterator,
38 input_iterator_tag)): Remove fifth unused argument.
39 (append(size_type __n, _CharT __c)): Move inline.
40 * src/string-inst.cc (S::_M_replace(S::iterator, S::iterator,
41 const C*, const C*, input_iterator_tag)): Remove fifth unused
42 argument.
43
44 2004-01-16 Benjamin Kosnik <bkoz@redhat.com>
45
46 * testsuite/ext/enc_filebuf/char/13189.cc: Fix guards.
47 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
48
49 2004-01-16 Danny Smith <dannysmith@users.sourceforge.net>
50
51 * testsuite/testsuite_hooks.cc (try_mkfifo): Avoid calling
52 mkfifo for mingw32.
53
54 2004-01-15 Stefan Olsson <stefan@snon.net>
55
56 * include/ext/mt_allocator.h: Reuse thread id's as soon as
57 possible by changing the behaviour of thread_freelist to do
58 push_front when threads die instead of push_back.
59
60 2004-01-14 Paolo Carlini <pcarlini@suse.de>
61
62 * include/bits/locale_facets.h (struct __numpunct_cache):
63 Add member _M_grouping_size, caching the length of _M_grouping.
64 (__numpunct_cache<>::_M_cache): Assign the latter.
65 (__verify_grouping): Move declaration...
66 * include/bits/locale_facets.tcc (__verify_grouping):
67 ... here, change signature to take a const char* and a size_t
68 for the grouping; not a template anymore.
69 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
70 Likewise change signature and tweak consistently.
71 (num_get::_M_extract_float, num_get::_M_extract_int,
72 num_put::_M_insert_int, num_put::_M_insert_float,
73 money_get::do_get(string_type&), money_get::do_put(string_type)):
74 Update callers.
75 * config/locale/generic/numeric_members.cc
76 (numpunct<>::_M_initialize_numpunct): Assign the new member.
77 * config/locale/gnu/numeric_members.cc
78 (numpunct<>::_M_initialize_numpunct): Likewise.
79 * src/locale-inst.cc (__add_grouping): Tweak signature.
80 (__verify_grouping): Don't instantiate, not a template anymore.
81
82 * include/bits/locale_facets.h: Rename _M_truename_len ->
83 _M_truename_size, _M_falsename_len -> _M_falsename_size.
84 * include/bits/locale_facets.tcc: Likewise.
85 * config/locale/generic/numeric_members.cc: Likewise.
86 * config/locale/gnu/numeric_members.cc: Likewise.
87
88 2004-01-14 Stefan Olsson <stefan@snon.net>
89
90 * include/ext/mt_allocator.h: Fixups.
91 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
92 * testsuite/performance/allocator_thread.cc: Same.
93
94 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
95
96 * testsuite/performance/ifstream_extract_float.cc: Add higher
97 precision tests.
98 * testsuite/performance/ofstream_insert_float.cc: Same.
99
100 2004-01-13 Paolo Carlini <pcarlini@suse.de>
101
102 * src/locale-misc-inst.cc (__convert_from_v(long),
103 __convert_from_v(unsigned long), __convert_from_v(long long),
104 __convert_from_v(unsigned long long)): Remove, unused.
105
106 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
107
108 * testsuite/performance/ifstream_extract_float.cc: New.
109 * testsuite/performance/ofstream_insert_float.cc: Float generation
110 matches above.
111
112 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
113 * 20_util/auto_ptr/1.cc: ...this.
114 * 20_util/auto_ptr/2.cc: Same.
115 * 20_util/auto_ptr/3.cc: Same.
116 * 20_util/auto_ptr/3946.cc: Same.
117 * 20_util/auto_ptr/4.cc: Same.
118 * 20_util/auto_ptr/5.cc: Same.
119 * 20_util/auto_ptr/6.cc: Same.
120 * 20_util/auto_ptr/7.cc: Same.
121 * 20_util/auto_ptr/assign_neg.cc
122 * 20_util/pairs.cc: Break into...
123 * 20_util/pair/1.cc: ...this.
124 * 20_util/pair/2.cc: Same.
125 * 20_util/pair/3.cc: Same.
126 * 20_util/pair/4.cc: Same.
127
128 2004-01-13 Paolo Carlini <pcarlini@suse.de>
129
130 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
131 Set correctly just basefield, the only group that matters.
132
133 2004-01-13 Paolo Carlini <pcarlini@suse.de>
134
135 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
136 (_Rope_rep_base): Inherit directly from the rope allocator;
137 use rebinding instead of _Alloc_traits; pick up data member
138 from _Rope_rep_alloc_base.
139 (_Rope_alloc_base): Eliminate.
140 (_Rope_base): Inherit directly from the rope allocator; use
141 rebinding instead of _Alloc_traits; pick up data member from
142 _Rope_alloc_base.
143 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
144 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
145
146 2004-01-13 Paolo Carlini <pcarlini@suse.de>
147
148 PR libstdc++/13650
149 * include/bits/basic_string.tcc (compare(size_type, size_type,
150 const _CharT*, size_type)): Implement correctly the resolution
151 of DR 5: basically, s is a char array, -not- a C string.
152 * include/bits/basic_string.h: Tweak some comments.
153 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
154 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
155
156 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
157
158 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
159 Solaris.
160
161 2004-01-12 Paolo Carlini <pcarlini@suse.de>
162
163 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
164 Use try_mkfifo.
165 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
166 Likewise.
167
168 2004-01-12 Paolo Carlini <pcarlini@suse.de>
169
170 * include/bits/locale_facets.h (struct __numpunct_cache):
171 Add members _M_truename_len and _M_falsename_len, caching
172 the lengths of _M_truename and _M_falsename.
173 (__numpunct_cache<>::_M_cache): Assign the latter.
174 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
175 num_put::do_put(bool)): Use the new members, thus avoiding
176 computing string lengths again and again.
177 * config/locale/generic/numeric_members.cc
178 (numpunct<>::_M_initialize_numpunct): Assign the new members.
179 * config/locale/gnu/numeric_members.cc
180 (numpunct<>::_M_initialize_numpunct): Likewise.
181
182 2004-01-12 Mark Mitchell <mark@codesourcery.com>
183
184 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
185 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
186 it.
187 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
188 and remove Cygwin XFAIL.
189 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
190 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
191 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
192 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
193 Likewise.
194 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
195 * testsuite/27_io/objects/char/7.cc: Likewise.
196 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
197 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
198 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
199
200 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
201
202 * include/std/std_complex.h (std::complex<>::real): Return a
203 reference. Add non-const overload.
204 (std::complex<>::real): Likewise.
205 (std::real): Likewise.
206 (std::imag): Likewise.
207 (std::operator+): Tidy.
208 (std::operator-): Likewise.
209 (std::operator*): Likewise.
210 (std::operator/): Likewise.
211 (std::operator>>): Likewise.
212
213 2004-01-11 Paolo Carlini <pcarlini@suse.de>
214
215 PR libstdc++/13582
216 * include/bits/fstream.tcc (imbue): Exploit the external
217 buffer to imbue 'on the fly' a new locale and convert its
218 remainder with the new codecvt facet.
219 (underflow): Tweak slightly to deal with this special case.
220 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
221 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
222 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
223 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
224 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
225
226 2004-01-10 Paolo Carlini <pcarlini@suse.de>
227
228 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
229 Import Revision 28.
230
231 2004-01-10 Paolo Carlini <pcarlini@suse.de>
232
233 PR libstdc++/13630
234 * include/bits/locale_classes.h (class locale): Fix category
235 typedef.
236 * testsuite/22_locale/locale/13630.cc: Add.
237
238 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
239
240 * include/bits/locale_facets.h: Make a name really dependent. This
241 will be needed when Core Issue 224 is implemented.
242
243 2004-01-09 Paolo Carlini <pcarlini@suse.de>
244
245 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
246 * testsuite/performance/allocator_thread.cc: Likewise.
247
248 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
249
250 * crossconfig.m4: Add LFS, io bits to linux cross config.
251 * acconfig.h: Remove obsolete bits, reorder.
252 * config.h.in: Regenerate.
253 * aclocal.m4: Same.
254 * configure: Same.
255
256 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
257
258 * include/bits/stl_list.h:
259 * include/bits/list.tc:
260 * src/list.cc:
261 Performance enhancements for destructor, push_front(),
262 push_back(), pop_front(), pop_back(), sort()
263 Eliminated static_casts where possible.
264 Moved code out of header files into new src/list.cc
265 implementation file for library where possible.
266 Remove inheritance from iterator class and create separate
267 classes for non-constant and constant iterators.
268 * include/bits/stl_tree.h (_Rb_tree class):
269 * src/tree.cc:
270 Only erase contents in destructor.
271 Eliminate unnecessary initialization in assignment operator.
272 Optimize for the nominal case by not checking whether
273 container is empty in clear().
274 Re-order test in _M_insert() to improve performance.
275 Move initialization of new node's left & right pointers to
276 src/tree.cc to where new node's colour is initialized
277 and to reduce the amount of inline code.
278 Use _M_leftmost() and _M_end() to improve readability where
279 appropriate.
280 Create separate classes for non-constant and constant
281 iterators to clarify code, avoid extra template parameters and
282 casting away constness.
283
284 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
285
286 * src/Makefile.am (sources): Add list.cc, tree.cc.
287 * src/stl_tree.cc: Move to...
288 * src/tree.cc: ...here.
289 * src/list.cc: Add.
290 * config/linker-map.gnu: Tweaks.
291 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
292 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
293
294 * bits/stl_vector.h: Column wrap comments.
295
296 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
297
298 (re-open) PR libstdc++/12658
299 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
300 (locale::global): Likewise.
301
302 2004-01-07 Paolo Carlini <pcarlini@suse.de>
303
304 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
305 Remove redundant #include.
306 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
307 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
308 re-enable normal testing.
309 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
310 #include.
311 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
312 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
313 Likewise.
314 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
315 Likewise.
316 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
317 Likewise.
318 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
319 Likewise.
320 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
321 Likewise.
322 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
323 Likewise.
324 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
325 Likewise.
326 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
327 More properly, #include <locale>.
328 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
329 Remove redundant #include.
330 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
331 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
332 redundant DejaGnu directive.
333 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
334 redundant #include.
335
336 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
337 Stefan Olsson <stefan@snon.net>
338
339 * scripts/check_performance: Use -pthread.
340 * testsuite/performance/allocator.cc: Tweaks, add list.
341 * testsuite/performance/allocator_thread.cc: New.
342
343 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
344
345 * include/bits/locale_facets.h: Document public classes and
346 functions.
347 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
348 Add comment.
349
350 2004-01-06 Paolo Carlini <pcarlini@suse.de>
351
352 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
353 Remove redundant #includes.
354 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
355 Likewise.
356 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
357 Likewise.
358 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
359 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
360 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
361 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
362 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
363 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
364 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
365 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
366 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
367 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
368 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
369 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
370 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
371 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
372 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
373 Likewise.
374 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
375 Likewise.
376 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
377 Likewise.
378 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
379 Likewise.
380 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
381 Likewise.
382 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
383 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
384 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
385
386 2004-01-04 Paolo Carlini <pcarlini@suse.de>
387
388 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
389 Remove redundant #includes.
390 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
391 Likewise.
392 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
393 Likewise.
394 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
395 Likewise.
396 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
397 Likewise.
398 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
399 Likewise.
400 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
401 Likewise.
402 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
403 Likewise.
404 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
405 Likewise.
406 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
407 Likewise.
408 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
409 Likewise.
410 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
411 Likewise.
412 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
413 Likewise.
414
415 2004-01-04 Mark Mitchell <mark@codesourcery.com>
416
417 PR c++/12226
418 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
419 constructor.
420 * testsuite/27_io/basic_fstream/4.cc: Likewise.
421 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
422 * testsuite/27_io/basic_ios/4.cc: Likewise.
423 * testsuite/27_io/basic_iostream/4.cc: Likewise.
424 * testsuite/27_io/basic_istream/4.cc: Likewise.
425 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
426 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
427 * testsuite/27_io/basic_ostream/4.cc: Likewise.
428 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
429 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
430 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
431
432 2004-01-04 Paolo Carlini <pcarlini@suse.de>
433
434 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
435 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
436 always use double underscored names.
437 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
438 Likewise.
439 * include/bits/locale_facets.h (struct __numpunct_cache):
440 Dimension _M_atoms_out and _M_atoms_in one position smaller.
441 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
442 and _M_atoms_in.