1 2004-01-15 Stefan Olsson <stefan@snon.net>
3 * include/ext/mt_allocator.h: Reuse thread id's as soon as
4 possible by changing the behaviour of thread_freelist to do
5 push_front when threads die instead of push_back.
7 2004-01-14 Paolo Carlini <pcarlini@suse.de>
9 * include/bits/locale_facets.h (struct __numpunct_cache):
10 Add member _M_grouping_size, caching the length of _M_grouping.
11 (__numpunct_cache<>::_M_cache): Assign the latter.
12 (__verify_grouping): Move declaration...
13 * include/bits/locale_facets.tcc (__verify_grouping):
14 ... here, change signature to take a const char* and a size_t
15 for the grouping; not a template anymore.
16 (__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
17 Likewise change signature and tweak consistently.
18 (num_get::_M_extract_float, num_get::_M_extract_int,
19 num_put::_M_insert_int, num_put::_M_insert_float,
20 money_get::do_get(string_type&), money_get::do_put(string_type)):
22 * config/locale/generic/numeric_members.cc
23 (numpunct<>::_M_initialize_numpunct): Assign the new member.
24 * config/locale/gnu/numeric_members.cc
25 (numpunct<>::_M_initialize_numpunct): Likewise.
26 * src/locale-inst.cc (__add_grouping): Tweak signature.
27 (__verify_grouping): Don't instantiate, not a template anymore.
29 * include/bits/locale_facets.h: Rename _M_truename_len ->
30 _M_truename_size, _M_falsename_len -> _M_falsename_size.
31 * include/bits/locale_facets.tcc: Likewise.
32 * config/locale/generic/numeric_members.cc: Likewise.
33 * config/locale/gnu/numeric_members.cc: Likewise.
35 2004-01-14 Stefan Olsson <stefan@snon.net>
37 * include/ext/mt_allocator.h: Fixups.
38 * testsuite/performance/allocator.cc: Enable __mt_alloc tests.
39 * testsuite/performance/allocator_thread.cc: Same.
41 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
43 * testsuite/performance/ifstream_extract_float.cc: Add higher
45 * testsuite/performance/ofstream_insert_float.cc: Same.
47 2004-01-13 Paolo Carlini <pcarlini@suse.de>
49 * src/locale-misc-inst.cc (__convert_from_v(long),
50 __convert_from_v(unsigned long), __convert_from_v(long long),
51 __convert_from_v(unsigned long long)): Remove, unused.
53 2004-01-13 Benjamin Kosnik <bkoz@redhat.com>
55 * testsuite/performance/ifstream_extract_float.cc: New.
56 * testsuite/performance/ofstream_insert_float.cc: Float generation
59 * 20_util/auto_ptr.cc, auto_ptr_neg.cc: Break into...
60 * 20_util/auto_ptr/1.cc: ...this.
61 * 20_util/auto_ptr/2.cc: Same.
62 * 20_util/auto_ptr/3.cc: Same.
63 * 20_util/auto_ptr/3946.cc: Same.
64 * 20_util/auto_ptr/4.cc: Same.
65 * 20_util/auto_ptr/5.cc: Same.
66 * 20_util/auto_ptr/6.cc: Same.
67 * 20_util/auto_ptr/7.cc: Same.
68 * 20_util/auto_ptr/assign_neg.cc
69 * 20_util/pairs.cc: Break into...
70 * 20_util/pair/1.cc: ...this.
71 * 20_util/pair/2.cc: Same.
72 * 20_util/pair/3.cc: Same.
73 * 20_util/pair/4.cc: Same.
75 2004-01-13 Paolo Carlini <pcarlini@suse.de>
77 * include/bits/locale_facets.tcc (num_get::do_get(void*&)):
78 Set correctly just basefield, the only group that matters.
80 2004-01-13 Paolo Carlini <pcarlini@suse.de>
82 * include/ext/rope (_Rope_rep_alloc_base): Eliminate.
83 (_Rope_rep_base): Inherit directly from the rope allocator;
84 use rebinding instead of _Alloc_traits; pick up data member
85 from _Rope_rep_alloc_base.
86 (_Rope_alloc_base): Eliminate.
87 (_Rope_base): Inherit directly from the rope allocator; use
88 rebinding instead of _Alloc_traits; pick up data member from
90 (rope::_S_new_RopeLeaf, rope::_S_new_RopeConcatenation,
91 rope::_S_new_RopeFunction, rope::_S_new_RopeSubstring): Tweak.
93 2004-01-13 Paolo Carlini <pcarlini@suse.de>
96 * include/bits/basic_string.tcc (compare(size_type, size_type,
97 const _CharT*, size_type)): Implement correctly the resolution
98 of DR 5: basically, s is a char array, -not- a C string.
99 * include/bits/basic_string.h: Tweak some comments.
100 * testsuite/21_strings/basic_string/compare/char/13650.cc: New.
101 * testsuite/21_strings/basic_string/compare/wchar_t/13650.cc: New.
103 2004-01-12 Andreas Tobler <a.tobler@schweiz.ch>
105 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_32 for
108 2004-01-12 Paolo Carlini <pcarlini@suse.de>
110 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc:
112 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc:
115 2004-01-12 Paolo Carlini <pcarlini@suse.de>
117 * include/bits/locale_facets.h (struct __numpunct_cache):
118 Add members _M_truename_len and _M_falsename_len, caching
119 the lengths of _M_truename and _M_falsename.
120 (__numpunct_cache<>::_M_cache): Assign the latter.
121 * include/bits/locale_facets.tcc (num_get::do_get(bool&),
122 num_put::do_put(bool)): Use the new members, thus avoiding
123 computing string lengths again and again.
124 * config/locale/generic/numeric_members.cc
125 (numpunct<>::_M_initialize_numpunct): Assign the new members.
126 * config/locale/gnu/numeric_members.cc
127 (numpunct<>::_M_initialize_numpunct): Likewise.
129 2004-01-12 Mark Mitchell <mark@codesourcery.com>
131 * testsuite/testsuite_hooks.h (__gnu_test::try_mkfifo): Declare it.
132 * testsuite/testsuite_hooks.cc (__gnu_test::try_mkfifo): Define
134 * testsuite/27_io/basic_filebuf/close/char/4879.cc: Use try_mkfifo
135 and remove Cygwin XFAIL.
136 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Likewise.
137 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: Likewise.
138 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Likewise.
139 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc:
141 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Likewise.
142 * testsuite/27_io/objects/char/7.cc: Likewise.
143 * testsuite/27_io/objects/char/9661-1.cc: Likewise.
144 * testsuite/27_io/objects/wchar_t/7.cc: Likewise.
145 * testsuite/27_io/objects/wchar_t/9661-1.cc: Likewise.
147 2004-01-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
149 * include/std/std_complex.h (std::complex<>::real): Return a
150 reference. Add non-const overload.
151 (std::complex<>::real): Likewise.
152 (std::real): Likewise.
153 (std::imag): Likewise.
154 (std::operator+): Tidy.
155 (std::operator-): Likewise.
156 (std::operator*): Likewise.
157 (std::operator/): Likewise.
158 (std::operator>>): Likewise.
160 2004-01-11 Paolo Carlini <pcarlini@suse.de>
163 * include/bits/fstream.tcc (imbue): Exploit the external
164 buffer to imbue 'on the fly' a new locale and convert its
165 remainder with the new codecvt facet.
166 (underflow): Tweak slightly to deal with this special case.
167 * testsuite/27_io/basic_filebuf/imbue/char/13582-2.cc: New.
168 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-2.cc: Ditto.
169 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13582-3.cc: Ditto.
170 * testsuite/27_io/objects/wchar_t/13582-1_xin.cc: Ditto.
171 * testsuite/27_io/objects/wchar_t/13582-1_xin.in: Ditto.
173 2004-01-10 Paolo Carlini <pcarlini@suse.de>
175 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
178 2004-01-10 Paolo Carlini <pcarlini@suse.de>
181 * include/bits/locale_classes.h (class locale): Fix category
183 * testsuite/22_locale/locale/13630.cc: Add.
185 2004-01-10 Giovanni Bajo <giovannibajo@gcc.gnu.org>
187 * include/bits/locale_facets.h: Make a name really dependent. This
188 will be needed when Core Issue 224 is implemented.
190 2004-01-09 Paolo Carlini <pcarlini@suse.de>
192 * testsuite/performance/allocator.cc: Demangle typeid(obj).name().
193 * testsuite/performance/allocator_thread.cc: Likewise.
195 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
197 * crossconfig.m4: Add LFS, io bits to linux cross config.
198 * acconfig.h: Remove obsolete bits, reorder.
199 * config.h.in: Regenerate.
203 2004-01-07 Gawain Bolton <gp.bolton@computer.org>
205 * include/bits/stl_list.h:
206 * include/bits/list.tc:
208 Performance enhancements for destructor, push_front(),
209 push_back(), pop_front(), pop_back(), sort()
210 Eliminated static_casts where possible.
211 Moved code out of header files into new src/list.cc
212 implementation file for library where possible.
213 Remove inheritance from iterator class and create separate
214 classes for non-constant and constant iterators.
215 * include/bits/stl_tree.h (_Rb_tree class):
217 Only erase contents in destructor.
218 Eliminate unnecessary initialization in assignment operator.
219 Optimize for the nominal case by not checking whether
220 container is empty in clear().
221 Re-order test in _M_insert() to improve performance.
222 Move initialization of new node's left & right pointers to
223 src/tree.cc to where new node's colour is initialized
224 and to reduce the amount of inline code.
225 Use _M_leftmost() and _M_end() to improve readability where
227 Create separate classes for non-constant and constant
228 iterators to clarify code, avoid extra template parameters and
229 casting away constness.
231 2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
233 * src/Makefile.am (sources): Add list.cc, tree.cc.
234 * src/stl_tree.cc: Move to...
235 * src/tree.cc: ...here.
237 * config/linker-map.gnu: Tweaks.
238 * testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
239 * testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
241 * bits/stl_vector.h: Column wrap comments.
243 2004-01-07 Loren J. Rittle <ljrittle@acm.org>
245 (re-open) PR libstdc++/12658
246 * src/locale_init.cc (locale::locale): Remove ill-scoped mutex.
247 (locale::global): Likewise.
249 2004-01-07 Paolo Carlini <pcarlini@suse.de>
251 * testsuite/27_io/basic_istream/extractors_other/char/9318-in.cc:
252 Remove redundant #include.
253 * testsuite/27_io/basic_ostream/endl/char/1.cc: Likewise.
254 * testsuite/27_io/basic_ostream/ends/char/1.cc: Likewise,
255 re-enable normal testing.
256 * testsuite/27_io/basic_ostream/ends/char/2.cc: Remove redundant
258 * testsuite/27_io/basic_ostream/flush/char/1.cc: Likewise.
259 * testsuite/27_io/basic_ostream/inserters_character/char/1.cc:
261 * testsuite/27_io/basic_ostream/inserters_character/char/2.cc:
263 * testsuite/27_io/basic_ostream/inserters_character/char/3.cc:
265 * testsuite/27_io/basic_ostream/inserters_character/char/4.cc:
267 * testsuite/27_io/basic_ostream/inserters_character/char/5.cc:
269 * testsuite/27_io/basic_ostream/inserters_character/char/6.cc:
271 * testsuite/27_io/basic_ostream/inserters_character/char/8.cc:
273 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/7.cc:
274 More properly, #include <locale>.
275 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/8.cc:
276 Remove redundant #include.
277 * testsuite/27_io/basic_ostream/inserters_other/char/2.cc: Likewise.
278 * testsuite/27_io/basic_ostream/inserters_other/char/3.cc: Remove
279 redundant DejaGnu directive.
280 * testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Remove
283 2004-01-06 Benjamin Kosnik <bkoz@redhat.com>
284 Stefan Olsson <stefan@snon.net>
286 * scripts/check_performance: Use -pthread.
287 * testsuite/performance/allocator.cc: Tweaks, add list.
288 * testsuite/performance/allocator_thread.cc: New.
290 2004-01-06 Jerry Quinn <jlquinn@optonline.net>
292 * include/bits/locale_facets.h: Document public classes and
294 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
297 2004-01-06 Paolo Carlini <pcarlini@suse.de>
299 * testsuite/27_io/basic_istream/extractors_other/char/1.cc:
300 Remove redundant #includes.
301 * testsuite/27_io/basic_istream/extractors_other/char/2.cc:
303 * testsuite/27_io/basic_istream/extractors_other/char/3.cc:
305 * testsuite/27_io/basic_istream/get/char/1.cc: Likewise.
306 * testsuite/27_io/basic_istream/get/char/2.cc: Likewise.
307 * testsuite/27_io/basic_istream/getline/char/1.cc: Likewise.
308 * testsuite/27_io/basic_istream/getline/char/2.cc: Likewise.
309 * testsuite/27_io/basic_istream/getline/char/3.cc: Likewise.
310 * testsuite/27_io/basic_istream/ignore/char/1.cc: Likewise.
311 * testsuite/27_io/basic_istream/ignore/char/6360.cc: Likewise.
312 * testsuite/27_io/basic_istream/ignore/char/7220.cc: Likewise.
313 * testsuite/27_io/basic_istream/peek/char/1.cc: Likewise.
314 * testsuite/27_io/basic_istream/peek/char/6414.cc: Likewise.
315 * testsuite/27_io/basic_istream/putback/char/1.cc: Likewise.
316 * testsuite/27_io/basic_istream/read/char/1.cc: Likewise.
317 * testsuite/27_io/basic_istream/read/char/2.cc: Likewise.
318 * testsuite/27_io/basic_istream/read/char/3.cc: Likewise.
319 * testsuite/27_io/basic_istream/readsome/char/6746-1.cc:
321 * testsuite/27_io/basic_istream/readsome/char/6746-2.cc:
323 * testsuite/27_io/basic_istream/readsome/char/8258.cc:
325 * testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc:
327 * testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc:
329 * testsuite/27_io/basic_istream/seekg/char/8348-1.cc: Likewise.
330 * testsuite/27_io/basic_istream/seekg/char/8348-2.cc: Likewise.
331 * testsuite/27_io/basic_istream/tellg/char/8348.cc: Likewise.
333 2004-01-04 Paolo Carlini <pcarlini@suse.de>
335 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
336 Remove redundant #includes.
337 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
339 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
341 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
343 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
345 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
347 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
349 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
351 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
353 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
355 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
357 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
359 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
362 2004-01-04 Mark Mitchell <mark@codesourcery.com>
365 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
367 * testsuite/27_io/basic_fstream/4.cc: Likewise.
368 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
369 * testsuite/27_io/basic_ios/4.cc: Likewise.
370 * testsuite/27_io/basic_iostream/4.cc: Likewise.
371 * testsuite/27_io/basic_istream/4.cc: Likewise.
372 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
373 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
374 * testsuite/27_io/basic_ostream/4.cc: Likewise.
375 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
376 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
377 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
379 2004-01-04 Paolo Carlini <pcarlini@suse.de>
381 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
382 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
383 always use double underscored names.
384 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
386 * include/bits/locale_facets.h (struct __numpunct_cache):
387 Dimension _M_atoms_out and _M_atoms_in one position smaller.
388 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
391 2003-12-31 Paolo Carlini <pcarlini@suse.de>
393 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
394 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
395 _first_ look for thousands_sep, then for decimal_point and
397 (num_get::_M_extract_float): After the decimal_point or
398 'e'/'E', decimal_point and thousands_sep just break out the
400 * testsuite/22_locale/num_get/get/char/11.cc: Add tests.
401 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
403 2003-12-30 Paolo Carlini <pcarlini@suse.de>
406 * include/bits/locale_facets.tcc (__verify_grouping):
407 Fix to deal properly with __grouping_tmp.size() >
409 * testsuite/22_locale/num_get/get/char/13.cc: New.
410 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
412 2003-12-29 Jerry Quinn <jlquinn@optonline.net>
414 * include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
416 2003-12-29 Paolo Carlini <pcarlini@suse.de>
418 * acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
420 * aclocal.m4: Regenerate.
421 * configure: Likewise.
423 2003-12-29 Mark Mitchell <mark@codesourcery.com>
425 * acconfig.h: Add _GLIBCXX_USE_C99_MATH.
426 * acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
427 * configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
429 * aclocal.m4: Regenerated.
430 * config.h.in: Likewise.
431 * configure: Likewise.
432 * Makefile.in: Likewise.
433 * include/Makefile.in: Likewise.
434 * libmath/Makefile.in: Likewise.
435 * libsupc++/Makefile.in: Likewise.
436 * testsuite/Makefile.in: Likewise.
437 * src/Makefile.in: Likewise.
438 * po/Makefile.in: Likewise.
439 * include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
440 (_GLIBCXX_USE_C99_MATH): ... this.
442 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
444 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
445 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
446 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
447 * testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
448 * testsuite/27_io/objects/char/9.cc: Likewise.
449 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
451 2003-12-28 Paolo Carlini <pcarlini@suse.de>
453 * include/ext/pool_allocator.h (class __pool_alloc): Use
454 operator new and operator delete.
456 2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
458 * config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
462 * config/cpu/i386/atomicity.h: Split up read-write memory operand.
464 2003-12-23 Benjamin Kosnik <bkoz@redhat.com>
466 * include/ext/new_allocator.h (new_allocator): Proper allocator class.
467 (__new_alloc): Delete.
468 * include/ext/malloc_allocator.h (malloc_allocator): Same.
469 (__malloc_alloc): Delete.
470 * include/ext/mt_allocator.h: Same, but weakly.
471 * include/ext/debug_allocator.h: Convert to the new style.
472 * include/ext/pool_allocator.h: Use global new and delete directly.
473 * include/backward/alloc.h: Don't inject malloc_allocator, or
475 * testsuite/ext/allocators.cc: Minimal fixups for usage of new
476 classes. Comment out tests with __pool_alloc for now.
477 * testsuite/performance/allocator.cc: Same.
479 2003-12-22 Matt Austern <austern@apple.com>
481 * include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
482 (_Bvector_base): Inherit directly from word allocator.
483 * include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
484 (_Rb_tree_base): Eliminate.
485 (_Rb_tree): Inherit directly from node allocator.
486 * include/ext/slist (_Alist_alloc_base): Eliminate.
487 (_Slist_base): Inherit direcly from node allocator.
489 2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
491 * testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
492 dg-options in testcases that use VERIFY.
493 * testsuite/23_containers/vector/invalidation/1.cc: Same.
494 * testsuite/23_containers/vector/invalidation/2.cc: Same.
495 * testsuite/23_containers/vector/invalidation/3.cc: Same.
496 * testsuite/23_containers/vector/invalidation/4.cc: Same.
497 * testsuite/23_containers/vector/resize/1.cc: Same.
498 * testsuite/26_numerics/complex_value.cc: Same.
499 * testsuite/27_io/ios_base/storage/1.cc: Same.
500 * testsuite/27_io/ios_base/storage/2.cc: Same.
501 * testsuite/27_io/ios_base/storage/3.cc: Same.
502 * testsuite/27_io/manipulators/standard/char/2.cc: Same.
503 * testsuite/backward/11460.cc: Same.
504 * testsuite/backward/strstream_members.cc: Same.
506 * include/ext/hash_set (class hash_multiset): Fix typo.
508 2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
510 * testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
511 * testsuite/27_io/objects/wchar_t/5.cc: Same.
512 * docs/html/test.html: Add docs for constructing test files that
513 don't use stdc++.h.gch.
514 * scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
515 * testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
518 * include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
519 * src/ios_init.cc: Same.
520 * config/linker-map.gnu: Same.
521 * testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
522 * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
524 2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
527 * include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
528 as allocator's pointer, likewise for reference, const_pointer, and
530 * include/bits/stl_set.h (__gnu_norm::set): Likewise.
531 * include/ext/hash_set (__gnu_ext::hash_set): Likewise.
532 (__gnu_ext::hash_multiset): Likewise.
534 2003-12-22 Paolo Carlini <pcarlini@suse.de>
536 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
537 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
538 first look for decimal_point and thousands_sep, when parsing
539 sign, leading zeros (and 0, Ox, 0X for integer types) too.
540 * testsuite/22_locale/num_get/get/char/12.cc: New.
541 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
543 * testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
544 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
546 2003-12-20 Jason Merrill <jason@redhat.com>
548 * config/cpu/powerpc/atomicity.h: Fix oversight in previous
551 2003-12-20 Jerry Quinn <jlquinn@optonline.net>
553 * docs/doxygen/TODO: Update.
554 * include/bits/locale_classes.h (locale, facet, id): Document.
555 * include/bits/locale_facets.tcc (has_facet, use_facet): Document.
557 2003-12-19 Jason Merrill <jason@redhat.com>
559 * config/cpu/cris/atomicity.h: Remove memory clobbers.
560 * config/cpu/mips/atomicity.h: Likewise.
561 * config/cpu/i486/atomicity.h: Remove memory clobbers.
562 Split up read-write memory operand.
563 * config/cpu/m68k/atomicity.h: Likewise.
564 * config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
565 * config/cpu/s390/atomicity.h: Likewise.
566 * config/cpu/sparc/atomicity.h: Likewise.
568 2003-12-20 Carlo Wood <carlo@alinoe.com>
571 namespace __gnu_cxx::demangler
572 (session<Allocator>::decode_encoding): Put the postfix
573 of the return type of (member) functions after the function
574 instead of after the return type.
576 2003-12-19 Jerry Quinn <jlquinn@optonline.net>
578 * include/bits/locale_facet.h
579 (__ctype_abstract_base,ctype<charT>,ctype<char>,ctype<wchar_t>):
582 2003-12-19 Paolo Carlini <pcarlini@suse.de>
584 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
585 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
586 first look for decimal_point and thousands_sep.
587 * testsuite/22_locale/num_get/get/char/11.cc: New.
588 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
590 2003-12-19 Paolo Carlini <pcarlini@suse.de>
592 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
593 When __found_sci becomes true stop eating thousands separators
594 and the decimal radix separator.
595 * testsuite/22_locale/num_get/get/char/9.cc: New.
596 * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
598 * config/locale/generic/c_locale.cc (__convert_to_v): Don't
599 check that *__sanity == '\0': parsing may stop earlier, still
601 * config/locale/gnu/c_locale.cc: Likewise.
602 * testsuite/22_locale/num_get/get/char/10.cc: New.
603 * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
604 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
605 Tweak in one place accordingly.
607 * testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
608 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
610 2003-12-18 Benjamin Kosnik <bkoz@redhat.com>
612 * include/bits/stl_list.h: Formatting tweaks.
613 * include/bits/list.tcc: Same.
615 2003-12-18 Matt Austern <austern@apple.com>
617 * include/bits/demangle.h: Fix allocator type correctness,
618 i.e. make sure that when we instantiate a container with a value
619 type and an allocator, the allocator's value type matches the
621 * include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
622 (_Deque_base): inherit directly from the deque's allocator. Use
623 rebinding instead of _Alloc_traits. Pick up data members from
625 * include/bits/stl_list.h (_List_alloc_base): Eliminate.
626 (_List_base): Inherit directly from the list's allocator. Use
627 rebinding instead of _Alloc_traits. Pick up data members from
629 * include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
630 (_Vector_base): Inherit directly from the vector's allocator. Use
631 rebinding instead of _Alloc_traits. Pick up data members from
633 * include/ext/hashtable.h: Fix allocator type correctness (the
634 vector of buckets must be passed an allocator for objects of
635 type _Node*). Use rebinding instead of _Alloc_traits.
637 2003-12-17 Paolo Carlini <pcarlini@suse.de>
639 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
640 Use narrow to get from __format[__i] a char __c representing a
641 formatting code, don't use it to compare *__beg to __format[__i].
642 * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
644 2003-12-17 Paolo Carlini <pcarlini@suse.de>
646 * testsuite/performance/container_benchmark.cc: Tweak outputs.
648 * testsuite/performance/list_create_fill_sort.cc: Shrink a
651 * testsuite/testsuite_performance.h: Widen a few output fields.
653 * testsuite/performance/ifstream_extract_int.cc: New.
655 2003-12-16 Phil Edwards <phil@codesourcery.com>
657 * configure.ac (AM_INIT_AUTOMAKE): Don't warn about GNU Make.
658 * configure: Regenerated.
659 * Makefile.am (check-%): New catch-all forwarding target.
660 * Makefile.in: Regenerated.
662 2003-12-16 Paolo Carlini <pcarlini@suse.de>
664 * testsuite/performance/container_benchmark.cc: New, a
665 benchmark developed by Bjarne Stroustrup and Alexander
666 Stepanov and made available with no restrictions.
668 * testsuite/testsuite_performance.h (report_header): New,
669 useful to produce header lines in the reports.
671 2003-12-16 Jonathan Wakely <redi@gcc.gnu.org>
673 * docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
674 * docs/html/faq/index.html: Reducing vector's capacity() to size().
675 * docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
677 2003-12-16 Paolo Carlini <pcarlini@suse.de>
679 * testsuite/performance/narrow_widen_char.cc: Tweak the
680 number of iterations for each test.
681 * testsuite/performance/narrow_widen_wchar_t.cc: Add a
682 missing clear_counters.
684 2003-12-16 Paolo Carlini <pcarlini@suse.de>
687 * include/bits/locale_facets.h: Add _M_bit and _M_wmask,
688 used to speed up the computation of ctype::do_is.
689 * config/locale/generic/ctype_members.cc
690 (_M_initialize_ctype): Fill _M_bit and _M_wmask.
691 (ctype::do_is): Use _M_bit and _M_wmask.
692 * config/locale/gnu/ctype_members.cc: Likewise.
693 * testsuite/performance/is_wchar_t.cc: New.
695 * testsuite/performance/narrow_widen_wchar_t.cc: Tweak
696 string literal (incorrect citation ;)
698 * include/bits/locale_facets.h: Minor tweaks, const
699 correctness, unsigned -> size_t.
701 2003-12-16 Jerry Quinn <jlquinn@optonline.net>
703 * include/bits/locale_facets.h (widen, narrow): Uncomment the
706 2003-12-15 Jerry Quinn <jlquinn@optonline.net>
708 * config/os/aix/ctype_noninline.h,
709 config/os/bsd/freebsd/ctype_noninline.h,
710 config/os/bsd/netbsd/ctype_noninline.h,
711 config/os/djgpp/ctype_noninline.h,
712 config/os/generic/ctype_noninline.h,
713 config/os/gnu-linux/ctype_noninline.h,
714 config/os/hpux/ctype_noninline.h,
715 config/os/irix/irix5.2/ctype_noninline.h,
716 config/os/irix/irix6.5/ctype_noninline.h,
717 config/os/mingw32/ctype_noninline.h,
718 config/os/newlib/ctype_noninline.h,
719 config/os/qnx/qnx6.1/ctype_noninline.h,
720 config/os/solaris/solaris2.5/ctype_noninline.h,
721 config/os/solaris/solaris2.6/ctype_noninline.h,
722 config/os/solaris/solaris2.7/ctype_noninline.h,
723 config/os/vxworks/ctype_noninline.h,
724 config/os/windiss/ctype_noninline.h (ctype): Initialize
726 * include/bits/locale_facets.h (_M_widen, _M_widen_ok,
727 _M_narrow, _M_narrow_ok): New.
728 (widen, narrow): Use tables to bypass virtual functions.
729 (_M_widen_init, _M_narrow_init): New.
731 2003-12-15 Carlo Wood <carlo@alinoe.com>
733 * include/bits/ios_base.h (Init::_S_initialized): Change into
735 * src/ios_init.cc (Init::_S_initialized): Add definition.
737 2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
740 * include/Makefile.am (bits_headers): Add concurrence.h.
741 * include/Makefile.in: Regenerated.
742 * include/bits/concurrence.h: New.
743 * src/locale_init.cc: Use it.
744 (locale::locale): Lock critical regions.
745 (locale::global): Same.
747 2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
749 * include/bits/basic_string.h: Change _*_references to _*_refcount.
750 * include/bits/locale_classes.h: Same.
751 * src/locale.cc: Same.
752 * src/locale_name.cc: Same.
753 * src/locale_init.cc: Same.
755 2003-12-15 Benjamin Kosnik <bkoz@redhat.com>
758 * include/bits/ios_base.h (Init::_S_ios_base_init): Change to
759 _S_refcount, make atomic.
760 * src/ios.cc: Adjust definition.
761 * src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
763 (ios_base::Init::~Init): Same.
764 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
765 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
767 2003-12-15 Paolo Carlini <pcarlini@suse.de>
769 * include/bits/locale_facets.tcc (num_get::do_get(bool&)):
770 Fail as soon as the begins of both truename and falsename
771 stop to match; always leave __beg one position beyond the
772 last char successfully matched.
773 * testsuite/22_locale/num_get/get/char/8.cc: New.
774 * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
776 2003-12-15 Paolo Carlini <pcarlini@suse.de>
778 * include/bits/locale_facets.h (_M_widen): Reserve space
779 for all the possible widened chars.
780 * config/locale/generic/ctype_members.cc (_M_initialize_ctype):
781 Compute at construction time all the possible widened chars.
782 (do_widen): Tweak, simplify.
783 * config/locale/gnu/ctype_members.cc: Likewise.
784 * testsuite/performance/narrow_widen_wchar_t.cc: Add tests
785 for the array versions.
787 2003-12-12 Paolo Carlini <pcarlini@suse.de>
788 Benjamin Kosnik <bkoz@redhat.com>
791 * include/bits/locale_facets.h (ctype<wchar_t>): Declare
792 _M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
793 * src/ctype.cc (ctype<wchar_t>::ctype(size_t),
794 ctype<wchar_t>::ctype(__c_locale, size_t)): Use
795 _M_initialize_ctype to fill _M_narrow and _M_widen.
796 (ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
798 * config/locale/generic/ctype_members.cc (do_narrow, do_widen)
799 Use _M_narrow and _M_widen when possible, instead of calling
800 wctob and btowc, respectively.
801 (_M_initialize_ctype): Define, it fills at construction time
802 _M_narrow and _M_widen.
803 * config/locale/gnu/ctype_members.cc: Likewise.
804 * testsuite/performance/narrow_widen_wchar_t.cc: New.
806 2003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
808 * docs/html/faq/index.txt: Regenerate after adding <link> tags.
810 2003-12-11 Neil Ferguson <nferguso@eso.org>
811 Paolo Carlini <pcarlini@suse.de>
813 * include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
814 * testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
815 * testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
816 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
818 2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
821 * testsuite/lib/libstdc++.exp (v3-init): Add
822 original_ld_library_path, calculate ld_library path, set
823 LD_LIBRARY_PATH to both. Based on libjava.exp.
825 2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
826 Alexandre Oliva <aoliva@redhat.com>
829 * testsuite/Makefile.am (GLIBCXX_DIR): New.
831 (CXXLINK): Use both with -R so libtool links the correct libs.
833 2003-12-10 Paolo Carlini <pcarlini@suse.de>
836 * include/bits/fstream.tcc (underflow): Deal gracefully with
837 read errors: throw ios_base::failure.
839 2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
842 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
843 * testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
844 * testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
846 2003-12-10 Paolo Carlini <pcarlini@suse.de>
848 * include/bits/locale_facets.tcc (num_put::do_put(void*)):
849 Remove the try/catch, not necessary.
851 2003-12-10 Paolo Carlini <pcarlini@suse.de>
853 * testsuite/22_locale/locale/cons/12438.cc: Tweak memory
854 limit and iterations to avoid spurious failures on some
857 2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
859 * config/linker-map.gnu: Remove private ios_base members from
862 * config/cpu/alpha/atomicity.h: Consistently format.
863 * config/cpu/cris/atomicity.h: Same.
864 * config/cpu/generic/atomicity.h: Same.
865 * config/cpu/hppa/atomicity.h: Same.
866 * config/cpu/i386/atomicity.h: Same.
867 * config/cpu/i486/atomicity.h: Same.
868 * config/cpu/ia64/atomicity.h: Same.
869 * config/cpu/m68k/atomicity.h: Same.
870 * config/cpu/mips/atomicity.h: Same.
871 * config/cpu/powerpc/atomicity.h: Same.
872 * config/cpu/s390/atomicity.h: Same.
873 * config/cpu/sparc/atomicity.h: Same.
875 2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
878 * acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
879 * aclocal.m4: Regenerate.
880 * configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
881 * conigure: Regenerate.
882 * src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
883 * src/Makefile.in: Regenerate.
884 * docs/html/17_intro/configury.html: Modify.
886 2003-12-09 Paolo Carlini <pcaelini@suse.de>
888 * include/bits/demangle.h (struct implementation_details):
889 Keep in comments the names of the unused parameters.
891 2003-12-09 Paolo Carlini <pcaelini@suse.de>
893 * include/bits/demangle.h (struct implementation_details):
894 Fix unused parameters warning.
896 2003-12-09 Paolo Carlini <pcarlini@suse.de>
898 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
899 Slightly streamline the code dealing with overflows and the
902 2003-12-09 Bernardo Innocenti <bernie@develer.com>
904 * include/ext/algorithm, include/ext/debug_allocator.h,
905 include/ext/enc_filebuf.h, include/ext/functional,
906 include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
907 include/ext/hashtable.h, include/ext/iterator,
908 include/ext/malloc_allocator.h, include/ext/memory,
909 include/ext/mt_allocator.h, include/ext/numeric,
910 include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
911 include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
912 include/ext/slist, include/ext/stdio_filebuf.h,
913 include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
915 2003-12-09 Bernardo Innocenti <bernie@develer.com>
917 * include/debug/bitset, include/debug/debug.h, include/debug/deque,
918 include/debug/formatter.h, include/debug/hash_map.h,
919 include/debug/hash_multimap.h, include/debug/hash_multiset.h,
920 include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
921 include/debug/map.h, include/debug/multimap.h,
922 include/debug/multiset.h, include/debug/safe_base.h,
923 include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
924 include/debug/safe_sequence.h, include/debug/set.h,
925 include/debug/string, include/debug/vector: Remove trailing whitespace.
927 2003-12-09 Bernardo Innocenti <bernie@develer.com>
929 * include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
930 include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
931 include/c_compatibility/string.h, include/c_compatibility/time.h,
932 include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
933 Remove trailing whitespace.
935 2003-12-09 Bernardo Innocenti <bernie@develer.com>
937 * include/c_std/cmath.tcc, include/c_std/std_cassert.h,
938 include/c_std/std_cctype.h, include/c_std/std_cmath.h,
939 include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
940 include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
941 include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
942 Remove trailing whitespace.
944 2003-12-09 Bernardo Innocenti <bernie@develer.com>
946 * include/c/std_cctype.h, include/c/std_cmath.h,
947 include/c/std_cstdlib.h include/c/std_cwchar.h,
948 include/c/std_cwctype.h: Remove trailing whitespace.
950 2003-12-09 Bernardo Innocenti <bernie@develer.com>
952 * include/backward/algo.h, include/backward/algobase.h,
953 include/backward/alloc.h, include/backward/complex.h,
954 include/backward/defalloc.h, include/backward/function.h,
955 include/backward/iterator.h, include/backward/new.h,
956 include/backward/ostream.h, include/backward/queue.h,
957 include/backward/rope.h, include/backward/stream.h,
958 include/backward/streambuf.h, include/backward/strstream,
959 include/backward/tempbuf.h, include/backward/tree.h,
960 include/backward/vector.h: Remove trailing whitespace.
962 2003-12-08 Paolo Carlini <pcarlini@suse.de>
964 * config/locale/generic/c_locale.cc (__convert_to_v(long&),
965 __convert_to_v(unsigned long&), __convert_to_v(long long&),
966 __convert_to_v(unsigned long long&): Remove.
967 (__convert_to_v(float&), __convert_to_v(double&),
968 __convert_to_v(long double&)): Remove last unused parameter.
969 * config/locale/gnu/c_locale.cc: Likewise.
970 * include/bits/locale_facets.h: Likewise.
971 (num_get::_M_extract_int): Update declaration.
972 (class __num_base): Tweak _S_ie and _S_iE according to the
974 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
975 Provide directly the final _ValueT, not a string: accumulate
976 the result checking for overflow at each digit.
977 (num_get::do_get(bool&), num_get::do_get(long&),
978 num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
979 num_get::do_get(unsigned long&), num_get::do_get(long long&),
980 num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
981 Use the new _M_extract_int, simplify.
982 * src/locale-inst.cc (num_get::_M_extract_int(long&),
983 num_get::_M_extract_int(unsigned short&),
984 num_get::_M_extract_int(unsigned int&),
985 num_get::_M_extract_int(unsigned long&),
986 num_get::_M_extract_int(long long&),
987 num_get::_M_extract_int(unsigned long long&): Instantiate.
988 * src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
989 the chars in the natural order: abcdefABCDEF.
991 2003-12-08 David S. Miller <davem@redhat.com>
994 * config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
995 Extend increment to _Atomic_word before giving to assembler.
997 2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
999 * testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
1000 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
1002 2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
1005 * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
1006 Remove __del argument to file descriptor constructor.
1007 * config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
1009 * config/io/basic_file_stdio.cc: Same.
1011 2003-12-05 Benjamin Kosnik <bkoz@redhat.com>
1014 * include/ext/enc_filebuf.h: Fix.
1015 * include/bits/fstream.tcc: Tweak formatting.
1016 * include/bits/postypes.h: Same.
1017 * include/bits/sstream.tcc: Same.
1018 * include/bits/streambuf.tcc: Same.
1019 * testsuite/ext/stdio_filebuf.cc: Split.
1020 * testsuite/ext/stdio_filebuf_2.cc: Split.
1021 * testsuite/ext/stdio_sync_filebuf_char.cc: Split.
1022 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
1023 * testsuite/ext/enc_filebuf/char/13189.cc: New.
1024 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
1025 * testsuite/ext/stdio_filebuf/char/1.cc: New.
1026 * testsuite/ext/stdio_filebuf/char/2.cc: New.
1027 * testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
1028 * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
1029 * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
1030 * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
1031 * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
1032 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
1033 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
1034 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
1035 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
1036 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
1038 2003-12-05 Carlo Wood <carlo@alinoe.com>
1042 namespace __gnu_cxx::demangler
1043 (enum substitution_nt): Removed trailing comma.
1044 (implementation_details): Added.
1045 (session<Allocator>::M_implementation_details): Added.
1046 (session<Allocator>::session): Pass implementation_details.
1047 (session<Allocator>::decode_encoding): Same.
1048 (session<Allocator>::decode_real): Added.
1049 (_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
1050 _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
1051 _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
1052 _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
1053 implementation_details equivalent.
1054 (session<Allocator>::decode_expression):
1055 Use M_implementation_details instead of macros. Add extra parentheses
1056 around 'larger than' operator in expressions in template arguments.
1057 (session<Allocator>::decode_bare_function_type): Idem.
1058 (session<Allocator>::decode_literal):
1059 Idem, and call decode_real for floating literals.
1060 (session<Allocator>::decode_type_with_postfix): Put the postfix
1061 of the return type of (member) functions after the function
1062 instead of after the return type. Also, put a space after the
1063 prefix of qualified function pointers: "int (* const<space>".
1064 * src/demangle.cc: include most dependent header file first.
1065 * testsuite/demangle/regression/cw-16.cc: Updated two
1066 and added three tests.
1068 2003-12-04 Benjamin Kosnik <bkoz@redhat.com>
1071 * include/bits/stl_algo.h (__random_number): Remove.
1072 (random_shuffle): Use rand, as permitted by DR 395.
1073 * include/ext/algorithm: Same.
1074 * linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
1076 * crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
1077 * config.h.in: Regenerated.
1081 2003-12-04 Paolo Carlini <pcarlini@suse.de>
1084 * include/std/std_bitset.h (operator>>): Implement resolution
1085 of DR 303 [WP]: use widen('0') and widen('1').
1086 * docs/html/ext/howto.html: Add an entry for DR 303.
1088 * include/std/std_bitset.h (operator>>): Implement the common
1089 requirements of formatted input functions (27.6.1.2.1).
1091 * include/std/std_bitset.h (operator>>): Set the failbit when
1092 nothing was extracted and _Nb != 0.
1093 * testsuite/23_containers/bitset/input/1.cc: New.
1095 2003-12-03 Paolo Carlini <pcarlini@suse.de>
1098 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
1099 Rewrite, stop the parsing as soon as a digit cannot possibly
1100 lead to a final number within the bounds; otherwise, simplify,
1101 avoiding __ctype.is() and atoi().
1102 * testsuite/22_locale/time_get/get_date/char/12791.cc: New.
1103 * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
1105 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1106 Minor tweak: a 4-digit integer cannot be bigger than 9999.
1108 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
1109 type-correct wchar_t string literals.
1110 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
1111 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
1112 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
1113 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
1115 2003-12-02 Paolo Carlini <pcarlini@suse.de>
1117 * include/bits/locale_facets.tcc (time_get::do_get_year):
1118 Avoid using a basic_string and calling a full blown strtol
1119 (via __convert_to_v) for simple 2 or 4 digits, base 10,
1120 positive integers; simplify.
1122 2003-12-02 Paolo Carlini <pcarlini@suse.de>
1124 * config/locale/gnu/monetary_members.cc
1125 (money_base::_S_construct_pattern): For case 3: and 4:
1126 exchanging 'if (__precedes)' and 'if (__space)' allows
1127 to factor out a few more assignments.
1129 2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
1131 * include/bits/basic_ios.h (basic_ios::setstate): Revert.
1132 * include/bits/istream.tcc: Only call setstate if __err != goodbit.
1133 * include/bits/ostream.tcc: Same.
1134 * testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
1136 * testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
1137 internal buffer non-static.
1139 2003-12-01 Benjamin Kosnik <bkoz@redhat.com>
1141 * docs/html/17_intro/C++STYLE: Add exception bits.
1142 * include/bits/fstream.tcc: Add location info to exception strings.
1144 * include/bits/stl_construct.h: Formatting tweaks.
1146 2003-12-01 Paolo Carlini <pcarlini@suse.de>
1149 * include/bits/allocator.h (allocator::construct): Implement
1150 resolution of DR 402 [Ready] (in Revision 28).
1151 * include/bits/allocator_traits.h (__allocator::construct):
1153 * include/bits/stl_construct.h (_Construct): Likewise.
1154 * testsuite/20_util/allocator_members.cc: Move to...
1155 * testsuite/20_util/allocator/1.cc: ... here.
1156 * testsuite/20_util/allocator/10378.cc: New.
1157 * docs/html/ext/howto.html: Add an entry for DR 402.
1159 2003-11-30 Paolo Carlini <pcarlini@suse.de>
1161 * config/locale/gnu/codecvt_members.cc (codecvt::do_in,
1162 codecvt::do_length): More minor tweaks.
1164 2003-11-30 Paolo Carlini <pcarlini@suse.de>
1166 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
1167 Minor stylistic tweak.
1169 2003-11-30 Paolo Carlini <pcarlini@suse.de>
1171 * include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
1172 Minor tweaks, consistent with the style used in other facets.
1174 2003-11-29 Paolo Carlini <pcarlini@suse.de>
1176 * include/bits/fstream.tcc (underflow): Minor tweaks in
1177 preparation for libstdc++/13217.
1179 2003-11-29 Paolo Carlini <pcarlini@suse.de>
1181 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
1182 Tweak for a few small problems (fix timings, use VERIFY..)
1184 2003-11-28 Paolo Carlini <pcarlini@suse.de>
1186 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
1187 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
1188 the original third testcase for libstdc++/13171 belong here.
1190 2003-11-28 Paolo Carlini <pcarlini@suse.de>
1192 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
1193 Remove extraneous wchar_t lines.
1195 2003-11-27 Paolo Carlini <pcarlini@suse.de>
1199 * include/bits/fstream.tcc (underflow): Throw ios_base::failure
1200 upon incomplete or invalid byte sequences in the file.
1201 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
1202 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
1203 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
1205 2003-11-27 Paolo Carlini <pcarlini@suse.de>
1207 * include/std/std_streambuf.h (__copy_streambufs): Remove
1208 the first, unused, basic_ios<> parameter.
1209 * src/streambuf-inst.cc: Likewise.
1210 * include/bits/streambuf.tcc: Likewise.
1211 * include/bits/istream.tcc (operator>>(__streambuf_type*)):
1212 Tweak accordingly the call.
1213 * include/bits/ostream.tcc (operator<<(__streambuf_type*)):
1216 * include/bits/streambuf.tcc (__copy_streambufs): Remove
1217 redundant try/catch.
1219 2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
1225 * include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
1226 (basic_ios::_M_setstate): Consolidate common error handling code.
1227 * include/bits/basic_ios.tcc: Tweak.
1228 * include/bits/fstream.tcc: Tweak.
1229 * include/bits/istream.tcc: Use _M_setstate for common exception
1230 handling. Move setstate calls after catch.
1231 (basic_istream::tellg): Check for exceptions thrown by streambuf
1233 (basic_istream::seekg): Same.
1234 * include/bits/ostream.tcc: Same, but for ostream.
1235 (basic_ostream::flush): Check for exceptions thrown by streambuf
1237 (basic_istream::tellp): Same.
1238 (basic_istream::seekp): Same.
1239 * include/bits/locale_facets.tcc: Tweak.
1240 * include/bits/streambuf.tcc: Tweak.
1241 (__copy_streambufs): Propagate exceptions.
1242 * testsuite/testsuite_io.h (fail_streambuf): New.
1243 (fail_num_get): New.
1244 (fail_num_put): New.
1246 (underflow_error): New.
1247 (overflow_error): New.
1248 (positioning_error): New.
1249 * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
1250 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
1251 exceptions_badbit_throw.cc, exceptions_failbit.cc,
1252 exceptions_failbit_throw.cc: New.
1253 * testsuite/27_io/basic_istream/extractors_other/char/
1254 error_failbit.cc, exceptions_badbit_throw.cc,
1255 exceptions_failbit_throw.cc, exceptions_null.cc: New.
1256 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
1258 * testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
1260 * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
1262 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
1263 exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
1264 * testsuite/27_io/basic_ostream/inserters_other/char/
1265 error_failbit.cc, exceptions_badbit_throw.cc,
1266 exceptions_failbit_throw.cc, exceptions_null.cc: New.
1267 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
1269 * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
1272 2003-11-26 Benjamin Kosnik <bkoz@redhat.com>
1275 * include/bits/istream.tcc
1276 (basic_istream::sentry::sentry): Set failbit and eofbit when eof.
1277 * testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
1279 2003-11-26 Paolo Carlini <pcarlini@suse.de>
1280 Petur Runolfsson <peturr02@ru.is>
1283 * include/bits/fstream.tcc (imbue): Relax the conditions under
1284 which the function succeeds: allow for two consecutive calls with
1285 the same name; state dependent encodings are ok even after open
1286 if at the beginning of the file; don't check seekoff return value
1287 (pipes, cin, cout, etc...)
1288 * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
1289 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
1290 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
1291 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
1292 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
1293 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
1294 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
1295 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
1297 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
1298 correctly use the UTF-8 locale appearing in the PR.
1300 2003-11-26 Paolo Carlini <pcarlini@suse.de>
1302 * include/bits/locale_facets.h
1303 (__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
1304 _M_truename and _M_falsename: the constructor always does
1305 it immediately before the _M_cache call.
1307 2003-11-25 Paolo Carlini <pcarlini@suse.de>
1309 * config/locale/gnu/codecvt_members.cc (codecvt::do_length):
1310 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
1311 former is very fast, but stops if encounters a NUL.
1312 (codecvt::do_out): Tweaks.
1313 (codecvt::do_in): Tweaks, improve the code dealing with errors.
1314 * testsuite/performance/wchar_t_length.cc: New.
1316 2003-11-24 Paolo Carlini <pcarlini@suse.de>
1318 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
1319 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
1320 former is very fast, but stops if encounters a NUL.
1321 (codecvt::do_out): Tweak.
1322 * testsuite/performance/wchar_t_in.cc: New.
1324 2003-11-24 Paolo Carlini <pcarlini@suse.de>
1326 * include/bits/locale_facets.h
1327 (__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
1328 in order to avoid memory leaks; simplify a bit.
1330 2003-11-24 Benjamin Kosnik <bkoz@redhat.com>
1332 * include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
1333 non-standard throw specs.
1334 * testsuite/24_iterators/istreambuf_iterator.cc: Split into...
1335 * testsuite/24_iterators/istreambuf_iterator/1.cc
1336 * testsuite/24_iterators/istreambuf_iterator/2.cc
1337 * testsuite/24_iterators/istreambuf_iterator/2627.cc
1338 * testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
1339 * testsuite/24_iterators/ostreambuf_iterator/1.cc
1340 * testsuite/24_iterators/ostreambuf_iterator/2.cc
1342 * testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
1345 * include/bits/allocator.h: Formatting tweak.
1347 2003-11-24 Paolo Carlini <pcarlini@suse.de>
1349 * src/locale_init.cc: Cosmetic reformatting.
1351 2003-11-23 Paolo Carlini <pcarlini@suse.de>
1353 * include/bits/locale_facets.tcc (__add_grouping):
1354 Cosmetic reformatting.
1356 2003-11-23 Paolo Carlini <pcarlini@suse.de>
1358 * include/bits/locale_facets.tcc (_M_extract_float,
1359 _M_extract_int): Remove a wrong comment and simplify
1360 the corresponding code using char_traits::find().
1362 2003-11-22 Paolo Carlini <pcarlini@suse.de>
1364 * config/locale/gnu/monetary_members.cc
1365 (money_base::_S_construct_pattern): Factor out two assignments.
1367 2003-11-22 Paolo Carlini <pcarlini@suse.de>
1369 * include/bits/istream.tcc (getline(basic_string<>&)):
1370 Fix error in comment of the previous commit.
1372 2003-11-22 Paolo Carlini <pcarlini@suse.de>
1375 * include/bits/istream.tcc (operator>>(basic_string<>&),
1376 getline(basic_string<>&)): Implement resolution of DR 91 [WP];
1377 fix some minor issues with the exit conditions.
1378 * docs/html/ext/howto.html: Add an entry for DR 91.
1380 2003-11-21 Paolo Carlini <pcarlini@suse.de>
1382 * config/locale/gnu/monetary_members.cc
1383 (money_base::_S_construct_pattern): Factor out an assignment.
1385 2003-11-21 Paolo Carlini <pcarlini@suse.de>
1387 PR libstdc++/12882 (partial)
1388 * acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
1390 * include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
1391 and ftello64 if available.
1392 * aclocal.m4: Regenerate.
1395 2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
1397 * include/debug/formatter.h: Use _Tp as template argument.
1398 * src/debug.cc: Same, instantiate std::size_t.
1400 2003-11-20 Benjamin Kosnik <bkoz@redhat.com>
1403 * include/debug/formatter.h (_Error_formatter::_M_format_word): New.
1404 * src/debug.cc (__gnu_debug): Format.
1405 (_Error_formatter::_M_format_word): Define, use, instantiate.
1407 2003-11-20 Paolo Carlini <pcarlini@suse.de>
1410 * config/locale/gnu/codecvt_members.cc (codecvt::do_out):
1411 Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
1412 former is very fast, but stops if encounters a NUL.
1413 * testsuite/performance/wchar_t_out.cc: New, from the PR.
1415 2003-11-19 Paolo Carlini <pcarlini@suse.de>
1417 * config/locale/gnu/codecvt_members.cc (do_out): If
1418 we can upper bound the total number of external chars
1419 to something smaller than __to_end - __to, avoid the
1420 temporary buffer, the memcopy and simplify the loop.
1421 * config/locale/generic/codecvt_members.cc (do_out):
1424 2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
1426 * testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
1427 * testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
1430 2003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
1432 * docs/html/configopts.html, docs/html/debug.html,
1433 docs/html/documentation.html, docs/html/explanations.html,
1434 docs/html/install.html, docs/html/17_intro/contribute.html,
1435 docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
1436 docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
1437 docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
1438 docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
1439 docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
1440 docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
1441 docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
1442 docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
1443 docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
1445 2003-11-18 Paolo Carlini <pcarlini@suse.de>
1448 * include/bits/fstream.tcc (imbue): For encodings != -1 it's
1449 always ok to imbue a new locale, provided seekoff(0, cur, ...)
1450 doesn't fail, of course.
1451 (underflow): In order for the above to work, deal gracefully
1452 with _M_codecvt->in returning codecvt_base::error while
1453 (__ilen = __iend - this->eback()) > 0: it just means __ilen
1454 correctly converted internal characters before an error.
1455 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
1457 2003-11-17 Paolo Carlini <pcarlini@suse.de>
1459 * include/bits/locale_facets.tcc: Fix typo in comment.
1461 2003-11-17 Paolo Carlini <pcarlini@suse.de>
1463 * testsuite/22_locale/num_put/put/char/8.cc: New test,
1464 summarizing the discussion ensuing libstdc++/12988.
1465 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
1467 2003-11-15 Paolo Carlini <pcarlini@suse.de>
1469 * include/std/std_fstream.h: Tweak a comment.
1471 2003-11-15 Roger Sayle <roger@eyesopen.com>
1473 * include/c_std/std_cmath.h: Don't import C99's float transcendentals
1474 into the __gnu_cxx::__c99_binding namespace.
1475 (acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
1476 ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
1477 GCC's math builtins, i.e. __builtin_foo.
1478 * libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
1479 ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
1480 ldexpf, ldexpl, modff, modfl): Provide stub implementations.
1482 2003-11-14 Paolo Carlini <pcarlini@suse.de>
1484 * testsuite/22_locale/locale/cons/12352.cc: Use
1485 __gnu_test::try_named_locale.
1487 2003-11-14 Paolo Carlini <pcarlini@suse.de>
1489 * docs/html/ext/howto.html: Add entries for DR 63, 75
1490 and 305; tweak entries for DR 60 and 328.
1492 2003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
1494 * docs/html/debug.html: Users are allowed to specialize in
1495 namespace __gnu_debug, unlike in the Apple version of the debug
1496 mode. Clear up a confusing double-negative. Note that
1497 std::basic_string does provide extra debugging capabilities, but
1499 * include/bits/basic_string.tcc: Make sure there's never an
1500 ambiguity when calling __is_null_pointer.
1501 * include/debug/deque: (deque::erase) Properly handle invalidation
1502 when erasing at the end of the deque.
1503 * include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
1504 (vector::clear): Set the guaranteed capacity to 0.
1505 * testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
1506 iterator invalidation when erasing at the end of the deque.
1508 2003-11-13 Paolo Carlini <pcarlini@suse.de>
1509 Petur Runolfsson <peturr02@ru.is>
1512 * include/bits/fstream.tcc (imbue): Don't touch the stored
1514 * include/std/std_streambuf.h (imbue): According to the
1515 standard, base class version does nothing.
1516 (pubimbue): Store the locale.
1517 * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
1518 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
1519 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
1520 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1521 * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
1522 * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
1523 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
1524 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
1526 2003-11-13 Petur Runolfsson <peturr02@ru.is>
1529 * include/bits/ostream.tcc
1530 (basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
1531 basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
1532 basic_ostream::operator<<(ios_base& (*)(ios_base&))):
1533 Implement the resolution of DR 60 (TC): These are not formatted
1534 output functions so don't construct sentry objects and don't
1536 (basic_ostream::put, basic_ostream::write): Implement the
1537 resolution of DR 63 (TC) by catching exceptions and setting
1539 (basic_ostream::flush): Implement the resolution of DR 60 (TC):
1540 This is not an unformatted output function so don't construct
1542 * testsuite/testsuite_io.h (sync_streambuf): Define.
1543 * testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
1544 * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
1545 * testsuite/27_io/basic_ostream/put/char/1.cc: New test.
1546 * testsuite/27_io/basic_ostream/write/char/1.cc: New test.
1548 2003-11-13 Paolo Carlini <pcarlini@suse.de>
1550 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
1551 Fix, closely following the testcase included in the PR.
1552 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
1553 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
1554 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
1556 2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
1558 * docs/html/17_intro/configury.html: XHTML tweak.
1560 2003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
1562 * docs/html/debug_mode.html: XHTML fixes.
1564 2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
1566 * docs/html/debug_mode.html: Update.
1567 * docs/html/17_intro/TODO: Update.
1569 2003-11-12 Benjamin Kosnik <bkoz@redhat.com>
1571 * include/bits/c++config: Move using directive...
1572 * include/debug/formatter.h: ...here.
1574 2003-11-12 Carlo Wood <carlo@alinoe.com>
1578 (_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
1579 (_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
1580 (session<Allocator>::next_peek() const): Added.
1581 (decode_non_negative_decimal_integer(string_type&)):
1582 Renamed from decode_decimal_integer(string_type&).
1583 (session<Allocator>::decode_nested_name):
1584 Decode <template_param> as well.
1585 (session<Allocator>::add_substitution):
1586 Handle <template-param> for <nested-name>'s.
1587 (enum xary_nt): Added.
1588 (struct entry_st): Added member `xary_nt type' instead of `bool unary'.
1589 (symbol_name_table_c): Updated for `entry_st::type' and additional
1590 operators (unary `operator+' and `sizeof(type)').
1591 (offset_table_c): Updated for new operators (causing a new hash map).
1592 (decode_operator_name): Match the updated hash map.
1593 (session<Allocator>::decode_expression):
1594 Support for `sizeof ([typename] type)' (st),
1595 dependent names (sr) and casting operator (cv). Handle
1596 `entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
1597 and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
1598 (session<Allocator>::decode_type_with_postfix):
1599 Support `extern "C"' function types (FY).
1600 * testsuite/demangle/regression/cw-16.cc: Added tests for the
1601 added functionality.
1602 * testsuite/demangle/regression/3111-2.cc: sizeof now has a space
1605 2003-11-11 Paolo Carlini <pcarlini@suse.de>
1608 * include/bits/fstream.tcc (setbuf): Don't do anything
1609 after open(), in particular don't discard data.
1610 (_M_allocate_internal_buffer): Tweak to not allocate memory
1611 in case the buffer is provided by the user via setbuf.
1612 * include/ext/stdio_filebuf.h: Tweak comment.
1613 * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
1614 * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
1615 * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
1616 setbuf does nothing after open().
1617 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1619 2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
1621 * docs/html/debug.html: Document libstdc++ debug mode.
1622 * docs/html/debug_mode.html: Document libstdc++ debug mode design.
1623 * docs/html/test.html: Document how to test under debug mode.
1624 * docs/html/17_intro/howto.html: Document debug-mode macros.
1625 * include/Makefile.am: Install debug-mode headers.
1626 * src/Makefile.am: Include debug.cc.
1627 * include/bits/basic_string.tcc:
1628 (basic_string::_S_construct): Fix NULL pointer check.
1629 (__is_null_pointer): New.
1630 Add precondition annotations.
1631 * include/bits/stream_iterator.h (istream_iterator,
1632 ostream_iterator): Added precondition annotations.
1633 * include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
1634 * include/bits/stl_queue.h (queue, priority_queue): Ditto.
1635 * include/bits/stl_stack.h (stack): Ditto.
1636 * include/bits/basic_string.h (basic_string): Ditto.
1637 * include/bits/basic_string.tcc (basic_string): Ditto.
1638 * include/std/std_memory.h (auto_ptr): Ditto.
1639 * include/std/std_valarray.h (valarray): Ditto.
1640 * include/bits/stl_algo.h: Added algorithm precondition
1642 * include/bits/stl_algobase.h: Added algorithm precondition
1644 * include/bits/stl_numeric.h: Ditto.
1645 * include/ext/algorithm: Added algorithm precondition
1647 (__is_heap): Moved away from here.
1648 * include/bits/stl_heap.h: Added algorithm precondition
1650 (__is_heap): Moved to the top of this file.
1651 (__is_heap): Added iterator range overloads.
1652 * testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
1653 with changes in std_memory.h.
1654 * testsuite/23_containers/list/operators/4.cc: Don't verify
1655 performance guarantees when in debug mode.
1656 * testsuite/23_containers/bitset/invalidation/1.cc: New.
1657 * testsuite/23_containers/deque/invalidation/1.cc: New.
1658 * testsuite/23_containers/deque/invalidation/2.cc: New.
1659 * testsuite/23_containers/deque/invalidation/3.cc: New.
1660 * testsuite/23_containers/deque/invalidation/4.cc: New.
1661 * testsuite/23_containers/list/invalidation/1.cc: New.
1662 * testsuite/23_containers/list/invalidation/2.cc: New.
1663 * testsuite/23_containers/list/invalidation/3.cc: New.
1664 * testsuite/23_containers/list/invalidation/4.cc: New.
1665 * testsuite/23_containers/map/invalidation/1.cc: New.
1666 * testsuite/23_containers/map/invalidation/2.cc: New.
1667 * testsuite/23_containers/multimap/invalidation/1.cc: New.
1668 * testsuite/23_containers/multimap/invalidation/2.cc: New.
1669 * testsuite/23_containers/multiset/invalidation/1.cc: New.
1670 * testsuite/23_containers/multiset/invalidation/2.cc: New.
1671 * testsuite/23_containers/set/invalidation/1.cc: New.
1672 * testsuite/23_containers/set/invalidation/2.cc: New.
1673 * testsuite/23_containers/vector/invalidation/1.cc: New.
1674 * testsuite/23_containers/vector/invalidation/2.cc: New.
1675 * testsuite/23_containers/vector/invalidation/3.cc: New.
1676 * testsuite/23_containers/vector/invalidation/4.cc: New.
1677 * testsuite/25_algorithms/heap.cc: Don't verify
1678 performance guarantees when in debug mode.
1679 * include/debug/bitset: New.
1680 * include/debug/debug.h: New.
1681 * include/debug/deque: New.
1682 * include/debug/formatter.h: New.
1683 * include/debug/hash_map: New.
1684 * include/debug/hash_map.h: New.
1685 * include/debug/hash_multimap.h: New.
1686 * include/debug/hash_set: New.
1687 * include/debug/hash_set.h: New.
1688 * include/debug/hash_multiset.h: New.
1689 * include/debug/list: New.
1690 * include/debug/map: New.
1691 * include/debug/map.h: New.
1692 * include/debug/multimap.h: New.
1693 * include/debug/multiset.h: New.
1694 * include/debug/safe_base.h: New.
1695 * include/debug/safe_iterator.h: New.
1696 * include/debug/safe_iterator.tcc: New.
1697 * include/debug/safe_sequence.h: New.
1698 * include/debug/set: New.
1699 * include/debug/set.h: New.
1700 * include/debug/string: New.
1701 * include/debug/vector: New.
1702 * src/debug.cc: New.
1703 * config/linker-map.gnu: Add debug mode symbols.
1705 2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
1707 * src/string-inst.cc: Tweak namespaces.
1708 * src/misc-inst.cc: Same.
1709 * docs/html/debug.html: Edits.
1710 * config/link-map.gnu: Remove cruft.
1712 * include/bits/c++config: Add in namespace associations.
1713 * include/std/std_bitset.h: Adjust namespace to __gnu_norm,
1715 * include/bits/deque.tcc: Same.
1716 * include/bits/list.tcc: Same.
1717 * include/bits/stl_bvector.h: Same.
1718 * include/bits/stl_deque.h: Same.
1719 * include/bits/stl_list.h: Same.
1720 * include/bits/stl_map.h: Same.
1721 * include/bits/stl_multimap.h: Same.
1722 * include/bits/stl_multiset.h: Same.
1723 * include/bits/stl_set.h: Same.
1724 * include/bits/stl_vector.h: Same.
1725 * include/bits/vector.tcc: Same.
1727 * include/std/std_algorithm.h: Remove markup comments.
1728 * include/std/std_functional.h: Same.
1729 * include/std/std_iterator.h: Same.
1730 * include/std/std_numeric.h: Same.
1731 * include/std/std_utility.h: Same.
1732 * include/bits/stl_queue.h: Formatting tweaks.
1733 * include/bits/stl_stack.h: Same.
1734 * include/std/std_deque.h: Include debugging version in debug mode.
1735 * include/std/std_list.h: Same.
1736 * include/std/std_map.h: Same.
1737 * include/std/std_set.h: Same.
1738 * include/std/std_vector.h: Same.
1739 * include/std/std_queue.h: Use deque, vector.
1740 * include/std/std_stack.h: Same.
1742 2003-11-09 Paolo Carlini <pcarlini@suse.de>
1744 * include/bits/locale_facets.tcc (_M_insert_int,
1745 _M_insert_float): Move a couple of vars inside an if block.
1747 2003-11-09 Paolo Carlini <pcarlini@suse.de>
1750 * include/bits/locale_facets.tcc
1751 (money_put::do_put(..., long double)): Fix conversion
1752 specification as per DR 328 [WP].
1753 * testsuite/22_locale/money_put/put/char/12971.cc: Add.
1754 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
1755 * docs/html/ext/howto.html: Add entry for DR 328.
1757 2003-11-08 Paolo Carlini <pcarlini@suse.de>
1760 * include/bits/list.tcc (merge): Implement resolution of
1762 * docs/html/ext/howto.html: Add entry for DR 300; tweak entry
1765 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1768 2003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
1770 * libsupc++/vec.cc: Conform to C++STYLE.
1772 2003-11-07 Carlo Wood <carlo@alinoe.com>
1775 * bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
1776 (qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
1777 K, V, r and A qualifiers before processing them as a group.
1778 * testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
1779 * testsuite/demangle/regression/cw-16.cc: New.
1781 2003-11-07 Robert Millan <robertmh@gnu.org>
1783 * configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
1784 * crossconfig.m4: Likewise.
1785 * configure: Regenerate.
1787 2003-11-07 Carlo Wood <carlo@alinoe.com>
1789 * include/bits/demangle.h
1790 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
1791 string_type&, bool member_function_pointer_qualifiers):
1792 Always separate the '[' of an array type with a space from
1793 what is left of it, except when that is the closing bracket
1794 of another array dimension.
1796 2003-11-07 Carlo Wood <carlo@alinoe.com>
1798 * include/bits/demangle.h
1799 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
1800 string_type&, bool) const): Made const.
1801 (qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
1802 (_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
1803 std::ostream& operator<<(std::ostream&, qualifier const&),
1804 std::ostream& operator<<(std::ostream&, qualifier_list const&),
1805 qualifier_list<Allocator>::decode_qualifiers(string_type&,
1806 string_type&, bool) const,
1807 session<Allocator>::decode_type_with_postfix(string_type&,
1808 string_type&, qualifier_list<Allocator>*))
1809 Added and/or changed debug-only hooks and code.
1811 2003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
1813 * libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
1814 immediately return. This reflects a C++ ABI change 2003 Nov 03.
1815 (__cxa_vec_delete3): Likewise.
1817 2003-11-03 Petur Runolfsson <peturr02@ru.is>
1820 * include/bits/fstream.tcc: Delete _M_last_overflowed.
1821 (basic_filebuf::basic_filebuf): Initialize _M_state_last.
1822 (basic_filebuf::open, basic_filebuf::close): Assign
1823 _M_state_beg to _M_state_cur and _M_state_last.
1824 (basic_filebuf::close): Call _M_terminate_output to handle
1825 unshift and flushing.
1826 (basic_filebuf::underflow): Assign _M_state_last, throw
1827 exception instead of calling abort when codecvt::max_length()
1829 (basic_filebuf::seekoff): Use _M_state_last when calling
1830 codecvt::length(), pass correct state to _M_seek.
1831 (basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
1832 (basic_filebuf::_M_seek): Add __state_type parameter,
1833 set _M_state_cur correctly, store the resulting state in
1834 the return value and use _M_terminate_output to handle
1835 flushing and unshift.
1836 (basic_filebuf::_M_terminate_output): Flush contents of
1837 output buffer, if any, then call codecvt::unshift as
1838 needed and output the result.
1839 (basic_filebuf::sync): Move here, don't modify _M_writing
1842 * include/std/std_fstream.h
1843 (basic_filebuf::_M_state_last): Declare it.
1844 (basic_filebuf::_M_last_overflowed): Delete.
1845 (basic_filebuf::_M_seek): Add __state_type parameter.
1846 (basic_filebuf::sync): Declare only.
1847 (basic_filebuf::_M_output_unshift): Delete.
1848 (basic_filebuf::_M_terminate_output): Declare it.
1850 * testsuite/testsuite_character.h:
1851 Define character class and state class plus char_traits and
1852 codecvt specializations for same for testing support for
1855 * testsuite/27_io/basic_filebuf/close/12790-1.cc,
1856 * testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
1857 * testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
1858 * testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
1859 * testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
1860 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
1861 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
1862 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
1863 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
1864 * testsuite/27_io/basic_filebuf/open/12790-1.cc,
1865 * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
1866 * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
1867 * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
1868 * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
1869 * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
1870 * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
1871 * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
1872 * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
1873 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
1874 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
1875 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
1876 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
1877 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
1878 * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
1879 * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
1880 * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
1881 * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
1882 * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
1883 * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
1884 * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
1885 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
1886 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
1887 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
1888 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
1889 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
1890 * testsuite/27_io/basic_filebuf/sync/char/1.cc,
1891 * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
1894 * testsuite/27_io/basic_filebuf/3.cc,
1895 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
1896 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
1897 * testsuite/27_io/basic_fstream/3.cc,
1898 * testsuite/27_io/basic_ifstream/3.cc,
1899 * testsuite/27_io/basic_ofstream/3.cc:
1900 Use streamoff as off_type and fpos<state_type> as pos_type.
1902 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
1903 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
1904 Check that sync does *not* set _M_writing to false.
1906 2003-11-03 Anthony Green <green@redhat.com>
1908 * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
1911 2003-11-03 Benjamin Kosnik <bkoz@redhat.com>
1913 * include/bits/locale_facets.h (time_get::_M_extract_name): Add
1915 * include/bits/locale_facets.tcc: Same, use it to allow
1918 * include/bits/fstream.tcc: Spacing tweak.
1919 * include/bits/istream.tcc: Same.
1920 * include/bits/ostream.tcc: Same.
1922 2003-10-30 Paolo Carlini <pcarlini@suse.de>
1924 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1925 __mod is only assigned, never used its value, remove it.
1927 2003-10-29 Paolo Carlini <pcarlini@suse.de>
1929 * include/bits/locale_facets.tcc (time_get::do_get_year):
1930 Absolutely avoid dereferencing end iterators.
1931 (time_put::put): Minor clean up.
1933 * include/bits/locale_facets.tcc: Cosmetic reformattings.
1935 2003-10-29 Paolo Carlini <pcarlini@suse.de>
1937 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1938 Revert the last commit, is not correct, sorry.
1940 2003-10-29 Paolo Carlini <pcarlini@suse.de>
1942 * config/locale/generic/c_locale.cc: Add back <cmath> and
1945 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1948 2003-10-29 Paolo Carlini <pcarlini@suse.de>
1950 * include/bits/locale_facets.tcc (time_put::put): Absolutely
1951 avoid dereferencing end iterators; clean up.
1953 * include/bits/locale_facets.tcc (num_get::_M_extract_float,
1954 num_get::_M_extract_int): Minor tweak.
1956 2003-10-29 Paolo Carlini <pcarlini@suse.de>
1958 * include/bits/locale_facets.tcc: Remove some unnecessary
1960 * config/locale/generic/c_locale.cc: Include <cerrno> here.
1961 * config/locale/gnu/c_locale.cc: Likewise.
1963 2003-10-28 Paolo Carlini <pcarlini@suse.de>
1965 * include/bits/locale_facets.tcc
1966 (money_get<>::do_get(..., string_type&)): Absolutely avoid
1967 dereferencing end iterators; general clean up.
1969 2003-10-28 Paolo Carlini <pcarlini@suse.de>
1971 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
1972 Absolutely avoid dereferencing end iterators.
1973 (time_get::_M_extract_name): Likewise.
1975 * include/bits/locale_facets.tcc
1976 (time_get::_M_extract_via_format, case 'e'): Don't try to
1977 be smart wrt returning the right __beg in case of parse
1978 error, time_get::_M_extract_num must be fixed instead.
1980 2003-10-27 Paolo Carlini <pcarlini@suse.de>
1983 * acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
1984 * aclocal.m4: Regenerate.
1985 * configure: Regenerate.
1987 2003-10-27 Benjamin Kosnik <bkoz@redhat.com>
1989 * docs/html/17_intro/TODO: Add links.
1990 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1993 2003-10-27 Paolo Carlini <pcarlini@suse.de>
1996 * include/bits/locale_facets.tcc
1997 (time_get::_M_extract_via_format): Deal with code 'e'.
1998 * testsuite/22_locale/time_get/get_date/char/12750.cc: New.
1999 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
2001 * include/bits/locale_facets.tcc
2002 (time_get::_M_extract_via_format): Tweak to absolutely avoid
2003 dereferencing end iterators.
2005 * include/bits/locale_facets.h (__verify_grouping):
2006 Const-ify second parameter.
2007 * include/bits/locale_facets.tcc (__verify_grouping): Ditto.
2008 * src/locale-inst.cc (__verify_grouping): Ditto.
2010 2003-10-27 Paolo Carlini <pcarlini@suse.de>
2012 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
2013 Various things: 1- Avoid absolutely end iterator dereferences;
2014 2- Improve performance-wise the code skipping leading zeros;
2015 3- Fix two bugs wrt early bail out in case of parsing errors
2016 (see testcases); 4- General clean up.
2017 (num_get::_M_extract_int): Likewise, except 3-. Additionally,
2018 use __builtin_expect to favor base 10 inputs.
2019 * testsuite/22_locale/num_get/get/char/7.cc: New.
2020 * testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
2022 2003-10-26 Paolo Carlini <pcarlini@suse.de>
2024 * testsuite/22_locale/money_put/put/char/1.cc: Clean up.
2025 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
2027 2003-10-25 Paolo Carlini <pcarlini@suse.de>
2029 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
2030 __pos in only incremented, never used its value, remove it.
2032 2003-10-24 Robert Millan <robertmh@gnu.org>
2034 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
2036 * aclocal.m4: Regenerated.
2037 * configure: Regenerated.
2039 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2041 * include/bits/locale_facets.tcc (money_get::do_get(...,
2042 long double&): Properly size the temporary buffer.
2043 * testsuite/22_locale/money_get/get/char/11.cc: New.
2044 * testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
2046 * include/bits/locale_facets.tcc (num_put::_M_group_int,
2047 num_put::_M_group_float, money_put::do_put(..., const
2048 string_type&), collate::do_compare, collate::do_transform):
2049 Prefer basic_string::data() to c_str() when the '\0'
2050 terminator is not really needed.
2052 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2054 * include/bits/locale_facets.tcc (__verify_grouping):
2055 Prefer '=' to an unnecessary '&='.
2057 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2059 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
2060 Tweak my fix for libstdc++/12657.
2062 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2064 * include/bits/locale_facets.tcc (money_get::do_get(...,
2065 string_type&): Minor tweak to the previous commit.
2067 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2069 * include/bits/locale_facets.tcc (money_get::do_get(...,
2070 string_type&): Disregard the previous commit: doesn't hurt but
2071 doesn't accomplish anything useful either. This is the right
2072 one, speeding up greatly the function in case of early fail.
2074 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2076 * include/bits/locale_facets.tcc (money_get::do_get(...,
2077 string_type&): Move an if block, thus minimizing the amount
2078 of code processed anyway when __tmp_units.size() == 0.
2080 2003-10-24 Paolo Carlini <pcarlini@suse.de>
2082 * include/bits/locale_facets.tcc
2083 (time_get<>::_M_extract_via_format): Deal with case 'C' too,
2086 2003-10-23 Benjamin Kosnik <bkoz@redhat.com>
2088 * docs/html/documentation.html: Add a pointer to the doxygen style
2090 * docs/html/17_intro/TODO: Update.
2091 * docs/html/test.html: Add instructions for running a subset of
2094 2003-10-23 Paolo Carlini <pcarlini@suse.de>
2096 * include/bits/locale_facets.tcc (money_get<>::do_get(...,
2097 string_type&)): Use find_first_not_of to strip leading
2098 zeros; if __tmp_units == "0" never prefix it with '-';
2099 always fail if __tmp_units is empty.
2100 * testsuite/22_locale/money_get/get/char/10.cc: New.
2101 * testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
2103 2003-10-23 Phil Edwards <phil@codesourcery.com>
2105 * config/os/vxworks/ctype_noninline.h: Adjust ctor to match
2108 2003-10-22 Paolo Carlini <pcarlini@suse.de>
2110 * include/bits/locale_facets.tcc (__int_to_char): Remove
2111 the const int parameter.
2112 (_M_insert_int): Update caller.
2113 * src/locale-inst.cc (__int_to_char): Update instantiations.
2115 2003-10-22 Benjamin Kosnik <bkoz@redhat.com>
2117 * include/bits/locale_facets.h: Correct byname facets for "C"
2119 * config/locale/generic/ctype_members.cc: Same.
2120 * config/locale/generic/messages_members.h: Same.
2121 * config/locale/gnu/ctype_members.cc: Same.
2122 * config/locale/gnu/messages_members.h: Same.
2123 * include/bits/codecvt.h: Same.
2124 * src/ctype.cc: Same.
2125 * testsuite/22_locale/codecvt_byname/1.cc: New.
2126 * testsuite/22_locale/collate/1.cc: Edit.
2127 * testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
2128 * testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
2129 * testsuite/22_locale/ctype/1.cc: Derivation tests.
2130 * testsuite/22_locale/ctype/11844.cc: Move...
2131 * testsuite/22_locale/ctype_base/11844.cc: ...here.
2132 * testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
2133 * testsuite/22_locale/ctype_byname/1.cc: Name.
2134 * testsuite/22_locale/messages_byname/1.cc: New.
2135 * testsuite/22_locale/messages_byname/named_equivalence.cc: New.
2136 * testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
2137 * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
2138 * testsuite/22_locale/numpunct/1.cc: Edit.
2139 * testsuite/22_locale/numpunct_byname/2.cc: Move...
2140 * testsuite/22_locale/numpunct/members/char/3.cc: ...here.
2141 * testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
2142 * testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
2144 2003-10-22 Paolo Carlini <pcarlini@suse.de>
2147 * acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
2148 checking for the availability of int64_t.
2149 (GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
2150 * configure.ac: Call here.
2151 * acconfig.h: Add undef for the corresponding symbols.
2152 * config/io/basic_file_stdio.cc (__basic_file<char>::open):
2153 Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
2154 (__basic_file<char>::seekoff): Likewise, call lseek64 when
2155 available, otherwise lseek, checking the __off parameter.
2156 * include/bits/postypes.h: Typedef __streamoff_base_type
2157 to int64_t if available, otherwise long long.
2158 * aclocal.m4: Regenerate.
2159 * config.h.in: Likewise.
2160 * configure: Likewise.
2162 * acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
2163 Use AC_TRY_LINK instead of AC_TRY_COMPILE.
2165 2003-10-22 Paolo Carlini <pcarlini@suse.de>
2168 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
2169 Implement resolution of DR 292 (WP).
2170 * docs/html/ext/howto.html: Add entry for DR 292.
2172 2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
2174 * include/ext/mt_allocator.h: Change include to gthr.h.
2175 * include/ext/rope: Same. Add _Refcount_base definitions.
2176 * include/ext/pool_allocator.h: Adjust namespaces.
2177 * include/bits/stl_threads.h (_Refcount_base): Move.
2178 Put remaining into namespace __gnu_cxx.
2180 2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
2183 * include/bits/locale_facets.h (ctype<char>): Remove
2184 __ctype_abstract_base.
2185 (ctype<char>::do_is): Remove.
2186 (ctype<char>::do_scan_is): Remove.
2187 * src/ctype.cc: Same. Inline the rest.
2188 * testsuite/22_locale/ctype/is/char/9858.cc: New.
2189 * config/os/aix/ctype_noninline.h: Adjust ctor.
2190 * config/os/bsd/freebsd/ctype_noninline.h: Same.
2191 * config/os/bsd/netbsd/ctype_noninline.h: Same.
2192 * config/os/djgpp/ctype_noninline.h: Same.
2193 * config/os/generic/ctype_noninline.h: Same.
2194 * config/os/gnu-linux/ctype_noninline.h: Same.
2195 * config/os/hpux/ctype_noninline.h: Same.
2196 * config/os/irix/irix5.2/ctype_noninline.h: Same.
2197 * config/os/irix/irix6.5/ctype_noninline.h: Same.
2198 * config/os/mingw32/ctype_noninline.h: Same.
2199 * config/os/newlib/ctype_noninline.h: Same.
2200 * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
2201 * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
2202 * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
2203 * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
2204 * config/os/windiss/ctype_noninline.h: Same.
2206 2003-10-21 Paolo Carlini <pcarlini@suse.de>
2208 * src/locale.cc: Tweak a comment.
2209 * src/localename.cc: Move a comment.
2211 2003-10-20 Benjamin Kosnik <bkoz@redhat.com>
2214 * testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
2215 * testsuite_hooks.cc: Same.
2216 * 22_locale/numpunct/members/pod/1.cc: Edit.
2217 * 22_locale/numpunct/members/pod/2.cc: Same.
2218 * 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
2219 * 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
2220 * 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
2221 * 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
2222 * 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
2223 * 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
2224 * 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
2225 * 27_io/basic_istream/sentry/pod/1.cc: New.
2226 * 27_io/basic_ostream/sentry/pod/1.cc: New.
2227 * 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
2228 * 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
2230 2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2232 * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
2233 of external _MIPS_SIM_ABI32.
2235 2003-10-20 Phil Edwards <phil@codesourcery.com>
2237 * configure.ac: Fix comment typo.
2238 * configure.host: Add vxworks to host_os switch.
2239 * crossconfig.m4: Remove old commented os_include_dir variables
2240 left over from autotools transition.
2241 (*-vxworks): New stanza.
2242 (*-windiss): Add missing symbols.
2243 * configure: Regenerate.
2244 * config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
2245 config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
2247 * config/os/windiss/os_defines.h: Define __C9X__.
2249 2003-10-19 David Edelsohn <edelsohn@gnu.org>
2252 * configure.host (aix4,aix*): Define os_include_dir to os/generic.
2254 2003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
2256 * src/locale.cc (locale::_S_initialize): Re-apply workaround a
2257 confusion of the use of the gthr API when __gthread_active_p()
2260 2003-10-17 Benjamin Kosnik <bkoz@redhat.com>
2262 * src/Makefile.am: Add new files.
2263 * src/Makefile.in: Regenerate.
2264 * src/globals.cc: Split into..
2265 * src/globals_io.cc: New.
2266 * src/globals_locale.cc: New.
2267 * src/ios.cc: Split into...
2268 * src/ios_init.cc: New.
2269 * src/ios_locale.cc: New.
2270 * src/locale-inst.cc: Split into..
2271 * src/wlocale-inst.cc: New.
2272 * src/locale-misc-inst.cc: New.
2273 * src/locale.cc, src/localename: Split into...
2274 * src/locale_facets.cc: New.
2275 * src/locale_init.cc: New.
2276 * src/wstring-inst.cc: Add copyright info.
2278 2003-10-16 Petur Runolfsson <peturr02@ru.is>
2283 * config/io/basic_file_stdio.cc (__basic_file::seekoff):
2284 Change return value from streampos to streamoff.
2285 (__basic_file::seekpos): Delete.
2286 * config/io/basic_file_stdio.h: Same.
2287 * config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
2288 * include/Makefile.am (bits_headers): Add bits/postypes.h.
2289 * include/bits/char_traits.h: Include bits/postypes.h instead of
2291 * include/bits/fstream.tcc (basic_filebuf::open,
2292 basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
2293 values, use == and != instead.
2294 (basic_filebuf::_M_seek): Use explicit conversion from streamoff
2296 (basic_filebuf::imbue): Don't use ! on pos_type values, use
2297 == instead. Don't use __check_facet(_M_codecvt) unless is_open().
2298 * include/bits/postypes.h: New file.
2299 Add __streamoff_base_type typedef, streamsize.
2300 (streamoff, streampos, wstreampos): Define typedefs, with
2301 streamoff defined as...
2302 (streamoff): New class. Document implementation defined
2304 (fpos): New implementation. Document implementation defined
2306 * include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
2307 explicit conversion from pos_type to off_type.
2308 * include/std/std_iosfwd.h: Include bits/postypes.h instead
2310 * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
2311 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
2312 * testsuite/27_io/fpos/11450.cc: New test.
2313 * testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
2314 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
2315 * testsuite/27_io/types/3.cc: New test.
2317 2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
2319 * configure.host: Remove fpos_include_dir.
2320 * configure.ac: Remove FPOS_INC_SRCDIR.
2321 * configure: Regenerate.
2322 * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
2323 * aclocal.m4: Regenerate.
2324 * include/Makefile.am (host_headers): Remove fpos.h.
2325 (bits_headers): Add postypes.h.
2326 * include/Makefile.in: Regenerate.
2327 * config/os/gnu-linux/fposh: Remove.
2328 * config/os/generic/fpos.h: Remove.
2330 * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
2331 * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
2332 * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
2333 * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
2334 * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
2335 * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
2336 * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
2337 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
2338 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
2339 * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
2340 * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
2341 * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
2342 * testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
2343 * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
2344 * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
2345 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
2346 * testsuite/27_io/objects/char/10.cc: Same.
2348 2003-10-16 Paolo Carlini <pcarlini@suse.de>
2350 * src/locale.cc (locale::locale(const char*)): ... one
2351 more comparison missed in the previous commit.
2353 2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
2355 * acconfig.h: Add HAVE_DRAND48.
2356 * crossconfig.m4: Remove ISATTY.
2357 * aclocal.m4: Regenerated.
2358 * config.h.in: Regenerated.
2359 * configure: Regenerated.
2361 2003-10-16 Bernardo Innocenti <bernie@develer.com>
2363 * config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
2364 __mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
2365 Document SMP safeness of asm macros.
2367 2003-10-16 Paolo Carlini <pcarlini@suse.de>
2369 * src/locale.cc (locale::locale(const char*)): Tweak
2370 a couple of comparisons to use basic_string operators.
2372 2003-10-16 Paolo Carlini <pcarlini@suse.de>
2375 * config/locale/gnu/monetary_members.cc
2376 (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
2377 Don't leak memory if new throws.
2378 * src/locale.cc (locale::locale(const char*)): In order not
2379 to leak memory in case new throws, use a basic_string type
2380 for __res too and avoid strdup.
2382 2003-10-14 Jeff Bailey <jbailey@nisa.net>
2385 * crossconfig.m4: Share the config between *-linux* and *-gnu*.
2386 * configure: Regenerate.
2388 2003-10-14 Carlo Wood <carlo@alinoe.com>
2391 * include/bits/demangle.h (session<Allocator>::
2392 decode_unqualified_name(string_type& output)): Fail on a
2393 <operator-name> when decoding <template-argument>.
2394 * testsuite/demangle/regression/cw-15.cc: New.
2396 2003-10-14 Paolo Carlini <pcarlini@unitus.it>
2399 * include/bits/stl_algo.h (unique): Fix.
2400 * testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
2401 * testsuite/25_algorithms/unique/11480.cc: New, from the PR.
2402 * testsuite/25_algorithms/unique/2.cc: New.
2404 2003-10-14 Paolo Carlini <pcarlini@unitus.it>
2406 * src/localename.cc (_M_replace_categories, M_replace_facet):
2407 Const-ify a couple of variables.
2409 2003-10-14 Petur Runolfsson <peturr02@ru.is>
2410 Andreas Tobler <a.tobler@schweiz.ch>
2412 * src/locale.cc (locale::_S_initialize): Workaround a confusion
2413 of the use of the gthr API when __gthread_active_p() returns true.
2415 2003-10-12 Petur Runolfsson <peturr02@ru.is>
2416 Paolo Carlini <pcarlini@unitus.it>
2419 * src/strstream.cc (pbackfail): Fix to use to_int_type.
2420 * testsuite/backward/11460.cc: New, from the PR.
2422 2003-10-12 Paolo Carlini <pcarlini@unitus.it>
2424 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
2425 Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
2426 * include/bits/basic_string.tcc: Likewise.
2427 * include/bits/ios_base.h: Likewise.
2428 * include/bits/istream.tcc: Likewise.
2429 * include/bits/locale_facets.tcc: Likewise.
2430 * include/bits/ostream.tcc: Likewise.
2431 * include/bits/stl_function.h: Likewise.
2432 * include/bits/stl_multiset.h: Likewise.
2433 * include/bits/stl_pair.h: Likewise.
2434 * include/bits/stl_set.h: Likewise.
2435 * include/bits/streambuf_iterator.h
2436 * include/std/std_iosfwd.h: Likewise.
2437 * include/std/std_istream.h: Likewise.
2438 * include/std/std_sstream.h: Likewise.
2439 * include/std/std_streambuf.h: Likewise.
2440 * src/ios.cc: Likewise.
2441 * include/bits/c++config:
2442 Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
2443 * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
2444 dg-error directive due to removal of a blank line.
2445 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2447 2003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
2448 Paolo Carlini <pcarlini@unitus.it>
2450 PR libstdc++/11844/11740 (cont)
2451 * config/os/generic/ctype_inline.h (ctype<char>::is):
2452 Generically, use a bitmasksize of 15 (instead of 10);
2453 Fix the logic to actually return (M & m) != 0 as per
2456 2003-10-11 Bernardo Innocenti <bernie@develer.com>
2458 * crossconfig.m4 (*-uclinux*): New target.
2459 * configure: Regenerate.
2461 2003-10-10 Paolo Carlini <pcarlini@unitus.it>
2463 * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
2464 Avoid unnecessarily calling __builtin_alloca and dealing
2465 explicitly with width() smaller than zero.
2466 (operator<<(basic_ostream&, char), operator<<(basic_ostream&,
2467 const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
2468 const char*), operator<<(basic_ostream<char, _Traits>&,
2469 const char*), operator<<(basic_ostream, const basic_string&)):
2472 2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
2474 * config/linker-map.gnu: Make more *_type_info bits visible.
2475 Move new/delete bits back into GLIBCXX space.
2477 * include/bits/locale_classes.h: Move _M_id out of line, so that
2478 locale::id::_S_highwater can be removed from the export list.
2479 * src/locale.cc (locale::id::_M_id): Define.
2481 2003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
2483 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
2486 2003-10-09 Paolo Carlini <pcarlini@unitus.it>
2489 * config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
2490 to conform to the requirements of 22.2.1.
2491 * config/os/bsd/freebsd/ctype_base.h: Likewise.
2492 * config/os/djgpp/ctype_base.h: Likewise.
2493 * config/os/generic/ctype_base.h: Likewise.
2494 * config/os/gnu-linux/ctype_base.h: Likewise.
2495 * config/os/hpux/ctype_base.h: Likewise.
2496 * config/os/irix/irix6.5/ctype_base.h: Likewise.
2497 * config/os/solaris/solaris2.6/ctype_base.h: Likewise.
2498 * config/os/solaris/solaris2.7/ctype_base.h: Likewise.
2499 * testsuite/22_locale/ctype/11844.cc: New.
2501 * config/locale/generic/ctype_members.cc (do_is):
2502 Generically, use a bitmasksize of 15 (instead of 10), since
2503 we don't know the numerical encoding of the various categories
2504 in the underlying /usr/include/ctype.h.
2506 2003-10-09 Benjamin Kosnik <bkoz@redhat.com>
2508 * src/string-inst.cc: Prune.
2509 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
2510 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2512 2003-10-09 Petur Runolfsson <peturr02@ru.is>
2514 * src/io-inst.cc: Don't include iostream.
2515 * include/bits/ios_base.h (ios_base::failure): Use string.
2516 * src/Makefile.am: Add ios_failure.cc.
2517 * src/Makefile.in: Regenerate.
2518 * src/ios.cc: Move ios_base::failure definitions to...
2519 * src/ios_failure.cc: ...here. New.
2521 2003-10-09 Petur Runolfsson <peturr02@ru.is>
2524 * include/bits/fstream.tcc (basic_filebuf::seekoff):
2525 Move code needed for both seekoff and seekpos...
2526 (basic_filebuf::_M_seek): ...here. New function.
2527 (basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
2528 * include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
2529 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
2531 * testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
2533 2003-10-08 Paolo Carlini <pcarlini@unitus.it>
2535 * include/bits/locale_facets.tcc: More minor cosmetic
2536 changes and const-ifications of some variables.
2538 2003-10-07 Paolo Carlini <pcarlini@unitus.it>
2540 * include/bits/locale_facets.tcc: Minor cosmetic changes
2541 and const-ifications of some variables.
2543 * include/bits/locale_facets.tcc
2544 (money_get::do_get(..., string_type&)): Simplify an if-else.
2546 2003-10-06 Paolo Carlini <pcarlini@unitus.it>
2549 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
2550 Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
2551 * config/locale/generic/ctype_members.cc: Same.
2552 * testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
2554 2003-10-06 Paolo Carlini <pcarlini@unitus.it>
2556 * include/bits/locale_facets.tcc (__pad<>::_S_pad):
2557 Improve performance-wise: avoid one traits::copy, avoid
2558 the __builtin_alloca, streamline.
2560 2003-10-05 Paolo Carlini <pcarlini@unitus.it>
2562 * include/bits/locale_facets.tcc
2563 (num_put::do_put(..., bool)): Prefer ?: to if-else.
2564 (time_get::_M_extract_name): Qualify min with std::.
2565 (__pad<>::_S_pad): Constify two variables; simplify an
2566 if-else statement factoring out some code.
2568 * include/bits/locale_facets.tcc: Minor cosmetic changes.
2570 2003-10-04 Paolo Carlini <pcarlini@unitus.it>
2572 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
2573 Constify a couple of variables.
2574 (num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
2575 ++__beg to *__beg++.
2577 2003-10-04 Paolo Carlini <pcarlini@unitus.it>
2578 Petur Runolfsson <peturr02@ru.is>
2580 * include/ext/stdio_sync_filebuf.h: Don't include the whole
2581 <fstream>, only <streambuf> and <cstdio>.
2583 2003-10-04 Paolo Carlini <pcarlini@unitus.it>
2586 * include/bits/fstream.tcc (imbue): In case a codecvt facet
2587 is not available, set _M_codecvt = 0.
2588 * testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
2590 2003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
2593 * libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
2595 2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2597 * include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
2598 * src/locale.cc: Define.
2599 * src/localename.cc: Use it.
2600 * config/locale/generic/time_members.h: Same.
2601 * config/locale/gnu/messages_members.h: Same.
2602 * config/locale/gnu/time_members.h: Same.
2604 2003-10-02 Paolo Carlini <pcarlini@unitus.it>
2607 * include/bits/fstream.tcc (seekoff): Ignore the openmode
2609 * config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
2610 seekpos): Remove the openmode argument.
2611 * config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
2612 seekpos): Remove redundant placeholder for the openmode argument.
2613 * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
2614 * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
2615 * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
2616 * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
2617 * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
2619 2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2621 * src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
2622 (locale::facet::_S_get_c_locale): Same.
2624 2003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2626 * config/linker-map.gnu: Export _S_get_c_locale instead of
2629 2003-10-02 Petur Runolfsson <peturr02@ru.is>
2631 * config/locale/generic/c_locale.cc
2632 (category_names, locale::_S_categories): Const qualify.
2633 * config/locale/gnu/c_locale.cc: Same.
2634 * config/locale/generic/time_members.h (__timepunct::__timepunct):
2635 Copy string contents before assigning to _M_name_timepunct,
2636 qualify strcpy and strlen with std::.
2637 * config/locale/gnu/time_members.h: Same.
2638 * config/locale/gnu/messages_members.h (messages::messages):
2639 Copy string contents before assigning to _M_name_messages,
2640 qualify strcpy and strlen with std::.
2641 * config/os/gnu-linux/ctype_noninline.h
2642 (ctype<char>::classic_table()): Don't call locale::classic().
2643 * include/bits/locale_classes.h
2644 (locale::_S_categories): Const qualify.
2645 (locale::_S_once, locale::_S_initialize_once,
2646 locale::facet::_S_once, locale::facet::_S_initialize_once,
2647 locale::facet::_S_get_c_locale): Declare.
2648 (locale::_S_initialize): Don't define.
2649 (locale::facet::_S_c_locale): Make private.
2650 (locale::facet::_S_c_name): Same, const qualify.
2651 (locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
2652 parameters, add throw() specifier.
2653 * include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
2654 messages::_M_name_messages): Const qualify.
2656 (locale::_S_once, locale::facet::_S_once): Define.
2657 (locale::classic): Move initialization code...
2658 (locale::_S_initialize_once): ...here.
2659 (locale::_S_initialize): Call _S_initialize_once through
2661 (locale::facet::_S_initialize_once): Initialize _S_c_locale.
2662 (locale::facet::_S_get_c_locale): Call _S_initialize_once through
2663 __gthread_once before returning _S_c_locale.
2664 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
2665 Drop unused parameters, add throw() specifier, don't initialize
2666 locale::facet::_S_c_locale and _S_c_name.
2668 * config/locale/generic/messages_members.h:
2669 Replace _S_c_locale with _S_get_c_locale().
2670 * config/locale/gnu/c_locale.cc: Same.
2671 * config/locale/gnu/messages_members.h: Same.
2672 * config/locale/gnu/numeric_members.cc: Same.
2673 * config/locale/gnu/time_members.cc: Same.
2674 * config/os/gnu-linux/ctype_noninline.h: Same.
2675 * include/bits/locale_facets.h: Same.
2676 * include/bits/locale_facets.tcc: Same.
2677 * src/codecvt.cc: Same.
2678 * src/ctype.cc: Same.
2680 2003-10-02 Carlo Wood <carlo@alinoe.com>
2682 * include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
2683 Decode symbols that start with _GLOBAL_[ID]_ differently: the
2684 trailing part ends with a terminating zero and is not necessarily an
2686 * src/demangle.cc (): Same.
2687 * testsuite/demangle/regression/cw-13.cc: Adjust for new output.
2689 2003-10-02 Paolo Carlini <pcarlini@unitus.it>
2691 * testsuite/22_locale/locale/cons/12438.cc: Use
2692 __gnu_test::try_named_locale("").
2694 2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2696 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
2697 (GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
2699 * acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
2700 * crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
2702 * config.h.in, configure: Regenerate.
2703 * include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
2706 2003-10-01 Nathan Myers <ncm@cantrip.org>
2708 * include/bits/locale_facets.tcc (time_put::put): Avoid
2709 expensive *__s++, in favor of *__s, ++__s.
2711 2003-10-01 Paolo Carlini <pcarlini@unitus.it>
2713 * include/bits/locale_facets.tcc (time_put::put): Minor
2714 tweak to the previous commit.
2716 2003-10-01 Paolo Carlini <pcarlini@unitus.it>
2719 * include/bits/locale_facets.tcc (time_put::put): Deal
2720 with the three issues pointed out by the PR.
2721 * testsuite/22_locale/time_put/put/char/12439_1.cc: New.
2722 * testsuite/22_locale/time_put/put/char/12439_3.cc: New.
2723 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
2724 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
2725 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
2727 2003-09-30 Paolo Carlini <pcarlini@unitus.it>
2729 * include/bits/stl_algo.h: Minor cosmetic reformattings.
2731 2003-09-30 Paolo Carlini <pcarlini@unitus.it>
2733 * include/bits/stl_algo.h (search_n): Tweak, to spare the
2736 2003-09-30 Paolo Carlini <pcarlini@unitus.it>
2738 * testsuite/22_locale/locale/cons/12352.cc: Explicitly
2739 qualify exception name.
2741 2003-09-30 Paolo Carlini <pcarlini@unitus.it>
2744 * include/bits/locale_facets.tcc (locale::combine): Don't
2745 leak memory if _M_replace_facet throws.
2746 * testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
2748 * include/bits/locale_classes.h (locale::locale(const locale&,
2749 _Facet*)): Tweak, use consistently _M_remove_reference.
2751 2003-09-30 Paolo Carlini <pcarlini@unitus.it>
2753 PR libstdc++/12352 (cont)
2754 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
2755 Don't leak __cloc; don't leak if any of the _M_init_facet(...)
2757 (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
2758 (locale::_Impl::~_Impl): Don't do anything if !_M_facets,
2759 !_M_caches, !_M_names.
2761 2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2763 * configure.host: Handle Solaris 2.5 micro releases explicitly.
2764 Remove wildcards from Solaris 2.6, 7-9: there were no
2766 Treat Solaris 10 and up like 7-9.
2768 2003-09-29 Paolo Carlini <pcarlini@unitus.it>
2770 * include/bits/stl_algo.h (search_n): Improve the previous
2771 fix as suggested by Martin.
2773 2003-09-29 Paolo Carlini <pcarlini@unitus.it>
2776 * include/bits/istream.tcc (peek): Set eofbit if sgetc
2778 * testsuite/27_io/basic_istream/peek/char/12296.cc:
2781 2003-09-29 Nathan Myers <ncm@cantrip.org>
2782 Paolo Carlini <pcarlini@unitus.it>
2785 * include/bits/stl_algo.h (search_n):
2786 Use iterator_traits<>::difference_type for __n.
2787 * testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
2789 2003-09-29 Paolo Carlini <pcarlini@unitus.it>
2791 * testsuite/22_locale/locale/cons/12352.cc:
2792 Use __attribute__((unused)) for test.
2794 2003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
2796 * testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
2797 "Son" or "So" as abbreviated name for Sunday in de_DE locale.
2798 * testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
2800 2003-09-26 Brad Spencer <spencer@infointeractive.com>
2802 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
2803 Explicitly qualify exceptions.
2804 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
2805 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2806 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2807 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2809 2003-09-25 Paolo Carlini <pcarlini@unitus.it>
2812 * src/localename.cc (locale::_Impl::_Impl(const _Impl&,
2813 size_t)): Don't leak if memory allocations for _M_facets,
2814 _M_caches, and _M_names fail.
2815 (locale::_Impl::_Impl(const char*, size_t)): Ditto.
2816 (locale::_Impl::_M_replace_categories(const _Impl*,
2818 (locale::_Impl::_M_install_facet(const locale::id*,
2819 const facet*)): Ditto.
2820 * include/bits/locale_classes.h (locale::locale(const locale&,
2821 _Facet*)): Don't leak memory.
2822 * testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
2824 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
2825 bool)): Qualify with std:: strcpy, tweak.
2826 * include/bits/locale_classes.h
2827 (locale::_Impl::_M_check_same_name): Qualify strcmp.
2829 2003-09-25 Brad Spencer <spencer@infointeractive.com>
2832 * acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
2834 * aclocal.m4: Regenerate.
2835 * config.h.in: Regenerate.
2836 * configure: Regenerate.
2837 * crossconfig.m4: Add in wchar_t bits for solaris crosses.
2838 * config/io/basic_file_stdio.cc: Guard unistd.h.
2839 * include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
2840 * include/c_std/std_cwchar.h: Same.
2841 * include/c_std/std_cwctype.h: Same.
2843 2003-09-25 Benjamin Kosnik <bkoz@redhat.com>
2846 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
2847 * config/locale/generic/ctype_members.cc: Same.
2848 * testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
2849 * testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
2851 * config/os/generic/ctype_inline.h: Update.
2853 2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
2855 * src/Makefile.am (version_dep): New variable.
2856 (libstdc___la_DEPENDENCIES): Use it to add dependency on
2857 libstdc++-symbol.ver only when using symbol versioning.
2858 * src/Makefile.in: Regenerate.
2860 2003-09-23 Benjamin Kosnik <bkoz@redhat.com>
2862 * include/bits/locale_facets.tcc: Tweak to avoid warnings.
2863 * testsuite/testsuite_hooks.h: Same.
2864 * testsuite/*/*.cc: Same.
2866 2003-09-22 Petur Runolfsson <peturr02@ru.is>
2868 * include/bits/istream.tcc (basic_istream::read,
2869 basic_istream::readsome, basic_istream::putback,
2870 basic_istream::unget, operator>>(basic_istream, CharT)):
2871 Avoid redundant setstate(failbit) calls when sentry::operator bool()
2874 2003-09-22 Carlo Wood <carlo@alinoe.com>
2877 * include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
2878 char const*, int, int)): Remove unused identifier
2879 cv_qualifier for overloaded constructor.
2881 2003-09-18 Benjamin Kosnik <bkoz@redhat.com>
2884 * acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
2885 WARN_FLAGS, remove -Wno-format.
2886 * aclocal.m4: Regenerate.
2887 * configure: Regenerate.
2889 2003-09-18 Petur Runolfsson <peturr02@ru.is>
2891 * config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
2892 * config/io/basic_file_stdio.h: Same.
2893 * include/std/std_fstream.h (__ctype_type): Delete.
2894 * include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
2896 2003-09-17 Benjamin Kosnik <bkoz@redhat.com>
2899 * configure.host (abi_baseline_pair): Error out on solaris2
2900 configurations without a minor version number.
2902 2003-09-13 Phil Edwards <phil@codesourcery.com>
2904 * docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
2905 if man pages are on.
2906 * docs/doxygen/user.cfg.in: And here.
2908 2003-09-10 Daniel Jacobowitz <drow@mvista.com>
2909 Andreas Jaeger <aj@suse.de>
2912 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
2913 abi_check if cross compiling.
2914 * aclocal.m4: Regenerated.
2915 * configure: Regenerated.
2917 2003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
2919 * libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
2920 NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
2921 (__cxa_vec_new3): Likewise.
2923 2003-09-10 Petur Runolfsson <peturr02@ru.is>
2925 * include/bits/fstream.tcc (basic_filebuf::seekoff):
2926 Use codecvt::length to handle variable-width stateless encodings
2928 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
2929 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
2931 2003-09-10 Alan Modra <amodra@bigpond.net.au>
2933 * config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
2936 2003-09-09 Alan Modra <amodra@bigpond.net.au>
2938 * configure: Regenerate.
2940 2003-09-09 David Edelsohn <edelsohn@gnu.org>
2942 * src/ios.cc (ios_base::Init::Init): Remove unnecessary
2943 qualifier from _S_synced_with_stdio.
2945 2003-09-09 Bernardo Innocenti <bernie@develer.com>
2947 * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
2949 2003-09-04 Petur Runolfsson <peturr02@ru.is>
2952 * include/bits/fstream.tcc
2953 (basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
2954 (basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
2955 _M_ext_buf_size, _M_ext_next and _M_ext_end.
2956 (basic_filebuf::underflow): Handle variable-width stateless
2957 encodings (codecvt::encoding() == 0), including UTF-8.
2958 * include/std/std_fstream.h (basic_filebuf):
2959 Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
2960 * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
2961 * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
2962 * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
2963 * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
2964 * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
2965 * testsuite/27_io/objects/wchar_t/12.cc: New test.
2966 * testsuite/27_io/objects/wchar_t/13.cc: New test.
2968 2003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
2970 * docs/html/faq/index.html: Note that a namespace alias can't be
2971 used when specialising templates in extension namespace.
2972 * docs/html/faq/index.txt: Regenerate.
2974 2003-09-03 Petur Runolfsson <peturr02@ru.is>
2977 * include/ext/stdio_sync_filebuf.h
2978 (stdio_sync_filebuf::_M_unget_buf): Declare it.
2979 (stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
2980 (stdio_sync_filebuf::uflow): Store the returned character in
2982 (stdio_sync_filebuf::pbackfail): If argument is eof(), pass
2983 _M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
2984 (stdio_sync_filebuf<char>::xsgetn): Store last read character in
2985 _M_unget_buf, if any, else eof().
2986 (stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
2987 _M_unget_buf, if any, else eof().
2988 * testsuite/27_io/objects/char/12048.cc: Rename to...
2989 * testsuite/27_io/objects/char/12048-1.cc: ...this.
2990 * testsuite/27_io/objects/char/12048-2.cc: New test.
2991 * testsuite/27_io/objects/char/12048-3.cc: New test.
2992 * testsuite/27_io/objects/char/12048-4.cc: New test.
2993 * testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
2994 * testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
2995 * testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
2996 * testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
2997 * testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
2998 * testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
2999 * testsuite/ext/stdio_sync_filebuf_char.cc
3000 (test02, test03, test04, test05): New tests.
3001 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc
3002 (test02, test03, test04, test05): New tests.
3004 2003-09-03 Petur Runolfsson <peturr02@ru.is>
3006 * docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
3007 stringbuf or strstreambuf. Fix typos.
3009 2003-09-02 Phil Edwards <phil@codesourcery.com>
3011 * acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
3013 * config.h.in: Add _GLIBCXX_HOSTED.
3014 * libsupc++/eh_term_handler.cc: Test it here; initialize
3015 __terminate_handler to std::abort if freestanding.
3016 * aclocal.m4, configure: Regenerated.
3017 * docs/html/configopts.html: Document --disable-hosted-libstdcxx.
3019 2003-08-29 Nathan Myers <ncm@cantrip.org>
3022 * include/bits/locale_facets.tcc (__pad): delete dead code.
3024 2003-08-28 Alan Modra <amodra@bigpond.net.au>
3026 * configure.ac: Test $with_cross_host against $build_alias, not $build.
3027 * configure: Regenerate.
3029 2003-08-27 Petur Runolfsson <peturr02@ru.is>
3031 * testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
3032 * testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
3034 2003-08-27 Phil Edwards <pme@gcc.gnu.org>
3036 * Makefile.am: Remove trailing whitespace. Remove needless
3037 "foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
3038 * include/Makefile.am: Likewise.
3039 * libmath/Makefile.am: Likewise.
3040 * libsupc++/Makefile.am: Likewise.
3041 * po/Makefile.am: Likewise.
3042 * src/Makefile.am: Likewise.
3043 * testsuite/Makefile.am: Likewise.
3045 * Makefile.in, include/Makefile.in, libmath/Makefile.in,
3046 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
3047 testsuite/Makefile.in: Regenerated.
3049 2003-08-27 Phil Edwards <pme@gcc.gnu.org>
3051 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
3053 * aclocal.m4, configure: Regenerate.
3055 2003-08-27 Daniel Jacobowitz <drow@mvista.com>
3057 * acinclude.m4: Include no-executables.m4.
3058 * configure.ac: Uncomment GCC_NO_EXECUTABLES.
3059 * aclocal.m4: Regenerated.
3060 * configure: Regenerated.
3062 2003-08-27 Daniel Jacobowitz <drow@mvista.com>
3064 * acinclude.m4: Don't call AC_ISC_POSIX.
3065 * aclocal.m4: Regenerated.
3066 * configure: Regenerated.
3068 2003-08-27 Phil Edwards <pme@gcc.gnu.org>
3070 * acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
3071 AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
3072 (GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
3073 used elsewhere in this file.
3074 (GLIBCXX_EVALUATE_CONDITIONALS): New macro...
3075 * configure.ac: ...called here to expand all conditionals.
3076 * Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
3077 * include/Makefile.am: Remove redundant gxx_include_dir assignment.
3078 (install-freestanding-headers): New target, a subset of
3079 install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
3081 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
3082 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
3083 src/Makefile.in, testsuite/Makefile.in: Regenerated.
3085 2003-08-26 Phil Edwards <pme@gcc.gnu.org>
3087 * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
3088 pathnames from generated tag file.
3090 2003-08-26 Phil Edwards <pme@gcc.gnu.org>
3092 * Makefile.am: Add comment.
3093 * acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
3095 * configure.ac: Use them both here, instead of hardcoded lists.
3097 * fragment.am: Add STAMP varaible.
3098 * include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
3100 (stamp-*): Move file creation rule outside of 'if' branches to
3101 ensure the stamp-* files are actually updated. Use $(STAMP).
3102 * src/Makefile.am: Remove now-nonexistant variable.
3103 * libsupc++/Makefile.am: Likewise. Snap the assignment chain
3105 * po/Makefile.am: Include same fragment as all the others.
3107 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
3108 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
3110 2003-08-26 Loren J. Rittle <ljrittle@acm.org>
3112 * testsuite/data/cin_unget-1.txt: New.
3113 * testsuite/27_io/objects/char/12048.cc: New.
3115 2003-08-25 Zack Weinberg <zack@codesourcery.com>
3117 * config/os/hpux/os_defines.h: Unconditionally define
3118 _GLIBCXX_GTHREAD_USE_WEAK to 0.
3120 2003-08-19 Geoffrey Keating <geoffk@apple.com>
3122 * crossconfig.m4 (*-darwin*): Add a large and boring stanza for
3123 crosses to Darwin targets.
3124 * configure: Regenerate.
3126 2003-08-19 Petur Runolfsson <peturr02@ru.is>
3128 * include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
3130 2003-08-17 Phil Edwards <pme@gcc.gnu.org>
3132 * configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
3133 in the patch from 3 minutes ago. Boy, is my face red.
3134 * configure: At least I remembered to regenerate this.
3136 2003-08-17 Phil Edwards <pme@gcc.gnu.org>
3138 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
3139 and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
3140 things from the top level.
3141 * configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
3142 Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
3143 (currently unused). Strip the fake-VPATH shell fragment from
3144 automake-generated rules, if present.
3145 * linkage.m4: Add comment.
3147 * fragment.am: New file, containing factored-out common settings.
3148 (AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
3149 * Makefile.am: Include fragment.am. Remove common variables.
3150 * include/Makefile.am: Likewise.
3151 * libmath/Makefile.am: Likewise.
3152 * libsupc++/Makefile.am: Likewise.
3153 * po/Makefile.am: Likewise. Print rules during check.
3154 * src/Makefile.am: Likewise.
3155 * testsuite/Makefile.am: Likewise.
3157 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
3158 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
3159 src/Makefile.in, testsuite/Makefile.in: Regenerate.
3161 2003-08-11 John Levon <levon@movementarian.org>
3163 * docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
3164 remaining places for the name change from GLIBCPP_FORCE_NEW
3165 to GLIBCXX_FORCE_NEW
3167 2003-08-11 Benjamin Kosnik <bkoz@redhat.com>
3169 * include/bits/basic_ios.h: Remove *_iter typedefs, change num*
3171 * include/bits/basic_ios.tcc: Same.
3172 * include/bits/istream.tcc: Same.
3173 * include/bits/locale_facets.h: Same.
3174 * include/bits/ostream.tcc: Same.
3175 * include/std/std_istream.h: Same.
3176 * include/std/std_ostream.h: Same.
3177 * testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
3179 * include/ext/rope: Remove build warning.
3181 2003-08-11 Andreas Jaeger <aj@suse.de>
3183 * include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
3185 * include/Makefile.in: Regenerated.
3187 2003-08-11 Phil Edwards <pme@gcc.gnu.org>
3189 * acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
3190 when calling AC_PROG_CC.
3191 * aclocal.m4, configure: Regenerate.
3193 2003-08-11 Phil Edwards <pme@gcc.gnu.org>
3195 * acinclude.m4: Properly quote variable which will be expanded
3196 inside makefiles. Use CXX instead of CC to extract compiler info.
3197 * configure.ac (AC_INIT): Use the new 4-arg form to finally get the
3198 correct form in PACKAGE.
3199 * aclocal.m4, configure: Regenerate.
3201 2003-08-08 Benjamin Kosnik <bkoz@redhat.com>
3203 * testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
3204 (check-abi-verbose): Same.
3205 * testsuite/testsuite_performance.h (report_performance): Same.
3207 2003-08-08 Loren J. Rittle <ljrittle@acm.org>
3209 * testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
3211 2003-08-07 Doug Gregor <dgregor@apple.com>
3213 * include/bits/char_traits.h (char_traits::not_eof): Match operand
3216 2003-08-07 Bernardo Innocenti <bernie@develer.com>
3219 * libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
3220 Replace variants with new BSET-based version.
3222 2003-08-07 Carlo Wood <carlo@alinoe.com>
3224 * include/bits/demangle.h: Do not use cctype functions that depend
3227 2003-08-05 Phil Edwards <pme@gcc.gnu.org>
3229 * configure.in: Rename...
3230 * configure.ac: ...to this.
3231 * docs/html/17_intro/porting.texi: Update name.
3233 * docs/html/17_intro/porting.html: Regenerate.
3234 * config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
3235 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
3236 testsuite/Makefile.in: Regenerate (picks up new dependancy).
3238 2003-08-05 Phil Edwards <pme@gcc.gnu.org>
3240 * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
3241 pipe, open the window to let out the fumes, redo the option-handling
3242 logic to properly execute the detection test.
3243 * aclocal.m4, configure: Regenerate.
3245 2003-08-04 Phil Edwards <pme@gcc.gnu.org>
3247 Convert to new autotools.
3248 * acconfig.h: Update with correct names.
3249 * configure.host (ATOMICITYH): Rename to atomicity_include_dir.
3250 (qnx6.[12]*): 'q' comes before 's', not after 'w'.
3251 * configure.in: Update. Split hardcoded cross-configury settings
3253 * crossconfig.m4: ...here. New file. Contents untouched.
3254 * acinclude.m4: Reorganize and rewrite as needed. Split large
3256 * linkage.m4: ...here. New file. Math and stdlib linkage tests.
3258 * scripts/testsuite_flags.in: Update.
3260 * Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
3261 variables (already generated by automake).
3262 * include/Makefile.am: Ditto.
3263 * libmath/Makefile.am: Ditto.
3264 * libsupc++/Makefile.am: Ditto.
3265 * po/Makefile.am: Ditto.
3266 * src/Makefile.am: Ditto.
3268 * aclocal.m4: Regenerate using new versions.
3269 * config.h.in: Ditto.
3271 * Makefile.in: Ditto.
3272 * include/Makefile.in: Ditto.
3273 * libmath/Makefile.in: Ditto.
3274 * libsupc++/Makefile.in: Ditto.
3275 * po/Makefile.in: Ditto.
3276 * src/Makefile.in: Ditto.
3277 * testsuite/Makefile.in: Ditto.
3279 2003-08-04 Phil Edwards <pme@gcc.gnu.org>
3281 * po/libstdc++.pot: Re-extract/regenerate.
3283 2003-08-04 Phil Edwards <pme@gcc.gnu.org>
3285 * testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
3286 Remove unneeded variable assignments. Leave them for automake.
3287 * testsuite/lib/libstdc++-v3.exp: Rename...
3288 * testsuite/lib/libstdc++.exp: ...to this. Adjust function names
3290 * testsuite/libstdc++-v3.dg/dg.exp: Rename...
3291 * testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
3294 2003-08-04 Phil Edwards <pme@gcc.gnu.org>
3296 * docs/doxygen/guide.html: run_doxygen uses bash.
3297 * docs/doxygen/mainpage.html: We'll be shipping tag files.
3298 * docs/doxygen/run_doxygen: Tweaks and improvements.
3299 * docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
3300 * docs/html/install.html: Update autoconf/automake requirements.
3301 * docs/html/test.html: Add section describing DejaGNU support.
3302 * docs/html/17_intro/confdeps.dot: New file, generates...
3303 * docs/html/17_intro/confdeps.png: ...this new file.
3304 * docs/html/Makefile: Generated here.
3305 * docs/html/17_intro/configury.html: New file.
3307 2003-07-31 Phil Edwards <pme@gcc.gnu.org>
3309 * testsuite/lib/libstdc++-v3-dg.exp: Rename...
3310 * testsuite/lib/libstdc++-v3.exp: ...to this.
3311 * testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
3313 2003-07-31 Doug Gregor <dgregor@apple.com>
3315 Add user specialization tests.
3316 * testsuite/23_containers/deque/1.cc: New.
3317 * testsuite/23_containers/list/1.cc: New.
3318 * testsuite/23_containers/map/1.cc: New.
3319 * testsuite/23_containers/multimap/1.cc: New.
3320 * testsuite/23_containers/multiset/1.cc: New.
3321 * testsuite/23_containers/set/1.cc: New.
3322 * testsuite/23_containers/vector/1.cc: New.
3324 2003-07-31 Benjamin Kosnik <bkoz@redhat.com>
3326 Reshuffle 23_containers testsuite.
3327 * 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
3328 bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
3329 list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
3330 map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
3331 set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
3332 vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
3333 vector_resize.cc: Split into...
3334 * 23_containers/bitset/cons/1.cc: New.
3335 * 23_containers/bitset/cons/6282.cc: New.
3336 * 23_containers/bitset/count/6124.cc: New.
3337 * 23_containers/bitset/operations/1.cc: New.
3338 * 23_containers/bitset/operations/2.cc: New.
3339 * 23_containers/bitset/test/1.cc: New.
3340 * 23_containers/bitset/to_ulong/1.cc: New.
3341 * 23_containers/deque/cons/1.cc: New.
3342 * 23_containers/deque/cons/2.cc: New.
3343 * 23_containers/deque/operators/1.cc: New.
3344 * 23_containers/list/capacity/1.cc: New.
3345 * 23_containers/list/cons/1.cc: New.
3346 * 23_containers/list/cons/2.cc: New.
3347 * 23_containers/list/cons/3.cc: New.
3348 * 23_containers/list/cons/4.cc: New.
3349 * 23_containers/list/cons/5.cc: New.
3350 * 23_containers/list/cons/6.cc: New.
3351 * 23_containers/list/cons/7.cc: New.
3352 * 23_containers/list/cons/8.cc: New.
3353 * 23_containers/list/cons/9.cc: New.
3354 * 23_containers/list/modifiers/1.cc: New.
3355 * 23_containers/list/modifiers/2.cc: New.
3356 * 23_containers/list/modifiers/3.cc: New.
3357 * 23_containers/list/operators/1.cc: New.
3358 * 23_containers/list/operators/2.cc: New.
3359 * 23_containers/list/operators/3.cc: New.
3360 * 23_containers/list/operators/4.cc: New.
3361 * 23_containers/map/insert/1.cc: New.
3362 * 23_containers/map/operators/1.cc: New.
3363 * 23_containers/map/operators/1_neg.cc: New.
3364 * 23_containers/multiset/insert/1.cc: New.
3365 * 23_containers/priority_queue/members/7161.cc: New.
3366 * 23_containers/queue/members/7157.cc: New.
3367 * 23_containers/set/operators/1_neg.cc: New.
3368 * 23_containers/stack/members/7158.cc: New.
3369 * 23_containers/vector/bool/1.cc: New.
3370 * 23_containers/vector/bool/6886.cc: New.
3371 * 23_containers/vector/capacity/1.cc: New.
3372 * 23_containers/vector/capacity/2.cc: New.
3373 * 23_containers/vector/capacity/8230.cc: New.
3374 * 23_containers/vector/cons/1.cc: New.
3375 * 23_containers/vector/cons/2.cc: New.
3376 * 23_containers/vector/cons/3.cc: New.
3377 * 23_containers/vector/cons/4.cc: New.
3378 * 23_containers/vector/cons/6513.cc: New.
3379 * 23_containers/vector/element_access/1.cc: New.
3380 * 23_containers/vector/modifiers/1.cc: New.
3381 * 23_containers/vector/modifiers/2.cc: New.
3382 * 23_containers/vector/resize/1.cc: New.
3384 2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3386 * testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
3388 * testsuite/thread/pthread2.cc: Likewise.
3389 * testsuite/thread/pthread3.cc: Likewise.
3390 * testsuite/thread/pthread4.cc: Likewise.
3391 * testsuite/thread/pthread5.cc: Likewise.
3392 * testsuite/thread/pthread6.cc: Likewise.
3393 * testsuite/thread/pthread7-rope.cc: Likewise.
3395 2003-07-30 Phil Edwards <pme@gcc.gnu.org>
3397 * include/bits/c++config: Partial reversion (comment placement) of
3400 2003-07-30 Benjamin Kosnik <bkoz@redhat.com>
3402 * include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
3403 (_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
3404 (_GLIBCXX_AT_AT): Remove.
3405 (__USE_MALLOC): Remove.
3406 * include/std/std_fstream.h: Modify.
3407 * include/bits/basic_ios.h: Same.
3408 * include/bits/valarray_array.h: Same.
3409 * include/c_std/std_cmath.h: Same.
3410 * include/c_std/cmath.tcc: Same.
3411 * include/std/std_vector.h: Same.
3412 * include/std/std_string.h: Same.
3413 * include/std/std_stack.h: Same.
3414 * include/std/std_queue.h: Same.
3415 * include/std/std_list.h: Same.
3416 * include/std/std_deque.h: Same.
3417 * include/std/std_streambuf.h: Same.
3418 * include/std/std_sstream.h: Same.
3419 * include/std/std_ostream.h: Same.
3420 * include/std/std_istream.h: Same.
3421 * include/bits/valarray_array.tcc: Same, format.
3423 * include/c/std_cctype.h: Fix include guards.
3424 * include/c/std_cerrno.h: Same.
3425 * include/c/std_cfloat.h: Same.
3426 * include/c/std_climits.h: Same.
3427 * include/c/std_clocale.h: Same.
3428 * include/c/std_cmath.h: Same.
3429 * include/c/std_csetjmp.h: Same.
3430 * include/c/std_csignal.h: Same.
3431 * include/c/std_cstdarg.h: Same.
3432 * include/c/std_cstddef.h: Same.
3433 * include/c/std_cstdio.h: Same.
3434 * include/c/std_cstdlib.h: Same.
3435 * include/c/std_cstring.h: Same.
3436 * include/c/std_ctime.h: Same.
3437 * include/c/std_cwchar.h: Same.
3438 * include/c/std_cwctype.h: Same.
3439 * include/c_std/cmath.tcc: Same.
3440 * include/c_std/std_cmath.h: Same.
3442 2003-07-30 Gawain Bolton <gp.bolton@computer.org>
3445 * include/bits/stl_tree.h: Replace C-style casts with C++-style
3446 casts. Changes to avoid casting away constness. Eliminate
3447 _Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
3448 initialization lists. Move out implementation of __black_count()
3450 * src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
3451 Rename_Rb_tree_base_iterator::_M_increment() to
3452 _Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
3454 * config/linker-map.gnu: Add and change symbols here.
3456 2003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
3458 * docs/html/22_locale/howto.html: Use locale::classic() instead
3461 2003-07-28 Benjamin Kosnik <bkoz@redhat.com>
3463 * testsuite/testsuite_hooks.h: Remove list include.
3464 (func_callback): Define as unique type, not std::list.
3465 Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
3466 * testsuite/libstdc++-v3.dg/dg.exp: Same.
3467 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
3468 * testsuite/23_containers/bitset_ctor.cc:
3469 * testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
3470 * testsuite/18_support/numeric_limits.cc: Same.
3471 * testsuite/21_strings/basic_string/append/char/1.cc: Same.
3472 * testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
3473 * testsuite/21_strings/basic_string/compare/char/1.cc: Same.
3474 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
3475 * testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
3476 * testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
3477 * testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
3478 * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
3479 * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
3480 * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
3481 * testsuite/21_strings/basic_string/find/char/1.cc: Same.
3482 * testsuite/21_strings/basic_string/find/char/2.cc: Same.
3483 * testsuite/21_strings/basic_string/find/char/3.cc: Same.
3484 * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
3485 * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
3486 * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
3487 * testsuite/21_strings/basic_string/insert/char/1.cc: Same.
3488 * testsuite/21_strings/basic_string/insert/char/2.cc: Same.
3489 * testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
3490 * testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
3491 * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
3492 * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
3493 * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
3494 * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
3495 * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
3496 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
3497 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
3498 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
3499 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
3500 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
3501 * testsuite/21_strings/basic_string/operators/char/1.cc: Same.
3502 * testsuite/21_strings/basic_string/operators/char/2.cc: Same.
3503 * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
3504 * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
3505 * testsuite/21_strings/basic_string/replace/char/1.cc: Same.
3506 * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
3507 * testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
3508 * testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
3509 * testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
3510 * testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
3511 * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
3512 * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
3513 * testsuite/21_strings/basic_string/substr/char/1.cc: Same.
3514 * testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
3515 * testsuite/23_containers/bitset_ctor.cc: Same.
3516 * testsuite/23_containers/bitset_shift.cc: Same.
3517 * testsuite/23_containers/vector_ctor.cc: Same.
3518 * testsuite/23_containers/vector_element_access.cc: Same.
3519 * testsuite/24_iterators/istreambuf_iterator.cc: Same.
3520 * testsuite/24_iterators/iterator.cc: Same.
3521 * testsuite/24_iterators/ostreambuf_iterator.cc: Same.
3522 * testsuite/25_algorithms/lower_bound.cc: Same.
3523 * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
3524 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
3525 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
3526 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
3527 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
3528 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
3529 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
3530 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
3531 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
3532 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
3533 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3536 2003-07-28 Phil Edwards <pme@gcc.gnu.org>
3538 * docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
3539 docs/html/test.html, docs/html/17_intro/headers_cc.txt,
3540 docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
3541 GLIBCPP to GLIBCXX (and explain as needed).
3543 2003-07-28 Phil Edwards <pme@gcc.gnu.org>
3547 2003-07-28 Phil Edwards <pme@gcc.gnu.org>
3549 * testsuite/22_locale/messages/members/char/1.cc,
3550 testsuite/22_locale/messages/members/char/2.cc,
3551 testsuite/22_locale/messages/members/char/3.cc,
3552 testsuite/22_locale/messages_byname/1.cc: Update comment regarding
3553 the origin of LOCALEDIR.
3554 * testsuite/lib/libstdc++-v3.exp: New file.
3556 2003-07-25 Benjamin Kosnik <bkoz@redhat.com>
3558 * include/bits/char_traits.h: Update copyright, tweak.
3559 * testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
3562 2003-07-24 Matt Austern <austern@apple.com>
3564 * /include/bits/char_traits.h (class char_traits): Put all the
3565 real work into the new class template __gnu_cxx::char_traits.
3566 Gave generic definitions for member functions. Types are taken
3567 from the new class template __gnu_cxx::_Char_types.
3568 * testsuite/21_strings/char_traits/requirements/short/1.cc: New
3569 file. Test of std::char_traits<short>, which serves as a test of
3570 the char_traits primary template.
3572 2003-07-24 Benjamin Kosnik <bkoz@redhat.com>
3574 * testsuite/*: Change __gnu_cxx_test to __gnu_test.
3576 2003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
3578 * testsuite/23_containers/map_operators.cc: Conform to
3579 container requirement as value must be Assignable.
3581 2003-07-23 Alexandre Oliva <aoliva@redhat.com>
3583 * acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
3584 tests not only generation of pch files, but also their use.
3585 * aclocal.m4, configure: Rebuilt.
3587 2003-07-23 Steve Ellcey <sje@cup.hp.com>
3589 * config/cpu/hppa/atomicity.h: Change
3590 _GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
3591 to match misc-inst.cc
3593 2003-07-23 Steve Ellcey <sje@cup.hp.com>
3595 * include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
3596 * include/c_std/std_cctype.h: Ditto.
3597 * include/c_std/std_cerrno.h: Ditto.
3598 * include/c_std/std_cfloat.h: Ditto.
3599 * include/c_std/std_climits.h: Ditto.
3600 * include/c_std/std_clocale.h: Ditto.
3601 * include/c_std/std_cmath.h: Ditto.
3602 * include/c_std/std_csetjmp.h: Ditto.
3603 * include/c_std/std_csignal.h: Ditto.
3604 * include/c_std/std_cstdarg.h: Ditto.
3605 * include/c_std/std_cstddef.h: Ditto.
3606 * include/c_std/std_cstdio.h: Ditto.
3607 * include/c_std/std_cstdlib.h: Ditto.
3608 * include/c_std/std_cstring.h: Ditto.
3609 * include/c_std/std_ctime.h: Ditto.
3610 * include/c_std/std_cwchar.h: Ditto.
3611 * include/c_std/std_cwctype.h: Ditto.
3612 * include/std/std_algorithm.h: Ditto.
3613 * include/std/std_bitset.h: Ditto.
3614 * include/std/std_complex.h: Ditto.
3615 * include/std/std_deque.h: Ditto.
3616 * include/std/std_fstream.h: Ditto.
3617 * include/std/std_functional.h: Ditto.
3618 * include/std/std_iomanip.h: Ditto.
3619 * include/std/std_ios.h: Ditto.
3620 * include/std/std_iosfwd.h: Ditto.
3621 * include/std/std_iostream.h: Ditto.
3622 * include/std/std_istream.h: Ditto.
3623 * include/std/std_iterator.h: Ditto.
3624 * include/std/std_limits.h: Ditto.
3625 * include/std/std_list.h: Ditto.
3626 * include/std/std_locale.h: Ditto.
3627 * include/std/std_map.h: Ditto.
3628 * include/std/std_memory.h: Ditto.
3629 * include/std/std_numeric.h: Ditto.
3630 * include/std/std_ostream.h: Ditto.
3631 * include/std/std_queue.h: Ditto.
3632 * include/std/std_set.h: Ditto.
3633 * include/std/std_sstream.h: Ditto.
3634 * include/std/std_stack.h: Ditto.
3635 * include/std/std_stdexcept.h: Ditto.
3636 * include/std/std_streambuf.h: Ditto.
3637 * include/std/std_string.h: Ditto.
3638 * include/std/std_utility.h: Ditto.
3639 * include/std/std_valarray.h: Ditto.
3640 * include/std/std_vector.h: Ditto.
3642 2003-07-22 Doug Gregor <dgregor@apple.com>
3644 * include/bits/basic_string.h (basic_string::insert): Deprecate
3647 2003-07-21 Benjamin Kosnik <bkoz@redhat.com>
3649 * scripts/testsuite_flags.in (--build-includes): Remove extraneous
3651 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
3652 (test03): Include typeinfo for bad_cast.
3653 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
3654 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
3655 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
3657 2003-07-21 Doug Gregor <dgregor@apple.com>
3659 * include/bits/boost_concept_check.h:
3660 (_EqualityComparableConcept::__constraints): Remove != from the
3661 list of constraints; it is not listed in Table 28 of the C++98
3664 2003-07-18 Andreas Jaeger <aj@suse.de>
3666 * config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
3667 * config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
3668 * config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
3669 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
3671 2003-07-17 Benjamin Kosnik <bkoz@redhat.com>
3673 * config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
3674 * config/locale/generic/messages_members.h: Tweaks.
3675 * config/locale/generic/monetary_members.cc
3676 (moneypunct::_M_initialize_moneypunct): Use cache.
3677 (moneypunct::~moneypunct): Delete cache.
3678 * config/locale/generic/time_members.cc:
3679 (__timepunct::_M_initialize_timepunct): Use cache.
3680 * config/locale/generic/time_members.h:
3681 (__timepunct::~__timepunct): Delete cache.
3682 (__timepunct::__timepunct): Set cache.
3683 * config/locale/gnu/messages_members.h: Tweaks.
3684 * config/locale/gnu/monetary_members.cc:
3685 (moneypunct::_M_initialize_moneypunct): Use cache.
3686 (moneypunct::~moneypunct): Delete cache.
3687 * config/locale/gnu/time_members.cc:
3688 (__timepunct::_M_initialize_timepunct): Use cache.
3689 * config/locale/gnu/time_members.h:
3690 (__timepunct::~__timepunct): Delete cache.
3691 (__timepunct::__timepunct): Set cache.
3692 * include/bits/locale_facets.h (__timepunct_cache): New.
3693 (__moneypunct_cache): New.
3694 * include/bits/locale_facets.tcc: Tweak.
3695 * src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
3696 * src/locale-inst.cc: Instantiate caches.
3697 * src/globals.cc: Add "C" caches.
3698 * src/localename.cc: Use external "C" caches.
3700 2003-07-17 Phil Edwards <pme@gcc.gnu.org>
3702 * docs/doxygen/guide.html: Fix typo.
3704 2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
3706 * include/ext/pod_char_traits.h: Add state template argument.
3708 2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
3710 * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
3711 (num_get::_M_convert_int): To _M_insert_int.
3712 (num_get::_M_convert_float): To _M_insert_float.
3713 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
3714 Use caches for ctype, num_get.
3715 (num_get::_M_extract_int): Same.
3716 (num_get::get(bool)): Same.
3717 (__verify_grouping): Use size_t.
3718 * src/locale-inst.cc: Update.
3719 * src/locale.cc: Adjust _S_atoms_in.
3721 2003-07-16 Phil Edwards <pme@gcc.gnu.org>
3723 * docs/doxygen/mainpage.html: Move building/writing instructions...
3724 * docs/doxygen/guide.html: ...to here. New file.
3726 2003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
3728 * docs/html/ext/howto.html: Update URL for SGI STL docs.
3729 * docs/html/faq/index.html: Same.
3730 * docs/html/faq/index.txt: Regenerate.
3732 2003-07-16 Paolo Carlini <pcarlini@unitus.it>
3735 * include/bits/locale_facets.tcc (money_get::do_get):
3736 Strip only _leading_ zeros.
3737 * testsuite/22_locale/money_get/get/char/11528.cc: Add.
3738 * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
3740 2003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3742 * include/ext/hash_map (class hash_multimap): Remove extra
3743 semicolons from __glibcxx_class_requires3 entries.
3744 * include/ext/hash_set (class hash_set): Ditto.
3745 (class hash_multiset): Ditto.
3747 2003-07-15 Petur Runolfsson <peturr02@ru.is>
3749 * include/bits/char_traits.h (char_traits<wchar_t>::move):
3750 Change last parameter from int_type to size_t.
3752 2003-07-15 Jerry Quinn <jlquinn@optonline.net>
3754 * include/bits/stl_algo.h (includes, set_union, set_intersection,
3755 set_difference, set_symmetric_difference, max_element, min_element,
3756 next_permutation, prev_permutation, find_first_of, find_end):
3758 * include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
3759 restrictions in docs.
3760 * include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
3762 * docs/doxygen/doxygroups.cc (setoperations): New group.
3764 2003-07-15 Jerry Quinn <jlquinn@optonline.net>
3766 * include/bits/basic_string.h: Document public functions.
3767 * docs/doxygen/TODO: Update c21 todo.
3769 2003-07-15 Jerry Quinn <jlquinn@optonline.net>
3771 * include/bits/stl_list.h: Document more functions.
3772 * docs/doxygen/TODO: Update c23 todo.
3774 2003-07-14 Paolo Carlini <pcarlini@unitus.it>
3776 * config/locale/gnu/c_locale.h (__convert_from_v): One more
3779 2003-07-14 Paolo Carlini <pcarlini@unitus.it>
3781 * include/bits/stl_tempbuf.h: Qualify free with std::.
3782 * src/locale.cc: Include <cstdlib>, qualify getenv.
3784 2003-07-14 Paolo Carlini <pcarlini@unitus.it>
3786 * config/locale/gnu/c_locale.h (__convert_from_v): Include
3787 <cstdio>. Qualify names.
3788 * config/locale/generic/c_locale.h (__convert_from_v): Ditto.
3790 2003-07-14 Paolo Carlini <pcarlini@unitus.it>
3791 Nathan C. Myers <ncm-nospam@cantrip.org>
3794 * include/std/std_fstream.h (xsputn): Declare only.
3795 * include/bits/fstream.tcc (xsputn): Define, optimize for the
3796 always_noconv() case: when __n is sufficiently large flush
3797 the buffer and issue a direct write, if possible combining the
3798 two with writev in __basic_file<>::xsputn_2.
3799 * config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
3801 * config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
3803 * acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
3804 the availability of writev in <sys/uio.h>.
3805 * configure.in: Call here.
3806 * acconfig.h: Add undef for the corresponding symbol.
3807 * aclocal.m4: Regenerate.
3808 * configure: Regenerate.
3809 * config.h.in: Regenerate.
3810 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
3812 * include/std/std_fstream.h (sync): Constify a variable.
3814 2003-07-14 Benjamin Kosnik <bkoz@redhat.com>
3816 * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
3817 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
3819 2003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
3821 * config/locale/gnu/c_locale.h (__convert_from_v): Include
3822 <cstring> and <cstdlib>. Qualify names.
3824 2003-07-13 Mark Mitchell <mark@codesourcery.com>
3826 * config/locale/generic/c_locale.h: Include <cstdlib> and
3828 * include/bits/boost_concept_check.h: Add this-> to unqualified
3830 * include/bits/deque.tcc: Likewise.
3831 * include/bits/locale_facets.h : Likewise.
3832 * include/bits/ostream.tcc: Likewise.
3833 * include/bits/stl_algo.h: Likewise.
3834 * include/bits/stl_bvector.h: Likewise.
3835 * include/bits/stl_deque.h: Likewise.
3836 * include/bits/stl_list.h: Likewise.
3837 * include/bits/stl_tree.h: Likewise.
3838 * include/bits/stl_vector.h: Likewise.
3839 * include/bits/vector.tcc: Likewise.
3840 * include/ext/rope: Likewise.
3841 * include/ext/ropeimpl.h: Likewise.
3842 * include/ext/stdio_filebuf.h: Likewise.
3844 2003-07-11 Jerry Quinn <jlquinn@optonline.net>
3846 * include/bits/basic_ios.h (copyfmt): Document.
3847 * include/bits/ios_base.h (event, event_callback, register_callback,
3848 xalloc, iword, pword): Document.
3849 (imbue, ~ios_base): Update docs on callbacks.
3851 2003-07-11 Phil Edwards <pme@gcc.gnu.org>
3853 * acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
3854 warning messages if the environment cannot support symbol versioning.
3855 (port_specific_symbol_file): It's plural, add an 's' on the end.
3856 * configure.host: Likewise.
3857 * src/Makefile.am: Likewise.
3858 * config/linker-map.gnu: Remove one semicolon, heh.
3859 * scripts/extract_symvers: Don't assume useful 'export' syntax.
3860 Set LANG as well as LC_ALL for possibly-broken sort(1)s.
3861 * aclocal.m4, configure, src/Makefile.in: Regenerated.
3863 2003-07-09 Benjamin Kosnik <bkoz@redhat.com>
3865 * include/bits/locale_facets.tcc: Use function object for
3866 __use_cache instead of template function. Partially specialize for
3868 * include/bits/locale_classes.h: Update friend declaration for
3870 (_M_install_cache): No throw exception specs.
3871 * src/locale.cc: Remove __use_cache specializations.
3872 * include/ext/pod_char_traits.h (length): Tweak.
3873 * include/bits/locale_facets.h (__numpunct_cache): Remove
3875 * testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
3877 * testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
3878 * testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
3879 * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
3880 * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
3881 * testsuite/22_locale/numpunct/members/pod/1.cc: New.
3882 * testsuite/22_locale/numpunct/members/pod/2.cc: New.
3884 2003-07-09 Jerry Quinn <jlquinn@optonline.net>
3886 * src/ios.cc (_M_grow_words): Fix spelling.
3888 2003-07-09 Gawain Bolton <gp.bolton@computer.org>
3890 * include/bits/stl_tree.h: Move larger member functions in
3891 _Rb_tree_base_iterator and _Rb_tree_node to...
3892 * src/stl_tree.cc: Here.
3893 * src/Makefile.in: Add stl_tree.cc.
3894 * src/Makefile.in: Regenerated.
3895 * config/linker-map.gnu: Add symbols here.
3897 2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3899 * testsuite/ext/pod_char_traits.cc: New.
3900 * include/ext/pod_char_traits.h: New.
3901 * include/Makefile.am (ext_headers): Add pod_char_traits.h.
3902 * include/Makefile.in: Regenerate.
3903 * docs/html/21_strings/howto.html: Update.
3905 2003-07-08 Gawain Bolton <gp.bolton@computer.org>
3907 * testsuite/performance/list_create_fill_sort.cc: New.
3909 2003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3911 * config/locale/generic/numeric_members.cc: Correct type info.
3912 * config/locale/gnu/numeric_members.cc: Same.
3913 * include/bits/locale_facets.h: Same.
3915 * include/bits/char_traits.h: Correct spacing.
3917 * src/locale.cc: Wrap to 80 col.
3919 2003-07-07 Paolo Carlini <pcarlini@unitus.it>
3921 * include/std/std_complex.h: Partially revert last
3922 changes: cmath functions must not be qualified.
3924 2003-07-06 Phil Edwards <pme@gcc.gnu.org>
3926 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
3927 2.11 with globbing backport fix.
3928 * aclocal.m4, configure: Regenerated.
3930 2003-07-06 Paolo Carlini <pcarlini@unitus.it>
3932 * include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
3933 if output is at all possible (!_M_reading), cannot be active.
3935 * include/std/std_fstream.h: Tweak comments to doxygen style.
3937 2003-07-06 Paolo Carlini <pcarlini@unitus.it>
3939 * include/bits/locale_classes.h: Fully qualify standard
3940 functions with std::, thus avoiding Koenig lookup.
3941 * include/bits/locale_facets.tcc: Likewise.
3942 * src/locale.cc: Likewise.
3943 * src/localename.cc: Likewise.
3945 2003-07-06 Phil Edwards <pme@gcc.gnu.org>
3947 * include/bits/allocator_traits.h: Fix doxygen markup.
3948 * include/ext/mt_allocator.h: Likewise.
3950 2003-07-06 Phil Edwards <pme@gcc.gnu.org>
3952 * testsuite/testsuite_hooks.h: Guard against a missing unlink().
3954 2003-07-05 Phil Edwards <pme@gcc.gnu.org>
3956 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
3957 requirement. Add port_specific_symbol_file variable.
3958 * configure.host: Add docs for port_specific_symbol_file.
3959 Clean up try_cpu block for x86.
3960 * config/linker-map.gnu: No more "last symbol can't have a
3961 semicolon" kaka. Add hook for port-specific symbols.
3962 * src/Makefile.am: Remove trailing whitespace.
3963 (libstdc++-symbol.ver): Detect the presence of port-specific
3964 symbols, and add them accordingly.
3966 * docs/html/17_intro/porting.texi: Bring up to date.
3968 * src/Makefile.in, aclocal.m4, configure,
3969 docs/html/17_intro/porting.html: Regenerated.
3971 2003-07-05 Phil Edwards <pme@gcc.gnu.org>
3973 * scripts/create_testsuite_files: New file.
3974 * testsuite/Makefile.am (all-local, check-performance): Use it.
3975 * testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
3976 * testsuite/Makefile.in: Regenerated.
3978 * testsuite/performance/filebuf_sputc.cc: Remove the temporary
3980 * testsuite/performance/fstream_seek_write.cc: Likewise.
3981 * testsuite/performance/ofstream_insert_float.cc: Likewise.
3982 * testsuite/performance/ofstream_insert_int.cc: Likewise.
3983 * testsuite/abi_check.cc (main): Nicer spacing in usage output.
3985 2003-07-05 Gawain Bolton <gp.bolton@computer.org>
3987 * include/bits/stl_list.h: Performance and memory usage
3988 improvements. In particular, the behaviour of the constructor and
3989 destructor as the list header node is no longer dynamically
3990 allocated/de-allocated.
3991 * include/bits/list.tcc: Likewise.
3993 2003-07-05 Paolo Carlini <pcarlini@unitus.it>
3995 * include/std/std_complex.h: Fully qualify standard
3996 functions with std::, thus avoiding Koenig lookup.
3997 * include/std/std_memory.h: Likewise.
3998 * include/std/std_valarray.h: Likewise.
4000 2003-07-05 Gawain Bolton <gp.bolton@computer.org>
4002 * include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
4003 variable for grandparent and use const
4005 2003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
4007 * testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
4008 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
4009 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
4010 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
4011 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
4012 * testsuite/27_io/objects/char/7.cc: Ditto
4013 * testsuite/27_io/objects/char/9661-1.cc: Ditto
4015 2003-07-05 Paolo Carlini <pcarlini@unitus.it>
4017 * include/std/std_bitset.h: Fully qualify standard
4018 functions with std::, thus avoiding Koenig lookup.
4020 * include/std/std_fstream.h: Change comment to doxygen style.
4022 2003-07-05 Phil Edwards <pme@gcc.gnu.org>
4024 * include/std/std_limits.h: More CPP->CXX changes.
4025 * scripts/check_survey.in: Likewise.
4027 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4029 Move from CPP to CXX.
4030 * include/bits/c++config: Move to GLIBCXX from GLIBCPP.
4031 * testsuite/Makefile.am: Same.
4032 * testsuite/Makefile.in: Regenerate.
4033 * po/Makefile.am: Same.
4034 * po/Makefile.in: Regenerate.
4035 * libsupc++/Makefile.am: Same.
4036 * libsupc++/Makefile.in: Regenerate.
4037 * libmath/Makefile.am: Same.
4038 * libmath/Makefile.in: Regenerate.
4039 * include/Makefile.am: Same.
4040 * include/Makefile.in: Regenerate.
4041 * src/Makefile.am: Same.
4042 * src/Makefile.in: Regenerate.
4044 * configure.host: Same.
4045 * configure.in: Same.
4046 * configure: Regenerate.
4047 * acinclude.m4: Same.
4049 * src: Change all files in this directory.
4051 * include: Same, standardize include guards.
4055 2003-07-04 Zack Weinberg <zack@codesourcery.com>
4057 * testsuite/22_locale/collate/compare/wchar_t/2.cc
4058 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
4059 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
4060 * testsuite/22_locale/collate/hash/wchar_t/2.cc
4061 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
4062 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
4063 * testsuite/22_locale/collate/transform/wchar_t/2.cc
4064 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
4065 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
4066 XFAIL on all targets.
4068 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4070 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
4071 * aclocal.m4: Regenerate.
4072 * configure: Regenerate.
4074 2003-07-04 Jerry Quinn <jlquinn@optonline.net>
4076 * include/bits/locale_facets.tcc (__int_to_char): Move common case
4079 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4080 Petur Runolfsson <peturr02@ru.is>
4082 * config/io/basic_file_stdio.cc: Revert.
4084 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4086 * include/bits/deque.tcc: Fully qualify standard
4087 functions with std::, thus avoiding Koenig lookup.
4088 * include/bits/gslice_array.h: Likewise.
4089 * include/bits/indirect_array.h: Likewise.
4090 * include/bits/list.tcc: Likewise.
4091 * include/bits/mask_array.h: Likewise.
4092 * include/bits/slice_array.h: Likewise.
4094 2003-07-04 Gawain Bolton <gbolton@free.fr>
4096 * include/bits/stl_tree.h: Performance and memory usage
4099 2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
4101 * Makefile.am: Replace PWD with PWD_COMMAND.
4102 * Makefile.in: Regenerated.
4103 * docs/html/Makefile: Likewise.
4105 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4107 * include/bits/valarray_array.h: Fully qualify standard
4108 functions with std::, thus avoiding Koenig lookup.
4109 * include/bits/vector.tcc: Likewise.
4111 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4113 * include/Makefile.am: Update target_ to host_.
4114 * include/Makefile.in: Regenerate.
4115 * src/Makefile.am: Same.
4116 * src/Makefile.in: Regenerate.
4118 * config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
4120 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4122 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
4123 --enable-libstdcxx-debug-flags.
4124 (GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
4125 (GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
4126 * aclocal.m4: Regenerate.
4128 * docs/html/configopts.html: Update.
4130 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4132 Revert the fix for libstdc++/11378.
4134 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4137 * include/std/std_fstream.h (xsputn): In the unbuffered case,
4138 provided always_noconv(), issue directly _M_file.xsputn.
4139 * testsuite/performance/filebuf_unbuf_sputn.cc: New.
4141 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4143 * include/bits/stl_list.h: Fully qualify standard
4144 functions with std::, thus avoiding Koenig lookup.
4145 * include/bits/stl_queue.h: Likewise.
4146 * include/bits/stl_raw_storage_iter.h: Likewise.
4147 * include/bits/stl_tempbuf.h: Likewise.
4148 * include/bits/stl_tree.h: Likewise.
4149 * include/bits/stl_uninitialized.h: Likewise.
4150 * include/bits/stl_vector.h: Likewise.
4151 * include/ext/rope: Change includes order.
4153 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>
4155 * configure.host (fpos_include_dir): Fix.
4157 2003-07-04 Paolo Carlini <pcarlini@unitus.it>
4159 * include/bits/stl_heap.h: Fully qualify standard
4160 functions with std::, thus avoiding Koenig lookup.
4161 * include/bits/stl_iterator_base_funcs.h: Likewise.
4163 * include/bits/stl_algo.h: Qualify __iterator_category too.
4164 * include/bits/stl_algobase.h: Likewise.
4165 * include/bits/stl_bvector.h: Likewise.
4167 * include/bits/stl_algo.h: Don't qualify the pair type.
4169 2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
4171 * include/Makefile.am (target_headers): Add fpos.h
4172 (bits_headers): Remove.
4173 * include/Makefile.in: Regenerate.
4174 * configure.in: Add FPOS_INC_SRCDIR, substitute it.
4175 * configure: Regenerate.
4176 * configure.host: Add fpos_include_dir.
4177 * config/os/gnu-linux/fpos.h: New.
4178 * config/os/generic/fpos.h: Add.
4179 * include/bits/fpos.h: Remove.
4181 * config/io/c_io_stdio.h: Remove fpos_t typedef.
4183 * include/bits/fstream.tcc: Tweaks.
4184 * include/std/std_fstream.h: Same.
4186 * testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
4187 * testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
4188 * testsuite/27_io/fpos/mbstate_t/2.cc: Same.
4189 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
4190 * testsuite/27_io/fpos/1.cc: New.
4192 2003-07-03 Benjamin Kosnik <bkoz@redhat.com>
4193 Petur Runolfsson <peturr02@ru.is>
4195 * include/std/std_streambuf.h: Remove _M_pos.
4196 * config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
4197 * config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
4198 use fread/fwrite instead of read/write.
4199 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
4200 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
4201 before reading again.
4202 * testsuite/27_io/objects/char/6.cc: Tweak.
4204 2003-07-03 David Edelsohn <edelsohn@gnu.org>
4206 * testsuite/22_locale/num_put/put/char/7.cc: Guard with
4207 _GLIBCPP_USE_WCHAR_T.
4209 2003-07-02 Paolo Carlini <pcarlini@unitus.it>
4211 * include/bits/basic_string.tcc (_M_replace_aux): Constify
4214 2003-07-02 Paolo Carlini <pcarlini@unitus.it>
4216 * include/bits/stl_bvector.h: Fully qualify standard
4217 functions with std::, thus avoiding Koenig lookup.
4218 * include/bits/stl_construct.h: Likewise.
4219 * include/bits/stl_deque.h: Likewise.
4221 2003-07-02 Paolo Carlini <pcarlini@unitus.it>
4223 * testsuite/22_locale/num_put/put/char/7.cc: Include
4224 <testsuite_hooks.h>, tweak.
4225 * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
4227 2003-07-01 Phil Edwards <pme@gcc.gnu.org>
4229 * testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
4230 check* targets, but not libs/programs).
4231 * testsuite/Makefile.in: Regenerate.
4233 2003-07-01 Roger Sayle <roger@eyesopen.com>
4235 * acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
4236 (GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
4237 * aclocal.m4: Regenerate.
4238 * configure: Regenerate.
4240 2003-07-01 Benjamin Kosnik <bkoz@redhat.com>
4242 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
4243 * aclocal.m4: Regenerated.
4244 * configure: Regenerated.
4246 2003-07-01 Paolo Carlini <pcarlini@unitus.it>
4249 * include/bits/fstream.tcc (underflow): For encoding() == 0
4250 don't read more than __buflen chars.
4251 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
4252 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
4253 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
4254 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
4256 2003-07-01 Jerry Quinn <jlquinn@optonline.net>
4258 * 22_locale/num_put/put/char/7.cc: New.
4259 * 22_locale/num_put/put/wchar_t/7.cc: New.
4261 2003-06-30 Jerry Quinn <jlquinn@optonline.net>
4263 * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
4264 * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
4266 2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
4268 * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
4269 * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
4270 * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
4271 * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
4272 * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
4273 * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
4274 * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
4275 * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
4276 * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
4277 * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
4278 * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
4279 * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
4280 * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
4281 * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
4282 * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
4283 * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
4284 * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
4285 * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
4286 * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
4287 * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
4288 * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
4289 * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
4290 * data/seekoff-1.tst: Remove.
4291 * data/seekoff-1io.tst: New.
4292 * data/seekoff-1out.tst: New.
4293 * data/seekoff-2.tst: Remove.
4294 * data/seekoff-2io.tst: New.
4295 * data/seekoff-2out.tst: New.
4297 * data/seekpos-1.tst: Remove.
4298 * data/seekpos-1io.tst: New.
4299 * data/seekpos-1out.tst: New.
4300 * data/seekpos-2.tst: Remove.
4301 * data/seekpos-2io.tst: New.
4302 * data/seekpos-2out.tst: New.
4303 * data/seekpos.txt: New.
4305 2003-06-30 Jerry Quinn <jlquinn@optonline.net>
4307 * src/locale.cc (__use_cache<numpunct>): Move from here ...
4308 * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
4311 2003-06-30 Paolo Carlini <pcarlini@unitus.it>
4313 * include/bits/stl_algobase.h: Fully qualify standard
4314 functions with std::, thus avoiding Koenig lookup.
4316 2003-06-30 Doug Gregor <dgregor@apple.com>
4318 * include/bits/locale_facets.tcc (money_get::do_get): Avoid
4319 subscripting empty string.
4321 2003-06-30 Phil Edwards <pme@gcc.gnu.org>
4323 * testsuite/Makefile.am (check-am): Do not override.
4324 (baseline_symbols): Declare as PHONY, so no need to 'touch' it.
4325 * testsuite/Makefile.in: Regenerate.
4327 2003-06-30 Doug Gregor <dgregor@apple.com>
4329 * testsuite/24_iterators/insert_iterator.cc (test01, test02):
4330 Don't initialize an insert_iterator with a singular iterator.
4332 2003-06-30 Benjamin Kosnik <bkoz@redhat.com>
4334 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
4335 * aclocal.m4: Regenerate.
4336 * configure.in (GLIBCPP_CHECK_PCH): Move, change to
4337 GLIBCPP_ENABLE_PCH, default to yes.
4338 * configure: Regenerate.
4339 * docs/html/configopts.html: Add --enable-pch.
4341 2003-06-30 Phil Edwards <pme@gcc.gnu.org>
4343 * testsuite/lib/libstdc++-v3-dg.exp: Add comments.
4344 (libstdc++-v3-init): Also set LD_RUN_PATH.
4346 2003-06-30 Paolo Carlini <pcarlini@unitus.it>
4348 * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
4349 from here to filebuf and stringbuf.
4350 (~basic_streambuf()): Don't set _M_mode.
4351 (basic_streambuf()): Don't set _M_mode.
4352 * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
4353 (~basic_filebuf()): Clean up.
4354 * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
4355 * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
4356 * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
4357 * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
4358 * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
4359 * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
4360 * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
4362 2003-06-30 Paolo Carlini <pcarlini@unitus.it>
4364 * include/std/std_fstream.h (_M_underflow): Remove.
4365 (uflow): Remove, inherited from streambuf.
4366 (underflow): Only declare.
4367 * include/bits/fstream.tcc (_M_underflow): Rename to
4368 underflow, to which is equivalent for __bump == false,
4370 * include/std/std_sstream.h (_M_underflow): Remove.
4371 (uflow): Remove, inherited from streambuf.
4372 (underflow): Only declare.
4373 * include/bits/sstream.tcc (_M_underflow): Rename to
4374 underflow, to which is equivalent for __bump == false,
4377 2003-06-29 Paolo Carlini <pcarlini@unitus.it>
4379 * include/bits/stl_algo.h: Fully qualify standard functions
4380 with std::, thus avoiding Koenig lookup.
4382 2003-06-29 Paolo Carlini <pcarlini@unitus.it>
4384 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
4385 Improve type correctness-wise.
4386 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
4388 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
4390 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
4393 2003-06-29 Paolo Carlini <pcarlini@unitus.it>
4395 * include/std/std_streambuf.h (uflow): According to
4396 27.5.2.4.3,p16, don't check gptr() < egptr().
4398 2003-06-28 Paolo Carlini <pcarlini@unitus.it>
4401 * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
4402 (seekpos): Likewise.
4403 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
4405 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
4408 2003-06-27 Benjamin Kosnik <bkoz@redhat.com>
4410 * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
4411 output name to libstdc++-v3-performance.sum.
4412 * testsuite/Makefile.am (CLEANFILES): Remove .performance.
4413 * testsuite/Makefile.in: Regenerate.
4415 2003-06-27 Matthias Klose <doko@debian.org>
4417 * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
4418 output of abi-check in libstdc++-v3-abi.sum.
4419 * testsuite/Makefile.in: Regenerate.
4421 2003-06-27 Krister Walfridsson <cato@df.lth.se>
4423 * config/os/bsd/netbsd/ctype_noninline.h
4424 (_C_ctype_): Declare.
4425 (ctype<char>::classic_table): Return _C_ctype_ + 1.
4426 (ctype<char>::ctype): Use classic_table.
4428 2003-06-27 Paolo Carlini <pcarlini@unitus.it>
4429 Nathan C. Myers <ncm-nospam@cantrip.org>
4432 * include/bits/fstream.tcc (_M_underflow): Properly estimate
4433 the worst-case number of external bytes for a given get area.
4434 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
4436 2003-06-27 Paolo Carlini <pcarlini@unitus.it>
4437 Petur Runolfsson <peturr02@ru.is>
4440 * include/bits/fstream.tcc (overflow): Properly estimate the
4441 worst-case number of external bytes for a given put area
4442 (by using codecvt::max_length()).
4443 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
4444 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
4445 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
4446 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
4448 2003-06-27 Nathan Sidwell <nathan@codesourcery.com>
4450 * config/linker-map.gnu: Remove ; after __numpunct_cache.
4452 2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
4454 * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
4455 to the imbued locale.
4456 * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
4458 (num_put::_M_convert_float): Use.
4460 2003-06-26 Benjamin Kosnik <bkoz@redhat.com>
4461 Jerry Quinn <jlquinn@optonline.net>
4463 * config/linker-map.gnu: Add __numpunct_cache.
4464 * config/locale/gnu/numeric_members.cc
4465 (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
4466 all elements for "C" locale.
4467 (numpunct::~numpunct): Delete _M_data.
4468 * config/locale/generic/numeric_members.cc: Same.
4469 * include/bits/basic_ios.tcc
4470 (basic_ios::init): Remove __locale_cache bits.
4471 (basic_ios::_M_cache_locale): Same.
4472 * include/bits/ios_base.h: Same. Tweaks.
4473 * include/bits/locale_classes.h: Tweaks. Reorder classes.
4474 (__use_cache): Make friends with _Impl, locale.
4475 (_Impl::_M_caches): Add.
4476 (_Impl::_M_install_cache): Add.
4477 * include/bits/locale_facets.h (__numpunct_cache): New.
4478 (numpunct): Encapsulate data members in __numpunct_cache member,
4479 _M_data. Adjust virtuals.
4480 (numpunct::numpunct): New ctor for the same.
4481 (__locale_cache_base): Remove.
4482 (__locale_cache): Remove.
4483 * include/bits/locale_facets.tcc (__use_cache): New function,
4485 (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
4486 * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
4487 * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
4488 * src/locale-inst.cc: Same. Add __numpunct_cache.
4489 * src/locale.cc: Tweak inlines.
4490 (__use_cache): Define specializations.
4491 * src/localename.cc: Use global bits.
4492 (_Impl::~Impl): Deal with __numpunct_cache destruction.
4493 (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
4494 (_Impl::_M_init_facet): Take into account __numpunct_cache.
4495 * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
4496 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
4498 2003-06-26 Nathan C. Myers <ncm-nospam@cantrip.org>
4499 Paolo Carlini <pcarlini@unitus.it>
4501 * testsuite/performance/filebuf_copy.cc: New, testing char
4504 2003-06-26 Paolo Carlini <pcarlini@unitus.it>
4505 Nathan C. Myers <ncm-nospam@cantrip.org>
4507 * include/bits/fstream.tcc (_M_underflow): When the actual
4508 end of file is reached, set 'uncommitted' mode to allow a
4509 next write without an intervening seek (see C++98 27.8.1.1,2
4511 * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
4513 2003-06-25 Nathan C. Myers <ncm-nospam@cantrip.org>
4515 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4516 sputc): Move inline, from here...
4517 * include/std/std_streambuf.h: ... to here.
4519 * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
4520 sputbackc, sungetc, sputc): Use __builtin_expect.
4522 2003-06-24 Phil Edwards <pme@gcc.gnu.org>
4524 * docs/doxygen/mainpage.html: Use a useful title.
4526 2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
4528 * docs/html/documentation.html: Remove assignment info.
4529 * docs/html/17_intro/contribute.html: Edits.
4530 * docs/html/17_intro/libstdc++-assign.tx: Remove.
4532 * docs/html/test.html: Update.
4536 2003-06-24 Benjamin Kosnik <bkoz@redhat.com>
4537 Ulrich Drepper <drepper@redhat.com>
4539 * testsuite/testsuite_performance.h: Tweak mallinfo.
4541 2003-06-24 Paolo Carlini <pcarlini@unitus.it>
4542 Nathan C. Myers <ncm-nospam@cantrip.org>
4544 * include/std/std_fstream.h (_M_filepos): Remove.
4545 (_M_reading, _M_writing): New, encode the various I/O modes:
4546 'read', 'write' and 'uncommitted'.
4547 (sync): If there is something to flush, do it, then go to
4549 * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
4550 with three different cases: __off > 0 (upon underflow),
4551 __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
4553 (_M_underflow): Don't call overflow, set _M_reading to true
4555 (pbackfail): Set _M_reading to true on pback creation, tweak.
4556 (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
4557 set _M_writing to true on success, tweak.
4558 (seekoff): Simplify, set _M_reading, _M_writing to false, call
4559 _M_set_buffer(-1) ('uncommitted').
4560 (open, close, setbuf): Set _M_reading, _M_writing to false and
4561 call _M_set_buffer(-1), tweak.
4562 (basic_filebuf): Don't set _M_buf_unified.
4563 (_M_destroy_internal_buffer): Don't call setg and setp.
4564 * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
4565 _M_writing and _M_set_buffer(-1).
4566 * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
4567 _M_out_lim, _M_buf_unified): Remove.
4568 (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
4569 (setp): Don't set _M_out_lim.
4570 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
4571 the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
4572 upon open the mode is 'uncommitted' and therefore the put area
4574 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
4575 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
4576 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
4577 * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
4578 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
4579 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
4580 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4581 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
4582 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
4583 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
4584 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
4585 * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
4586 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
4587 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
4588 * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
4589 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
4590 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
4591 * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
4592 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
4593 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
4595 * include/bits/fstream.tcc (showmanyc): Use only the
4596 documented derivation interface to basic_streambuf (gptr(),
4597 setg(), etc.) to work right with user specializations.
4598 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4599 sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
4600 * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
4602 * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
4605 2003-06-23 Loren J. Rittle <ljrittle@acm.org>
4607 * configure.host (freebsd*): Set abi_baseline_pair.
4608 * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
4609 (at or near first release) to 3.3.
4610 * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
4611 * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
4612 * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
4614 * include/ext/mt_allocator.h: Portability.
4615 * testsuite/testsuite_performance.h: Likewise.
4617 2003-06-23 Benjamin Kosnik <bkoz@redhat.com>
4619 * docs/html/17_intro/libstdc++-assign.txt: Update address.
4621 * testsuite/performance/ifstream_getline.cc: Fix.
4623 2003-06-23 Doug Gregor <dgregor@apple.com>
4625 * include/bits/boost_concept_check.h: Don't use _D or _R for type
4628 2003-06-22 Paolo Carlini <pcarlini@unitus.it>
4629 Nathan C. Myers <ncm-nospam@cantrip.org>
4631 * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
4632 is now used only for filebuf, when _M_buf_unified is true.
4633 epgtr() plays the role of _M_out_lim but it's only updated
4634 upon overflow, underflow, uflow, seekoff/pos.
4635 * include/bits/sstream.tcc (_M_underflow): New, implements
4636 stringbuf::underflow and uflow.
4637 (seekoff, seekpos): Tweak, use _M_update_egptr.
4638 * include/std/std_sstream.h (str): Rewrote, deal correctly
4639 with the new logic, in particular, when pptr() > egptr().
4640 (_M_sync): When __testout && !__testin set all the get area
4641 pointers to the current string end.
4642 (_M_update_egptr): New, internal function updating egptr()
4643 to the actual string end.
4644 (_M_underflow): New, declare.
4645 (underflow): Dispatch to _M_underflow(false).
4646 (uflow): Dispatch to _M_underflow(true).
4648 * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
4649 seekpos): Use only the documented derivation interface to
4650 basic_streambuf (gptr(), setg(), etc.) to work right with
4651 user specializations.
4652 * include/std/std_sstream.h (str, _M_sync): Likewise.
4654 2003-06-20 Doug Gregor <dgregor@apple.com>
4656 * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
4657 * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
4658 dereference end iterator.
4659 * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
4660 * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
4661 index equal to the length of a string.
4662 * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
4663 * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
4664 * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
4665 * testsuite/22_locale/ctype/widen/char/1.cc: Same.
4666 * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
4667 * testsuite/23_containers/list_modifiers.cc: Don't dereference
4668 singular reverse iterator.
4669 * testsuite/23_containers/vector_bool.cc: Don't increment singular
4671 * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
4673 2003-06-20 Doug Gregor <dgregor@apple.com>
4675 * include/bits/basic_string.h (basic_string::replace): Dispatch
4676 _InputIterator version based on _Is_integer.
4677 * include/bits/basic_string.tcc (basic_string::replace):
4678 Renamed replace(iterator, iterator, size_type, _CharT) to
4680 * testsuite/21_strings/basic_string/assign/char/1.cc (test01):
4681 Test basic_string::assign(_InputIterator, _InputIterator),
4682 which calls basic_string::replace(iterator, iterator,
4683 _Input_iterator, _InputIterator).
4685 2003-06-20 Benjamin Kosnik <bkoz@redhat.com>
4687 * testsuite/testsuite_performance.h (resource_counter): Don't use
4688 mallinfo at the moment.
4690 2003-06-20 Matthias Klose <doko@debian.org>
4692 * configure.host: Set try_cpu to target_cpu for existing
4695 2003-06-19 Andreas Jaeger <aj@suse.de>
4697 * testsuite/Makefile.am (extract_symvers): Revert accidental
4699 * testsuite/Makefile.in: Regenerate.
4701 * configure.in: Pass MULTISUBDIR to testsuite/Makefile.
4702 * configure: Regenerated.
4704 2003-06-19 Paolo Carlini <pcarlini@unitus.it>
4706 * include/std/std_sstream.h (_M_sync): Make non virtual.
4708 2003-06-18 Benjamin Kosnik <bkoz@redhat.com>
4710 * testsuite/testsuite_performance.h (time_counter): New.
4711 (resource_counter): New.
4712 (report_performance): New.
4713 (start_counters): New.
4714 (stop_counters): New.
4715 (clear_counters): New.
4716 * testsuite/performance/allocator.cc: Instrument.
4717 * testsuite/performance/cout_insert_int.cc: Same.
4718 * testsuite/performance/complex_norm.cc: Same.
4719 * testsuite/performance/filebuf_sputc.cc: New.
4720 * testsuite/performance/fstream_seek_write.cc: Same.
4721 * testsuite/performance/ifstream_getline.cc: Same.
4722 * testsuite/performance/map_create_fill.cc: Same.
4723 * testsuite/performance/ofstream_insert_float.cc: Same.
4724 * testsuite/performance/ofstream_insert_int.cc: Same.
4725 * testsuite/performance/string_append.cc: Convert.
4726 * scripts/check_performance: New.
4727 * testsuite/Makefile.am (check-performance): New.
4730 2003-06-18 Paolo Carlini <pcarlini@unitus.it>
4731 Benjamin Kosnik <bkoz@redhat.com>
4733 * include/std/std_sstream.h (setbuf): Check __n >= 0.
4734 * include/bits/fstream.tcc (setbuf): Tweak.
4736 2003-06-18 Paolo Carlini <pcarlini@unitus.it>
4738 * include/bits/sstream.tcc (seekoff): We can't seek beyond
4739 _M_out_lim, therefore _M_move_out_cur boils down to simply
4740 updating _M_out_cur.
4741 (seekpos): Likewise, clean up.
4743 2003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
4744 Paolo Carlini <pcarlini@unitus.it>
4746 * include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
4747 simply equivalent to the unbuffered case (0, 0) as far as
4748 _M_buf_size is concerned.
4750 2003-06-18 Andreas Jaeger <aj@suse.de>
4752 * testsuite/Makefile.am (new-abi-baseline): Create baseline
4754 (baseline_file): Use baseline_dir.
4755 (baseline_dir): New.
4756 (mkinstalldirs): New.
4758 * acinclude.m4: Rename baseline_file to baseline_dir, strip
4759 filename from baseline_dir.
4761 * testsuite/Makefile.in: Regenerated.
4762 * Makefile.in: Regenerated.
4763 * aclocal.m4: Regenerated.
4764 * configure: Regenerated.
4766 2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4768 * configure.in: Missed check_survey bit.
4769 * configure: Regenerated.
4771 2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4774 * config/abi/extract_symvers: Move to...
4775 * scripts/extract_symvers: ...here.
4776 * mkcheck.in: Move to..
4777 * scripts/check_survey.in: ...here.
4778 * testsuite_flags.in: Move to..
4779 * scripts/testsuite_flags.in: ...here.
4780 * configure.in: Change check and testsuite_flags locations.
4781 * configure: Regenerate.
4782 * testsuite/Makefile.am (current_symbols.txt): Change location.
4783 * testsuite/Makefile.in: Regenerate.
4784 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
4785 location of testsuite_flags.
4786 * Makefile.am (check-script): Move..
4787 (check-script-install): Move...
4788 * testsuite/Makefile.am: ... here.
4789 * testsuite/Makefile.in: Regenerate.
4790 * Makefile.in: Regenerate.
4792 2003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4794 * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
4796 2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
4798 * Makefile.am (check-abi): Move...
4799 (new-abi-baseline): Move...
4800 * testsuite/Makefile.am: ...here.
4801 (new-abi-baseline): Conditionalize.
4802 (check-abi): Conditionalize.
4803 (check-abi-verbose): New.
4804 * Makefile.in: Regenerate.
4805 * testsuite/Makefile.in: Regenerate.
4806 * configure.in: Consolidate testsuite configure bits.
4807 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
4808 * configure: Regenerate.
4809 * aclocal.m4: Regenerate.
4810 * testsuite/abi_check.cc: Add --check-verbose.
4811 Only output detailed information if --check-verbose.
4813 2003-06-16 Andreas Jaeger <aj@suse.de>
4815 * testsuite/abi_check.cc: Create summary report.
4817 2003-06-16 Paolo Carlini <pcarlini@unitus.it>
4819 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
4820 for systems with BUFSIZ != 8192.
4821 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4822 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
4825 2003-06-16 Andreas Jaeger <aj@suse.de>
4827 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
4828 check-abi multilib aware.
4829 * aclocal.m4: Regenerate.
4830 * configure: Regenerate.
4832 2003-06-16 Benjamin Kosnik <bkoz@redhat.com>
4833 Andreas Jaeger <aj@suse.de>
4835 * configure.host: Set x86_64 abi_baseline pair correctly.
4837 2003-06-16 Paolo Carlini <pcarlini@unitus.it>
4839 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
4840 fix for missing seeks between gets and puts into...
4841 * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
4842 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
4843 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
4844 * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
4845 * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
4846 * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
4848 2003-06-15 Richard Henderson <rth@redhat.com>
4850 * config/linker-map.gnu: Export virtual function thunks for
4853 2003-06-13 Benjamin Kosnik <bkoz@redhat.com>
4855 * config/abi/i686-pc-linux-gnu: To..
4856 * config/abi/i486-linux-gnu: ...this.
4857 * config/abi/alphaev67-unknown-linux-gnu: To..
4858 * config/abi/alpha-linux-gnu: ...this.
4859 * config/abi/ia64-unknown-linux-gnu: To...
4860 * config/abi/ia64-linux-gnu: ...this.
4861 * config/abi/x86_64-unknown-linux-gnu: To...
4862 * config/abi/x86_64-linux-gnu: ...this.
4863 * config/abi/i386-unknown-freebsd4: To...
4864 * config/abi/i386-freebsd4: ...this.
4865 * config/linker-map.gnu: Cleanups, move libsupc++ bits into
4867 * configure.host: abi_baseline_triplet to abi_baseline_pair.
4868 Simplify cpu bits so that abi_baseline_pair can use the same
4870 * acinclude.m4: Same.
4871 * aclocal.m4: Regenerate.
4872 * configure.in: Can't get enable_abi_check to yes unless native.
4873 * configure: Regenerate.
4875 2003-06-13 Paolo Carlini <pcarlini@unitus.it>
4877 * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
4878 fix for missing seeks between gets and puts into...
4879 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
4880 * testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
4881 * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
4882 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
4883 * testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
4884 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
4885 for missing seeks between gets and puts.
4886 * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
4887 * testsuite/data/seekoff-1.tst: New.
4888 * testsuite/data/seekoff-2.tst: New.
4889 * testsuite/data/seekpos-1.tst: New.
4890 * testsuite/data/seekpos-2.tst: New.
4892 2003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
4894 Avoid multi-processor bus contention on increment/decrement-and-
4895 test of the reference count in the empty-string object, by comparing
4896 addresses first, and never touching the reference count of the empty-
4898 * include/bits/basic_string.h:
4899 (_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
4901 (_Rep::_S_empty_rep()): New accessor.
4902 (_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
4903 a base class _Rep_base.
4904 (_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
4905 (basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
4906 since no longer must increment its refcount.
4907 * include/bits/basic_string.tcc:
4908 (_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
4909 return immediately. The former might be unnecessary. The latter
4910 prevents begin() and end() from cloning it unnecessarily.
4911 (_S_construct(_InIterator, _InIterator, const _Alloc&,
4912 input_iterator_tag), _S_construct(_InIterator, _InIterator,
4913 const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
4914 const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
4915 (_M_mutate): Check for the empty string and treat it as shared.
4916 This is necessary here because _M_mutate is sometimes called with
4917 all-zero arguments; in all other uses of _M_is_shared, the test comes
4920 2003-06-12 Benjamin Kosnik <bkoz@redhat.com>
4922 * src/allocator-inst.cc: Explicitly instantiate.
4923 * include/ext/pool_allocator.h: Inhibit implicit instantiations.
4925 * config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
4927 2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4929 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
4930 * aclocal.m4: Regenerate.
4931 * Makefile.am (SUBDIRS): Remove libio.
4932 * Makefile.in: Regenerate.
4933 * configure.in: Same.
4934 * configure: Regenerate.
4935 * config/io/basic_file_libio.cc: Remove.
4936 * config/io/basic_file_libio.h: Remove.
4937 * config/io/c_io_libio_codecvt.c: Remove.
4938 * config/io/c_io_libio.h: Remove.
4940 * src/Makefile.am: Same.
4941 * src/Makefile.in: Regenerate.
4942 * docs/html/configopts.html: Edits.
4943 * docs/html/explanations.html: Edits.
4945 2003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4947 * include/bits/stl_alloc.h (__debug_alloc): Move out.
4948 (__malloc_alloc): Same.
4949 (__pool_alloc): Same.
4950 (__new_alloc): Same.
4952 * include/bits/allocator.h: ...this.
4953 * include/bits/stl_deque.h: Modify comment.
4954 * include/bits/stl_tree.h: Modify include.
4955 * include/std/std_memory.h: Same.
4956 * include/ext/rope: Same.
4957 * include/ext/slist: Same.
4958 * include/std/std_vector.h: Same.
4959 * include/std/std_stack.h: Same.
4960 * include/std/std_queue.h: Same.
4961 * include/std/std_list.h: Same.
4962 * include/std/std_deque.h: Same.
4963 * include/backward/alloc.h: Same.
4964 * include/ext/debug_allocator.h: New.
4965 * include/ext/malloc_allocator.h: New.
4966 * include/ext/pool_allocator.h: New.
4967 * include/ext/new_allocator.h: New.
4968 * include/bits/pthread_allocimpl.h: Remove.
4969 * include/bits/stl_pthread_alloc.h: Remove.
4970 * include/Makefile.am (ext_headers): Add.
4971 * include/Makefile.in: Regenerate.
4972 * src/stl-inst.cc: Use __gnu_cxx namespace.
4973 * src/stl-inst.cc: Move to...
4974 * src/allocator-inst.cc: Here.
4975 * src/Makefile.am (sources): Update.
4976 * src/Makefile.in: Regenerate.
4977 * config/linker-map.gnu: Remove __pool_alloc bits.
4978 * testsuite/ext/headers.cc: Add.
4979 * testsuite/ext/allocators.cc: Fixup.
4981 2003-06-11 Stefan Olsson <stefan@snon.net>
4982 Ola Rönnerup <fnolis@home.se>
4984 * include/Makefile.am (ext_headers): Add.
4985 * include/Makefile.in: Regenerate.
4986 * include/ext/mt_allocator.h: New file.
4988 2003-06-10 Paolo Carlini <pcarlini@unitus.it>
4990 * include/bits/fstream.tcc (close): Clean up a bit.
4992 * include/bits/streambuf.tcc (sbumpc): Clean up a bit.
4994 * include/std/std_fstream.h (_M_destroy_pback): _M_pback_cur_save
4995 - the saved _M_in_cur, that is - cannot be null.
4996 (sync): Constify a variable.
4998 * include/std/std_streambuf.h: Tweak a comment.
4999 (in_avail): Constify a variable.
5001 2003-06-10 Phil Edwards <pme@gcc.gnu.org>
5003 * docs/html/17_intro/BUGS: Update from 2.90.8 snapshot.
5004 * docs/html/17_intro/CHECKLIST: Bring up to date with respect to
5005 correctness of container::iterator typedefs. Fix whitespace.
5006 * docs/html/20_util/howto.html, docs/html/ext/howto.html: Add links
5008 * docs/html/documentation.html: Regenerate.
5010 * include/bits/basic_string.h, include/bits/basic_string.tcc,
5011 include/bits/deque.tcc, include/bits/list.tcc, include/bits/stl_algo.h,
5012 include/bits/stl_algobase.h, include/bits/stl_bvector.h,
5013 include/bits/stl_deque.h, include/bits/stl_iterator_base_funcs.h,
5014 include/bits/stl_list.h, include/bits/stl_uninitialized.h,
5015 include/bits/stl_vector.h, include/bits/vector.tcc,
5016 include/ext/algorithm, include/ext/slist, include/std/std_bitset.h:
5017 Change _Iter names to _Iterator, and __pos to __position.
5019 * include/bits/stl_relops.h, include/bits/stl_numeric.h,
5020 include/bits/stl_multiset.h, include/bits/stl_set.h:
5021 Remove emacs markers.
5023 * include/bits/stl_threads.h (_STL_auto_lock): Add __unused__.
5025 2003-06-10 Paolo Carlini <pcarlini@unitus.it>
5027 * include/bits/fstream.tcc (overflow): According to
5028 27.5.2.4.5, overflow() returns not_eof(eof()).
5029 * testsuite/27_io/basic_filebuf/overflow/char/2.cc: New.
5030 * testsuite/27_io/basic_filebuf/overflow/char/2-unbuf.cc: Ditto.
5032 2003-06-10 Paolo Carlini <pcarlini@unitus.it>
5034 * include/bits/fstream.tcc (_M_underflow): Check overflow return
5035 value; tweak slightly.
5037 2003-06-09 Paolo Carlini <pcarlini@unitus.it>
5039 * include/bits/fstream.tcc (_M_underflow): Do not special
5040 case the unbuffered case, which really means simply a one char
5042 (basic_filebuf): Initialize _M_buf_size.
5043 (setbuf): Unbuffered means _M_buf_size == 1, since only
5044 _M_buf_size - 1 == 0 chars are going to be used for the
5045 put area and 1 for the get area.
5046 * include/std/std_streambuf.h (_M_buf_size): Move to basic_filebuf.
5047 (~basic_streambuf): Tweak.
5048 (basic_streambuf): Do not initialize _M_buf_size.
5049 * include/std/std_fstream.h (_M_buf_size): Add from basic_streambuf.
5050 (~basic_filebuf): Tweak.
5051 (_M_set_buffer): Tweak, considering that _M_buf_size == 1 is the
5052 unbuffered situation (i.e., put area pointers NULL).
5053 * include/bits/streambuf.tcc (sbumpc): Clean up.
5054 * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Split into...
5055 * testsuite/27_io/basic_filebuf/sputbackc/char/1-in.cc: New.
5056 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: New.
5057 * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: New.
5058 * testsuite/27_io/basic_filebuf/sputbackc/char/2-in.cc: New.
5059 * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: New.
5060 * testsuite/27_io/basic_filebuf/sputbackc/char/2-out.cc: New.
5062 2003-06-09 Phil Edwards <pme@gcc.gnu.org>
5064 * acinclude.m4: Move all AM_CONDITIONAL calls out.
5065 (GLIBCPP_CONFIGURE): Set defaults for variables used in AM_CONDITIONAL
5067 * configure.in: Centralize AM_CONDITIONALs so that they are always
5068 run. Make use of GLIBCPP_IS_CROSS_COMPILING.
5069 * aclocal.m4, configure: Regenerated.
5071 2003-06-09 Paolo Carlini <pcarlini@unitus.it>
5073 * docs/html/ext/howto.html ('LWG Issues'): Add issue 235.
5075 2003-06-06 Nathan Myers <ncm-nospam@cantrip.org>
5077 * include/bits/stl_iterator.h
5078 (reverse_iterator::reverse_iterator()): Apply DR235: default
5079 constructor default-initializes data member. Instantiated on a
5080 pointer type, the member has to end up equal to zero.
5082 2003-06-06 Benjamin Kosnik <bkoz@redhat.com>
5084 * include/bits/stl_alloc.h: Cleanups.
5085 * include/ext/functional: Same.
5086 * include/ext/hash_map: Same.
5087 * include/ext/hash_set: Same.
5088 * include/ext/iterator: Same.
5089 * include/ext/memory: Same.
5090 * include/ext/numeric: Same.
5091 * include/ext/rb_tree: Same.
5092 * include/ext/ropeimpl.h: Same.
5093 * include/ext/slist: Same.
5094 * include/ext/stdio_filebuf.h: Same.
5095 * include/ext/stdio_sync_filebuf.h: Same.
5096 * include/ext/stl_rope.h: Move to...
5097 * include/ext/rope: ...here.
5098 * include/ext/stl_hash_fun.h: Move to...
5099 * include/ext/hash_fun.h: ...here.
5100 * include/ext/stl_hashtable.h: Move to...
5101 * include/ext/hashtable.h: ...here.
5102 * include/backward/hashtable.h: Reflect new names.
5103 * include/Makefile.am: Same.
5104 * include/Makefile.in: Regenerated.
5106 2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
5109 * include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
5110 * include/bits/stl_algobase.h: Tweak.
5111 * include/std/std_fstream.h: Move _M_buf_size to...
5112 * include/std/std_streambuf.h: ...here. Modify.
5113 * include/bits/streambuf.tcc: Same.
5114 * testsuite/testsuite_hooks.h: Tweak.
5115 * testsuite/testsuite_io.h (constraint_filebuf): New.
5116 * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
5117 * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
5118 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
5119 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
5120 * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
5121 * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
5122 * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
5123 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
5124 * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
5125 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
5126 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
5127 * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
5128 * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
5129 * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
5130 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
5131 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
5132 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
5133 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
5134 * testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
5135 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
5136 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
5137 * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
5138 * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
5139 * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
5140 * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
5141 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
5142 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
5143 * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
5144 * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
5145 * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
5146 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
5147 * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
5148 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
5149 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
5150 * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
5151 * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
5152 * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
5153 * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
5154 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
5155 * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
5156 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
5157 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
5158 * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
5159 * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
5160 * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
5161 * testsuite/data/sgetc.txt: New.
5162 * testsuite/data/sgetn.txt: New.
5164 2003-06-05 Paolo Carlini <pcarlini@unitus.it>
5167 * include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
5168 Deal with width() smaller than zero.
5169 * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
5170 operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
5171 _CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
5172 char*), operator<<(basic_ostream<char, _Traits>&, const char*),
5173 operator<<(basic_ostream, const basic_string&)): Likewise.
5175 * testsuite/27_io/basic_istream/extractors_character/char/
5176 (11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
5177 * testsuite/27_io/basic_ostream/inserters_character/char/
5178 (11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
5179 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
5180 (11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
5182 2003-06-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
5184 * acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
5185 .gch compilation works.
5186 * aclocal.m4, configure: Regenerate.
5187 * testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
5188 initialize PCHFLAGS.
5190 2003-06-04 Paolo Carlini <pcarlini@unitus.it>
5192 * include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
5193 erase(iterator), erase(iterator, iterator), c_str,
5194 compare(const basic_string&)): Constify various variables.
5195 * include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
5196 const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
5197 _S_create, resize, _M_replace, _M_replace_safe,
5198 append(const basic_string&), append(const basic_string&, size_type,
5199 size_type), append(const _CharT*, size_type), append(size_type,
5200 _CharT), operator+(const _CharT*, const basic_string&),
5201 operator+(_CharT, const basic_string&), replace(iterator, iterator,
5202 size_type, _CharT), find(const _CharT*, size_type, size_type),
5203 find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
5204 rfind(_CharT, size_type), compare(size_type, size_type,
5205 const basic_string&), compare(size_type, size_type,
5206 const basic_string&, size_type, size_type), compare(const _CharT*),
5207 compare(size_type, size_type, const _CharT*), compare(size_type,
5208 size_type, const _CharT*, size_type)): Likewise.
5210 2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
5212 * include/bits/fstream.tcc (pbackfail): Make a rarely taken
5213 'if' branch less obscure.
5215 2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
5218 * config/cpu/i386/atomicity.h (__exchange_and_add): add intel
5220 * config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
5221 (__atomic_add): likewise.
5223 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5225 * include/bits/sstream.tcc (pbackfail): Minor clean up and
5226 reformatting, consistent with basic_filebuf::pbackfail.
5228 2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
5231 * config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
5232 __attribute__ ((__unused__)).
5233 * config/os/aix/atomicity.h: Likewise.
5235 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5238 * include/bits/fstream.tcc (pbackfail): If the pback buffer
5239 is already active don't try to store in it a second char.
5240 * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
5242 * include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
5244 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5246 * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
5249 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5251 * include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
5252 instead of unnecessarily taking the address of _M_pback.
5253 (xsgetn): Simplify slightly for a single char pback buffer.
5255 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5257 * include/bits/sstream.tcc (seekoff): Remove four unnecessary
5258 variables and two 'if', clean up.
5260 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
5262 * include/bits/sstream.tcc (seekpos): Test against _M_out_lim
5263 not _M_out_end, since the former actually points to the string
5264 end (vs buffer end).
5265 * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
5267 2003-05-30 Phil Edwards <pme@gcc.gnu.org>
5269 * docs/doxygen/filter: New file.
5270 * docs/doxygen/filter.sed: New file.
5271 * docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
5272 * docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
5273 * docs/html/documentation.html: Fix links to doxygen pages.
5275 2003-05-30 Paolo Carlini <pcarlini@unitus.it>
5277 * include/bits/fstream.tcc (_M_convert_to_external): Don't
5278 check for __ilen > 0.
5280 2003-05-29 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
5283 * include/bits/stl_iterator.h (class __normal_iterator):
5284 Don't inherit from iterator, add missing typedefs.
5286 2003-05-29 Paolo Carlini <pcarlini@unitus.it>
5288 * testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
5289 * testsuite/24_iterators/reverse_iterator/1.cc: New.
5290 * testsuite/24_iterators/reverse_iterator/2.cc: New.
5291 * testsuite/24_iterators/reverse_iterator/3.cc: New, from
5294 2003-05-27 Steve Ellcey <sje@cup.hp.com>
5296 * config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
5298 * libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
5299 _LIBUNWIND_STD_ABI is set.
5301 2003-05-26 Brendan Kehoe <brendan@zen.org>
5303 * include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
5304 make sure the number of digits required after the decimal-point
5305 (if any) is exactly the value returned by frac_digits().
5306 * testsuite/22_locale/money_get/get/char/9.cc: New.
5307 * testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
5309 2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
5311 * include/std/std_istream.h, include/std/std_ostream.h: Typo in
5314 2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
5317 * include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
5318 (_M_pback): No array necessary.
5319 * include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
5320 unbuffered case, coalesec into ...
5321 (basic_filebuf::overflow): ...this.
5322 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
5323 * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
5325 2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>
5327 * libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
5328 libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
5329 libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
5330 libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
5331 libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
5332 libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
5333 libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
5334 libsupc++/eh_unex_handler.cc, libsupc++/exception,
5335 libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
5336 libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
5337 libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
5338 libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
5339 Replace "GNU CC" with "GCC".
5341 * include/backward/new.h: Replace "GNU CC" with "GCC".
5343 2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
5346 * configure.in: Switch target to host, don't assume newlib.
5347 (target_alias): Remove.
5348 * configure: Regenerate.
5349 * acinclude.m4: Same.
5350 * aclocal.m4: Regenerate.
5351 * configure.target: Same. Rename to...
5352 * configure.host: This.
5354 2003-05-22 Paolo Carlini <pcarlini@unitus.it>
5356 * include/std/std_fstream.h (_S_pback_size): Remove definition.
5357 (_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
5359 * include/bits/fstream.tcc (_S_pback_size): Remove declaration.
5360 * testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
5361 of _S_pback_size for systems with no COMDAT or weak support.
5362 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
5363 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
5364 * testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
5365 * testsuite/27_io/basic_fstream/3.cc: Likewise.
5366 * testsuite/27_io/basic_ifstream/3.cc: Likewise.
5367 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
5368 * testsuite/27_io/basic_ofstream/3.cc: Likewise.
5369 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
5370 * testsuite/27_io/basic_streambuf/3.cc: Likewise.
5372 2003-05-22 Paolo Carlini <pcarlini@unitus.it>
5374 * include/bits/fstream.tcc (_M_underflow): Simplify:
5375 !__testout implies _M_filepos == _M_in_end, therefore
5376 the first _M_file.seekoff call is never issued.
5378 2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
5380 * configure.in: Sort cross table.
5381 * configure: Regenerate.
5383 2003-05-22 Brad Spencer <spencer@infointeractive.com>
5386 * configure.in: Add Solaris cross bits.
5388 2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
5390 * libstdc++-v3/config/os/mingw32/os_defines.h
5391 (__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
5392 (NOMINMAX): Define. Update copyright year.
5394 2003-05-21 Paolo Carlini <pcarlini@unitus.it>
5396 * include/std/std_fstream.h (_M_set_buffer): Fix indentation.
5398 2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
5400 * docs/html/faq/index.html: Fix typo.
5401 * docs/html/faq/index.txt: Regenerate.
5403 2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
5405 * docs/html/test.html: Fix markup.
5407 2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
5409 * libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
5411 Update copyright year.
5413 2003-05-20 Paolo Carlini <pcarlini@unitus.it>
5415 * testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
5417 2003-05-20 Paolo Carlini <pcarlini@unitus.it>
5419 * testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
5420 further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
5422 2003-05-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
5424 * include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
5425 Cast via void* to avoid -Wcast-align warnings.
5426 (__default_alloc_template::_S_refill): Likewise.
5428 2003-05-20 Benjamin Kosnik <bkoz@redhat.com>
5430 * testsuite/README: Move to...
5431 * docs/html/test.html: ...here. Add documentation.
5432 * docs/html/install.html: Move testing bits out..
5433 * docs/html/documentation.html: Add separate testing link.
5434 * testsuite/performance: Add.
5435 * testsuite/performance/allocator.cc: New.
5436 * testsuite/performance/complex_norm.cc: New.
5437 * testsuite/performance/cout_insert_int.cc: New.
5438 * testsuite/performance/fstream_seek_write.cc: New.
5439 * testsuite/performance/ifstream_getline.cc: New.
5440 * testsuite/performance/map_create_fill.cc: New.
5441 * testsuite/performance/ofstream_insert_float.cc: New.
5442 * testsuite/performance/ofstream_insert_int.cc: New.
5443 * testsuite/performance/string_append.cc: New.
5444 * testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
5447 2003-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net>
5450 * include/std/std_complex.h (pow): Tidy.
5452 2003-05-19 Paolo Carlini <pcarlini@unitus.it>
5454 * testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
5455 that upon filebuf::close() 27.8.1.1,3 is enforced.
5457 2003-05-15 Loren J. Rittle <ljrittle@acm.org>
5459 * testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
5461 2003-05-15 Paolo Carlini <pcarlini@unitus.it>
5462 Nathan Myers <ncm@cantrip.org>
5464 * include/bits/fstream.tcc (_M_overflow): Rewrote to call
5465 _M_convert_to_external only once (_M_buf_size is now the size of
5466 the put area + 1 for the overflow char of a full area); call
5467 _M_set_buffer instead of _M_set_indeterminate.
5468 (setbuf): Don't accept a buffer smaller than 2 chars.
5469 (_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
5470 instead of _M_set_determinate.
5471 (open): Call _M_set_buffer, instead of _M_set_indeterminate.
5472 (seekoff): Likewise.
5473 * include/ext/stdio_filebuf.h (stdio_filebuf(int,
5474 std::ios_base::openmode, bool, size_t),
5475 stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
5477 * include/std/std_fstream.h (_M_set_indeterminate): Remove.
5478 (_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
5480 * include/std/std_streambuf.h: Tweak _M_out_lim comment.
5481 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
5482 into account that, for _M_buf_size == BUFSIZ == 8192, the size of
5483 the put area is now BUFSIZ - 1.
5484 * testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
5485 that now the smallest _M_buf_size is 2 (still fails, for the same
5488 2003-05-14 Loren J. Rittle <ljrittle@acm.org>
5490 * testsuite/thread/pthread4.cc: Tweak test.
5492 2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
5494 * testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
5495 excess errors dg marker, use dg-errors instead.
5496 * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
5497 * testsuite/20_util/auto_ptr_neg.cc: Same.
5499 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
5501 * include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
5503 * include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
5504 Initialize _M_codecvt.
5505 (basic_filebuf::imbue): Same.
5506 (basic_filebuf::showmanyc): Use it.
5507 (basic_filebuf::underflow): Use it.
5508 (basic_filebuf::_M_convert_to_external): Use it.
5509 (basic_filebuf::seekoff): Use it.
5510 (basic_filebuf::imbue): Use it, tweaks.
5511 * include/bits/localefwd.h (__check_facet): New.
5512 * include/bits/locale_classes.h: Tweaks.
5513 * include/bits/locale_facets.tcc: Tweaks.
5514 * include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
5515 _M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
5516 _M_num_get. Change _M_check_facet to __check_facet. Tweaks.
5517 * include/bits/basic_ios.tcc: Same.
5518 * include/bits/istream.tcc: Same.
5519 * include/bits/ostream.tcc: Same.
5520 * include/std/std_streambuf.h: Same.
5521 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
5522 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
5523 * testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
5524 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
5525 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
5526 * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
5528 2003-05-12 Paolo Carlini <pcarlini@unitus.it>
5530 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
5531 unnecessary includes and unused string literals.
5532 * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
5533 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
5534 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
5535 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
5537 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
5539 * include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
5541 2003-05-12 Paolo Carlini <pcarlini@unitus.it>
5543 * include/std/std_fstream.h (_M_convert_to_external): Change
5544 to return bool, take two less streamsize parameters.
5545 * include/bits/fstream.tcc (_M_convert_to_external): Tweak
5546 consistently definition.
5547 (_M_overflow): Adjust call points.
5549 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
5551 * testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
5553 2003-05-11 Phil Edwards <pme@gcc.gnu.org>
5555 * testsuite/Makefile.am: Properly quote /both/ LD_RUN_PATHs.
5556 * testsuite/Makefile.in: Regenerate.
5558 2003-05-11 Phil Edwards <pme@gcc.gnu.org>
5560 * testsuite/Makefile.am: Properly quote LD_RUN_PATH.
5561 * testsuite/Makefile.in: Regenerate.
5563 2003-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
5566 * include/c_std/std_cmath.h: #include <bits/cpp_type_traits.h>
5567 (acos): Handle integer argument.
5586 * include/bits/cpp_type_traits.h (__are_same<>): New traits.
5587 (__enable_if): Likewise.
5588 * testsuite/26_numerics/cmath/overloads.C: New test.
5590 2003-05-10 Petur Runolfsson <peturr02@ru.is>
5595 * include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
5596 implementation, based on old wchar_t specialization, add support
5597 for codecvt::in() return value of codecvt_base::noconv, remove
5598 _M_file.sys_ungetc() call.
5599 * include/std/std_fstream.h (basic_file::underflow,
5600 basic_file::uflow, basic_file::_M_underflow): Remove
5601 specialization declarations, call _M_underflow from generic versions
5602 of underflow and uflow.
5603 * src/fstream.cc (basic_file::underflow, basic_file::uflow,
5604 basic_file::_M_underflow): Remove specializations.
5605 * src/Makefile.am (sources): Remove fstream.cc.
5606 * src/Makefile.in: Regenerated.
5607 * testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
5608 * testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
5609 * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
5610 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
5612 2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
5614 * include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
5616 * config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
5618 (__basic_file::xsputn): Same.
5619 (__basic_file::seekoff): Same.
5620 (__basic_file::seekpos): Same.
5621 (__basic_file::showmanyc): Same.
5622 * config/io/basic_file_stdio.cc: Same.
5623 * include/std/std_fstream.h: Same.
5624 * include/bits/fstream.tcc: Same.
5625 * src/fstream.cc: Same.
5626 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
5628 2003-05-10 Petur Runolfsson <peturr02@ru.is>
5633 * include/ext/stdio_sync_filebuf.h: New file.
5634 (basic_stdiobuf): New.
5635 * include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
5636 * include/Makefile.in: Regenerate.
5637 * include/bits/ios_base.h (Init::_S_create_buffers,
5638 Init::_S_destroy_buffers): Remove declarations.
5639 * src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
5640 buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
5641 * src/ios.cc (Init::_S_create_buffers,
5642 Init::_S_destroy_buffers): Remove.
5643 (Init::Init): Create and use syncronized buffers.
5644 (ios_base::sync_with_stdio): Destroy syncronized buffers,
5645 create and install unsyncronized buffers.
5646 * testsuite/27_io/objects/char/10.cc: New test.
5647 * testsuite/27_io/objects/char/9.cc: New test.
5648 * testsuite/27_io/objects/char/9661-1.cc: New test.
5649 * testsuite/27_io/objects/char/9661-2_xin.cc: New test.
5650 * testsuite/27_io/objects/char/9661-2_xin.in: New.
5651 * testsuite/27_io/objects/wchar_t/1.cc: New test.
5652 * testsuite/27_io/objects/wchar_t/10.cc: New test.
5653 * testsuite/27_io/objects/wchar_t/2.cc: New test.
5654 * testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
5655 * testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
5656 * testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
5657 * testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
5658 * testsuite/27_io/objects/wchar_t/3045.cc: New test.
5659 * testsuite/27_io/objects/wchar_t/3647.cc: New test.
5660 * testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
5661 * testsuite/27_io/objects/wchar_t/3_xin.in: New.
5662 * testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
5663 * testsuite/27_io/objects/wchar_t/4_xin.in: New.
5664 * testsuite/27_io/objects/wchar_t/5.cc: New test.
5665 * testsuite/27_io/objects/wchar_t/5268.cc: New test.
5666 * testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
5667 * testsuite/27_io/objects/wchar_t/5280_xin.in: New.
5668 * testsuite/27_io/objects/wchar_t/6.cc: New test.
5669 * testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
5670 * testsuite/27_io/objects/wchar_t/6548_xin.in: New.
5671 * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
5672 * testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
5673 * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
5674 * testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
5675 * testsuite/27_io/objects/wchar_t/7.cc: New test.
5676 * testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
5677 * testsuite/27_io/objects/wchar_t/7744_xin.in: New.
5678 * testsuite/27_io/objects/wchar_t/8.cc: New test.
5679 * testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
5680 * testsuite/27_io/objects/wchar_t/9_xin.in: New.
5681 * testsuite/27_io/objects/wchar_t/9520.cc: New test.
5682 * testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
5683 * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
5684 * testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
5685 * testsuite/27_io/objects/wchar_t/9662.cc: New test.
5686 * testsuite/ext/stdiobuf_char.cc: New test.
5687 * testsuite/ext/stdiobuf_wchar_t.cc: New test.
5689 2003-05-10 Paolo Carlini <pcarlini@unitus.it>
5691 * testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
5692 unnecessary includes and unused string literals.
5693 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
5695 2003-05-08 Paolo Carlini <pcarlini@unitus.it>
5697 * include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
5699 2003-05-07 Richard Henderson <rth@redhat.com>
5702 * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
5703 (__cxa_end_catch): Likewise.
5704 * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use
5705 _Unwind_Resume_or_Rethrow.
5706 * libsupc++/eh_personality.cc (empty_exception_spec): New.
5707 (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
5708 for _UA_FORCE_UNWIND. Honor empty filter spec for foreign
5709 exceptions. Don't push terminate/unexpected to cxa functions.
5710 (__cxa_call_unexpected): Remove foreign exception fixmes.
5712 2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
5714 * testsuite/27_io/ios_base/cons: New.
5715 * testsuite/27_io/ios_base/cons/assign_neg.cc: New.
5716 * testsuite/27_io/ios_base/cons/copy_neg.cc: New.
5718 2003-05-07 Paolo Carlini <pcarlini@unitus.it>
5720 * include/std/std_fstream.h (_M_is_indeterminate): Remove.
5722 (basic_filebuf<char/wchar_t>::_M_underflow): Simplify: either
5723 there is no buffer or __testget == !__testinit.
5726 (basic_filebuf<char/wchar_t>::_M_underflow): _M_set_determinate()
5727 automatically sets, if appropriate, _M_out_cur == _M_in_cur.
5729 * include/std/std_fstream.h (_M_destroy_pback): Don't set
5730 unnecessarily _M_pback_cur_save and _M_pback_end_save.
5732 * include/std/std_fstream.h (_M_set_determinate): Minor tweak.
5734 * include/std/std_sstream.h (_M_sync): Minor tweak.
5736 * include/bits/fstream.tcc (close): No need to call
5737 _M_destroy_pback, setting _M_pback_init to false suffices
5740 2003-05-06 Benjamin Kosnik <bkoz@redhat.com>
5742 * include/bits/stl_algo.h: Enums as _S_.
5743 * include/bits/stl_tree.h: Same.
5744 * include/bits/stl_bvector.h: Same.
5745 * include/bits/ios_base.h: Same.
5746 * include/bits/stl_alloc.h: Same.
5747 * include/ext/stl_hashtable.h: Same.
5748 * src/ios.cc: And here.
5750 * include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
5751 * include/bits/sstream.tcc: Same.
5753 * include/bits/basic_ios.h: Correct spacing for '< ctype'.
5755 * include/bits/locale_facets.tcc: Replace __temp to __tmp.
5757 * include/bits/locale_facets.h (__num_base): Remove protected.
5758 Use _S_[io]* names for enumerations.
5759 (_S_format_int): Remove.
5760 * include/bits/locale_facets.tcc: Same.
5761 * src/locale.cc: Same.
5763 * include/std/std_sstream.h (stringbuf::str): Tweak formatting.
5765 2003-05-06 Phil Edwards <pme@gcc.gnu.org>
5767 * docs/html/faq/index.html (3.10): Add note about mips atomicity.h.
5768 * docs/html/faq/index.txt: Regenerated.
5770 2003-05-06 Michael Ritzert <Ritzert@t-online.de>
5771 Matt Kraai <kraai@alumni.cmu.edu>
5773 * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
5776 2003-05-06 Richard Sandiford <rsandifo@redhat.com>
5778 * configure.target (mips*): Use the generic atomicity.h by default.
5780 2003-05-05 Loren J. Rittle <ljrittle@acm.org>
5781 (Inspired by an alternate patch from Danny Smith.)
5783 * include/bits/stl_threads.h (_Atomic_swap): Kill it...
5784 (_Swap_lock_struct<>): ...and the horse it rode in on.
5785 * src/globals.cc (_Swap_lock_struct<>): Likewise.
5786 * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
5787 member to support...
5788 * include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
5789 visibility rules related to POSIX threads.
5790 * testsuite/thread/pthread7-rope.cc: New test.
5792 2003-05-04 Paolo Carlini <pcarlini@unitus.it>
5794 * testsuite/21_strings/basic_string/find/char/3.cc: New
5795 file, testing basic_string<char>::find_first_not_of.
5796 * testsuite/21_strings/basic_string/find/wchar_t/3.cc:
5797 Likewise for basic_string<wchar_t>.
5799 2003-05-03 Loren J. Rittle <ljrittle@acm.org>
5801 * testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
5803 2003-05-02 Benjamin Kosnik <bkoz@redhat.com>
5805 * include/Makefile.am (CLEANFILES): Remove PCH files in target
5807 * include/Makefile.in: Regenerate.
5809 2003-05-02 Paolo Carlini <pcarlini@unitus.it>
5811 * include/std/std_sstream.h (str()): Tidy.
5813 2003-05-02 Nathan Myers <ncm@cantrip.org>
5814 Paolo Carlini <pcarlini@unitus.it>
5816 * include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
5818 2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
5820 * include/bits/basic_string.h (swap): Remove redundant template
5821 parameters from declaration of non-template member function.
5823 2003-05-01 Phil Edwards <pme@gcc.gnu.org>
5825 * acconfig.h (_GLIBCPP_USE_NLS): New symbol.
5826 * configure.in: Move libintl.h header test...
5827 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): ...to here. Gather all
5828 the NLS-related test results into one symbol.
5829 * src/functexcept.cc: Use it here.
5830 * aclocal.m4, config.h.in, configure: Regenerated.
5832 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5834 * include/bits/sstream.tcc (overflow): Instead of calling
5835 str(), then _M_string.reserve, thus copying the contents
5836 of the current buffer two times, just copy the latter in
5837 a temporary, then use the 'swap trick'.
5839 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5841 * include/std/std_sstream.h (str()): Revert the best of the
5842 previous 'improvement', incorrect due to the COW nature of
5843 v3 basic_string; simplify.
5845 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5847 * include/bits/streambuf.tcc (__copy_streambufs): Adjust the
5848 type of __avail to ptrdiff_t to avoid signed-unsigned warning.
5850 2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
5852 * testsuite/abi_check.cc (check_version): Update known versions.
5853 Check added symbols for version_name != base version. Add missing
5854 symbols to incompatible list.
5856 2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
5858 * acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
5859 * aclocal.m4: Regenerated.
5860 * configure: Regenerated.
5862 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5864 * include/bits/streambuf.tcc (basic_streambuf::xsgetn):
5865 Const-ify some variables.
5866 (basic_streambuf::xsputn): Likewise; change the type of some
5867 variables to size_t.
5868 (__copy_streambufs): Change some variables to size_t.
5870 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5872 * include/std/std_sstream.h (str()): Avoid constructing
5873 a basic_string temporary not only when it would turn out
5874 to be zero-sized but also when identical to the current
5877 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
5879 * include/ext/stdio_filebuf.h
5880 (stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
5881 stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
5882 Shorten a bit (-10 lines) by factoring out some code.
5884 2003-04-30 Phil Edwards <pme@gcc.gnu.org>
5886 * acinclude.m4: Add bit missing from previous patch.
5887 * aclocal.m4, configure: Regenerated.
5889 2003-04-29 Phil Edwards <pme@gcc.gnu.org>
5891 * docs/doxygen/mainpage.html: Bring up to date.
5892 * docs/doxygen/run_doxygen: Cosmetic tweaks. Work around a bug
5894 * docs/doxygen/user.cfg.in: Scanning the precompiled headers
5895 breaks everything. Don't scan them.
5896 * docs/html/documentation.html: Point to "Write after approval"
5899 2003-04-29 Phil Edwards <pme@gcc.gnu.org>
5901 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Search for gettext outside
5902 of libc if message translations are being used. Fix info text in
5903 xieee_1003.1-2001 case.
5904 * aclocal.m4, configure: Regenerate.
5906 2003-04-29 Joel Sherrill <joel.sherrill@OARcorp.com>
5907 Loren J. Rittle <ljrittle@acm.org>
5908 Martin v. Loewis <martin@v.loewis.de>
5910 * config/cpu/i386/atomicity.h: New file.
5912 2003-04-29 Paolo Carlini <pcarlini@unitus.it>
5914 * include/bits/fstream.tcc (open): Change to single return.
5916 2003-04-29 Paolo Carlini <pcarlini@unitus.it>
5918 * include/std/std_sstream.h (underflow): Change to single return.
5920 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
5922 * include/std/std_streambuf.h (_M_buf): is currently
5923 used only for basic_filebuf, therefore move it there.
5924 (basic_streambuf(), ~basic_streambuf()): Adjust.
5925 * include/std/std_fstream.h (_M_buf): Moved here.
5926 * include/std/std_sstream.h (setbuf): Don't set _M_buf,
5927 is actually redundant for basic_stringbuf.
5928 (_M_really_sync): Likewise.
5929 * include/bits/fstream.tcc (basic_filebuf()): Adjust.
5930 * include/bits/sstream.tcc (seekoff): Adjust.
5932 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
5934 * src/localename.cc: Standardize exception strings.
5935 * src/locale.cc: Same.
5937 * include/bits/basic_string.tcc: Same.
5938 * include/bits/basic_ios.tcc: Same.
5939 * include/std/std_bitset.h: Same.
5940 * include/ext/ropeimpl.h: Same.
5941 * include/bits/stl_vector.h: Same.
5942 * include/bits/stl_deque.h: Same.
5943 * include/bits/stl_bvector.h: Same.
5944 * config/locale/generic/c_locale.cc: Same.
5945 * config/locale/gnu/c_locale.cc: Same.
5946 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
5948 * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
5950 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
5952 * include/std/std_streambuf.h (_M_buf_size): is currently
5953 used only for basic_filebuf, therefore move it there.
5954 (basic_streambuf(), ~basic_streambuf()): Adjust.
5955 * include/std/std_fstream.h (_M_buf_size): Moved here.
5956 * include/bits/fstream.tcc (basic_filebuf()): Adjust.
5958 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
5960 * include/bits/streambuf.tcc (__copy_streambufs): Don't use
5961 _M_buf_size (synced input is now correctly dealt with
5962 elsewhere); when the output buffer is full don't fall back
5963 to a snextc-sputc loop, call overflow instead.
5965 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
5967 * include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
5968 the innermost 'if' by factoring out some code.
5970 2003-04-28 Phil Edwards <pme@gcc.gnu.org>
5972 * configure.in: Test for libintl.h.
5973 * include/bits/c++config: Define __N for everybody.
5974 * include/bits/basic_string.h, include/bits/stl_bvector.h,
5975 include/bits/stl_deque.h, include/bits/stl_vector.h,
5976 include/std/std_bitset.h: Wrap all __throw* text with __N.
5977 * po/Makefile.am (pot): New rule, mostly working.
5978 * src/functexcept.cc: Call gettext on all __throw* arguments when
5979 -fexceptions is in effect.
5980 * po/Makefile.in, config.h.in, configure: Regenerate.
5982 2003-04-28 Petur Runolfsson <peturr02@ru.is>
5985 * include/bits/ios_base.h (Init::_S_ios_create,
5986 Init::_S_ios_destroy): Remove declarations.
5987 (Init::_S_create_buffers,
5988 Init::_S_destroy_buffers): Declare
5989 * src/ios.cc (Init::_S_ios_create): Remove
5990 (Init::_S_create_buffers): Create buffers and add to streams.
5991 (Init::_S_ios_destroy): Rename to...
5992 (Init::_S_destroy_buffers): this.
5993 (Init::Init): Only construct streams once.
5994 (Init::~Init): Flush streams, don't destroy them.
5995 (ios_base::sync_with_stdio): Don't destroy streams, only buffers.
5996 * testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
5997 * testsuite/27_io/objects/char/5.cc: New test.
5998 * testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
5999 * testsuite/27_io/objects/char/6.cc: New test.
6000 * testsuite/27_io/objects/char/7.cc: New test.
6002 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
6004 * testsuite/27_io/objects/char/8.cc: New test.
6006 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
6008 * testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
6009 * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
6011 2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
6013 * include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
6014 _M_destroy_pback. _M_pback_create to
6015 _M_create_pback. _M_underflow_common to
6016 _M_underflow. _M_really_overflow to _M_overflow.
6017 * include/bits/fstream.tcc: Same.
6018 * src/fstream.cc: Same.
6019 * include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
6020 _M_move_in_cur. _M_out_cur_move to _M_move_out_cur.
6021 * include/bits/streambuf.tcc: Same.
6022 * include/bits/fstream.tcc: Same.
6023 * include/bits/sstream.tcc: Same.
6025 2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
6027 * include/bits/locale_classes.h (locale::_Impl): Change _M_names
6028 from fixed size array.
6029 (locale): Change _S_categories as well.
6031 * include/bits/locale_facets.tcc: Tweak.
6032 * config/locale/gnu/c_locale.cc: Assign _S_categories.
6033 * config/locale/generic/c_locale.cc: Same.
6034 * src/locale.cc: Tweak.
6035 * src/globals.cc: Change facet_name to name_vec, add names_c.
6036 * src/localename.cc: Use them.
6037 (locale::_Impl::~_Impl): Destroy _M_names.
6038 (locale::_Impl::_Impl): Create _M_names.
6040 2003-04-27 Andreas Schwab <schwab@suse.de>
6042 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
6043 (__enc_traits): Use __ibom and __ebom instead of ignoring them.
6045 2003-04-27 Nathan Myers <ncm@cantrip.org>
6047 Move some basic_string members out of line because
6048 they are too big to reasonably be inline.
6049 * include/bits/basic_string.h
6050 (assign(const basic_string&, size_type, size_type),
6051 assign(const _CharT*, size_type),
6052 insert(size_type, const basic_string&, size_type, size_type),
6053 insert(size_type, const _CharT*, size_type),
6054 replace(size_type, size_type, const _CharT*, size_type)):
6055 Move from here to...
6056 * include/bits/basic_string.tcc: ...here.
6058 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
6060 * include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
6061 the innermost 'if' by factoring out some code.
6063 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
6065 * include/bits/streambuf.tcc (__copy_streambufs): Don't
6066 use in_avail(), simplify.
6068 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
6070 * include/std/std_sstream.h (setbuf): don't set _M_buf_size,
6071 in basic_stringbuf it's unused.
6073 * include/std/std_sstream.h (underflow): consistently use
6074 _M_in_cur, not gptr().
6076 2003-04-25 Ranjit Mathew <rmathew@hotmail.com>
6077 Phil Edwards <pme@gcc.gnu.org>
6079 * testsuite_flags.in: Guard against the possibility
6080 of having "xgcc" as a part of a folder name in the
6081 path to the GCC build folder.
6082 * testsuite/Makefile.am: Likewise.
6083 * testsuite/Makefile.in: Regenerated.
6085 2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
6088 * include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
6089 exception specifications.
6090 (basic_filebuf::close): Same.
6091 (basic_filebuf::_M_pback_destroy): Same.
6092 (basic_filebuf::_M_destroy_internal_buffer): Same.
6093 (basic_filebuf): Remove __res_type typedef.
6094 * src/fstream.cc: Same.
6095 * include/bits/fstream.tcc
6096 (basic_filebuf::_M_convert_to_external): Simplify.
6097 (basic_filebuf::seekoff): Use has_facet before use_facet.
6098 (basic_filebuf::close): Add exception specification of throw().
6099 * testsuite/27_io/basic_filebuf/cons: New.
6100 * testsuite/27_io/basic_filebuf/cons/wchar_t: New.
6101 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
6102 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
6103 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
6105 2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
6107 * include/bits/locale_classes.h
6108 (locale::_S_extra_categories_size): Remove.
6109 * src/locale.cc: Remove _S_extra_categories_size.
6110 * src/localename.cc: Same.
6111 * config/locale/gnu/c_locale.cc: Same.
6112 * config/locale/generic/c_locale.cc: Same.
6114 2003-04-24 Richard Sandiford <rsandifo@redhat.com>
6116 * src/localename.cc (__gnu_cxx::facet_vec): Correct types.
6118 2003-04-24 Phil Edwards <pme@gcc.gnu.org>
6120 * docs/html/17_intro/howto.html: Update some links.
6121 * docs/html/18_support/howto.html: Link doxygen numeric_limits notes.
6122 * docs/html/27_io/howto.html: Link doxygen stdio_filebuf notes.
6123 * docs/html/ext/howto.html: Link to demangler notes and API.
6124 * docs/html/faq/index.html: Remove trailing whitespace.
6125 (1.4, 2.4, 3.8, 4.1): Bring up to date.
6126 (5.6): Change to a bulleted list.
6128 * docs/html/faq/index.txt, docs/html/documentation.html,
6129 docs/html/17_intro/porting.html: Regenerate.
6131 2003-04-23 Paolo Carlini <pcarlini@unitus.it>
6133 * testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
6134 belongs to basic_filebuf.
6135 * testsuite/27_io/basic_fstream/3.cc: Likewise.
6136 * testsuite/27_io/basic_ifstream/3.cc: Likewise.
6137 * testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
6138 instantiation (now belongs to basic_filebuf).
6139 * testsuite/27_io/basic_iostream/3.cc: Likewise.
6140 * testsuite/27_io/basic_istream/3.cc: Likewise.
6141 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
6142 _S_pback_size now belongs to basic_filebuf.
6143 * testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
6144 instantiation (now belongs to basic_filebuf).
6145 * testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
6146 belongs to basic_filebuf.
6147 * testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
6148 instantiation (now belongs to basic_filebuf).
6149 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
6150 _S_pback_size now belongs to basic_filebuf.
6151 * testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
6152 instantiation (now belongs to basic_filebuf).
6153 * testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
6155 * testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
6156 instantiation (now belongs to basic_filebuf).
6157 * testsuite/27_io/basic_stringstream/3.cc: Likewise.
6159 2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
6161 * configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
6162 * configure: Regenerated.
6164 2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
6166 * config/locale/generic/c_locale.h (__convert_from_v): Use
6169 2003-04-23 Phil Edwards <pme@gcc.gnu.org>
6171 * docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
6172 implementation only.
6173 * include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
6174 Comment and change to comply with DR 60 and the effect on gcount().
6175 * include/std/std_istream.h: Update comments.
6176 * testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
6177 comments about reasons for tests. Test sync() against gcount().
6178 * testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
6179 for effect on gcount().
6180 * testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
6181 for effect on gcount().
6183 2003-04-22 Loren J. Rittle <ljrittle@acm.org>
6185 * testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
6188 2003-04-22 Paolo Carlini <pcarlini@unitus.it>
6190 * include/std/std_streambuf.h (_S_pback_size, _M_pback,
6191 _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
6192 _M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
6193 (basic_streambuf::basic_streambuf()): Adjust.
6194 * include/std/std_fstream.h (_S_pback_size, _M_pback,
6195 _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
6196 _M_pback_create(), _M_pback_destroy()): Moved here
6197 from basic_streambuf.
6198 * include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
6200 (basic_filebuf::_S_pback_size): Add declaration.
6201 * include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
6204 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
6206 Consistently use _M_in_beg instead of eback(), _M_in_cur
6207 instead of gptr(), and so on.
6208 * include/bits/fstream.tcc (pbackfail, imbue): Here.
6209 * include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
6210 * include/bits/streambuf.tcc (sbumpc, sputbackc,
6211 __copy_streambufs): Ditto.
6212 * include/std/std_streambuf.h (sgetc): Ditto.
6214 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
6216 * include/bits/sstream.tcc (pbackfail, overflow):
6219 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
6221 * include/std/std_streambuf.h (uflow()): It's used only by
6222 basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
6223 therefore do not consider the _M_buf_unified == true case.
6225 * include/std/std_streambuf.h (sgetc()): Restore __ret variable.
6227 2003-04-20 Paolo Carlini <pcarlini@unitus.it>
6229 * docs/html/ext/howto.html ('LWG Issues'):
6230 Add issues 19, 90, 171, 231, 271.
6232 2003-04-20 Paolo Carlini <pcarlini@unitus.it>
6234 * include/bits/sstream.tcc (pbackfail): Remove redundant
6235 NULL pointer check from test involving _M_in_*.
6236 (overflow, seekoff, seekpos): Const qualify bool variables.
6237 * include/std/std_sstream.h (underflow): Remove redundant
6238 NULL pointer check from test involving _M_in_*.
6239 (_M_really_sync): Const qualify bool variables.
6240 * src/fstream.cc (_M_underflow_common): Remove redundant
6241 NULL pointer check from test involving _M_in_*, const qualify
6244 * include/std/std_streambuf.h (sgetc): Remove redundant
6247 2003-04-18 Paolo Carlini <pcarlini@unitus.it>
6249 According to 5.9 para 2 (second bullet) for pointers p, q
6250 pointing to the same type, with p == 0 and q == 0, (p < q)
6252 * include/bits/fstream.tcc (close, overflow, _M_really_overflow,
6253 seekoff): Remove redundant NULL pointer checks from tests
6254 involving _M_out_* and _M_in_*, const qualify bool variables.
6255 (showmanyc, pbackfail, _M_convert_to_external, imbue): Const
6256 qualify bool variables.
6257 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
6258 Remove redundant NULL pointer checks from tests involving
6259 _M_out_* and _M_in_*, const qualify bool variables.
6260 * include/std/std_fstream.h (sync): Likewise.
6261 (_M_is_indeterminate): Const qualify bool variables.
6262 * include/std/std_streambuf.h (sgetc, uflow): Remove redundant
6263 NULL pointer checks from tests involving _M_out_* and _M_in_*,
6264 const qualify bool variables.
6265 (_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
6268 2003-04-18 Loren J. Rittle <ljrittle@acm.org>
6270 * include/c_std/std_cmath.h (C99 FP capture): Only undefine said
6271 C99 FP macros, if actually captured.
6273 * docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
6274 (_GLIBCPP_USE_C99_DYNAMIC): New macro.
6275 (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
6276 (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
6277 * config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
6279 (_GLIBCPP_USE_C99_DYNAMIC): New macro.
6280 (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
6281 (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
6282 * include/c_std/std_cstdlib.h: Use new macros.
6283 * include/c_std/std_cstdio.h: Use new macros.
6284 * include/c_std/std_cwchar.h: Use new macros.
6286 2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
6289 * include/bits/ostream.tcc: Catch all exceptions for formatted
6290 output, instead of std::exception and derivatives.
6291 * include/bits/istream.tcc: Same.
6292 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
6293 * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
6294 * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
6295 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
6296 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
6297 * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
6300 2003-04-17 Phil Edwards <pme@gcc.gnu.org>
6302 * include/bits/c++config: Minor cosmetic tweaks.
6304 2003-04-17 Loren J. Rittle <ljrittle@acm.org>
6306 * testsuite_flags.in (PCHFLAGS): Find PCH in new home.
6307 * include/Makefile.am (pch_input): Find in ${target_builddir}.
6308 (pch_output): Rename to...
6309 (pch_output_builddir): ..this. Find in ${target_builddir}.
6310 (pch_source): Tweak.
6311 (pch_build): Key off a built file.
6312 (pch_output rule): Rename to...
6313 (pch_input rule): ...this. Produce ${pch_output_builddir}
6314 instead of ${pch_output}.
6315 (install-pch rule): Install ${pch_output_builddir}.
6316 * include/Makefile.in: Regenerated.
6318 2003-04-17 Paolo Carlini <pcarlini@unitus.it>
6320 * include/std/std_streambuf.h (setp): _M_out_lim, being
6321 the end limit of used put area, is set equal to _M_out_beg.
6323 2003-04-16 Benjamin Kosnik <bkoz@redhat.com>
6325 * acinclude.m4 (GLIBCPP_CHECK_PCH): New.
6326 * aclocal.m4: Regenerated.
6327 * configure.in: Remove old demangler bits.
6329 * configure: Regenerate.
6330 * config.h.in: Regenerate.
6331 * include/Makefile.am (allstamps): Now allstamped.
6332 (allcreated): Define this.
6333 (all-local): Use 'em.
6334 Conditionally define pch_build, pch_install based on
6336 (${pch_output}): New rule.
6337 (install-pch): New rule.
6338 (install-headers): New rule.
6339 (install-data-local): Install headers and conditionally pch.
6340 * include/Makefile.in: Regenerate.
6341 * testsuite_flags.in (--build-cxx): Use pch file.
6343 2003-04-16 Jonathan Wakely <redi@gcc.gnu.org>
6345 * docs/html/ext/sgiexts.html: Fix path to stylesheet.
6347 2003-04-15 Benjamin Kosnik <bkoz at redhat dot com>
6348 Paolo Carlini <pcarlini at unitus dot it>
6351 * docs/html/27_io/howto.html
6352 ('The buffering is screwing up my program!'): Explain that
6353 opening counts as an I/O operation.
6355 2003-04-15 Andreas Tobler <a.tobler@schweiz.ch>
6357 * testsuite/thread/pthread1.cc: Enable for darwin test.
6358 * testsuite/thread/pthread2.cc: Same.
6359 * testsuite/thread/pthread3.cc: Same.
6360 * testsuite/thread/pthread4.cc: Same.
6361 * testsuite/thread/pthread5.cc: Same.
6362 * testsuite/thread/pthread6.cc: Same.
6364 2003-04-15 Loren J. Rittle <ljrittle@acm.org>
6367 * include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
6368 Populate it with multiple legal ways to obtain the C99 float
6369 transcendentals. Use them instead of direct global reference.
6370 (C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
6371 * docs/html/17_intro/porting.texi
6372 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
6373 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
6374 (_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
6375 * config/os/bsd/freebsd/os_defines.h
6376 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
6377 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
6378 * testsuite/26_numerics/c_math_dynamic.cc: New file.
6380 2003-04-14 Andreas Tobler <toa@pop.agri.ch>
6381 Benjamin Kosnik <bkoz@redhat.com>
6383 * config/os/generic/ctype_inline.h: Fix.
6385 2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
6387 * testsuite/testsuite_hooks.h
6388 (__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
6389 Change to try_named_locale.
6390 * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
6392 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
6394 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
6395 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
6396 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
6397 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
6398 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
6399 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
6400 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
6401 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
6402 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
6403 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
6404 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
6405 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
6406 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
6407 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
6408 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
6409 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
6410 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
6411 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
6412 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
6413 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
6414 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
6415 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
6416 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
6417 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
6418 * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
6419 * testsuite/22_locale/collate/compare/char/1.cc: Same.
6420 * testsuite/22_locale/collate/compare/char/2.cc: Same.
6421 * testsuite/22_locale/collate/compare/char/3.cc: Same.
6422 * testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
6423 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
6424 * testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
6425 * testsuite/22_locale/collate/hash/char/2.cc: Same.
6426 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
6427 * testsuite/22_locale/collate/transform/char/2.cc: Same.
6428 * testsuite/22_locale/collate/transform/char/3.cc: Same.
6429 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
6430 * testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
6431 * testsuite/22_locale/collate_byname/1.cc: Same.
6432 * testsuite/22_locale/ctype/is/char/2.cc: Same.
6433 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
6434 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
6435 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
6436 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
6437 * testsuite/22_locale/facet/2.cc: Same.
6438 * testsuite/22_locale/locale/cons/2.cc: Same.
6439 * testsuite/22_locale/locale/cons/4.cc: Same.
6440 * testsuite/22_locale/locale/cons/5.cc: Same.
6441 * testsuite/22_locale/locale/cons/7.cc: Same.
6442 * testsuite/22_locale/locale/cons/7222-c.cc: Same.
6443 * testsuite/22_locale/locale/cons/7222-env.cc: Same.
6444 * testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
6445 * testsuite/22_locale/messages/members/char/1.cc: Same.
6446 * testsuite/22_locale/messages/members/char/2.cc: Same.
6447 * testsuite/22_locale/messages/members/char/3.cc: Same.
6448 * testsuite/22_locale/messages_byname/1.cc: Same.
6449 * testsuite/22_locale/money_get/get/char/1.cc: Same.
6450 * testsuite/22_locale/money_get/get/char/2.cc: Same.
6451 * testsuite/22_locale/money_get/get/char/3.cc: Same.
6452 * testsuite/22_locale/money_get/get/char/4.cc: Same.
6453 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
6454 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
6455 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
6456 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
6457 * testsuite/22_locale/money_put/put/char/1.cc: Same.
6458 * testsuite/22_locale/money_put/put/char/2.cc: Same.
6459 * testsuite/22_locale/money_put/put/char/3.cc: Same.
6460 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
6461 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
6462 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
6463 * testsuite/22_locale/moneypunct/members/char/2.cc: Same.
6464 * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
6465 * testsuite/22_locale/moneypunct_byname/1.cc: Same.
6466 * testsuite/22_locale/num_get/get/char/1.cc: Same.
6467 * testsuite/22_locale/num_get/get/char/2.cc: Same.
6468 * testsuite/22_locale/num_get/get/char/3.cc: Same.
6469 * testsuite/22_locale/num_get/get/char/5.cc: Same.
6470 * testsuite/22_locale/num_get/get/char/6.cc: Same.
6471 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
6472 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
6473 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
6474 * testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
6475 * testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
6476 * testsuite/22_locale/num_put/put/char/1.cc: Same.
6477 * testsuite/22_locale/num_put/put/char/2.cc: Same.
6478 * testsuite/22_locale/num_put/put/char/3.cc: Same.
6479 * testsuite/22_locale/num_put/put/char/5.cc: Same.
6480 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
6481 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
6482 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
6483 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
6484 * testsuite/22_locale/numpunct/members/char/1.cc: Same.
6485 * testsuite/22_locale/numpunct/members/char/2.cc: Same.
6486 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
6487 * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
6488 * testsuite/22_locale/numpunct_byname/1.cc: Same.
6489 * testsuite/22_locale/numpunct_byname/2.cc: Same.
6490 * testsuite/22_locale/time_get/date_order/char/1.cc: Same.
6491 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
6492 * testsuite/22_locale/time_get/get_date/char/1.cc: Same.
6493 * testsuite/22_locale/time_get/get_date/char/2.cc: Same.
6494 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
6495 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
6496 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
6497 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
6498 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
6499 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
6500 * testsuite/22_locale/time_get/get_time/char/1.cc: Same.
6501 * testsuite/22_locale/time_get/get_time/char/2.cc: Same.
6502 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
6503 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
6504 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
6505 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
6506 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
6507 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
6508 * testsuite/22_locale/time_get/get_year/char/1.cc: Same.
6509 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
6510 * testsuite/22_locale/time_put/put/char/1.cc: Same.
6511 * testsuite/22_locale/time_put/put/char/2.cc: Same.
6512 * testsuite/22_locale/time_put/put/char/3.cc: Same.
6513 * testsuite/22_locale/time_put/put/char/4.cc: Same.
6514 * testsuite/22_locale/time_put/put/char/5.cc: Same.
6515 * testsuite/22_locale/time_put/put/char/6.cc: Same.
6516 * testsuite/22_locale/time_put/put/char/7.cc: Same.
6517 * testsuite/22_locale/time_put/put/char/8.cc: Same.
6518 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
6519 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
6520 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
6521 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
6522 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
6523 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
6524 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
6525 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
6526 * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
6527 * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
6528 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
6529 * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
6530 * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
6532 2003-04-14 Andreas Tobler <toa@pop.agri.ch>
6534 * configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
6535 solaris includes, not generic.
6537 2003-04-14 Loren J. Rittle <ljrittle@acm.org>
6539 * testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
6541 * include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
6542 * include/bits/concept_check.h: Fix multi-line comment.
6543 * testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
6544 when target is *-*-freebsd*.
6546 2003-04-14 Nathan Myers <ncm@cantrip.org>
6547 Paolo Carlini <pcarlini@unitus.it>
6549 PR libstdc++/9701 (in_avail())
6550 * include/std/std_streambuf.h (in_avail): Simplify, in_avail
6551 doesn't care if there is anything in some putback cell.
6552 * testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
6554 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
6555 unused string literals.
6557 2003-04-14 Paolo Carlini <pcarlini@unitus.it>
6559 * include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
6560 _M_out_end, _M_set_indeterminate() does it.
6562 2003-04-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
6564 * os/hpux/ctype_inline.h: Replace with gnu-linux version.
6566 2003-04-12 David Edelsohn <edelsohn@gnu.org>
6568 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
6569 Change basic_streambuf instantiation to "unsigned char".
6570 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
6572 2003-04-12 Paolo Carlini <pcarlini@unitus.it>
6574 Remove _M_buf_size_opt, use directly _M_buf_size instead.
6575 * include/bits/fstream.tcc
6576 (basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
6577 references to _M_buf_size_opt.
6578 * include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
6579 * include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
6580 __bufsize to __in_avail and __size_opt to __buf_size.
6581 * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
6582 * include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
6583 * include/std/std_streambuf.h (~basic_streambuf(),
6584 basic_streambuf()): Likewise, remove _M_buf_size_opt member.
6585 * testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
6586 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
6587 * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
6588 * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
6589 * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
6590 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
6591 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
6592 * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
6593 * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
6594 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
6595 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
6596 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
6598 2003-04-12 Paolo Carlini <pcarlini at unitus dot it>
6600 * include/ext/stdio_filebuf.h
6601 (stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
6602 stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
6603 _M_buf_size_opt == 0 only means "not to use an allocated buffer"
6604 since a stack-based buffer is used for small values of the size_t
6606 * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
6607 If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
6608 * testsuite/ext/stdio_filebuf_2.cc: New testfile.
6610 2003-04-12 Paolo Carlini <pcarlini@unitus.it>
6613 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
6614 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
6616 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
6618 * testsuite/22_locale/locale/cons/3.cc: Split.
6619 * testsuite/22_locale/locale/cons/7222-c.cc: New.
6620 * testsuite/22_locale/locale/cons/7222-env.cc: New.
6621 Check before trying to create a locale from the environment.
6622 * testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
6623 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
6626 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
6628 * testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
6629 locale to construct this hybrid locale, not the global locale.
6631 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
6633 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
6634 instantiation for AIX.
6635 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
6636 * testsuite/25_algorithms/min_max.cc: Same.
6638 2003-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
6640 * basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
6641 twice. Always set _M_cfile to 0 when stream was open.
6643 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
6645 Reshuffle 27_io testsuite.
6646 * testsuite/27_io/filebuf.cc,
6647 filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
6648 filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
6649 filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
6650 filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
6651 ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
6652 ifstream_members.cc, instantiations.cc, ios.cc,
6653 ios_base_callbacks.cc, ios_base_members_static-1.tst,
6654 ios_base_members_static.cc, ios_base_storage.cc,
6655 ios_base_types.cc, ios_ctor.cc, ios_init.cc,
6656 ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
6657 iostream.cc, iostream_members.cc, istream.cc,
6658 istream_exception.cc, istream_extractor_char.cc,
6659 istream_extractor_other-1.tst, istream_extractor_other-1.txt,
6660 istream_extractor_other-2.tst, istream_extractor_other.cc,
6661 istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
6662 istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
6663 istream_sentry.cc, istream_unformatted-1.tst,
6664 istream_unformatted-1.txt, istream_unformatted.cc,
6665 istringstream.cc, istringstream_members.cc,
6666 narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
6667 ofstream_members.cc, ostream.cc, ostream_exception.cc,
6668 ostream_fail.cc, ostream_inserter_arith.cc,
6669 ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
6670 ostream_inserter_char.cc, ostream_inserter_other-1.tst,
6671 ostream_inserter_other-2.tst, ostream_inserter_other.cc,
6672 ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
6673 ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
6674 ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
6675 streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
6676 stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
6677 wide_stream_objects.cc, istream_extractor_arith/01.cc,
6678 istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
6679 istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
6680 istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
6681 istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
6682 istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
6684 * 27_io/basic_filebuf/1.cc: New.
6685 * 27_io/basic_filebuf/2.cc: New.
6686 * 27_io/basic_filebuf/3.cc: New.
6687 * 27_io/basic_filebuf/4.cc: New.
6688 * 27_io/basic_filebuf/close/char/1.cc: New.
6689 * 27_io/basic_filebuf/close/char/2.cc: New.
6690 * 27_io/basic_filebuf/close/char/3.cc: New.
6691 * 27_io/basic_filebuf/close/char/4879.cc: New.
6692 * 27_io/basic_filebuf/close/char/9964.cc: New.
6693 * 27_io/basic_filebuf/imbue/char/1.cc: New.
6694 * 27_io/basic_filebuf/imbue/char/9322.cc: New.
6695 * 27_io/basic_filebuf/in_avail/char/1.cc: New.
6696 * 27_io/basic_filebuf/is_open/char/1.cc: New.
6697 * 27_io/basic_filebuf/open/char/1.cc: New.
6698 * 27_io/basic_filebuf/open/char/2.cc: New.
6699 * 27_io/basic_filebuf/open/char/3.cc: New.
6700 * 27_io/basic_filebuf/open/char/9507.cc: New.
6701 * 27_io/basic_filebuf/overflow/char/1.cc: New.
6702 * 27_io/basic_filebuf/overflow/char/3599.cc: New.
6703 * 27_io/basic_filebuf/overflow/char/9169.cc: New.
6704 * 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
6705 * 27_io/basic_filebuf/overflow/char/9988.cc: New.
6706 * 27_io/basic_filebuf/sbumpc/char/1.cc: New.
6707 * 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
6708 * 27_io/basic_filebuf/seekoff/char/1.cc: New.
6709 * 27_io/basic_filebuf/seekoff/char/2.cc: New.
6710 * 27_io/basic_filebuf/seekpos/char/1.cc: New.
6711 * 27_io/basic_filebuf/seekpos/char/2.cc: New.
6712 * 27_io/basic_filebuf/setbuf/char/1.cc: New.
6713 * 27_io/basic_filebuf/setbuf/char/2.cc: New.
6714 * 27_io/basic_filebuf/setbuf/char/3.cc: New.
6715 * 27_io/basic_filebuf/sgetc/char/1.cc: New.
6716 * 27_io/basic_filebuf/sgetn/char/1.cc: New.
6717 * 27_io/basic_filebuf/sgetn/char/2.cc: New.
6718 * 27_io/basic_filebuf/snextc/char/1.cc: New.
6719 * 27_io/basic_filebuf/sputbackc/char/1.cc: New.
6720 * 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
6721 * 27_io/basic_filebuf/sputc/char/1.cc: New.
6722 * 27_io/basic_filebuf/sputc/char/1057.cc: New.
6723 * 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
6724 * 27_io/basic_filebuf/sputn/char/1.cc: New.
6725 * 27_io/basic_filebuf/sputn/char/1057.cc: New.
6726 * 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
6727 * 27_io/basic_filebuf/sungetc/char/1.cc: New.
6728 * 27_io/basic_filebuf/sync/char/1057.cc: New.
6729 * 27_io/basic_filebuf/sync/char/9182-1.cc: New.
6730 * 27_io/basic_filebuf/underflow/char/10097.cc: New.
6731 * 27_io/basic_fstream/1.cc: New.
6732 * 27_io/basic_fstream/2.cc: New.
6733 * 27_io/basic_fstream/3.cc: New.
6734 * 27_io/basic_fstream/4.cc: New.
6735 * 27_io/basic_fstream/rdbuf/char/2832.cc: New.
6736 * 27_io/basic_ifstream/1.cc: New.
6737 * 27_io/basic_ifstream/2.cc: New.
6738 * 27_io/basic_ifstream/3.cc: New.
6739 * 27_io/basic_ifstream/4.cc: New.
6740 * 27_io/basic_ifstream/cons/char/1.cc: New.
6741 * 27_io/basic_ifstream/open/char/1.cc: New.
6742 * 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
6743 * 27_io/basic_ios/1.cc: New.
6744 * 27_io/basic_ios/2.cc: New.
6745 * 27_io/basic_ios/3.cc: New.
6746 * 27_io/basic_ios/4.cc: New.
6747 * 27_io/basic_ios/clear/char/1.cc: New.
6748 * 27_io/basic_ios/cons/char/1.cc: New.
6749 * 27_io/basic_ios/cons/char/2.cc: New.
6750 * 27_io/basic_ios/cons/char/3.cc: New.
6751 * 27_io/basic_ios/copyfmt/char/1.cc: New.
6752 * 27_io/basic_ios/copyfmt/char/2.cc: New.
6753 * 27_io/basic_ios/exceptions/char/1.cc: New.
6754 * 27_io/basic_ios/locales/char/1.cc: New.
6755 * 27_io/basic_iostream/1.cc: New.
6756 * 27_io/basic_iostream/2.cc: New.
6757 * 27_io/basic_iostream/3.cc: New.
6758 * 27_io/basic_iostream/4.cc: New.
6759 * 27_io/basic_istream/1.cc: New.
6760 * 27_io/basic_istream/2.cc: New.
6761 * 27_io/basic_istream/3.cc: New.
6762 * 27_io/basic_istream/4.cc: New.
6763 * 27_io/basic_istream/exceptions/char/9561.cc: New.
6764 * 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
6765 * 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
6766 * 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
6767 * 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
6768 * 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
6769 * 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
6770 * 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
6771 * 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
6772 * 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
6773 * 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
6774 * 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
6775 * 27_io/basic_istream/extractors_character/char/1.cc: New.
6776 * 27_io/basic_istream/extractors_character/char/2.cc: New.
6777 * 27_io/basic_istream/extractors_character/char/3.cc: New.
6778 * 27_io/basic_istream/extractors_character/char/9826.cc: New.
6779 * 27_io/basic_istream/extractors_other/char/1.cc: New.
6780 * 27_io/basic_istream/extractors_other/char/2.cc: New.
6781 * 27_io/basic_istream/extractors_other/char/3.cc: New.
6782 * 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
6783 * 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
6784 * 27_io/basic_istream/get/char/1.cc: New.
6785 * 27_io/basic_istream/get/char/2.cc: New.
6786 * 27_io/basic_istream/getline/char/1.cc: New.
6787 * 27_io/basic_istream/getline/char/2.cc: New.
6788 * 27_io/basic_istream/getline/char/3.cc: New.
6789 * 27_io/basic_istream/ignore/char/1.cc: New.
6790 * 27_io/basic_istream/ignore/char/6360.cc: New.
6791 * 27_io/basic_istream/ignore/char/7220.cc: New.
6792 * 27_io/basic_istream/peek/char/1.cc: New.
6793 * 27_io/basic_istream/peek/char/6414.cc: New.
6794 * 27_io/basic_istream/putback/char/1.cc: New.
6795 * 27_io/basic_istream/read/char/1.cc: New.
6796 * 27_io/basic_istream/read/char/2.cc: New.
6797 * 27_io/basic_istream/read/char/3.cc: New.
6798 * 27_io/basic_istream/readsome/char/6746-1.cc: New.
6799 * 27_io/basic_istream/readsome/char/6746-2.cc: New.
6800 * 27_io/basic_istream/readsome/char/8258.cc: New.
6801 * 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
6802 * 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
6803 * 27_io/basic_istream/seekg/char/8348-1.cc: New.
6804 * 27_io/basic_istream/seekg/char/8348-2.cc: New.
6805 * 27_io/basic_istream/seekg/char/fstream.cc: New.
6806 * 27_io/basic_istream/seekg/char/sstream.cc: New.
6807 * 27_io/basic_istream/sentry/char/1.cc: New.
6808 * 27_io/basic_istream/sentry/char/2.cc: New.
6809 * 27_io/basic_istream/sentry/char/3.cc: New.
6810 * 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
6811 * 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
6812 * 27_io/basic_istream/tellg/char/1.cc: New.
6813 * 27_io/basic_istream/tellg/char/8348.cc: New.
6814 * 27_io/basic_istream/tellg/char/fstream.cc: New.
6815 * 27_io/basic_istream/tellg/char/sstream.cc: New.
6816 * 27_io/basic_istream/ws/char/1.cc: New.
6817 * 27_io/basic_istringstream/1.cc: New.
6818 * 27_io/basic_istringstream/2.cc: New.
6819 * 27_io/basic_istringstream/3.cc: New.
6820 * 27_io/basic_istringstream/4.cc: New.
6821 * 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
6822 * 27_io/basic_istringstream/str/char/1.cc: New.
6823 * 27_io/basic_ofstream/1.cc: New.
6824 * 27_io/basic_ofstream/2.cc: New.
6825 * 27_io/basic_ofstream/3.cc: New.
6826 * 27_io/basic_ofstream/4.cc: New.
6827 * 27_io/basic_ofstream/cons/char/2.cc: New.
6828 * 27_io/basic_ofstream/open/char/1.cc: New.
6829 * 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
6830 * 27_io/basic_ostream/1.cc: New.
6831 * 27_io/basic_ostream/2.cc: New.
6832 * 27_io/basic_ostream/3.cc: New.
6833 * 27_io/basic_ostream/4.cc: New.
6834 * 27_io/basic_ostream/cons/char/9827.cc: New.
6835 * 27_io/basic_ostream/endl/char/1.cc: New.
6836 * 27_io/basic_ostream/ends/char/1.cc: New.
6837 * 27_io/basic_ostream/ends/char/2.cc: New.
6838 * 27_io/basic_ostream/exceptions/char/9561.cc: New.
6839 * 27_io/basic_ostream/flush/char/1.cc: New.
6840 * 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
6841 * 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
6842 * 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
6843 * 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
6844 * 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
6845 * 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
6846 * 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
6847 * 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
6848 * 27_io/basic_ostream/inserters_character/char/1.cc: New.
6849 * 27_io/basic_ostream/inserters_character/char/2.cc: New.
6850 * 27_io/basic_ostream/inserters_character/char/3.cc: New.
6851 * 27_io/basic_ostream/inserters_character/char/4.cc: New.
6852 * 27_io/basic_ostream/inserters_character/char/5.cc: New.
6853 * 27_io/basic_ostream/inserters_character/char/6.cc: New.
6854 * 27_io/basic_ostream/inserters_character/char/8.cc: New.
6855 * 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
6856 * 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
6857 * 27_io/basic_ostream/inserters_other/char/1.cc: New.
6858 * 27_io/basic_ostream/inserters_other/char/2.cc: New.
6859 * 27_io/basic_ostream/inserters_other/char/3.cc: New.
6860 * 27_io/basic_ostream/inserters_other/char/4.cc: New.
6861 * 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
6862 * 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
6863 * 27_io/basic_ostream/sentry/char/1.cc: New.
6864 * 27_io/basic_ostream/sentry/char/2.cc: New.
6865 * 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
6866 * 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
6867 * 27_io/basic_ostream/tellp/char/1.cc: New.
6868 * 27_io/basic_ostream/tellp/char/2.cc: New.
6869 * 27_io/basic_ostringstream/1.cc: New.
6870 * 27_io/basic_ostringstream/2.cc: New.
6871 * 27_io/basic_ostringstream/3.cc: New.
6872 * 27_io/basic_ostringstream/4.cc: New.
6873 * 27_io/basic_ostringstream/cons/char/3.cc: New.
6874 * 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
6875 * 27_io/basic_ostringstream/str/char/1.cc: New.
6876 * 27_io/basic_ostringstream/str/char/2.cc: New.
6877 * 27_io/basic_streambuf/1.cc: New.
6878 * 27_io/basic_streambuf/2.cc: New.
6879 * 27_io/basic_streambuf/3.cc: New.
6880 * 27_io/basic_streambuf/cons/char/1.cc: New.
6881 * 27_io/basic_streambuf/imbue/char/1.cc: New.
6882 * 27_io/basic_streambuf/imbue/char/9322.cc: New.
6883 * 27_io/basic_streambuf/overflow/char/1.cc: New.
6884 * 27_io/basic_streambuf/overflow/char/2.cc: New.
6885 * 27_io/basic_streambuf/overflow/char/3599.cc: New.
6886 * 27_io/basic_streambuf/sgetc/char/1.cc: New.
6887 * 27_io/basic_streambuf/sgetn/char/1.cc: New.
6888 * 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
6889 * 27_io/basic_streambuf/sputc/char/1057.cc: New.
6890 * 27_io/basic_streambuf/sputn/char/1.cc: New.
6891 * 27_io/basic_streambuf/sputn/char/1057.cc: New.
6892 * 27_io/basic_streambuf/sync/char/1057.cc: New.
6893 * 27_io/basic_stringbuf/1.cc: New.
6894 * 27_io/basic_stringbuf/2.cc: New.
6895 * 27_io/basic_stringbuf/3.cc: New.
6896 * 27_io/basic_stringbuf/4.cc: New.
6897 * 27_io/basic_stringbuf/5.cc: New.
6898 * 27_io/basic_stringbuf/imbue/char/1.cc: New.
6899 * 27_io/basic_stringbuf/imbue/char/9322.cc: New.
6900 * 27_io/basic_stringbuf/in_avail/char/1.cc: New.
6901 * 27_io/basic_stringbuf/overflow/char/2.cc: New.
6902 * 27_io/basic_stringbuf/overflow/char/3599.cc: New.
6903 * 27_io/basic_stringbuf/overflow/char/9988.cc: New.
6904 * 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
6905 * 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
6906 * 27_io/basic_stringbuf/seekoff/char/1.cc: New.
6907 * 27_io/basic_stringbuf/seekoff/char/2.cc: New.
6908 * 27_io/basic_stringbuf/seekpos/char/1.cc: New.
6909 * 27_io/basic_stringbuf/seekpos/char/2.cc: New.
6910 * 27_io/basic_stringbuf/setbuf/char/1.cc: New.
6911 * 27_io/basic_stringbuf/setbuf/char/2.cc: New.
6912 * 27_io/basic_stringbuf/setbuf/char/3.cc: New.
6913 * 27_io/basic_stringbuf/sgetc/char/1.cc: New.
6914 * 27_io/basic_stringbuf/sgetn/char/1.cc: New.
6915 * 27_io/basic_stringbuf/snextc/char/1.cc: New.
6916 * 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
6917 * 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
6918 * 27_io/basic_stringbuf/sputc/char/1.cc: New.
6919 * 27_io/basic_stringbuf/sputc/char/1057.cc: New.
6920 * 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
6921 * 27_io/basic_stringbuf/sputn/char/1.cc: New.
6922 * 27_io/basic_stringbuf/sputn/char/1057.cc: New.
6923 * 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
6924 * 27_io/basic_stringbuf/str/char/1.cc: New.
6925 * 27_io/basic_stringbuf/str/char/2.cc: New.
6926 * 27_io/basic_stringbuf/str/char/3.cc: New.
6927 * 27_io/basic_stringbuf/str/char/3955.cc: New.
6928 * 27_io/basic_stringbuf/sungetc/char/1.cc: New.
6929 * 27_io/basic_stringbuf/sync/char/1057.cc: New.
6930 * 27_io/basic_stringstream/1.cc: New.
6931 * 27_io/basic_stringstream/2.cc: New.
6932 * 27_io/basic_stringstream/3.cc: New.
6933 * 27_io/basic_stringstream/4.cc: New.
6934 * 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
6935 * 27_io/basic_stringstream/str/char/1.cc: New.
6936 * 27_io/basic_stringstream/str/char/2.cc: New.
6937 * 27_io/basic_stringstream/str/char/3.cc: New.
6938 * 27_io/basic_stringstream/str/char/4.cc: New.
6939 * 27_io/fpos/1.cc: New.
6940 * 27_io/fpos/2.cc: New.
6941 * 27_io/fpos/3.cc: New.
6942 * 27_io/ios_base/callbacks/1.cc: New.
6943 * 27_io/ios_base/state/1.cc: New.
6944 * 27_io/ios_base/storage/1.cc: New.
6945 * 27_io/ios_base/storage/2.cc: New.
6946 * 27_io/ios_base/storage/3.cc: New.
6947 * 27_io/ios_base/sync_with_stdio/1.cc: New.
6948 * 27_io/ios_base/sync_with_stdio/2.cc: New.
6949 * 27_io/manipulators/adjustfield/char/1.cc: New.
6950 * 27_io/manipulators/adjustfield/char/2.cc: New.
6951 * 27_io/manipulators/basefield/char/1.cc: New.
6952 * 27_io/manipulators/standard/char/1.cc: New.
6953 * 27_io/manipulators/standard/char/2.cc: New.
6954 * 27_io/objects/char/1.cc: New.
6955 * 27_io/objects/char/2.cc: New.
6956 * 27_io/objects/char/2523-1_xin.cc: New.
6957 * 27_io/objects/char/2523-1_xin.in: New.
6958 * 27_io/objects/char/2523-2_xin.cc: New.
6959 * 27_io/objects/char/2523-2_xin.in: New.
6960 * 27_io/objects/char/3045.cc: New.
6961 * 27_io/objects/char/3647.cc: New.
6962 * 27_io/objects/char/3_xin.cc: New.
6963 * 27_io/objects/char/3_xin.in: New.
6964 * 27_io/objects/char/4_xin.cc: New.
6965 * 27_io/objects/char/4_xin.in: New.
6966 * 27_io/objects/char/5268.cc: New.
6967 * 27_io/objects/char/5280_xin.cc: New.
6968 * 27_io/objects/char/5280_xin.in: New.
6969 * 27_io/objects/char/6548_xin.cc: New.
6970 * 27_io/objects/char/6548_xin.in: New.
6971 * 27_io/objects/char/6648-1_xin.cc: New.
6972 * 27_io/objects/char/6648-1_xin.in: New.
6973 * 27_io/objects/char/6648-2_xin.cc: New.
6974 * 27_io/objects/char/6648-2_xin.in: New.
6975 * 27_io/objects/char/7744_xin.cc: New.
6976 * 27_io/objects/char/7744_xin.in: New.
6977 * 27_io/objects/wchar_t/1.cc: New.
6978 * 27_io/types/1.cc: New.
6979 * 27_io/types/2.cc: New.
6980 * data/filebuf_members-1.tst: New.
6981 * data/filebuf_members-1.txt: New.
6982 * data/filebuf_virtuals-1.tst: New.
6983 * data/filebuf_virtuals-1.txt: New.
6984 * data/filebuf_virtuals-2.tst: New.
6985 * data/filebuf_virtuals-3.tst: New.
6986 * data/ifstream_members-1.tst: New.
6987 * data/ifstream_members-1.txt: New.
6988 * data/ios_base_members_static-1.tst: New.
6989 * data/istream_extractor_other-1.tst: New.
6990 * data/istream_extractor_other-1.txt: New.
6991 * data/istream_extractor_other-2.tst: New.
6992 * data/istream_seeks-1.tst: New.
6993 * data/istream_seeks-1.txt: New.
6994 * data/istream_seeks-2.tst: New.
6995 * data/istream_seeks-3.tst: New.
6996 * data/istream_unformatted-1.tst: New.
6997 * data/istream_unformatted-1.txt: New.
6998 * data/ofstream_members-1.tst: New.
6999 * data/ostream_inserter_char-1.tst: New.
7000 * data/ostream_inserter_char-1.txt: New.
7001 * data/ostream_inserter_other-1.tst: New.
7002 * data/ostream_inserter_other-2.tst: New.
7003 * data/ostream_seeks-1.tst: New.
7005 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
7007 * include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
7008 requirement that __mode must be strict input or output.
7010 * include/std/std_streambuf.h (basic_streambuf::setp): Set
7013 * include/std/std_sstream.h (basic_strinbuf::str): Zero length
7014 output string shouldn't core.
7015 (basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
7017 * include/bits/sstream.tcc: Adjust _M_really_sync bits here.
7019 * include/bits/istream.tcc (basic_istream::putback): Set gcount to
7022 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
7024 * testsuite/data: New directory.
7025 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
7026 to copy files from the testsuite data directory.
7027 (libstdc++-v3-list-sourcefiles): Add another test list filter, for
7028 testfiles containing _xin, which now means this is an interactive
7029 test and should be run with the interactive dejagnu hooks.
7030 * testsuite/Makefile.am: Remove testsuite_* files.
7031 * testsuite/Makefile.in: Regenerate.
7033 2003-04-09 Zack Weinberg <zack@codesourcery.com>
7035 * docs/html/install.html: Document complete list of locales
7036 required by test suite. Document procedure for installing
7037 said locales under Debian. Solicit instructions for other
7040 2003-04-08 Alexandre Oliva <aoliva@redhat.com>
7042 * include/bits/sstream.tcc (overflow): Make sure operands of min
7043 and max have the same type.
7045 2003-04-04 Jerry Quinn <jlquinn@optonline.net>
7048 * src/ios.cc (ios_base::_M_init): Remove _M_callbacks
7051 2003-03-31 Paolo Carlini <pcarlini@unitus.it>
7053 * include/std/std_streambuf.h (_M_out_buf_size()): Remove.
7054 * include/bits/fstream.tcc (_M_allocate_internal_buffer):
7055 Don't set _M_out_end.
7056 (basic_filebuf::overflow): Replace _M_out_buf_size() with
7057 this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
7058 * include/bits/sstream.tcc (basic_stringbuf::overflow):
7059 Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
7060 * include/bits/streambuf.tcc (basic_streambuf::sputc):
7061 Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
7062 (basic_streambuf::xsputn): Replace _M_out_buf_size() with
7063 _M_out_end - _M_out_cur.
7064 (__copy_streambufs): Likewise.
7065 * include/std/std_fstream.h (_M_set_determinate): Set
7068 2003-03-30 Paolo Carlini <pcarlini@unitus.it>
7070 * include/bits/fstream.tcc (basic_filebuf::showmanyc,
7071 _M_convert_to_external, _M_really_overflow, seekoff): Fix
7072 test for synced buffer.
7073 * include/std/std_fstream.h (sync): Likewise.
7074 * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
7075 basic_filebuf<wchar_t>::_M_underflow_common): Likewise.
7077 2003-03-28 Benjamin Kosnik <bkoz@redhat.com>
7079 * include/std/std_sstream.h (basic_istringstream): Adjust
7081 (basic_ostringstream): Same.
7082 (basic_stringstream): Same.
7083 * include/std/std_fstream.h (basic_ifstream): Adjust initialization.
7084 (basic_ofstream): Same.
7085 (basic_fstream): Same.
7086 * include/std/std_ostream.h (basic_ostrem): Add protected ctor
7087 that does not call init.
7088 * include/std/std_istream.h (basic_istream): Same.
7089 (basic_iostream): Construct istream, ostream uninitialized, use
7090 init to initialize just once. Add protected ctor that does not
7093 2003-03-28 Paolo Carlini <pcarlini@unitus.it>
7094 Nathan Myers <ncm@cantrip.org>
7097 * include/bits/fstream.tcc (basic_filebuf<>::open): Don't
7099 (basic_filebuf<>::showmanyc): Use the information provided
7100 by codecvt and __basic_file<>::showmanyc_helper to implement
7101 a non-trivial showmanyc.
7102 * config/io/basic_file_stdio.h
7103 (__basic_file<>::showmanyc_helper): New, declare.
7104 * config/io/basic_file_stdio.cc
7105 (__basic_file<>::showmanyc_helper): Define.
7106 (__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
7107 (__basic_file<char>::open): Don't call fcntl().
7108 * acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
7109 GLIBCPP_CHECK_POLL): New macros.
7110 * configure.in: Call here.
7111 * acconfig.h: Add #undefs for the corresponding symbols.
7112 * aclocal.m4: Regenerate.
7113 * configure: Regenerate.
7114 * config.h.in: Regenerate.
7116 2003-03-24 Benjamin Kosnik <bkoz@redhat.com>
7118 * config/linker-map.gnu: Remove string export restrictions.
7120 2003-03-24 Paolo Carlini <pcarlini@unitus.it>
7122 * testsuite/21_strings/basic_string/find/char/1.cc: Remove
7123 find_first_of, find_last_of and find_last_not_of tests.
7124 * testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
7125 tests here, new file.
7126 * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
7127 remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
7128 * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
7129 wchar_t find_first_of tests here, new file.
7130 * testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
7132 * testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
7134 * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
7135 wchar_t find_last_of tests here.
7136 * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
7137 wchar_t find_last_not_of tests here.
7139 2003-03-22 Loren J. Rittle <ljrittle@acm.org>
7141 * config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
7142 Correct return value.
7144 2003-03-21 Jerry Quinn <jlquinn@optonline.net>
7147 * include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
7148 * include/std/std_complex.h (norm): Use faster,
7149 less accurate computation for builtin float types under --fast-math.
7151 2003-03-21 Magnus Fromreide <gnats@magfr.user.lysator.liu.se>
7153 * testsuite/testsuite_hooks.h: Fix warning nits.
7155 2003-03-19 Alexandre Oliva <aoliva@redhat.com>
7157 * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
7158 Only .set mips2 for the o32 ABI.
7160 2003-03-19 Paolo Carlini <pcarlini@unitus.it>
7162 * testsuite/21_strings/char_traits/requirements/char/1.cc:
7163 Test char not wchar_t.
7165 2003-03-18 Paolo Carlini <pcarlini@unitus.it>
7167 * testsuite/21_strings/basic_string/append/wchar_t/1.cc:
7168 Correct size, taking into account sizeof(wchar_t).
7170 2003-03-18 Paolo Carlini <pcarlini@unitus.it>
7172 Reshuffle 21_strings testsuite.
7173 * testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
7174 assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
7175 element_access.cc, operations.cc, char_traits_requirements.cc,
7176 find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
7177 compare.cc, inserters_extractors.cc, substr.cc: Split up, add
7178 wchar_t tests as follows.
7179 * 21_strings/basic_string/append/char/1.cc: New.
7180 * 21_strings/basic_string/append/wchar_t/1.cc: New.
7181 * 21_strings/basic_string/assign/char/1.cc: New.
7182 * 21_strings/basic_string/assign/char/2.cc: New.
7183 * 21_strings/basic_string/assign/char/3.cc: New.
7184 * 21_strings/basic_string/assign/wchar_t/1.cc: New.
7185 * 21_strings/basic_string/assign/wchar_t/2.cc: New.
7186 * 21_strings/basic_string/assign/wchar_t/3.cc: New.
7187 * 21_strings/basic_string/capacity/1.cc: New.
7188 * 21_strings/basic_string/capacity/char/1.cc: New.
7189 * 21_strings/basic_string/capacity/char/2.cc: New.
7190 * 21_strings/basic_string/capacity/wchar_t/1.cc: New.
7191 * 21_strings/basic_string/capacity/wchar_t/2.cc: New.
7192 * 21_strings/basic_string/compare/char/1.cc: New.
7193 * 21_strings/basic_string/compare/wchar_t/1.cc: New.
7194 * 21_strings/basic_string/cons/char/1.cc: New.
7195 * 21_strings/basic_string/cons/char/2.cc: New.
7196 * 21_strings/basic_string/cons/char/3.cc: New.
7197 * 21_strings/basic_string/cons/char/4.cc: New.
7198 * 21_strings/basic_string/cons/char/5.cc: New.
7199 * 21_strings/basic_string/cons/wchar_t/1.cc: New.
7200 * 21_strings/basic_string/cons/wchar_t/2.cc: New.
7201 * 21_strings/basic_string/cons/wchar_t/3.cc: New.
7202 * 21_strings/basic_string/cons/wchar_t/4.cc: New.
7203 * 21_strings/basic_string/cons/wchar_t/5.cc: New.
7204 * 21_strings/basic_string/element_access/char/1.cc: New.
7205 * 21_strings/basic_string/element_access/char/2.cc: New.
7206 * 21_strings/basic_string/element_access/char/3.cc: New.
7207 * 21_strings/basic_string/element_access/wchar_t/1.cc: New.
7208 * 21_strings/basic_string/element_access/wchar_t/2.cc: New.
7209 * 21_strings/basic_string/element_access/wchar_t/3.cc: New.
7210 * 21_strings/basic_string/find/char/1.cc: New.
7211 * 21_strings/basic_string/find/wchar_t/1.cc: New.
7212 * 21_strings/basic_string/insert/char/1.cc: New.
7213 * 21_strings/basic_string/insert/char/2.cc: New.
7214 * 21_strings/basic_string/insert/wchar_t/1.cc: New.
7215 * 21_strings/basic_string/insert/wchar_t/2.cc: New.
7216 * 21_strings/basic_string/inserters_extractors/char/1.cc: New.
7217 * 21_strings/basic_string/inserters_extractors/char/4.cc: New.
7218 * 21_strings/basic_string/inserters_extractors/char/5.cc: New.
7219 * 21_strings/basic_string/inserters_extractors/char/6.cc: New.
7220 * 21_strings/basic_string/inserters_extractors/char/7.cc: New.
7221 * 21_strings/basic_string/inserters_extractors/char/8.cc: New.
7222 * 21_strings/basic_string/inserters_extractors/char/9.cc: New.
7223 * 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
7224 * 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
7225 * 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
7226 * 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
7227 * 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
7228 * 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
7229 * 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
7230 * 21_strings/basic_string/operators/char/1.cc: New.
7231 * 21_strings/basic_string/operators/char/2.cc: New.
7232 * 21_strings/basic_string/operators/wchar_t/1.cc: New.
7233 * 21_strings/basic_string/operators/wchar_t/2.cc: New.
7234 * 21_strings/basic_string/replace/char/1.cc: New.
7235 * 21_strings/basic_string/replace/char/2.cc: New.
7236 * 21_strings/basic_string/replace/char/3.cc: New.
7237 * 21_strings/basic_string/replace/char/4.cc: New.
7238 * 21_strings/basic_string/replace/char/5.cc: New.
7239 * 21_strings/basic_string/replace/wchar_t/1.cc: New.
7240 * 21_strings/basic_string/replace/wchar_t/2.cc: New.
7241 * 21_strings/basic_string/replace/wchar_t/3.cc: New.
7242 * 21_strings/basic_string/replace/wchar_t/4.cc: New.
7243 * 21_strings/basic_string/replace/wchar_t/5.cc: New.
7244 * 21_strings/basic_string/rfind/char/1.cc: New.
7245 * 21_strings/basic_string/rfind/char/2.cc: New.
7246 * 21_strings/basic_string/rfind/char/3.cc: New.
7247 * 21_strings/basic_string/rfind/wchar_t/1.cc: New.
7248 * 21_strings/basic_string/rfind/wchar_t/2.cc: New.
7249 * 21_strings/basic_string/rfind/wchar_t/3.cc: New.
7250 * 21_strings/basic_string/substr/char/1.cc: New.
7251 * 21_strings/basic_string/substr/wchar_t/1.cc: New.
7252 * 21_strings/c_strings/char/1.cc: New.
7253 * 21_strings/c_strings/char/2.cc: New.
7254 * 21_strings/c_strings/wchar_t/1.cc: New.
7255 * 21_strings/c_strings/wchar_t/2.cc: New.
7256 * 21_strings/char_traits/requirements/char/1.cc: New.
7257 * 21_strings/char_traits/requirements/wchar_t/1.cc: New.
7258 * 21_strings/char_traits/typedefs/char/1.cc: New.
7260 2003-03-17 Paolo Carlini <pcarlini@unitus.it>
7261 Petur Runolfsson <peturr02@ru.is>
7264 * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
7265 basic_filebuf<wchar_t>::_M_underflow_common):
7266 if (gptr() < egptr()) return *gptr().
7267 * testsuite/27_io/filebuf_virtuals.cc (test16): Add.
7269 * testsuite/27_io/filebuf_members.cc (test_04): Minor
7270 changes: unlink fifo before making it, fix spelling error.
7272 2003-03-17 Benjamin Kosnik <bkoz@redhat.com>
7274 * testsuite/Makefile.am (CLEANFILES): Add tmp*.
7275 * testsuite/Makefile.in: Regenerate.
7276 * testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
7279 2003-03-17 Petur Runolfsson <peturr02@ru.is>
7282 * include/bits/fstream.tcc (basic_filebuf::close):
7283 Always close file, even when write fails.
7284 * testsuite/27_io/filebuf_members.cc (test_07): New test.
7286 2003-03-17 Danny Smith <dannysmith@users.sourceforge.net>
7288 * libsupc++/Makefile.am (C_COMPILE): Remove.
7289 (LTCOMPILE): Likewise.
7290 * libsupc++/Makefile.in: Regenerate.
7292 2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
7294 * testsuite/23_containers/bitset_members.cc: Add test variable.
7295 * testsuite/23_containers/map_insert.cc: Same.
7296 * testsuite/22_locale/ctype/cons/char/1.cc: Same.
7297 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
7298 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
7299 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
7300 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
7301 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
7302 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
7303 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
7304 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
7305 * testsuite/27_io/istream_exception.cc: Same.
7306 * testsuite/27_io/filebuf_virtuals.cc: Same.
7307 * testsuite/27_io/stringbuf_virtuals.cc: Same.
7308 * testsuite/27_io/ostream_inserter_arith.cc: Same.
7309 * testsuite/26_numerics/valarray_operators.cc: Same.
7310 * testsuite/26_numerics/slice.cc: Same.
7311 * testsuite/26_numerics/slice_array_assignment.cc: Same.
7312 * testsuite/24_iterators/istream_iterator.cc: Same.
7313 * mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
7315 2003-03-14 Petur Runolfsson <peturr02@ru.is>
7319 * config/locale/generic/ctype_members.cc,
7320 * config/locale/gnu/ctype_members.cc
7321 (ctype<wchar_t>::do_widen(char)): Cast argument to
7322 unsigned char before passing to btowc.
7323 (ctype<wchar_t>::do_widen(const char*, const char*, wchar_t*)):
7324 Convert characters with btowc instead of mbsrtowcs.
7325 (ctype<wchar_t>::do_narrow(const wchar_t*, const wchar_t*,
7327 Convert characters with wctob instead of wcsrtombs.
7328 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: New test.
7329 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: New test.
7330 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: New test.
7332 2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
7334 * include/stdc++.h: New.
7335 * libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
7336 * include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
7337 * include/Makefile.in: Regenerate.
7338 * testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
7339 (--cxxflags): Put -g -O2 here.
7340 * testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
7342 2003-03-14 Loren J. Rittle <ljrittle@acm.org>
7344 * testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
7345 missing named locale.
7347 2003-03-14 Andreas Schwab <schwab@suse.de>
7349 * configure.in: Only append to makefiles that are newly created to
7350 avoid multiple multi-do/multi-clean rules.
7351 * configure: Rebuilt.
7353 2003-03-13 Jonathan Wakely <redi@gcc.gnu.org>
7355 * docs/html/configopts.html, docs/html/documentation.html,
7356 docs/html/explanations.html, docs/html/install.html,
7357 docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
7358 invalid XHTML and make page header style consistent.
7360 2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
7362 * docs/html/faq/index.html: Explain memory "leaks" due to allocators.
7363 * docs/html/faq/index.txt: Regenerate.
7364 * docs/html/debug.html: Add a bit to allocator text and fix XHTML.
7366 2003-03-12 Andreas Schwab <schwab@suse.de>
7368 * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
7369 glibcpp_toolexeclibdir.
7370 * aclocal.m4, configure: Rebuilt.
7372 2003-03-11 Jonathan Wakely <redi@gcc.gnu.org>
7374 * docs/html/faq/index.html: Update text about location of headers.
7375 * docs/html/faq/index.txt: Regenerate.
7377 2003-03-11 Carlo Wood <carlo@alinoe.com>
7379 * include/bits/demangle.h: Prepend accessors of
7380 class qualifier with 'get_' in order to fix warnings
7381 when compiling with -Wshadow.
7383 2003-03-11 Loren J. Rittle <ljrittle@acm.org>
7385 * config/os/bsd/freebsd/ctype_inline.h: Support _M_table
7387 * testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
7389 * testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
7390 report lack of setenv().
7392 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
7394 * config/io/basic_file_stdio.cc: include <unistd.h>.
7396 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
7397 Nathan Myers <ncm@cantrip.org>
7400 * config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
7401 seekoff, seekpos): Add a boolean parameter __stdio.
7402 * config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
7403 seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
7404 fseek/ftell, respectively), otherwise read (write, lseek, lseek,
7406 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
7407 _M_really_overflow, seekoff): Use the boolean parameter in the calls.
7408 * include/std/std_fstream.h (sync): Likewise.
7409 * src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
7410 * src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
7411 libstdc++/8399 commit involving isatty(0).
7412 * acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
7413 (GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
7414 * configure.in: Remove call.
7415 * aclocal.m4: Regenerate.
7416 * config.h.in: Regenerate.
7417 * configure: Regenerate.
7418 * testsuite/27_io/narrow_stream_objects.cc (test11): Add.
7420 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
7423 * include/bits/fstream.tcc (overflow): don't write EOF to file.
7424 * testsuite/27_io/filebuf_virtuals.cc (test15): Add.
7426 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
7429 * include/bits/basic_ios.h (_M_setstate): New.
7430 * include/bits/ostream.tcc (operator<<): Use it.
7431 * include/bits/istream.tcc (operator>>): Use it.
7432 * include/std/std_ostream.h (operator<<): Make friends.
7433 * include/std/std_istream.h (operator>>): Make friends.
7434 * testsuite/27_io/ostream_exception.cc,
7435 testsuite/27_io/istream_exception.cc: New tests.
7437 2003-03-08 Benjamin Kosnik <bkoz@redhat.com>
7439 * include/bits/locale_facets.tcc: Fix typo.
7441 2003-03-08 Loren J. Rittle <ljrittle@acm.org>
7443 * testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
7445 * config/locale/generic/c_locale.cc
7446 (locale::facet::_S_create_c_locale): Throw runtime exception when
7447 unsupported language is specified.
7448 * testsuite/testsuite_hooks.h
7449 (run_test_wrapped_generic_locale_exception_catcher): New function.
7450 * testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
7451 Suppress runtime exception thrown by generic implementation.
7452 (run_tests_wrapped_env): Likewise.
7453 (run_test_wrapped_generic_locale_exception_catcher): New function.
7454 * testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
7455 * testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
7456 * testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
7457 * testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
7458 * testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
7459 * testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
7460 * testsuite/22_locale/collate_byname/1.cc: New test wrap.
7461 * testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
7462 * testsuite/22_locale/facet/2.cc: New test wrap.
7463 * testsuite/22_locale/locale/cons/4.cc: New test wrap.
7464 * testsuite/22_locale/locale/cons/5.cc: New test wrap.
7465 * testsuite/22_locale/locale/cons/7.cc: New test wrap.
7466 * testsuite/22_locale/messages/members/char/1.cc: New test wrap.
7467 * testsuite/22_locale/messages/members/char/2.cc: New test wrap.
7468 * testsuite/22_locale/messages/members/char/3.cc: New test wrap.
7469 * testsuite/22_locale/messages_byname/1.cc: New test wrap.
7470 * testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
7471 * testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
7472 * testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
7473 * testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
7474 * testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
7475 * testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
7476 * testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
7477 * testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
7478 * testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
7479 * testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
7480 * testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
7481 * testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
7482 * testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
7483 * testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
7484 * testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
7485 * testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
7486 * testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
7487 * testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
7488 * testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
7489 * testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
7490 * testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
7491 * testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
7492 * testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
7493 * testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
7494 * testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
7495 * testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
7496 * testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
7497 * testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
7498 * testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
7499 * testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
7500 * testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
7501 * testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
7502 * testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
7503 * testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
7504 * testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
7505 * testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
7506 * testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
7507 * testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
7508 * testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
7509 * testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
7510 * testsuite/27_io/filebuf_virtuals.cc: New test wrap.
7511 * testsuite/27_io/ios_members.cc: New test wrap.
7512 * testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
7514 * testsuite/27_io/streambuf_members.cc: New test wrap.
7515 * testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
7517 2003-03-08 Paolo Carlini <pcarlini@unitus.it>
7518 Petur Runolfsson <peturr02@ru.is>
7521 * include/bits/streambuf.tcc (__copy_streambufs): Use
7522 sgetn-sputn only when sputn cannot fail, otherwise fall back
7523 to safe snextc-sputc.
7524 * testsuite/27_io/streambuf_members.cc (test11, test12): Add.
7526 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
7528 * include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
7529 locale cache for truename and falsename.
7531 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
7533 * src/ios.cc (ios_base::ios_base): Correct order of _M_word and
7534 _M_word_size initialization.
7536 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
7538 * include/bits/fstream.tcc (_M_convert_to_external):
7539 Set __elen to zero if codecvt::out eventually fails.
7541 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
7544 * include/bits/fstream.tcc (_M_really_overflow): Check
7545 for _M_convert_to_external possible failures.
7546 * include/std/std_fstream.h (sync): Check _M_really_overflow
7547 return value and return -1 in case of failure.
7548 * testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
7550 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
7553 * include/bits/istream.tcc (operator>>(_CharT*),
7554 operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
7555 * testsuite/27_io/stringstream.cc (test02): Add.
7557 * include/bits/istream.tcc (operator>>(_CharT*)):
7558 Assign a char_type to *__s.
7560 2003-03-07 Petur Runolfsson <peturr02@ru.is>
7563 * include/bits/locale_facets.tcc
7564 (collate::do_compare, collate::do_transform):
7565 Handle nul characters in input.
7566 * testsuite/22_locale/collate/compare/char/3.cc: New test.
7567 * testsuite/22_locale/collate/compare/wchar_t/3.cc: New test.
7568 * testsuite/22_locale/collate/transform/char/3.cc: New test.
7569 * testsuite/22_locale/collate/transform/wchar_t/3.cc: New test.
7571 2003-03-07 Jerry Quinn <jlquinn@optonline.net>
7573 * include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
7575 * testsuite/27_io/ostream_fail.cc: New test.
7577 2003-03-07 Matthias Klose <doko@debian.org>
7579 * Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
7580 FLAGS_TO_PASS: Set to AM_MAKEFLAGS
7581 * Makefile.in: Regenerate.
7582 * libsupc++/Makefile.am: Express glibcppinstalldir in terms
7584 AM_MAKEFLAGS: Pass gxx_include_dir.
7585 * libsupc++/Makefile.in: Regenerate.
7587 2003-03-06 Jerry Quinn <jlquinn@optonline.net>
7589 * testsuite/27_io/ios_base_storage.cc (test02): Set exception
7590 mask. Test setting small-numbered pword and iword slots. Test
7591 behavior at limit of numeric_limits::max. Check that values are
7592 still good after failures.
7594 2003-03-06 Jerry Quinn <jlquinn@optonline.net>
7596 * src/ios.cc (ios_base::_M_init): Remove _M_word_size.
7597 (ios_base::ios_base): Set _M_word, _M_word_size.
7598 (ios_base::~ios_base): Remove redundant test.
7599 * testsuite/27_io/ios_base_storage.cc (test03): New.
7601 2003-03-04 Alexandre Oliva <aoliva@redhat.com>
7603 * src/strstream.cc, include/bits/basic_string.tcc: Remove
7604 incorrect whitespace added in my previous change.
7606 2003-03-05 Carlo Wood <carlo@alinoe.com>
7608 * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
7609 _S_initialized() in order to allow debugging libraries to detect
7610 when the std streams are initialized from an overloaded operator
7613 2003-03-05 Benjamin Kosnik <bkoz@redhat.com>
7615 * libsupc++/demangle.h: Move to..
7616 * include/bits/demangle.h: ...here.
7617 * src/demangle.cc: Adjust include.
7618 * include/Makefile.am (bits_headers): Add.
7619 * include/Makefile.in: Regenerate.
7621 2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
7623 * src/globals.cc: Clarify comments, remove c_locale_imp_compat.
7625 * config/linker-map.gnu: Filter typeinfo and vtable info.
7627 2003-03-04 Jerry Quinn <jlquinn@optonline.net>
7629 * src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
7630 new failure. Throw exception if badbit and exception mask when ix
7631 >= numeric_limits<int>::max().
7633 2003-03-04 Alexandre Oliva <aoliva@redhat.com>
7635 * src/strstream.cc (strstreambuf::overflow): Make sure operands of
7636 min and max have the same type.
7637 * include/bits/basic_string.tcc (append, rfind, compare): Likewise.
7639 2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
7641 * include/Makefile.am (allstamps): Remove stamp-std-precompile.
7642 * include/Makefile.in: Regenerate.
7644 2003-03-03 Benjamin Kosnik <bkoz@redhat.com>
7646 * testsuite/abi_check.cc (report_symbol_info): Add version info.
7648 * config/linker-map.gnu: Hide more stuff.
7649 * include/Makefile.am: Cleanups.
7650 * include/Makefile.in: Regenerate.
7652 2003-02-27 Jerry Quinn <jlquinn@optonline.net>
7654 * config/locale/generic/messages_members.h (messages::messages):
7655 Remove name from unused parameter.
7657 2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
7659 * src/Makefile.am (sources): Add demangle.cc.
7662 * src/Makefile.in: Regenerate.
7663 * libsupc++/Makefile.am: Remove old __cxa_demangle bits.
7664 * libsupc++/Makefile.in: Regenerate.
7666 * testsuite/testsuite_hooks.h
7667 (__gnu_cxx_test::verify_demangle): New.
7668 * testsuite/testsuite_hooks.cc: Define.
7670 2003-02-27 Carlo Wood <carlo@alinoe.com>
7672 * src/demangle.cc: New.
7673 * libsupc++/demangle.h: New.
7675 2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
7676 Carlo Wood <carlo@alinoe.com>
7678 * testsuite/demangle/abi_examples/01.cc: New.
7679 * testsuite/demangle/abi_examples/02.cc: New.
7680 * testsuite/demangle/abi_examples/03.cc: New.
7681 * testsuite/demangle/abi_examples/04.cc: New.
7682 * testsuite/demangle/abi_examples/05.cc: New.
7683 * testsuite/demangle/abi_examples/06.cc: New.
7684 * testsuite/demangle/abi_examples/07.cc: New.
7685 * testsuite/demangle/abi_examples/08.cc: New.
7686 * testsuite/demangle/abi_examples/09.cc: New.
7687 * testsuite/demangle/abi_examples/10.cc: New.
7688 * testsuite/demangle/abi_examples/11.cc: New.
7689 * testsuite/demangle/abi_examples/12.cc: New.
7690 * testsuite/demangle/abi_examples/13.cc: New.
7691 * testsuite/demangle/abi_examples/14.cc: New.
7692 * testsuite/demangle/abi_examples/15.cc: New.
7693 * testsuite/demangle/abi_examples/16.cc: New.
7694 * testsuite/demangle/abi_examples/17.cc: New.
7695 * testsuite/demangle/abi_examples/18.cc: New.
7696 * testsuite/demangle/abi_examples/19.cc: New.
7697 * testsuite/demangle/abi_examples/20.cc: New.
7698 * testsuite/demangle/abi_examples/21.cc: New.
7699 * testsuite/demangle/abi_examples/22.cc: New.
7700 * testsuite/demangle/abi_examples/23.cc: New.
7701 * testsuite/demangle/abi_examples/24.cc: New.
7702 * testsuite/demangle/abi_examples/25.cc: New.
7703 * testsuite/demangle/abi_examples/26.cc: New.
7704 * testsuite/demangle/abi_text/01.cc: New.
7705 * testsuite/demangle/abi_text/02.cc: New.
7706 * testsuite/demangle/abi_text/03.cc: New.
7707 * testsuite/demangle/abi_text/04.cc: New.
7708 * testsuite/demangle/abi_text/05.cc: New.
7709 * testsuite/demangle/abi_text/06.cc: New.
7710 * testsuite/demangle/abi_text/07.cc: New.
7711 * testsuite/demangle/abi_text/08.cc: New.
7712 * testsuite/demangle/abi_text/09.cc: New.
7713 * testsuite/demangle/abi_text/10.cc: New.
7714 * testsuite/demangle/abi_text/11.cc: New.
7715 * testsuite/demangle/abi_text/12.cc: New.
7716 * testsuite/demangle/abi_text/13.cc: New.
7717 * testsuite/demangle/abi_text/14.cc: New.
7718 * testsuite/demangle/regression/3111-1.cc: New.
7719 * testsuite/demangle/regression/3111-2.cc: New.
7720 * testsuite/demangle/regression/7986-01.cc: New.
7721 * testsuite/demangle/regression/7986-02.cc: New.
7722 * testsuite/demangle/regression/7986-03.cc: New.
7723 * testsuite/demangle/regression/7986-04.cc: New.
7724 * testsuite/demangle/regression/7986-05.cc: New.
7725 * testsuite/demangle/regression/7986-06.cc: New.
7726 * testsuite/demangle/regression/7986-07.cc: New.
7727 * testsuite/demangle/regression/7986-08.cc: New.
7728 * testsuite/demangle/regression/7986-09.cc: New.
7729 * testsuite/demangle/regression/7986-10.cc: New.
7730 * testsuite/demangle/regression/7986-11.cc: New.
7731 * testsuite/demangle/regression/7986-12.cc: New.
7732 * testsuite/demangle/regression/7986.cc: New.
7733 * testsuite/demangle/regression/8897.cc: New.
7734 * testsuite/demangle/regression/cw-01.cc: New.
7735 * testsuite/demangle/regression/cw-02.cc: New.
7736 * testsuite/demangle/regression/cw-03.cc: New.
7737 * testsuite/demangle/regression/cw-04.cc: New.
7738 * testsuite/demangle/regression/cw-05.cc: New.
7739 * testsuite/demangle/regression/cw-06.cc: New.
7740 * testsuite/demangle/regression/cw-07.cc: New.
7741 * testsuite/demangle/regression/cw-08.cc: New.
7742 * testsuite/demangle/regression/cw-09.cc: New.
7743 * testsuite/demangle/regression/cw-10.cc: New.
7744 * testsuite/demangle/regression/cw-11.cc: New.
7745 * testsuite/demangle/regression/cw-12.cc: New.
7746 * testsuite/demangle/regression/cw-13.cc: New.
7747 * testsuite/demangle/regression/cw-14.cc: New.
7748 * testsuite/demangle/regression/old.cc: New.
7750 2003-02-25 Phil Edwards <pme@gcc.gnu.org>
7752 * docs/doxygen/Intro.3: Update with new (proper) names.
7753 * docs/doxygen/TODO: Update.
7754 * docs/doxygen/run_doxygen: More comments, fix up man pages.
7755 Fake entries for standard typedefs.
7756 * docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on.
7757 * docs/html/documentation.html: Top-level man page is now called
7759 * include/std/std_limits.h: Doxygenate.
7761 2003-02-25 Scott Snyder <snyder@fnal.gov>
7764 * include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
7765 Correct documentation.
7766 * include/bits/stl_multimap.h (lower_bound, upper_bound,
7767 equal_range): Likewise.
7769 2003-02-24 Paolo Carlini <pcarlini@unitus.it>
7773 (basic_filebuf<char/wchar_t>::_M_underflow_common): When
7774 __bump is true (uflow), always increment the read pointer
7775 (_M_in_cur) before returning successfully.
7776 * testsuite/27_io/filebuf_virtuals.cc (test12): Add.
7778 2003-02-24 Paolo Carlini <pcarlini@unitus.it>
7779 Nathan Myers <ncm@cantrip.org>
7781 PR libstdc++/9404, PR libstdc++/9701 (partial)
7782 (aka pptr == epptr implies overflow)
7783 * include/bits/fstream.tcc (_M_allocate_internal_buffer):
7784 Consistently, _M_out_end points to the end of the buffer just
7786 (overflow): Tweak to use _M_out_buf_size().
7787 (_M_convert_to_external): The role of the old _M_out_end is
7788 now played by _M_out_lim.
7789 (_M_really_overflow): Likewise.
7790 (seekoff): Likewise.
7791 (setbuf): _M_out_end points to the end of the external buffer.
7792 * include/bits/sstream.tcc (overflow): Rewrote, taking into
7793 account the resolution of DR 169 (TC).
7794 (seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
7795 (seekpos): Use _M_string.capacity(); tweak.
7796 * include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
7797 * include/std/std_fstream.h (sync): The role of the old
7798 _M_out_end is now played by _M_out_lim.
7799 (_M_set_indeterminate): Use _M_set_determinate.
7800 (_M_set_determinate): _M_out_end is now _M_out_lim.
7801 (_M_is_indeterminate): Likewise.
7802 * include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
7803 (_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
7804 which have the information readily available as _M_string.capacity();
7805 for ate and app modes, pass the string size to _M_really_sync.
7806 (_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
7807 point to the end of the buffer (i.e., epptr) and to the string end,
7809 * include/std/std_streambuf.h: tweak comments, add _M_out_lim,
7810 which points to the right limit of the used put area.
7811 (_M_out_cur_move): The role of the old _M_out_end is now played
7813 (_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
7814 _M_out_end - _M_out_cur (i.e., pptr), _very_ close to the letter
7816 (basic_streambuf()): Initialize _M_out_lim too.
7817 * testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
7818 * testsuite/27_io/filebuf_virtuals.cc (test11): Add.
7819 * testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
7821 2003-02-24 Benjamin Kosnik <bkoz@redhat.com>
7823 * testsuite/27_io/ios_base_storage.cc (main): Call
7826 2003-02-21 Jerry Quinn <jlquinn@optonline.net>
7828 * include/bits/locale_facets.tcc (_M_convert_float): Replace
7829 numpunct facet accesses with data from __locale_cache.
7831 2003-02-20 Phil Edwards <pme@gcc.gnu.org>
7833 * docs/html/faq/index.html (3.9): New note, wchar_t on FreeBSD.
7834 * docs/html/faq/index.txt: Regenerate.
7836 2003-02-20 Phil Edwards <pme@gcc.gnu.org>
7838 * config/linker-map.gnu: Also export locking symbols needed for the
7839 generic atomicity.h case.
7841 2003-02-20 Alexandre Oliva <aoliva@redhat.com>
7843 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
7845 * configure: Rebuilt.
7847 2003-02-19 Paolo Carlini <pcarlini@unitus.it>
7849 * include/bits/sstream.tcc (overflow): According to
7850 27.7.1.3, p5, actual output is performed by sputc(c).
7852 2003-02-19 Phil Edwards <pme@gcc.gnu.org>
7855 * include/bits/stl_alloc.h: Remove all traces of assert().
7857 2003-02-18 Paolo Carlini <pcarlini@unitus.it>
7859 * include/std/std_sstream.h (str()): the size of the
7860 current string may be different from the initial one
7861 whenever _M_out_end > _M_out_beg.
7862 * testsuite/27_io/stringbuf_members.cc (test07): Add.
7864 2003-02-18 Paolo Carlini <pcarlini@unitus.it>
7867 * include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
7869 2003-02-17 Benjamin Kosnik <bkoz@redhat.com>
7871 * include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
7872 * testsuite/27_io/ios_members.cc (test03): New.
7874 2003-02-17 Jerry Quinn <jlquinn@optonline.net>
7876 * include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
7877 (basic_ios::_M_cache_facets): Move into above.
7878 * include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
7880 (basic_ios::imbue): Force locale cache to be built.
7881 (basic_ios::_M_init): Create and initialize locale cache.
7882 * include/bits/ios_base.h (__locale_cache_base): Declare.
7883 (ios_base::_M_locale_cache): New.
7884 (ios_base::_M_cache): Define.
7885 * include/bits/locale_facets.h: (__num_base): Fix comment. Add
7887 (__locale_cache_base,__locale_cache<_CharT>): New classes.
7888 (__locale_cache<char>, __locale_cache<wchar_t>): New specializations.
7889 * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
7890 cache literal string, grouping flag, thousands separator.
7891 (__locale_cache<_CharT>::__locale_cache): New.
7892 (__locale_cache<_CharT>::_M_init): New.
7893 * src/ios.cc: Clear _M_locale_cache in constructor.
7894 * src/locale-inst.cc (__locale_cache<char>, __locale_cache<_char_t>):
7897 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
7899 * src/locale-inst.cc: Do not include <cassert>.
7900 * src/locale.cc: Likewise.
7902 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
7905 * include/std/std_fstream.h: Declare underflow and uflow
7906 specializations, change generic definitions to do nothing.
7907 * src/fstream.cc: Add underflow and uflow specializations.
7909 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
7912 * include/bits/fstream.tcc (_M_convert_to_external):
7913 Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
7914 * testsuite/27_io/filebuf_virtuals.cc (test10): Add.
7916 2003-02-13 Benjamin Kosnik <bkoz@redhat.com>
7918 * include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
7919 * include/bits/basic_ios.tcc: Guard use of extern template.
7920 * include/std/std_iomanip.h: Same.
7921 * include/bits/streambuf.tcc: Same.
7922 * include/bits/stl_alloc.h: Same.
7923 * include/bits/locale_facets.tcc: Same.
7924 * include/bits/ostream.tcc: Same.
7925 * include/bits/istream.tcc: Same.
7926 * include/bits/fstream.tcc: Same.
7927 * include/bits/basic_string.tcc: Same.
7929 2003-02-13 Paolo Carlini <pcarlini@unitus.it>
7931 * include/bits/ostream.tcc (sentry::sentry): Improve
7932 performance-wise the fix for libstdc++/9563.
7934 2003-02-12 Phil Edwards <pme@gcc.gnu.org>
7936 * config/cpu/generic/atomicity.h (_Atomic_add_mutex): Fix declaration.
7937 (_GLIBCPP_NEED_GENERIC_MUTEX): Define for this file.
7938 (_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once): Declare
7939 when we don't have static mutex initialization.
7940 (__exchange_and_add): Use _Atomic_add_mutex_once.
7941 * src/misc-inst.cc: Definitions of all the above.
7943 2003-02-12 Paolo Carlini <pcarlini@unitus.it>
7946 * include/bits/ostream.tcc (sentry::sentry): Check
7947 the state of the stream after the preparation.
7948 * testsuite/27_io/ostream_sentry.cc (test02): Add.
7950 2003-02-11 Benjamin Kosnik <bkoz@redhat.com>
7952 * include/Makefile.am (stamp-std-precompile): Add rule.
7953 * include/Makefile.in: Regenerated.
7955 2003-02-11 Jerry Quinn <jlquinn@optonline.net>
7956 Benjamin Kosnik <benjamin@redhat.com>
7958 * include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
7959 Add indexes into this array.
7960 (__num_base::_S_atoms): To _S_atoms_in.
7961 (num_put::_M_insert): Rename to _M_pad.
7962 (num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
7963 (num_put::_M_widen_int): Rename to _M_group_int.
7964 (num_put::_M_widen_float): Rename to _M_group_float.
7965 * include/bits/locale_facets.tcc (__int_to_char): New inline
7966 function and adapter functions.
7967 (num_put::_M_group_int): Streamline.
7968 (num_put::_M_group_float): Streamline.
7969 (num_put::_M_convert_int): Remove unused parameter names. Choose
7970 large enough buffer for text. Use __int_to_char instead of
7971 __convert_from_v. Formatted text is now at the end of the buffer.
7972 (num_put::_M_convert_float): Preliminary fixups.
7973 * src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
7974 (__int_to_char<unsigned long long>): Same.
7975 (__int_to_char<char, unsigned long>): New.
7976 (__int_to_char<char, unsigned long long>): New.
7977 (__int_to_char<wchar_t, unsigned long>): New.
7978 (__int_to_char<wchar_t, unsigned long long>): New.
7980 2003-02-11 Scott Snyder <snyder@fnal.gov>
7983 * include/bits/fstream.tcc (seekoff): Avoid operator+
7986 2003-02-11 Paolo Carlini <pcarlini@unitus.it>
7989 * include/ext/stdio_filebuf.h
7990 (stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
7991 stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
7992 Change to take a __size parameter of type size_t, not
7993 of type (template parameter dependent) int_type.
7994 * src/ios.cc (ios_base::Init::_S_ios_create): Change type of
7995 size vars to size_t.
7996 * testsuite/ext/stdio_filebuf.cc: Add.
7998 2003-02-11 Paolo Carlini <pcarlini@unitus.it>
7999 Petur Runolfsson <peturr02@ru.is>
8002 * include/bits/streambuf.tcc (__copy_streambufs):
8003 Don't conditionalize the copy to __testput.
8004 * testsuite/27_io/streambuf_members.cc (test09, test10): Add.
8006 2002-02-11 DJ Delorie <dj@redhat.com>
8008 * acinclude.m4: Check for native targets that can't link at
8009 this point in the build.
8010 * aclocal.m4: Regenerate.
8011 * configure: Regenerate.
8013 2003-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
8015 * hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
8017 (__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
8020 2003-02-07 Paolo Carlini <pcarlini@unitus.it>
8022 * testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
8023 unsigned char platforms.
8025 2003-02-06 Paolo Carlini <pcarlini@unitus.it>
8028 * include/std/std_istream.h
8029 (basic_istream::sentry::operator bool()): Make const.
8030 * include/std/std_ostream.h
8031 (basic_ostream::sentry::operator bool()): Likewise.
8032 * testsuite/27_io/istream_sentry.cc (test03): Add.
8033 * testsuite/27_io/ostream_sentry.cc: Add.
8035 2003-02-06 Paolo Carlini <pcarlini@unitus.it>
8038 Implement resolution of DR 231 (Ready)
8039 * include/bits/locale_facets.h (__num_base::_S_format_float):
8040 Change declaration: return void, remove __prec parameter.
8041 * src/locale.cc (__num_base::_S_format_float): Implement
8042 resolution of DR 231.
8043 * include/bits/locale_facets.tcc (num_put::_M_convert_float):
8044 Tweak uses. Check for negative precision.
8045 * testsuite/22_locale/num_put/put/char/6.cc: Add
8046 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
8048 2003-02-06 Peter Soetens <peter.soetens@mech.kuleuven.ac.be>
8050 * config/io/basic_file_libio.h: Fixups.
8051 * config/io/c_io_libio.h: Same.
8052 * libio/Makefile.am: Same.
8053 * libio/Makefile.in: Regenerated.
8055 2003-02-06 Benjamin Kosnik <bkoz@redhat.com>
8057 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
8058 Explicitly use the "C" locale.
8059 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
8061 2003-02-06 Petur Runolfsson <peturr02@ru.is>
8065 PR libstdc++/9028 (partial)
8071 (codecvt<wchar_t, char, mbstate_t>::do_encoding,
8072 codecvt<wchar_t, char, mbstate_t>::do_length,
8073 codecvt<wchar_t, char, mbstate_t>::do_max_length):
8075 * config/locale/generic/codecvt_members.cc: ...here.
8076 * config/locale/gnu/codecvt_members.cc: ...and here.
8078 * config/locale/generic/codecvt_members.cc,
8079 * config/locale/gnu/codecvt_members.cc
8080 (codecvt<wchar_t, char, mbstate_t>::do_encoding
8081 codecvt<wchar_t, char, mbstate_t>::do_in,
8082 codecvt<wchar_t, char, mbstate_t>::do_length,
8083 codecvt<wchar_t, char, mbstate_t>::do_max_length,
8084 codecvt<wchar_t, char, mbstate_t>::do_out):
8085 New implementation that handles stateless encodings,
8088 * config/locale/generic/codecvt_members.cc,
8089 * config/locale/gnu/codecvt_members.cc,
8090 * config/locale/ieee_1003.1-2001/codecvt_specializations.h,
8091 * include/bits/codecvt.h,
8093 (codecvt::length, codecvt::do_length):
8094 Change type of first argument of length and do_length from
8095 'const state_type&' to 'state_type&' according to DR 75.
8097 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Cleanup.
8098 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: New test.
8099 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: New test.
8100 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: New test.
8101 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
8102 Cleanup and check for correct return value from encoding
8104 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: New test.
8105 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: New test.
8106 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: New test.
8107 * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Cleanup.
8108 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: New test.
8109 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: New test.
8110 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: New test.
8111 * testsuite/22_locale/codecvt/in/wchar_t/5.cc: New test.
8112 * testsuite/22_locale/codecvt/in/wchar_t/6.cc: New test.
8113 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: New test.
8114 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: New test.
8115 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: New test.
8116 * testsuite/22_locale/codecvt/length/char/1.cc: Cleanup.
8117 * testsuite/22_locale/codecvt/length/char/2.cc: New test.
8118 * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Cleanup.
8119 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: New test.
8120 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: New test.
8121 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: New test.
8122 * testsuite/22_locale/codecvt/length/wchar_t/5.cc: New test.
8123 * testsuite/22_locale/codecvt/length/wchar_t/6.cc: New test.
8124 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: New test.
8125 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Cleanup.
8126 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: New test.
8127 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: New test.
8128 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: New test.
8129 * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Cleanup.
8130 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: New test.
8131 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: New test.
8132 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: New test.
8133 * testsuite/22_locale/codecvt/out/wchar_t/5.cc: New test.
8134 * testsuite/22_locale/codecvt/out/wchar_t/6.cc: New test.
8135 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: New test.
8136 * testsuite/22_locale/codecvt/unicode/1.cc: New test.
8137 * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Cleanup.
8138 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: New test.
8139 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: New test.
8140 * testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc: New test.
8142 2003-02-05 Benjamin Kosnik <bkoz@redhat.com>
8144 * include/bits/locale_facets.tcc (time_put::do_put): Use __write.
8145 (money_put::do_put): Same.
8147 2003-02-05 Jerry Quinn <jlquinn@optonline.net>
8149 * include/bits/ios_base.h (ios_base): Document reserved storage.
8151 * include/bits/locale_facets.h: (struct __pad): Comment on
8153 (__verify_grouping): Same.
8154 (__add_grouping): Same.
8155 * include/bits/locale_facets.tcc (__verify_grouping): Move
8156 comments to declaration.
8157 (__add_grouping): Same.
8159 * include/bits/locale_facets.tcc:
8160 (__write<_CharT, _OutIter>): New function.
8161 (__write<_CharT>): New function specialization.
8162 (num_put::_M_insert): Remove explicit loop over iterator. Use
8164 (num_put::_M_widen_float): Remove __basefield.
8165 (num_put::_M_widen_int): Move __basefield to within grouping block.
8167 * include/bits/streambuf_iterator.h: Include <streambuf>.
8168 (ostreambuf_iterator::_M_put): Add.
8170 2003-02-05 Paolo Carlini <pcarlini@unitus.it>
8172 * testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
8174 2003-02-04 Nathan Myers <ncm@cantrip.org>
8176 * testsuite/25_algorithms/min_max.cc (test02): Add.
8178 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
8180 PR libstdc++/9439, PR libstdc++/9425
8181 * config/io/basic_file_stdio.cc
8182 (__basic_file<char>::seekoff, seekpos): Return -1L if
8184 * include/bits/fstream.tcc (basic_filebuf::seekoff):
8185 Check _M_file.seekoff return value; always return
8186 pos_type(off_type(-1)) in case of failure.
8187 (basic_filebuf::pbackfail): Check this->seekoff return
8188 value and return traits_type::eof() in case of failure.
8189 * testsuite/27_io/filebuf_virtuals.cc (test09): Add.
8191 2003-02-04 Jerry Quinn <jlquinn@optonline.net>
8193 * include/std/std_ostream.h (ostream::_M_write): Declare.
8194 * ostream.tcc (ostream::_M_write): Define.
8195 (basic_ostream::write): Use it.
8196 (operator<<(basic_ostream, _CharT)): Ditto.
8197 (operator<<(basic_ostream, char)): Ditto.
8198 (operator<<(basic_ostream, _CharT*)): Ditto.
8199 (operator<<(basic_ostream, char*)): Ditto.
8200 (operator<<(basic_ostream, basic_string)): Ditto.
8202 2003-02-04 Benjamin Kosnik <bkoz@redhat.com>
8204 * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
8206 2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
8208 * docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
8209 add HTML comment about updating links if numbering changes.
8211 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
8214 * include/bits/streambuf.tcc (sputbackc): Access
8215 this->gptr()[-1] only if _M_in_beg < _M_in_cur.
8216 * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
8218 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
8221 * include/bits/fstream.tcc (open): If the 'ate' repositioning
8222 operation fails, calls close _and_ returns a null pointer
8223 to indicate failure (27.8.1.3,4).
8224 * testsuite/27_io/filebuf_members.cc (test_06): Add.
8226 2003-02-04 Petur Runolfsson <peturr02@ru.is>
8228 * testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
8230 2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
8232 * docs/html/27_io/howto.html: New section on stdio_filebuf.
8233 * docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
8234 * docs/html/documentation.html: Regenerate.
8236 2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
8238 * docs/html/17_intro/porting.texi: Update to GFDL 1.2.
8239 * docs/html/17_intro/porting.html: Regenerate.
8241 2003-02-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
8242 Phil Edwards <pme@gcc.gnu.org>
8244 * include/std/std_bitset.h: Replace CHAR_BIT with __CHAR_BIT__, use
8245 numeric_limits for bits-per-word values.
8246 (_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
8247 Use __builtin_popcountl instead.
8248 (_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
8249 _Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
8250 Use __builtin_ctzl instead.
8251 (_S_bit_count, _S_first_one): Remove.
8252 * config/linker-map.gnu (GLIBCPP_3.4): Remove std::_S_bit_count.
8253 * src/Makefile.am (sources): Remove bitset.cc.
8254 * src/bitset.cc: Delete file.
8255 * src/Makefile.in: Regenerate.
8257 2003-02-03 Phil Edwards <pme@gcc.gnu.org>
8259 PR libstdc++/9527, PR libstdc++/8713
8260 * docs/html/install.html: Mention glibc version requirement.
8261 * docs/html/faq/index.html (3.8): New note, glibc 2.2.5+ is needed
8262 with 3.2.1+ (formatting bugfixes).
8263 * docs/html/faq/index.txt: Regenerate.
8265 2003-02-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
8268 * include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
8271 * include/bits/valarray_before.h (__not_equal_to): Use != instead
8274 * testsuite/26_numerics/valarray_operators.cc: New test.
8276 2003-02-01 Phil Edwards <pme@gcc.gnu.org>
8278 * docs/html/faq/index.html: Correct link to libg++ information.
8279 * docs/html/faq/index.txt: Regenerated.
8281 2003-02-01 Paolo Carlini <pcarlini@unitus.it>
8282 Benjamin Kosnik <bkoz@redhat.com>
8284 Const correctness issue:
8285 http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
8286 * include/bits/locale_classes.h
8287 (locale::_Impl::_M_facets): Change type to const facet**.
8288 (locale::_Impl::_M_install_facet): Change declaration to
8290 (locale::facet::_M_references): Make mutable.
8291 (locale::facet::_M_add_reference): Declare const.
8292 (locale::facet::_M_remove_reference): Likewise.
8293 * include/bits/locale_facets.tcc
8294 (use_facet(const locale&)): Tweak for const facet** _M_facets.
8295 (has_facet(const locale&)): Likewise.
8297 (locale::facet::_M_add_reference): Adjust definition.
8298 (locale::facet::_M_remove_reference): Likewise.
8300 (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
8301 const facet** _M_facets.
8302 (locale::_Impl::_Impl(const char*, size_t)): Likewise.
8303 (locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
8304 (locale::_Impl::_M_install_facet): Adjust definition to take
8305 const facet* and for const facet** _M_facets.
8306 * testsuite/22_locale/locale/cons/8.cc: Add.
8308 2003-01-29 Mark Mitchell <mark@codesourcery.com>
8310 * include/std/std_limits.h (numeric_limits<float>::has_infinity):
8311 Use __FLT_HAS_INIFINITY__ to initialize.
8312 (numeric_limits<float>::has_quiet_NaN): Likewise.
8313 (numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
8315 (numeric_limits<double>::has_quiet_NaN): Likewise.
8316 (numeric_limits<long double>::has_infinity): Use
8317 __LDBL_HAS_INIFINITY__ to initialize.
8318 (numeric_limits<long_double>::has_quiet_NaN): Likewise.
8320 2003-01-28 Nathan Sidwell <nathan@codesourcery.com>
8323 * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
8324 with bases which are very ambiguous.
8326 2003-01-28 Danny Smith <dannysmith@users.sourceforge.net>
8328 * src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
8329 @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
8330 * libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
8331 * src/Makefile.in: Regenerate.
8332 * libsupc++/Makefile.in: Regenerate.
8334 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
8336 * acinclude.m4 (glibcpp_toolexeclibdir): Instead of
8337 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
8338 version_specific_libs is enabled.
8339 * aclocal.m4, configure: Rebuilt.
8341 2003-01-24 Nathan Sidwell <nathan@codesourcery.com>
8343 * include/bits/valarray_meta.h: Remove, split into ...
8344 * include/bits/valarray_before.h: ... this, and ...
8345 * include/bits/valarray_after.h: ... this.
8346 * include/std/std_valarray.h: Adjust.
8347 * include/Makefile.am (bits_headers): Adjust.
8348 * include/Makefile.in: Regenerate.
8350 2003-01-24 Andreas Schwab <schwab@suse.de>
8352 * config/linker-map.gnu: Fix for size_t variance.
8354 2003-01-23 Petur Runolfsson <peturr02@ru.is>
8357 * include/std/std_streambuf.h
8358 (basic_streambuf::basic_streambuf,
8359 basic_streambuf::~basic_streambuf,
8360 basic_streambuf::getloc, basic_streambuf::imbue):
8361 Remove _M_buf_locale_init
8362 * include/bits/fstream.tcc (basic_filebuf::imbue): Likewise
8363 * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
8364 * testsuite/27_io/streambuf_members.cc (test08): Add.
8365 * testsuite/27_io/stringbuf_virtuals.cc (test08): Add.
8367 2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
8369 Revert include ordering.
8370 * config/locale/generic/c_locale.h: Add include guards.
8371 * config/locale/gnu/c_locale.h: Same.
8372 * include/bits/locale_classes.h: Remove cctype include.
8373 * include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
8374 * include/std/std_fstream.h: Remove streambuf include.
8375 * include/std/std_sstream.h: Remove streambuf include.
8377 2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
8379 * configure.in (libtool_VERSION): To 6:0:0.
8380 * configure: Regenerated.
8381 * config/linker-map.gnu: Clean.
8383 * src/misc-inst.cc: Remove instantiations.
8385 * include/bits/stl_alloc.h (__malloc_alloc_template):
8387 (__default_alloc_template): To __pool_alloc.
8388 * src/stl-inst.cc: Same.
8389 * include/backward/alloc.h: Update.
8390 * testsuite/ext/allocators.cc: Update.
8392 * src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
8393 really try to remove these if possible.
8394 * src/locale.cc (std): Same.
8396 * testsuite/abi_check.cc (check_version): Add.
8398 2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
8399 Sysoltsev Slawa <Vyatcheslav.Sysoltsev@intel.com>
8400 Mark Mitchell <mark@codesourcery.com>
8403 * include/std/std_fstream.h (basic_filebuf::uflow): Declare.
8404 (basic_filebuf::underflow): Declare.
8407 2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
8409 * include/bits/locale_facets.h: Move non-facet classes requiring
8411 * include/bits/locale_classes.h: New.
8412 * include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
8413 * include/bits/Makefile.in: Regenerate.
8415 * include/bits/locale_facets.tcc (__convert_from_v): Move to...
8416 * config/locale/gnu/c_locale.h: ...here.
8417 * config/locale/generic/c_locale.h: Same.
8419 * include/bits/locale_facets.tcc: Move declarations to...
8420 * include/bits/locale_facets.h: ...here.
8421 * include/bits/basic_ios.h: Tweak includes accordingly.
8422 * include/std/std_sstream.h: Add streambuf include.
8423 * include/std/std_fstream.h: Ditto.
8424 * include/std/std_locale.h: Add locale_classes.h include.
8425 * include/std/std_iosfwd.h: Tweak.
8426 * src/concept-inst.cc: Add iterator include.
8428 * config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
8429 bits as unexported in the future.
8431 2003-01-21 Benjamin Kosnik <bkoz@redhat.com>
8433 Reshuffle 22_locale testsuite.
8434 * 22_locale/(codecvt.cc money_get.cc
8435 codecvt_members_char_char.cc money_get_members_char.cc
8436 codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
8437 codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
8438 codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
8439 moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
8440 collate_members_char.cc money_put.cc collate_members_wchar_t.cc
8441 money_put_members_char.cc ctor_copy_dtor.cc
8442 money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
8443 num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
8444 ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
8445 numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
8446 ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
8447 num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
8448 ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
8449 operators.cc ctype_widen_char.cc static_members.cc
8450 ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
8451 global_templates.cc time_get_members_wchar_t.cc, members.cc,
8452 time_put.cc, messages_byname.cc, time_put_members_char.cc,
8453 messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
8454 Split up into individual test cases...
8455 * 22_locale/codecvt/1.cc: New.
8456 * 22_locale/codecvt/2.cc: New.
8457 * 22_locale/codecvt/always_noconv/char/1.cc: New.
8458 * 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
8459 * 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
8460 * 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
8461 * 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
8462 * 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
8463 * 22_locale/codecvt/encoding/char/1.cc: New.
8464 * 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
8465 * 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
8466 * 22_locale/codecvt/encoding/wchar_t/1.cc: New.
8467 * 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
8468 * 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
8469 * 22_locale/codecvt/in/char/1.cc: New.
8470 * 22_locale/codecvt/in/char/wrapped_env.cc: New.
8471 * 22_locale/codecvt/in/char/wrapped_locale.cc: New.
8472 * 22_locale/codecvt/in/wchar_t/1.cc: New.
8473 * 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
8474 * 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
8475 * 22_locale/codecvt/length/char/1.cc: New.
8476 * 22_locale/codecvt/length/char/wrapped_env.cc: New.
8477 * 22_locale/codecvt/length/char/wrapped_locale.cc: New.
8478 * 22_locale/codecvt/length/wchar_t/1.cc: New.
8479 * 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
8480 * 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
8481 * 22_locale/codecvt/max_length/char/1.cc: New.
8482 * 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
8483 * 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
8484 * 22_locale/codecvt/max_length/wchar_t/1.cc: New.
8485 * 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
8486 * 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
8487 * 22_locale/codecvt/out/char/1.cc: New.
8488 * 22_locale/codecvt/out/char/wrapped_env.cc: New.
8489 * 22_locale/codecvt/out/char/wrapped_locale.cc: New.
8490 * 22_locale/codecvt/out/wchar_t/1.cc: New.
8491 * 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
8492 * 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
8493 * 22_locale/codecvt/unicode/char.cc: New.
8494 * 22_locale/codecvt/unicode/wchar_t.cc: New.
8495 * 22_locale/codecvt/unshift/char/1.cc: New.
8496 * 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
8497 * 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
8498 * 22_locale/codecvt/unshift/wchar_t/1.cc: New.
8499 * 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
8500 * 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
8501 * 22_locale/collate/1.cc: New.
8502 * 22_locale/collate/2.cc: New.
8503 * 22_locale/collate/compare/char/1.cc: New.
8504 * 22_locale/collate/compare/char/2.cc: New.
8505 * 22_locale/collate/compare/char/wrapped_env.cc: New.
8506 * 22_locale/collate/compare/char/wrapped_locale.cc: New.
8507 * 22_locale/collate/compare/wchar_t/1.cc: New.
8508 * 22_locale/collate/compare/wchar_t/2.cc: New.
8509 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
8510 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
8511 * 22_locale/collate/hash/char/1.cc: New.
8512 * 22_locale/collate/hash/char/2.cc: New.
8513 * 22_locale/collate/hash/char/wrapped_env.cc: New.
8514 * 22_locale/collate/hash/char/wrapped_locale.cc: New.
8515 * 22_locale/collate/hash/wchar_t/1.cc: New.
8516 * 22_locale/collate/hash/wchar_t/2.cc: New.
8517 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
8518 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
8519 * 22_locale/collate/transform/char/2.cc: New.
8520 * 22_locale/collate/transform/char/wrapped_env.cc: New.
8521 * 22_locale/collate/transform/char/wrapped_locale.cc: New.
8522 * 22_locale/collate/transform/wchar_t/2.cc: New.
8523 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
8524 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
8525 * 22_locale/collate_byname/1.cc: New.
8526 * 22_locale/ctype/1.cc: New.
8527 * 22_locale/ctype/2.cc: New.
8528 * 22_locale/ctype/cons/char/1.cc: New.
8529 * 22_locale/ctype/cons/char/wrapped_env.cc: New.
8530 * 22_locale/ctype/cons/char/wrapped_locale.cc: New.
8531 * 22_locale/ctype/is/char/1.cc: New.
8532 * 22_locale/ctype/is/char/2.cc: New.
8533 * 22_locale/ctype/is/char/3.cc: New.
8534 * 22_locale/ctype/is/char/wrapped_env.cc: New.
8535 * 22_locale/ctype/is/char/wrapped_locale.cc: New.
8536 * 22_locale/ctype/is/wchar_t/1.cc: New.
8537 * 22_locale/ctype/is/wchar_t/2.cc: New.
8538 * 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
8539 * 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
8540 * 22_locale/ctype/narrow/char/1.cc: New.
8541 * 22_locale/ctype/narrow/char/2.cc: New.
8542 * 22_locale/ctype/narrow/char/wrapped_env.cc: New.
8543 * 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
8544 * 22_locale/ctype/narrow/wchar_t/1.cc: New.
8545 * 22_locale/ctype/narrow/wchar_t/2.cc: New.
8546 * 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
8547 * 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
8548 * 22_locale/ctype/scan/char/1.cc: New.
8549 * 22_locale/ctype/scan/char/wrapped_env.cc: New.
8550 * 22_locale/ctype/scan/char/wrapped_locale.cc: New.
8551 * 22_locale/ctype/scan/wchar_t/1.cc: New.
8552 * 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
8553 * 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
8554 * 22_locale/ctype/to/char/1.cc: New.
8555 * 22_locale/ctype/to/char/wrapped_env.cc: New.
8556 * 22_locale/ctype/to/char/wrapped_locale.cc: New.
8557 * 22_locale/ctype/to/wchar_t/1.cc: New.
8558 * 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
8559 * 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
8560 * 22_locale/ctype/widen/char/1.cc: New.
8561 * 22_locale/ctype/widen/char/wrapped_env.cc: New.
8562 * 22_locale/ctype/widen/char/wrapped_locale.cc: New.
8563 * 22_locale/ctype/widen/wchar_t/1.cc: New.
8564 * 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
8565 * 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
8566 * 22_locale/facet/1.cc: New.
8567 * 22_locale/facet/2.cc: New.
8568 * 22_locale/global_templates/1.cc: New.
8569 * 22_locale/locale/cons/1.cc: New.
8570 * 22_locale/locale/cons/2.cc: New.
8571 * 22_locale/locale/cons/3.cc: New.
8572 * 22_locale/locale/cons/4.cc: New.
8573 * 22_locale/locale/cons/5.cc: New.
8574 * 22_locale/locale/cons/6.cc: New.
8575 * 22_locale/locale/cons/7.cc: New.
8576 * 22_locale/locale/global_locale_objects/1.cc: New.
8577 * 22_locale/locale/global_locale_objects/2.cc: New.
8578 * 22_locale/locale/global_locale_objects/3.cc: New.
8579 * 22_locale/locale/operations/1.cc: New.
8580 * 22_locale/locale/operations/2.cc: New.
8581 * 22_locale/messages/1.cc: New.
8582 * 22_locale/messages/2.cc: New.
8583 * 22_locale/messages/members/char/1.cc: New.
8584 * 22_locale/messages/members/char/2.cc: New.
8585 * 22_locale/messages/members/char/3.cc: New.
8586 * 22_locale/messages/members/char/wrapped_env.cc: New.
8587 * 22_locale/messages/members/char/wrapped_locale.cc: New.
8588 * 22_locale/messages_byname/1.cc: New.
8589 * 22_locale/money_get/1.cc: New.
8590 * 22_locale/money_get/2.cc: New.
8591 * 22_locale/money_get/get/char/1.cc: New.
8592 * 22_locale/money_get/get/char/2.cc: New.
8593 * 22_locale/money_get/get/char/3.cc: New.
8594 * 22_locale/money_get/get/char/4.cc: New.
8595 * 22_locale/money_get/get/char/5.cc: New.
8596 * 22_locale/money_get/get/char/6.cc: New.
8597 * 22_locale/money_get/get/char/7.cc: New.
8598 * 22_locale/money_get/get/char/8.cc: New.
8599 * 22_locale/money_get/get/char/wrapped_env.cc: New.
8600 * 22_locale/money_get/get/char/wrapped_locale.cc: New.
8601 * 22_locale/money_get/get/wchar_t/1.cc: New.
8602 * 22_locale/money_get/get/wchar_t/2.cc: New.
8603 * 22_locale/money_get/get/wchar_t/3.cc: New.
8604 * 22_locale/money_get/get/wchar_t/4.cc: New.
8605 * 22_locale/money_get/get/wchar_t/5.cc: New.
8606 * 22_locale/money_get/get/wchar_t/6.cc: New.
8607 * 22_locale/money_get/get/wchar_t/7.cc: New.
8608 * 22_locale/money_get/get/wchar_t/8.cc: New.
8609 * 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
8610 * 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
8611 * 22_locale/money_put/1.cc: New.
8612 * 22_locale/money_put/2.cc: New.
8613 * 22_locale/money_put/put/char/1.cc: New.
8614 * 22_locale/money_put/put/char/2.cc: New.
8615 * 22_locale/money_put/put/char/3.cc: New.
8616 * 22_locale/money_put/put/char/4.cc: New.
8617 * 22_locale/money_put/put/char/5.cc: New.
8618 * 22_locale/money_put/put/char/6.cc: New.
8619 * 22_locale/money_put/put/char/wrapped_env.cc: New.
8620 * 22_locale/money_put/put/char/wrapped_locale.cc: New.
8621 * 22_locale/money_put/put/wchar_t/1.cc: New.
8622 * 22_locale/money_put/put/wchar_t/2.cc: New.
8623 * 22_locale/money_put/put/wchar_t/3.cc: New.
8624 * 22_locale/money_put/put/wchar_t/4.cc: New.
8625 * 22_locale/money_put/put/wchar_t/5.cc: New.
8626 * 22_locale/money_put/put/wchar_t/6.cc: New.
8627 * 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
8628 * 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
8629 * 22_locale/moneypunct/1.cc: New.
8630 * 22_locale/moneypunct/2.cc: New.
8631 * 22_locale/moneypunct/3.cc: New.
8632 * 22_locale/moneypunct/members/char/1.cc: New.
8633 * 22_locale/moneypunct/members/char/2.cc: New.
8634 * 22_locale/moneypunct/members/char/wrapped_env.cc: New.
8635 * 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
8636 * 22_locale/moneypunct/members/wchar_t/1.cc: New.
8637 * 22_locale/moneypunct/members/wchar_t/2.cc: New.
8638 * 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
8639 * 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
8640 * 22_locale/moneypunct_byname/1.cc: New.
8641 * 22_locale/num_get/1.cc: New.
8642 * 22_locale/num_get/2.cc: New.
8643 * 22_locale/num_get/get/char/1.cc: New.
8644 * 22_locale/num_get/get/char/2.cc: New.
8645 * 22_locale/num_get/get/char/3.cc: New.
8646 * 22_locale/num_get/get/char/4.cc: New.
8647 * 22_locale/num_get/get/char/5.cc: New.
8648 * 22_locale/num_get/get/char/6.cc: New.
8649 * 22_locale/num_get/get/char/wrapped_env.cc: New.
8650 * 22_locale/num_get/get/char/wrapped_locale.cc: New.
8651 * 22_locale/num_get/get/wchar_t/1.cc: New.
8652 * 22_locale/num_get/get/wchar_t/2.cc: New.
8653 * 22_locale/num_get/get/wchar_t/3.cc: New.
8654 * 22_locale/num_get/get/wchar_t/4.cc: New.
8655 * 22_locale/num_get/get/wchar_t/5.cc: New.
8656 * 22_locale/num_get/get/wchar_t/6.cc: New.
8657 * 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
8658 * 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
8659 * 22_locale/num_put/1.cc: New.
8660 * 22_locale/num_put/2.cc: New.
8661 * 22_locale/num_put/put/char/1.cc: New.
8662 * 22_locale/num_put/put/char/2.cc: New.
8663 * 22_locale/num_put/put/char/3.cc: New.
8664 * 22_locale/num_put/put/char/4.cc: New.
8665 * 22_locale/num_put/put/char/5.cc: New.
8666 * 22_locale/num_put/put/char/wrapped_env.cc: New.
8667 * 22_locale/num_put/put/char/wrapped_locale.cc: New.
8668 * 22_locale/num_put/put/wchar_t/1.cc: New.
8669 * 22_locale/num_put/put/wchar_t/2.cc: New.
8670 * 22_locale/num_put/put/wchar_t/3.cc: New.
8671 * 22_locale/num_put/put/wchar_t/4.cc: New.
8672 * 22_locale/num_put/put/wchar_t/5.cc: New.
8673 * 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
8674 * 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
8675 * 22_locale/numpunct/1.cc: New.
8676 * 22_locale/numpunct/2.cc: New.
8677 * 22_locale/numpunct/members/char/1.cc: New.
8678 * 22_locale/numpunct/members/char/2.cc: New.
8679 * 22_locale/numpunct/members/char/wrapped_env.cc: New.
8680 * 22_locale/numpunct/members/char/wrapped_locale.cc: New.
8681 * 22_locale/numpunct/members/wchar_t/1.cc: New.
8682 * 22_locale/numpunct/members/wchar_t/2.cc: New.
8683 * 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
8684 * 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
8685 * 22_locale/numpunct_byname/1.cc: New.
8686 * 22_locale/numpunct_byname/2.cc: New.
8687 * 22_locale/time_get/1.cc: New.
8688 * 22_locale/time_get/2.cc: New.
8689 * 22_locale/time_get/date_order/char/1.cc: New.
8690 * 22_locale/time_get/date_order/char/wrapped_env.cc: New.
8691 * 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
8692 * 22_locale/time_get/date_order/wchar_t/1.cc: New.
8693 * 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
8694 * 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
8695 * 22_locale/time_get/get_date/char/1.cc: New.
8696 * 22_locale/time_get/get_date/char/2.cc: New.
8697 * 22_locale/time_get/get_date/char/3.cc: New.
8698 * 22_locale/time_get/get_date/char/wrapped_env.cc: New.
8699 * 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
8700 * 22_locale/time_get/get_date/wchar_t/1.cc: New.
8701 * 22_locale/time_get/get_date/wchar_t/2.cc: New.
8702 * 22_locale/time_get/get_date/wchar_t/3.cc: New.
8703 * 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
8704 * 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
8705 * 22_locale/time_get/get_monthname/char/1.cc: New.
8706 * 22_locale/time_get/get_monthname/char/2.cc: New.
8707 * 22_locale/time_get/get_monthname/char/3.cc: New.
8708 * 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
8709 * 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
8710 * 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
8711 * 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
8712 * 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
8713 * 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
8714 * 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
8715 * 22_locale/time_get/get_time/char/1.cc: New.
8716 * 22_locale/time_get/get_time/char/2.cc: New.
8717 * 22_locale/time_get/get_time/char/3.cc: New.
8718 * 22_locale/time_get/get_time/char/wrapped_env.cc: New.
8719 * 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
8720 * 22_locale/time_get/get_time/wchar_t/1.cc: New.
8721 * 22_locale/time_get/get_time/wchar_t/2.cc: New.
8722 * 22_locale/time_get/get_time/wchar_t/3.cc: New.
8723 * 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
8724 * 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
8725 * 22_locale/time_get/get_weekday/char/1.cc: New.
8726 * 22_locale/time_get/get_weekday/char/2.cc: New.
8727 * 22_locale/time_get/get_weekday/char/3.cc: New.
8728 * 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
8729 * 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
8730 * 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
8731 * 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
8732 * 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
8733 * 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
8734 * 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
8735 * 22_locale/time_get/get_year/char/1.cc: New.
8736 * 22_locale/time_get/get_year/char/3.cc: New.
8737 * 22_locale/time_get/get_year/char/wrapped_env.cc: New.
8738 * 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
8739 * 22_locale/time_get/get_year/wchar_t/1.cc: New.
8740 * 22_locale/time_get/get_year/wchar_t/3.cc: New.
8741 * 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
8742 * 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
8743 * 22_locale/time_put/1.cc: New.
8744 * 22_locale/time_put/2.cc: New.
8745 * 22_locale/time_put/put/char/1.cc: New.
8746 * 22_locale/time_put/put/char/10.cc: New.
8747 * 22_locale/time_put/put/char/2.cc: New.
8748 * 22_locale/time_put/put/char/3.cc: New.
8749 * 22_locale/time_put/put/char/4.cc: New.
8750 * 22_locale/time_put/put/char/5.cc: New.
8751 * 22_locale/time_put/put/char/6.cc: New.
8752 * 22_locale/time_put/put/char/7.cc: New.
8753 * 22_locale/time_put/put/char/8.cc: New.
8754 * 22_locale/time_put/put/char/9.cc: New.
8755 * 22_locale/time_put/put/char/wrapped_env.cc: New.
8756 * 22_locale/time_put/put/char/wrapped_locale.cc: New.
8757 * 22_locale/time_put/put/wchar_t/1.cc: New.
8758 * 22_locale/time_put/put/wchar_t/10.cc: New.
8759 * 22_locale/time_put/put/wchar_t/2.cc: New.
8760 * 22_locale/time_put/put/wchar_t/3.cc: New.
8761 * 22_locale/time_put/put/wchar_t/4.cc: New.
8762 * 22_locale/time_put/put/wchar_t/5.cc: New.
8763 * 22_locale/time_put/put/wchar_t/6.cc: New.
8764 * 22_locale/time_put/put/wchar_t/7.cc: New.
8765 * 22_locale/time_put/put/wchar_t/8.cc: New.
8766 * 22_locale/time_put/put/wchar_t/9.cc: New.
8767 * 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
8768 * 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
8770 2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com>
8772 * config/locale/generic/messages_members.h
8773 (messages_byname<_CharT>::messages_byname): Use this-> to refer to
8774 unqualified members of base clasess.
8776 2003-01-16 Mark Mitchell <mark@codesourcery.com>
8777 Jeffrey Oldham <oldham@codesourcery.com>
8779 * config/locale/gnu/messages_members.h: Use this-> to refer to
8780 unqualified members of base clasess.
8781 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
8782 * include/bits/codecvt.h: Likewise.
8783 * include/bits/deque.tcc: Likewise.
8784 * include/bits/fstream.tcc: Likewise.
8785 * include/bits/istream.tcc: Likewise.
8786 * include/bits/list.tcc: Likewise.
8787 * include/bits/locale_facets.h: Likewise.
8788 * include/bits/ostream.tcc: Likewise.
8789 * include/bits/sstream.tcc: Likewise.
8790 * include/bits/stl_bvector.h: Likewise.
8791 * include/bits/stl_deque.h: Likewise.
8792 * include/bits/stl_list.h: Likewise.
8793 * include/bits/stl_tree.h: Likewise.
8794 * include/bits/stl_vector.h: Likewise.
8795 * include/bits/vector.tcc: Likewise.
8796 * include/ext/ropeimpl.h: Likewise.
8797 * include/ext/stdio_filebuf.h: Likewise.
8798 * include/ext/stl_rope.h: Likewise.
8799 * include/std/std_fstream.h: Likewise.
8800 * include/std/std_sstream.h: Likewise.
8802 2003-01-15 Phil Edwards <pme@gcc.gnu.org>
8804 * include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
8806 2003-01-15 Benjamin Kosnik <bkoz@redhat.com>
8808 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
8809 GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
8810 * aclocal.m4: Regenerate.
8811 * configure: Regenerate.
8812 * testsuite/Makefile.am (all-local): Add conditional rule to
8813 generate testsuite_wchar_t.
8814 * testsuite/Makefile.in: Regenerate.
8815 * testsuite/lib/libstdc++-v3-dg.exp
8816 (libstdc++-v3-list-sourcefiles): Remove wchar_t files if
8817 testsuite_wchar_t is not present in the build directory.
8818 * testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
8819 Remove setulimit bits.
8820 * testsuite/26_numerics/complex_value.cc: Set to noopts.
8821 * testsuite/Makefile.am (CLEANFILES): Add.
8822 * testsuite/Makefile.in: Regenerate.
8824 2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
8826 * config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
8829 2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com>
8831 Further conform g++'s __vmi_class_type_info to the C++ ABI
8833 * libsupc++/cxxabi.h
8834 (__vmi_class_type_info::__flags_masks): Remove enumerations not
8835 required by the specification.
8837 2003-01-12 Benjamin Kosnik <bkoz@redhat.com>
8839 Renames, namespaces for testsuite utilities.
8840 * testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
8841 (gnu_allocator_tracker): Rename to allocation_tracker.
8842 (gnu_new_allocator): Rename to tracker_alloc.
8843 (__set_testsuite_memlimit): Rename to set_memory_limits.
8844 (gnu_assignment_operator): Rename to assignment_operator.
8845 (gnu_destructor): Rename to destructor.
8846 (gnu_copy_tracker): Rename to copy_tracker.
8847 (gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
8848 (run_tests_wrapped_locale): New.
8849 (run_tests_wrapped_env): New.
8850 * testsuite/testsuite_hooks.cc: Same.
8851 (class locale_data): Add.
8852 (class enviornment_variable): Add.
8853 (class not_found): Add.
8854 * testsuite/testsuite_allocator.h: Same.
8855 * testsuite/testsuite_allocator.cc: Same.
8856 * testsuite/23_containers/deque_ctor.cc
8857 (test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
8859 Change gnu_new_allocator to tracker_alloc.
8860 Change gnu_counting_struct to counter.
8861 Change gnu_copy_tracker to copy_tracker.
8862 Change gnu_copy_constructor to copy_constructor.
8863 Change gnu_assignment_operator to assignment_operator.
8865 * testsuite/23_containers/vector_capacity.cc: Same.
8866 * testsuite/23_containers/vector_ctor.cc (test01): Same.
8867 * testsuite/23_containers/list_modifiers.cc: Change
8868 gnu_copy_tracker to copy_tracker.
8869 * testsuite/21_strings/ctor_copy_dtor.cc (main): Change
8870 __set_testsuite_memlimit to set_memory_limits.
8871 * testsuite/21_strings/insert.cc (main): Same.
8872 * testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
8873 * testsuite/27_io/stringstream.cc: Same.
8874 * testsuite/27_io/stringbuf.cc: Same.
8875 * testsuite/27_io/streambuf.cc: Same.
8876 * testsuite/27_io/ostream.cc: Same.
8877 * testsuite/27_io/istream.cc: Same.
8878 * testsuite/27_io/fstream.cc: Same.
8879 * testsuite/lib/libstdc++-v3-dg.exp
8880 (libstdc++-v3-list-sourcefiles): Additionally handle files two and
8881 three levels deeper in glob patterns.
8883 2003-01-11 Phil Edwards <pme@gcc.gnu.org>
8885 * docs/doxygen/tables.html: Finished now.
8886 * docs/doxygen/user.cfg.in: Update to latest version of Doxygen.
8887 * include/bits/basic_ios.h (basic_ios::rdbuf): Add example to
8890 * include/bits/deque.tcc, include/bits/stl_alloc.h,
8891 include/bits/stl_deque.h, include/bits/stl_list.h,
8892 include/bits/stl_vector.h: Remove _GLIBCPP_DEPRECATED bits scheduled
8895 2003-01-09 Benjamin Kosnik <bkoz@redhat.com>
8897 * configure.in: Revert.
8898 * configure: Regenerate.
8900 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
8902 * include/Makefile.am (install-data-local): Prepend
8903 $(DESTDIR) to destination paths in all (un)installation
8904 commands. Use ${c_base_builddir} and ${std_builddir}
8905 as destination subdirectories to achieve consistency with
8906 preceding mkinstalldirs commands. No effect because both
8907 variables contain "." only.
8908 * include/Makefile.in: Regenerate.
8910 2003-01-08 Benjamin Kosnik <bkoz@redhat.com>
8912 * include/Makefile.am (stamp-*): Add checks for existing stamps.
8913 * include/Makefile.in: Regenerate.
8915 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
8916 * aclocal.m4: Regenerate.
8918 * configure.in: Don't add new multi-do rules every time the
8919 directory is reconfigured.
8920 * configure: Regenerate.
8922 2003-01-08 Brad Spencer <spencer@infointeractive.com>
8923 Nathan Myers <ncm@cantrip.org>
8925 * src/Makefile.am (stamp-debug): Clean.
8926 * src/Makefile.in: Regenerate.
8928 2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
8931 * Makefile.am (distclean-multi): Fix.
8932 * Makefile.in: Regenerate.
8934 2003-01-06 Benjamin Kosnik <bkoz@redhat.com>
8936 * include/bits/locale_facets.h (messages): Move ctor, dtor
8938 (__timepunct): Same.
8939 * config/locale/gnu/messages_members.h (messages): Add dtor, ctor
8940 definitions. Conditionalize for GNU systems.
8941 * config/locale/generic/messages_members.h (messages): Add dtor, ctor
8943 * config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
8944 definitions. Conditionalize for GNU systems.
8945 * config/locale/generic/time_members.h (messages): New. Add dtor, ctor
8947 * include/bits/localefwd.h (locale::facet::_S_c_name): Add.
8948 * src/locale.cc: Define.
8949 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
8951 * config/locale/gnu/time_members.h: Use it.
8952 * config/locale/gnu/messages_members.h: Use it.
8953 * config/linker-map.gnu: Add locale::facets details.
8954 * include/Makefile.am (target_headers_extra): Add time_members.h.
8955 * include/Makefile.in: Regenerate.
8956 * acinclude.m4: Export CTIME_H.
8957 * aclocal.m4: Regenerate.
8958 * configure: Regnerate.
8960 2003-01-06 Paolo Carlini <pcarlini@unitus.it>
8963 (codecvt<char, char, mbstate_t>::do_in, do_out):
8964 Tweak parameters to avoid unused parameter warnings.
8966 2003-01-06 Paolo Carlini <pcarlini@unitus.it>
8969 * include/bits/locale_facets.cc (num_put::_M_convert_float):
8970 Limit __prec to digits10 + 2, not digits10 + 1, taking into
8971 account the possibility of %{g,G} conversion specifiers
8972 inside _S_format_float.
8973 * testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
8975 2003-01-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
8977 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
8978 libstdc++-v3-list-sourcefiles): Additionally handle files one
8979 level deeper in glob patterns.
8981 * testsuite/27_io/istream_extractor_arith.cc: Delete, split...
8982 * testsuite/27_io/istream_extractor_arith/01.cc,
8983 testsuite/27_io/istream_extractor_arith/02.cc,
8984 testsuite/27_io/istream_extractor_arith/03.cc,
8985 testsuite/27_io/istream_extractor_arith/06.cc,
8986 testsuite/27_io/istream_extractor_arith/07.cc,
8987 testsuite/27_io/istream_extractor_arith/08.cc,
8988 testsuite/27_io/istream_extractor_arith/09.cc,
8989 testsuite/27_io/istream_extractor_arith/10.cc,
8990 testsuite/27_io/istream_extractor_arith/11.cc,
8991 testsuite/27_io/istream_extractor_arith/12.cc,
8992 testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
8993 * testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
8996 2003-01-05 Paolo Carlini <pcarlini@unitus.it>
9000 (codecvt<char, char, mbstate_t>::do_in, do_out):
9001 Implement the resolution of DR19 (TC).
9002 * testsuite/22_locale/codecvt_members_char_char.cc
9005 2003-01-02 Jason Merrill <jason@redhat.com>
9007 * config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
9008 *__mem is also an output.
9009 * config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.