]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
01.cc: Remove redundant #includes.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
223b5084
PC
12003-01-04 Paolo Carlini <pcarlini@suse.de>
2
3 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc:
4 Remove redundant #includes.
5 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc:
6 Likewise.
7 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc:
8 Likewise.
9 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc:
10 Likewise.
11 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
12 Likewise.
13 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc:
14 Likewise.
15 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
16 Likewise.
17 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
18 Likewise.
19 * testsuite/27_io/basic_istream/extractors_arithmetic/char/11.cc:
20 Likewise.
21 * testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
22 Likewise.
23 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc:
24 Likewise.
25 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc:
26 Likewise.
27 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
28 Likewise.
29
4f8163b1
MM
302004-01-04 Mark Mitchell <mark@codesourcery.com>
31
32 PR c++/12226
33 * testsuite/27_io/basic_filebuf/4.cc: Remove use of invalid copy
34 constructor.
35 * testsuite/27_io/basic_fstream/4.cc: Likewise.
36 * testsuite/27_io/basic_ifstream/4.cc: Likewise.
37 * testsuite/27_io/basic_ios/4.cc: Likewise.
38 * testsuite/27_io/basic_iostream/4.cc: Likewise.
39 * testsuite/27_io/basic_istream/4.cc: Likewise.
40 * testsuite/27_io/basic_istingstream/4.cc: Likewise.
41 * testsuite/27_io/basic_ofstream/4.cc: Likewise.
42 * testsuite/27_io/basic_ostream/4.cc: Likewise.
43 * testsuite/27_io/basic_ostringstream/4.cc: Likewise.
44 * testsuite/27_io/basic_stringbuf/5.cc: Likewise.
45 * testsuite/27_io/basic_stringstream/4.cc: Likewise.
46
17fa5560
PC
472004-01-04 Paolo Carlini <pcarlini@suse.de>
48
49 * config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
50 Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
51 always use double underscored names.
52 * config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
53 Likewise.
54 * include/bits/locale_facets.h (struct __numpunct_cache):
55 Dimension _M_atoms_out and _M_atoms_in one position smaller.
56 (__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
57 and _M_atoms_in.
58
4f0c9c8a
PC
592003-12-31 Paolo Carlini <pcarlini@suse.de>
60
61 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
62 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
63 _first_ look for thousands_sep, then for decimal_point and
64 finally for digits.
65 (num_get::_M_extract_float): After the decimal_point or
66 'e'/'E', decimal_point and thousands_sep just break out the
67 parsing loop.
68 * testsuite/22_locale/num_get/get/char/11.cc: Add tests.
69 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
70
a27cf81c
PC
712003-12-30 Paolo Carlini <pcarlini@suse.de>
72
73 PR libstdc++/13369
74 * include/bits/locale_facets.tcc (__verify_grouping):
75 Fix to deal properly with __grouping_tmp.size() >
76 __grouping.size().
77 * testsuite/22_locale/num_get/get/char/13.cc: New.
78 * testsuite/22_locale/num_get/get/wchar_t/13.cc: Ditto.
79
a043b1f5
JQ
802003-12-29 Jerry Quinn <jlquinn@optonline.net>
81
82 * include/bits/locale_facets.h (ctype.narrow,widen): Add cast.
83
9d47bc51
PC
842003-12-29 Paolo Carlini <pcarlini@suse.de>
85
86 * acinclude.m4 (GLIBCXX_CHECK_LFS): Add -fno-exceptions
87 to CXXFLAGS.
88 * aclocal.m4: Regenerate.
89 * configure: Likewise.
90
517da0ce
MM
912003-12-29 Mark Mitchell <mark@codesourcery.com>
92
93 * acconfig.h: Add _GLIBCXX_USE_C99_MATH.
94 * acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
95 * configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
96 targeting newlib.
97 * aclocal.m4: Regenerated.
98 * config.h.in: Likewise.
99 * configure: Likewise.
100 * Makefile.in: Likewise.
101 * include/Makefile.in: Likewise.
102 * libmath/Makefile.in: Likewise.
103 * libsupc++/Makefile.in: Likewise.
104 * testsuite/Makefile.in: Likewise.
105 * src/Makefile.in: Likewise.
106 * po/Makefile.in: Likewise.
107 * include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
108 (_GLIBCXX_USE_C99_MATH): ... this.
109
110 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
111 arm-none-elf.
112 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
113 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
114 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
115 * testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
116 * testsuite/27_io/objects/char/9.cc: Likewise.
117 * testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.
118
b8da67fa
PC
1192003-12-28 Paolo Carlini <pcarlini@suse.de>
120
121 * include/ext/pool_allocator.h (class __pool_alloc): Use
122 operator new and operator delete.
123
a51c4097
AP
1242003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
125
be886286
AP
126 * config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
127 constraint.
128
a51c4097 129 PR libstdc++/13480
be886286 130 * config/cpu/i386/atomicity.h: Split up read-write memory operand.
a51c4097 131
d38d4e5d
BK
1322003-12-23 Benjamin Kosnik <bkoz@redhat.com>
133
134 * include/ext/new_allocator.h (new_allocator): Proper allocator class.
135 (__new_alloc): Delete.
136 * include/ext/malloc_allocator.h (malloc_allocator): Same.
137 (__malloc_alloc): Delete.
138 * include/ext/mt_allocator.h: Same, but weakly.
139 * include/ext/debug_allocator.h: Convert to the new style.
140 * include/ext/pool_allocator.h: Use global new and delete directly.
141 * include/backward/alloc.h: Don't inject malloc_allocator, or
142 debug_allocator.
143 * testsuite/ext/allocators.cc: Minimal fixups for usage of new
144 classes. Comment out tests with __pool_alloc for now.
145 * testsuite/performance/allocator.cc: Same.
146
34c87829
MA
1472003-12-22 Matt Austern <austern@apple.com>
148
149 * include/bits/stl_bvector.h (_Bvector_alloc_base): Eliminate.
150 (_Bvector_base): Inherit directly from word allocator.
151 * include/bits/stl_tree.h (_Rb_tree_alloc_base): Eliminate.
152 (_Rb_tree_base): Eliminate.
153 (_Rb_tree): Inherit directly from node allocator.
154 * include/ext/slist (_Alist_alloc_base): Eliminate.
155 (_Slist_base): Inherit direcly from node allocator.
156
70a84160
BK
1572003-12-22 Benjamin Kosnik <bkoz@redhat.com>
158
941fe801
BK
159 * testsuite/18_support/numeric_limits.cc: Add _GLIBCXX_ASSERT to
160 dg-options in testcases that use VERIFY.
161 * testsuite/23_containers/vector/invalidation/1.cc: Same.
162 * testsuite/23_containers/vector/invalidation/2.cc: Same.
163 * testsuite/23_containers/vector/invalidation/3.cc: Same.
164 * testsuite/23_containers/vector/invalidation/4.cc: Same.
165 * testsuite/23_containers/vector/resize/1.cc: Same.
166 * testsuite/26_numerics/complex_value.cc: Same.
167 * testsuite/27_io/ios_base/storage/1.cc: Same.
168 * testsuite/27_io/ios_base/storage/2.cc: Same.
169 * testsuite/27_io/ios_base/storage/3.cc: Same.
170 * testsuite/27_io/manipulators/standard/char/2.cc: Same.
171 * testsuite/backward/11460.cc: Same.
172 * testsuite/backward/strstream_members.cc: Same.
173
174 * include/ext/hash_set (class hash_multiset): Fix typo.
175
1762003-12-22 Benjamin Kosnik <bkoz@redhat.com>
177
70a84160
BK
178 * testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
179 * testsuite/27_io/objects/wchar_t/5.cc: Same.
180 * docs/html/test.html: Add docs for constructing test files that
181 don't use stdc++.h.gch.
182 * scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
183 * testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
184 differently.
185
186 * include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
187 * src/ios_init.cc: Same.
188 * config/linker-map.gnu: Same.
189 * testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
190 * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
191
67e053df
AP
1922003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
193
194 PR libstdc++/13462
195 * include/bits/stl_multiset.h (__gnu_norm::multiset): Define pointer
196 as allocator's pointer, likewise for reference, const_pointer, and
197 const_reference.
198 * include/bits/stl_set.h (__gnu_norm::set): Likewise.
199 * include/ext/hash_set (__gnu_ext::hash_set): Likewise.
200 (__gnu_ext::hash_multiset): Likewise.
201
a827daa0
PC
2022003-12-22 Paolo Carlini <pcarlini@suse.de>
203
204 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
205 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
206 first look for decimal_point and thousands_sep, when parsing
207 sign, leading zeros (and 0, Ox, 0X for integer types) too.
208 * testsuite/22_locale/num_get/get/char/12.cc: New.
209 * testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
210
211 * testsuite/22_locale/num_get/get/char/11.cc: Add a comment.
212 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
213
c703c390
JM
2142003-12-20 Jason Merrill <jason@redhat.com>
215
216 * config/cpu/powerpc/atomicity.h: Fix oversight in previous
217 change.
218
3101fa3c
JQ
2192003-12-20 Jerry Quinn <jlquinn@optonline.net>
220
221 * docs/doxygen/TODO: Update.
222 * include/bits/locale_classes.h (locale, facet, id): Document.
223 * include/bits/locale_facets.tcc (has_facet, use_facet): Document.
224
46eb4b39
JM
2252003-12-19 Jason Merrill <jason@redhat.com>
226
227 * config/cpu/cris/atomicity.h: Remove memory clobbers.
228 * config/cpu/mips/atomicity.h: Likewise.
229 * config/cpu/i486/atomicity.h: Remove memory clobbers.
230 Split up read-write memory operand.
231 * config/cpu/m68k/atomicity.h: Likewise.
232 * config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
233 * config/cpu/s390/atomicity.h: Likewise.
234 * config/cpu/sparc/atomicity.h: Likewise.
235
6fe68b37
CW
2362003-12-20 Carlo Wood <carlo@alinoe.com>
237
238 * bits/demangle.h
239 namespace __gnu_cxx::demangler
240 (session<Allocator>::decode_encoding): Put the postfix
241 of the return type of (member) functions after the function
242 instead of after the return type.
243
2dbd0234
JQ
2442003-12-19 Jerry Quinn <jlquinn@optonline.net>
245
246 * include/bits/locale_facet.h
247 (__ctype_abstract_base,ctype<charT>,ctype<char>,ctype<wchar_t>):
248 Document.
249
cc16f8b9
PC
2502003-12-19 Paolo Carlini <pcarlini@suse.de>
251
252 * include/bits/locale_facets.tcc (num_get::_M_extract_int,
253 num_get::_M_extract_float): According to 22.2.2.1.2, p8-9,
254 first look for decimal_point and thousands_sep.
255 * testsuite/22_locale/num_get/get/char/11.cc: New.
256 * testsuite/22_locale/num_get/get/wchar_t/11.cc: Likewise.
257
1b451306
PC
2582003-12-19 Paolo Carlini <pcarlini@suse.de>
259
260 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
261 When __found_sci becomes true stop eating thousands separators
262 and the decimal radix separator.
263 * testsuite/22_locale/num_get/get/char/9.cc: New.
264 * testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
265
266 * config/locale/generic/c_locale.cc (__convert_to_v): Don't
267 check that *__sanity == '\0': parsing may stop earlier, still
268 be successful.
269 * config/locale/gnu/c_locale.cc: Likewise.
270 * testsuite/22_locale/num_get/get/char/10.cc: New.
271 * testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
272 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
273 Tweak in one place accordingly.
274
275 * testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
276 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
277
4d54539c
BK
2782003-12-18 Benjamin Kosnik <bkoz@redhat.com>
279
280 * include/bits/stl_list.h: Formatting tweaks.
281 * include/bits/list.tcc: Same.
282
8a1d8dd9
MA
2832003-12-18 Matt Austern <austern@apple.com>
284
285 * include/bits/demangle.h: Fix allocator type correctness,
286 i.e. make sure that when we instantiate a container with a value
287 type and an allocator, the allocator's value type matches the
288 container's.
289 * include/bits/stl_deque.h (_Deque_alloc_base): Eliminate.
290 (_Deque_base): inherit directly from the deque's allocator. Use
291 rebinding instead of _Alloc_traits. Pick up data members from
292 _Deque_alloc_base.
293 * include/bits/stl_list.h (_List_alloc_base): Eliminate.
294 (_List_base): Inherit directly from the list's allocator. Use
295 rebinding instead of _Alloc_traits. Pick up data members from
296 _List_alloc_base.
297 * include/bits/stl_vector.h (_Vector_alloc_base): Eliminate
298 (_Vector_base): Inherit directly from the vector's allocator. Use
299 rebinding instead of _Alloc_traits. Pick up data members from
300 _Vector_alloc_base.
301 * include/ext/hashtable.h: Fix allocator type correctness (the
302 vector of buckets must be passed an allocator for objects of
303 type _Node*). Use rebinding instead of _Alloc_traits.
304
7e08b3b8
PC
3052003-12-17 Paolo Carlini <pcarlini@suse.de>
306
307 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
308 Use narrow to get from __format[__i] a char __c representing a
309 formatting code, don't use it to compare *__beg to __format[__i].
310 * testsuite/22_locale/time_get/get_date/wchar_t/4.cc: New.
311
cbf22cc5
PC
3122003-12-17 Paolo Carlini <pcarlini@suse.de>
313
314 * testsuite/performance/container_benchmark.cc: Tweak outputs.
315
316 * testsuite/performance/list_create_fill_sort.cc: Shrink a
317 bit some outputs.
318
319 * testsuite/testsuite_performance.h: Widen a few output fields.
320
321 * testsuite/performance/ifstream_extract_int.cc: New.
322
2d52e9e3
PE
3232003-12-16 Phil Edwards <phil@codesourcery.com>
324
325 * configure.ac (AM_INIT_AUTOMAKE): Don't warn about GNU Make.
326 * configure: Regenerated.
327 * Makefile.am (check-%): New catch-all forwarding target.
328 * Makefile.in: Regenerated.
329
93cbdb1a
PC
3302003-12-16 Paolo Carlini <pcarlini@suse.de>
331
332 * testsuite/performance/container_benchmark.cc: New, a
333 benchmark developed by Bjarne Stroustrup and Alexander
334 Stepanov and made available with no restrictions.
335
336 * testsuite/testsuite_performance.h (report_header): New,
337 useful to produce header lines in the reports.
338
d159598d
JW
3392003-12-16 Jonathan Wakely <redi@gcc.gnu.org>
340
341 * docs/html/21_strings/howto.html: Document shrink-to-fit reserve().
342 * docs/html/faq/index.html: Reducing vector's capacity() to size().
343 * docs/html/documentation.html, docs/html/faq/index.txt: Regenerate.
344
b1660ae9
PC
3452003-12-16 Paolo Carlini <pcarlini@suse.de>
346
347 * testsuite/performance/narrow_widen_char.cc: Tweak the
348 number of iterations for each test.
349 * testsuite/performance/narrow_widen_wchar_t.cc: Add a
350 missing clear_counters.
351
9a1349b9
PC
3522003-12-16 Paolo Carlini <pcarlini@suse.de>
353
354 PR libstdc++/11723
355 * include/bits/locale_facets.h: Add _M_bit and _M_wmask,
356 used to speed up the computation of ctype::do_is.
357 * config/locale/generic/ctype_members.cc
358 (_M_initialize_ctype): Fill _M_bit and _M_wmask.
359 (ctype::do_is): Use _M_bit and _M_wmask.
360 * config/locale/gnu/ctype_members.cc: Likewise.
361 * testsuite/performance/is_wchar_t.cc: New.
362
363 * testsuite/performance/narrow_widen_wchar_t.cc: Tweak
364 string literal (incorrect citation ;)
365
366 * include/bits/locale_facets.h: Minor tweaks, const
367 correctness, unsigned -> size_t.
368
84cea626
JQ
3692003-12-16 Jerry Quinn <jlquinn@optonline.net>
370
371 * include/bits/locale_facets.h (widen, narrow): Uncomment the
372 intended code.
373
3fc63c15
JQ
3742003-12-15 Jerry Quinn <jlquinn@optonline.net>
375
376 * config/os/aix/ctype_noninline.h,
377 config/os/bsd/freebsd/ctype_noninline.h,
378 config/os/bsd/netbsd/ctype_noninline.h,
379 config/os/djgpp/ctype_noninline.h,
380 config/os/generic/ctype_noninline.h,
381 config/os/gnu-linux/ctype_noninline.h,
382 config/os/hpux/ctype_noninline.h,
383 config/os/irix/irix5.2/ctype_noninline.h,
384 config/os/irix/irix6.5/ctype_noninline.h,
385 config/os/mingw32/ctype_noninline.h,
386 config/os/newlib/ctype_noninline.h,
387 config/os/qnx/qnx6.1/ctype_noninline.h,
388 config/os/solaris/solaris2.5/ctype_noninline.h,
389 config/os/solaris/solaris2.6/ctype_noninline.h,
390 config/os/solaris/solaris2.7/ctype_noninline.h,
391 config/os/vxworks/ctype_noninline.h,
392 config/os/windiss/ctype_noninline.h (ctype): Initialize
393 _M_narrow, _M_widen.
394 * include/bits/locale_facets.h (_M_widen, _M_widen_ok,
395 _M_narrow, _M_narrow_ok): New.
396 (widen, narrow): Use tables to bypass virtual functions.
397 (_M_widen_init, _M_narrow_init): New.
398
91daef58
CW
3992003-12-15 Carlo Wood <carlo@alinoe.com>
400
401 * include/bits/ios_base.h (Init::_S_initialized): Change into
402 declaration.
403 * src/ios_init.cc (Init::_S_initialized): Add definition.
404
3fe13738
BK
4052003-12-15 Benjamin Kosnik <bkoz@redhat.com>
406
407 PR libstdc++/12658
408 * include/Makefile.am (bits_headers): Add concurrence.h.
409 * include/Makefile.in: Regenerated.
410 * include/bits/concurrence.h: New.
411 * src/locale_init.cc: Use it.
412 (locale::locale): Lock critical regions.
413 (locale::global): Same.
414
1313d87f
BK
4152003-12-15 Benjamin Kosnik <bkoz@redhat.com>
416
417 * include/bits/basic_string.h: Change _*_references to _*_refcount.
418 * include/bits/locale_classes.h: Same.
419 * src/locale.cc: Same.
420 * src/locale_name.cc: Same.
421 * src/locale_init.cc: Same.
422
fa972243
BK
4232003-12-15 Benjamin Kosnik <bkoz@redhat.com>
424
425 PR libstdc++/12855
426 * include/bits/ios_base.h (Init::_S_ios_base_init): Change to
427 _S_refcount, make atomic.
428 * src/ios.cc: Adjust definition.
429 * src/ios_init.cc (ios_base::Init::Init): Use __exchange_and_add,
430 and __atomic_add.
431 (ios_base::Init::~Init): Same.
432 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
433 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
434
ca13fb7f
PC
4352003-12-15 Paolo Carlini <pcarlini@suse.de>
436
437 * include/bits/locale_facets.tcc (num_get::do_get(bool&)):
438 Fail as soon as the begins of both truename and falsename
439 stop to match; always leave __beg one position beyond the
440 last char successfully matched.
441 * testsuite/22_locale/num_get/get/char/8.cc: New.
442 * testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
443
4442003-12-15 Paolo Carlini <pcarlini@suse.de>
445
446 * include/bits/locale_facets.h (_M_widen): Reserve space
447 for all the possible widened chars.
448 * config/locale/generic/ctype_members.cc (_M_initialize_ctype):
449 Compute at construction time all the possible widened chars.
450 (do_widen): Tweak, simplify.
451 * config/locale/gnu/ctype_members.cc: Likewise.
452 * testsuite/performance/narrow_widen_wchar_t.cc: Add tests
453 for the array versions.
454
e3c0c098
PC
4552003-12-12 Paolo Carlini <pcarlini@suse.de>
456 Benjamin Kosnik <bkoz@redhat.com>
457
458 PR libstdc++/13341
459 * include/bits/locale_facets.h (ctype<wchar_t>): Declare
460 _M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
461 * src/ctype.cc (ctype<wchar_t>::ctype(size_t),
462 ctype<wchar_t>::ctype(__c_locale, size_t)): Use
463 _M_initialize_ctype to fill _M_narrow and _M_widen.
464 (ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
465 Likewise.
466 * config/locale/generic/ctype_members.cc (do_narrow, do_widen)
467 Use _M_narrow and _M_widen when possible, instead of calling
468 wctob and btowc, respectively.
469 (_M_initialize_ctype): Define, it fills at construction time
470 _M_narrow and _M_widen.
471 * config/locale/gnu/ctype_members.cc: Likewise.
472 * testsuite/performance/narrow_widen_wchar_t.cc: New.
473
a7bc3cdc
JW
4742003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
475
476 * docs/html/faq/index.txt: Regenerate after adding <link> tags.
477
cbc67955
NF
4782003-12-11 Neil Ferguson <nferguso@eso.org>
479 Paolo Carlini <pcarlini@suse.de>
480
481 * include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
482 * testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
483 * testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
484 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
485
645112dd
BK
4862003-12-10 Benjamin Kosnik <bkoz@redhat.com>
487
488 PR libstdc++/6243
489 * testsuite/lib/libstdc++.exp (v3-init): Add
490 original_ld_library_path, calculate ld_library path, set
491 LD_LIBRARY_PATH to both. Based on libjava.exp.
492
9f503dd3
BK
4932003-12-10 Benjamin Kosnik <bkoz@redhat.com>
494 Alexandre Oliva <aoliva@redhat.com>
495
496 PR libstdc++/11612
497 * testsuite/Makefile.am (GLIBCXX_DIR): New.
498 (GLIBGCC_DIR): New.
499 (CXXLINK): Use both with -R so libtool links the correct libs.
500
3090572c
PC
5012003-12-10 Paolo Carlini <pcarlini@suse.de>
502
503 PR libstdc++/13217
504 * include/bits/fstream.tcc (underflow): Deal gracefully with
505 read errors: throw ios_base::failure.
506
35d6801e
BK
5072003-12-10 Benjamin Kosnik <bkoz@redhat.com>
508
509 PR libstdc++/10063
510 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
511 * testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
512 * testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
513
e8c5fc66
PC
5142003-12-10 Paolo Carlini <pcarlini@suse.de>
515
516 * include/bits/locale_facets.tcc (num_put::do_put(void*)):
517 Remove the try/catch, not necessary.
518
9877afe8
PC
5192003-12-10 Paolo Carlini <pcarlini@suse.de>
520
521 * testsuite/22_locale/locale/cons/12438.cc: Tweak memory
522 limit and iterations to avoid spurious failures on some
523 64 bit machines.
524
5ec3f566
BK
5252003-12-09 Benjamin Kosnik <bkoz@redhat.com>
526
527 * config/linker-map.gnu: Remove private ios_base members from
528 export list.
529
530 * config/cpu/alpha/atomicity.h: Consistently format.
531 * config/cpu/cris/atomicity.h: Same.
532 * config/cpu/generic/atomicity.h: Same.
533 * config/cpu/hppa/atomicity.h: Same.
534 * config/cpu/i386/atomicity.h: Same.
535 * config/cpu/i486/atomicity.h: Same.
536 * config/cpu/ia64/atomicity.h: Same.
537 * config/cpu/m68k/atomicity.h: Same.
538 * config/cpu/mips/atomicity.h: Same.
539 * config/cpu/powerpc/atomicity.h: Same.
540 * config/cpu/s390/atomicity.h: Same.
541 * config/cpu/sparc/atomicity.h: Same.
542
86025553
BK
5432003-12-09 Benjamin Kosnik <bkoz@redhat.com>
544
545 PR libstdc++/13296
546 * acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
547 * aclocal.m4: Regenerate.
548 * configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
549 * conigure: Regenerate.
550 * src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
551 * src/Makefile.in: Regenerate.
552 * docs/html/17_intro/configury.html: Modify.
553
7c1ca569
PC
5542003-12-09 Paolo Carlini <pcaelini@suse.de>
555
556 * include/bits/demangle.h (struct implementation_details):
557 Keep in comments the names of the unused parameters.
558
015fa971
PC
5592003-12-09 Paolo Carlini <pcaelini@suse.de>
560
561 * include/bits/demangle.h (struct implementation_details):
562 Fix unused parameters warning.
563
1f3adac2
PC
5642003-12-09 Paolo Carlini <pcarlini@suse.de>
565
566 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
567 Slightly streamline the code dealing with overflows and the
568 parsing of the sign.
569
fa30fe72
BI
5702003-12-09 Bernardo Innocenti <bernie@develer.com>
571
572 * include/ext/algorithm, include/ext/debug_allocator.h,
573 include/ext/enc_filebuf.h, include/ext/functional,
574 include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
575 include/ext/hashtable.h, include/ext/iterator,
576 include/ext/malloc_allocator.h, include/ext/memory,
577 include/ext/mt_allocator.h, include/ext/numeric,
578 include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
579 include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
580 include/ext/slist, include/ext/stdio_filebuf.h,
581 include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
582
526da49c
BI
5832003-12-09 Bernardo Innocenti <bernie@develer.com>
584
585 * include/debug/bitset, include/debug/debug.h, include/debug/deque,
586 include/debug/formatter.h, include/debug/hash_map.h,
587 include/debug/hash_multimap.h, include/debug/hash_multiset.h,
588 include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
589 include/debug/map.h, include/debug/multimap.h,
590 include/debug/multiset.h, include/debug/safe_base.h,
591 include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
592 include/debug/safe_sequence.h, include/debug/set.h,
593 include/debug/string, include/debug/vector: Remove trailing whitespace.
594
23131008
BI
5952003-12-09 Bernardo Innocenti <bernie@develer.com>
596
597 * include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
598 include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
599 include/c_compatibility/string.h, include/c_compatibility/time.h,
600 include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
601 Remove trailing whitespace.
602
7dd8177f
BI
6032003-12-09 Bernardo Innocenti <bernie@develer.com>
604
605 * include/c_std/cmath.tcc, include/c_std/std_cassert.h,
606 include/c_std/std_cctype.h, include/c_std/std_cmath.h,
607 include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
608 include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
609 include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
610 Remove trailing whitespace.
611
7b74e24e
BI
6122003-12-09 Bernardo Innocenti <bernie@develer.com>
613
614 * include/c/std_cctype.h, include/c/std_cmath.h,
615 include/c/std_cstdlib.h include/c/std_cwchar.h,
616 include/c/std_cwctype.h: Remove trailing whitespace.
617
e64738b3
BI
6182003-12-09 Bernardo Innocenti <bernie@develer.com>
619
620 * include/backward/algo.h, include/backward/algobase.h,
621 include/backward/alloc.h, include/backward/complex.h,
622 include/backward/defalloc.h, include/backward/function.h,
623 include/backward/iterator.h, include/backward/new.h,
624 include/backward/ostream.h, include/backward/queue.h,
625 include/backward/rope.h, include/backward/stream.h,
626 include/backward/streambuf.h, include/backward/strstream,
627 include/backward/tempbuf.h, include/backward/tree.h,
628 include/backward/vector.h: Remove trailing whitespace.
629
0fa96a60
PC
6302003-12-08 Paolo Carlini <pcarlini@suse.de>
631
632 * config/locale/generic/c_locale.cc (__convert_to_v(long&),
633 __convert_to_v(unsigned long&), __convert_to_v(long long&),
634 __convert_to_v(unsigned long long&): Remove.
635 (__convert_to_v(float&), __convert_to_v(double&),
636 __convert_to_v(long double&)): Remove last unused parameter.
637 * config/locale/gnu/c_locale.cc: Likewise.
638 * include/bits/locale_facets.h: Likewise.
639 (num_get::_M_extract_int): Update declaration.
640 (class __num_base): Tweak _S_ie and _S_iE according to the
641 _S_atoms_in changes.
642 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
643 Provide directly the final _ValueT, not a string: accumulate
644 the result checking for overflow at each digit.
645 (num_get::do_get(bool&), num_get::do_get(long&),
646 num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
647 num_get::do_get(unsigned long&), num_get::do_get(long long&),
648 num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
649 Use the new _M_extract_int, simplify.
650 * src/locale-inst.cc (num_get::_M_extract_int(long&),
651 num_get::_M_extract_int(unsigned short&),
652 num_get::_M_extract_int(unsigned int&),
653 num_get::_M_extract_int(unsigned long&),
654 num_get::_M_extract_int(long long&),
655 num_get::_M_extract_int(unsigned long long&): Instantiate.
656 * src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
657 the chars in the natural order: abcdefABCDEF.
658
09755a85
DM
6592003-12-08 David S. Miller <davem@redhat.com>
660
661 PR libstdc++/12496
662 * config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
663 Extend increment to _Atomic_word before giving to assembler.
664
57616df1
BK
6652003-12-06 Benjamin Kosnik <bkoz@redhat.com>
666
667 * testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
668 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
669
e80213d2
BK
6702003-12-06 Benjamin Kosnik <bkoz@redhat.com>
671
672 PR libstdc++/11691
673 * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
674 Remove __del argument to file descriptor constructor.
675 * config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
676 bool argument.
677 * config/io/basic_file_stdio.cc: Same.
678
42134429
BK
6792003-12-05 Benjamin Kosnik <bkoz@redhat.com>
680
681 PR libstdc++/13189
682 * include/ext/enc_filebuf.h: Fix.
683 * include/bits/fstream.tcc: Tweak formatting.
684 * include/bits/postypes.h: Same.
685 * include/bits/sstream.tcc: Same.
686 * include/bits/streambuf.tcc: Same.
687 * testsuite/ext/stdio_filebuf.cc: Split.
688 * testsuite/ext/stdio_filebuf_2.cc: Split.
689 * testsuite/ext/stdio_sync_filebuf_char.cc: Split.
690 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
691 * testsuite/ext/enc_filebuf/char/13189.cc: New.
692 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
693 * testsuite/ext/stdio_filebuf/char/1.cc: New.
694 * testsuite/ext/stdio_filebuf/char/2.cc: New.
695 * testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
696 * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
697 * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
698 * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
699 * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
700 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
701 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
702 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
703 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
704 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
705
69f73bd3
CW
7062003-12-05 Carlo Wood <carlo@alinoe.com>
707
708 PR libstdc++/13045
709 * bits/demangle.h
710 namespace __gnu_cxx::demangler
711 (enum substitution_nt): Removed trailing comma.
712 (implementation_details): Added.
713 (session<Allocator>::M_implementation_details): Added.
714 (session<Allocator>::session): Pass implementation_details.
715 (session<Allocator>::decode_encoding): Same.
716 (session<Allocator>::decode_real): Added.
717 (_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
718 _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
719 _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
720 _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
721 implementation_details equivalent.
722 (session<Allocator>::decode_expression):
723 Use M_implementation_details instead of macros. Add extra parentheses
724 around 'larger than' operator in expressions in template arguments.
725 (session<Allocator>::decode_bare_function_type): Idem.
726 (session<Allocator>::decode_literal):
727 Idem, and call decode_real for floating literals.
728 (session<Allocator>::decode_type_with_postfix): Put the postfix
729 of the return type of (member) functions after the function
730 instead of after the return type. Also, put a space after the
731 prefix of qualified function pointers: "int (* const<space>".
732 * src/demangle.cc: include most dependent header file first.
733 * testsuite/demangle/regression/cw-16.cc: Updated two
734 and added three tests.
735
82fa4538
BK
7362003-12-04 Benjamin Kosnik <bkoz@redhat.com>
737
738 PR libstdc++/13284
739 * include/bits/stl_algo.h (__random_number): Remove.
740 (random_shuffle): Use rand, as permitted by DR 395.
741 * include/ext/algorithm: Same.
742 * linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
743 * acconfig.h: Same.
744 * crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
745 * config.h.in: Regenerated.
746 * configure: Same.
747 * aclocal.m4: Same.
748
7f1156ed
PC
7492003-12-04 Paolo Carlini <pcarlini@suse.de>
750
751 PR libstdc++/12653
752 * include/std/std_bitset.h (operator>>): Implement resolution
753 of DR 303 [WP]: use widen('0') and widen('1').
754 * docs/html/ext/howto.html: Add an entry for DR 303.
755
756 * include/std/std_bitset.h (operator>>): Implement the common
757 requirements of formatted input functions (27.6.1.2.1).
758
759 * include/std/std_bitset.h (operator>>): Set the failbit when
760 nothing was extracted and _Nb != 0.
761 * testsuite/23_containers/bitset/input/1.cc: New.
762
3259561c
PC
7632003-12-03 Paolo Carlini <pcarlini@suse.de>
764
765 PR libstdc++/12791
766 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
767 Rewrite, stop the parsing as soon as a digit cannot possibly
768 lead to a final number within the bounds; otherwise, simplify,
769 avoiding __ctype.is() and atoi().
770 * testsuite/22_locale/time_get/get_date/char/12791.cc: New.
771 * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
772
773 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
774 Minor tweak: a 4-digit integer cannot be bigger than 9999.
775
776 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
777 type-correct wchar_t string literals.
778 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
779 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
780 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
781 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
782
17e15f7f
PC
7832003-12-02 Paolo Carlini <pcarlini@suse.de>
784
785 * include/bits/locale_facets.tcc (time_get::do_get_year):
786 Avoid using a basic_string and calling a full blown strtol
787 (via __convert_to_v) for simple 2 or 4 digits, base 10,
788 positive integers; simplify.
789
142b798b
PC
7902003-12-02 Paolo Carlini <pcarlini@suse.de>
791
792 * config/locale/gnu/monetary_members.cc
793 (money_base::_S_construct_pattern): For case 3: and 4:
794 exchanging 'if (__precedes)' and 'if (__space)' allows
795 to factor out a few more assignments.
796
6b98580b
BK
7972003-12-01 Benjamin Kosnik <bkoz@redhat.com>
798
799 * include/bits/basic_ios.h (basic_ios::setstate): Revert.
800 * include/bits/istream.tcc: Only call setstate if __err != goodbit.
801 * include/bits/ostream.tcc: Same.
802 * testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
803
804 * testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
805 internal buffer non-static.
806
d78e147a
BK
8072003-12-01 Benjamin Kosnik <bkoz@redhat.com>
808
809 * docs/html/17_intro/C++STYLE: Add exception bits.
810 * include/bits/fstream.tcc: Add location info to exception strings.
811
812 * include/bits/stl_construct.h: Formatting tweaks.
813
9dbaa948
PC
8142003-12-01 Paolo Carlini <pcarlini@suse.de>
815
816 PR libstdc++/10378
817 * include/bits/allocator.h (allocator::construct): Implement
818 resolution of DR 402 [Ready] (in Revision 28).
819 * include/bits/allocator_traits.h (__allocator::construct):
820 Likewise.
821 * include/bits/stl_construct.h (_Construct): Likewise.
822 * testsuite/20_util/allocator_members.cc: Move to...
823 * testsuite/20_util/allocator/1.cc: ... here.
824 * testsuite/20_util/allocator/10378.cc: New.
825 * docs/html/ext/howto.html: Add an entry for DR 402.
826
1644f06d
PC
8272003-11-30 Paolo Carlini <pcarlini@suse.de>
828
829 * config/locale/gnu/codecvt_members.cc (codecvt::do_in,
830 codecvt::do_length): More minor tweaks.
831
11816ba2
PC
8322003-11-30 Paolo Carlini <pcarlini@suse.de>
833
834 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
835 Minor stylistic tweak.
836
6c39c207
PC
8372003-11-30 Paolo Carlini <pcarlini@suse.de>
838
839 * include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
840 Minor tweaks, consistent with the style used in other facets.
841
4da2b960
PC
8422003-11-29 Paolo Carlini <pcarlini@suse.de>
843
844 * include/bits/fstream.tcc (underflow): Minor tweaks in
845 preparation for libstdc++/13217.
846
2d25605a
PC
8472003-11-29 Paolo Carlini <pcarlini@suse.de>
848
849 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
850 Tweak for a few small problems (fix timings, use VERIFY..)
851
05a47a47
PC
8522003-11-28 Paolo Carlini <pcarlini@suse.de>
853
854 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
855 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
856 the original third testcase for libstdc++/13171 belong here.
857
ac912ba1
PC
8582003-11-28 Paolo Carlini <pcarlini@suse.de>
859
860 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
861 Remove extraneous wchar_t lines.
862
5536b61c
PC
8632003-11-27 Paolo Carlini <pcarlini@suse.de>
864
865 PR libstdc++/11544
866 PR libstdc++/11603
3090572c 867 * include/bits/fstream.tcc (underflow): Throw ios_base::failure
5536b61c
PC
868 upon incomplete or invalid byte sequences in the file.
869 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
870 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
871 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
872
fb8d4638
PC
8732003-11-27 Paolo Carlini <pcarlini@suse.de>
874
875 * include/std/std_streambuf.h (__copy_streambufs): Remove
876 the first, unused, basic_ios<> parameter.
877 * src/streambuf-inst.cc: Likewise.
878 * include/bits/streambuf.tcc: Likewise.
879 * include/bits/istream.tcc (operator>>(__streambuf_type*)):
880 Tweak accordingly the call.
881 * include/bits/ostream.tcc (operator<<(__streambuf_type*)):
882 Likewise.
883
884 * include/bits/streambuf.tcc (__copy_streambufs): Remove
885 redundant try/catch.
886
12841eb3
BK
8872003-11-26 Benjamin Kosnik <bkoz@redhat.com>
888
889 PR libstdc++/9371
890 PR libstdc++/9546
891 PR libstdc++/10093
892 PR libstdc++/10095
893 * include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
894 (basic_ios::_M_setstate): Consolidate common error handling code.
895 * include/bits/basic_ios.tcc: Tweak.
896 * include/bits/fstream.tcc: Tweak.
897 * include/bits/istream.tcc: Use _M_setstate for common exception
898 handling. Move setstate calls after catch.
899 (basic_istream::tellg): Check for exceptions thrown by streambuf
900 virtual functions.
901 (basic_istream::seekg): Same.
902 * include/bits/ostream.tcc: Same, but for ostream.
903 (basic_ostream::flush): Check for exceptions thrown by streambuf
904 virtual functions.
905 (basic_istream::tellp): Same.
906 (basic_istream::seekp): Same.
907 * include/bits/locale_facets.tcc: Tweak.
908 * include/bits/streambuf.tcc: Tweak.
909 (__copy_streambufs): Propagate exceptions.
910 * testsuite/testsuite_io.h (fail_streambuf): New.
911 (fail_num_get): New.
912 (fail_num_put): New.
913 (facet_error): New.
914 (underflow_error): New.
915 (overflow_error): New.
916 (positioning_error): New.
917 * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
918 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
919 exceptions_badbit_throw.cc, exceptions_failbit.cc,
920 exceptions_failbit_throw.cc: New.
921 * testsuite/27_io/basic_istream/extractors_other/char/
922 error_failbit.cc, exceptions_badbit_throw.cc,
923 exceptions_failbit_throw.cc, exceptions_null.cc: New.
924 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
925 New.
926 * testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
927 New.
928 * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
929 New.
930 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
931 exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
932 * testsuite/27_io/basic_ostream/inserters_other/char/
933 error_failbit.cc, exceptions_badbit_throw.cc,
934 exceptions_failbit_throw.cc, exceptions_null.cc: New.
935 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
936 New.
937 * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
938 New.
939
48f499cf
BK
9402003-11-26 Benjamin Kosnik <bkoz@redhat.com>
941
942 PR libstdc++/12297
943 * include/bits/istream.tcc
944 (basic_istream::sentry::sentry): Set failbit and eofbit when eof.
945 * testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
946
c03d83d4
PC
9472003-11-26 Paolo Carlini <pcarlini@suse.de>
948 Petur Runolfsson <peturr02@ru.is>
949
950 PR libstdc++/13171
951 * include/bits/fstream.tcc (imbue): Relax the conditions under
952 which the function succeeds: allow for two consecutive calls with
953 the same name; state dependent encodings are ok even after open
954 if at the beginning of the file; don't check seekoff return value
955 (pipes, cin, cout, etc...)
956 * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
957 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
958 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
959 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
960 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
961 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
962 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
963 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
964
965 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
966 correctly use the UTF-8 locale appearing in the PR.
967
7fb1d711
PC
9682003-11-26 Paolo Carlini <pcarlini@suse.de>
969
970 * include/bits/locale_facets.h
971 (__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
972 _M_truename and _M_falsename: the constructor always does
973 it immediately before the _M_cache call.
974
5af91f06
PC
9752003-11-25 Paolo Carlini <pcarlini@suse.de>
976
977 * config/locale/gnu/codecvt_members.cc (codecvt::do_length):
978 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
979 former is very fast, but stops if encounters a NUL.
980 (codecvt::do_out): Tweaks.
981 (codecvt::do_in): Tweaks, improve the code dealing with errors.
982 * testsuite/performance/wchar_t_length.cc: New.
983
3c8797ae
PC
9842003-11-24 Paolo Carlini <pcarlini@suse.de>
985
986 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
987 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
988 former is very fast, but stops if encounters a NUL.
989 (codecvt::do_out): Tweak.
990 * testsuite/performance/wchar_t_in.cc: New.
991
9922003-11-24 Paolo Carlini <pcarlini@suse.de>
993
994 * include/bits/locale_facets.h
995 (__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
996 in order to avoid memory leaks; simplify a bit.
997
e0ec69c9
BK
9982003-11-24 Benjamin Kosnik <bkoz@redhat.com>
999
1000 * include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
1001 non-standard throw specs.
1002 * testsuite/24_iterators/istreambuf_iterator.cc: Split into...
1003 * testsuite/24_iterators/istreambuf_iterator/1.cc
1004 * testsuite/24_iterators/istreambuf_iterator/2.cc
1005 * testsuite/24_iterators/istreambuf_iterator/2627.cc
1006 * testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
1007 * testsuite/24_iterators/ostreambuf_iterator/1.cc
1008 * testsuite/24_iterators/ostreambuf_iterator/2.cc
1009
1010 * testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
1011 don't link.
1012
1013 * include/bits/allocator.h: Formatting tweak.
1014
ce492af3
PC
10152003-11-24 Paolo Carlini <pcarlini@suse.de>
1016
1017 * src/locale_init.cc: Cosmetic reformatting.
1018
bf058d22
PC
10192003-11-23 Paolo Carlini <pcarlini@suse.de>
1020
1021 * include/bits/locale_facets.tcc (__add_grouping):
1022 Cosmetic reformatting.
1023
89a2fb90
PC
10242003-11-23 Paolo Carlini <pcarlini@suse.de>
1025
1026 * include/bits/locale_facets.tcc (_M_extract_float,
1027 _M_extract_int): Remove a wrong comment and simplify
1028 the corresponding code using char_traits::find().
1029
cc0c2f79
PC
10302003-11-22 Paolo Carlini <pcarlini@suse.de>
1031
1032 * config/locale/gnu/monetary_members.cc
1033 (money_base::_S_construct_pattern): Factor out two assignments.
1034
a3b1b804
PC
10352003-11-22 Paolo Carlini <pcarlini@suse.de>
1036
1037 * include/bits/istream.tcc (getline(basic_string<>&)):
1038 Fix error in comment of the previous commit.
1039
1a311979
PC
10402003-11-22 Paolo Carlini <pcarlini@suse.de>
1041
1042 PR libstdc++/12593
1043 * include/bits/istream.tcc (operator>>(basic_string<>&),
1044 getline(basic_string<>&)): Implement resolution of DR 91 [WP];
1045 fix some minor issues with the exit conditions.
1046 * docs/html/ext/howto.html: Add an entry for DR 91.
1047
f7ba331c
PC
10482003-11-21 Paolo Carlini <pcarlini@suse.de>
1049
1050 * config/locale/gnu/monetary_members.cc
1051 (money_base::_S_construct_pattern): Factor out an assignment.
1052
5c89246d
PC
10532003-11-21 Paolo Carlini <pcarlini@suse.de>
1054
1055 PR libstdc++/12882 (partial)
1056 * acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
1057 and ftello64 too.
1058 * include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
1059 and ftello64 if available.
1060 * aclocal.m4: Regenerate.
1061 * configure: Ditto.
1062
9dc420e6
BK
10632003-11-20 Benjamin Kosnik <bkoz@redhat.com>
1064
1065 * include/debug/formatter.h: Use _Tp as template argument.
1066 * src/debug.cc: Same, instantiate std::size_t.
1067
4be58168
BK
10682003-11-20 Benjamin Kosnik <bkoz@redhat.com>
1069
1070 PR libstdc++/13109
1071 * include/debug/formatter.h (_Error_formatter::_M_format_word): New.
1072 * src/debug.cc (__gnu_debug): Format.
1073 (_Error_formatter::_M_format_word): Define, use, instantiate.
1074
0fd18701
PC
10752003-11-20 Paolo Carlini <pcarlini@suse.de>
1076
1077 PR libstdc++/11602
1078 * config/locale/gnu/codecvt_members.cc (codecvt::do_out):
1079 Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
1080 former is very fast, but stops if encounters a NUL.
1081 * testsuite/performance/wchar_t_out.cc: New, from the PR.
1082
1f33554a
PC
10832003-11-19 Paolo Carlini <pcarlini@suse.de>
1084
1085 * config/locale/gnu/codecvt_members.cc (do_out): If
1086 we can upper bound the total number of external chars
1087 to something smaller than __to_end - __to, avoid the
1088 temporary buffer, the memcopy and simplify the loop.
1089 * config/locale/generic/codecvt_members.cc (do_out):
1090 Likewise.
1091
90635952
AT
10922003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
1093
1094 * testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
1095 * testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
1096 flag.
1097
bc225f98
JW
10982003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
1099
1100 * docs/html/configopts.html, docs/html/debug.html,
1101 docs/html/documentation.html, docs/html/explanations.html,
1102 docs/html/install.html, docs/html/17_intro/contribute.html,
1103 docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
1104 docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
1105 docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
1106 docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
1107 docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
1108 docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
1109 docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
1110 docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
1111 docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
1112
29342463
PC
11132003-11-18 Paolo Carlini <pcarlini@suse.de>
1114
1115 PR libstdc++/12868
1116 * include/bits/fstream.tcc (imbue): For encodings != -1 it's
1117 always ok to imbue a new locale, provided seekoff(0, cur, ...)
1118 doesn't fail, of course.
1119 (underflow): In order for the above to work, deal gracefully
1120 with _M_codecvt->in returning codecvt_base::error while
1121 (__ilen = __iend - this->eback()) > 0: it just means __ilen
1122 correctly converted internal characters before an error.
1123 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
1124
c2466393
PC
11252003-11-17 Paolo Carlini <pcarlini@suse.de>
1126
1127 * include/bits/locale_facets.tcc: Fix typo in comment.
1128
6a7ee0d6
PC
11292003-11-17 Paolo Carlini <pcarlini@suse.de>
1130
1131 * testsuite/22_locale/num_put/put/char/8.cc: New test,
1132 summarizing the discussion ensuing libstdc++/12988.
1133 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
1134
781a5298
PC
11352003-11-15 Paolo Carlini <pcarlini@suse.de>
1136
1137 * include/std/std_fstream.h: Tweak a comment.
1138
c85dfef7
RS
11392003-11-15 Roger Sayle <roger@eyesopen.com>
1140
1141 * include/c_std/std_cmath.h: Don't import C99's float transcendentals
1142 into the __gnu_cxx::__c99_binding namespace.
1143 (acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
1144 ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
1145 GCC's math builtins, i.e. __builtin_foo.
1146 * libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
1147 ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
1148 ldexpf, ldexpl, modff, modfl): Provide stub implementations.
1149
38455b2b
PC
11502003-11-14 Paolo Carlini <pcarlini@suse.de>
1151
1152 * testsuite/22_locale/locale/cons/12352.cc: Use
1153 __gnu_test::try_named_locale.
1154
c60cfc76
PC
11552003-11-14 Paolo Carlini <pcarlini@suse.de>
1156
1157 * docs/html/ext/howto.html: Add entries for DR 63, 75
1158 and 305; tweak entries for DR 60 and 328.
1159
1b80d64a
DG
11602003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
1161
1162 * docs/html/debug.html: Users are allowed to specialize in
1163 namespace __gnu_debug, unlike in the Apple version of the debug
1164 mode. Clear up a confusing double-negative. Note that
1165 std::basic_string does provide extra debugging capabilities, but
1166 not safe iterators.
1167 * include/bits/basic_string.tcc: Make sure there's never an
1168 ambiguity when calling __is_null_pointer.
1169 * include/debug/deque: (deque::erase) Properly handle invalidation
1170 when erasing at the end of the deque.
1171 * include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
1172 (vector::clear): Set the guaranteed capacity to 0.
1173 * testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
1174 iterator invalidation when erasing at the end of the deque.
1175
a2dcfada
PC
11762003-11-13 Paolo Carlini <pcarlini@suse.de>
1177 Petur Runolfsson <peturr02@ru.is>
1178
1179 PR libstdc++/13007
1180 * include/bits/fstream.tcc (imbue): Don't touch the stored
1181 locale.
1182 * include/std/std_streambuf.h (imbue): According to the
1183 standard, base class version does nothing.
1184 (pubimbue): Store the locale.
1185 * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
1186 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
1187 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
1188 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
1189 * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
1190 * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
1191 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
1192 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
1193
5681c890
PR
11942003-11-13 Petur Runolfsson <peturr02@ru.is>
1195
1196 PR libstdc++/12594
1197 * include/bits/ostream.tcc
1198 (basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
1199 basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
1200 basic_ostream::operator<<(ios_base& (*)(ios_base&))):
1201 Implement the resolution of DR 60 (TC): These are not formatted
1202 output functions so don't construct sentry objects and don't
1203 catch exceptions.
1204 (basic_ostream::put, basic_ostream::write): Implement the
1205 resolution of DR 63 (TC) by catching exceptions and setting
1206 badbit.
1207 (basic_ostream::flush): Implement the resolution of DR 60 (TC):
1208 This is not an unformatted output function so don't construct
1209 a sentry object.
1210 * testsuite/testsuite_io.h (sync_streambuf): Define.
1211 * testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
1212 * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
1213 * testsuite/27_io/basic_ostream/put/char/1.cc: New test.
1214 * testsuite/27_io/basic_ostream/write/char/1.cc: New test.
1215
f144e859
PC
12162003-11-13 Paolo Carlini <pcarlini@suse.de>
1217
1218 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
1219 Fix, closely following the testcase included in the PR.
1220 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
1221 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
1222 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
1223
a198480e
JW
12242003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
1225
1226 * docs/html/17_intro/configury.html: XHTML tweak.
1227
684edd67
JW
12282003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
1229
1230 * docs/html/debug_mode.html: XHTML fixes.
1231
89341602
BK
12322003-11-12 Benjamin Kosnik <bkoz@redhat.com>
1233
1234 * docs/html/debug_mode.html: Update.
1235 * docs/html/17_intro/TODO: Update.
1236
f9d52373
BK
12372003-11-12 Benjamin Kosnik <bkoz@redhat.com>
1238
1239 * include/bits/c++config: Move using directive...
1240 * include/debug/formatter.h: ...here.
1241
22e5c8fa
CW
12422003-11-12 Carlo Wood <carlo@alinoe.com>
1243
1244 PR libstdc++/12947
1245 * bits/demangle.h
1246 (_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
1247 (_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
1248 (session<Allocator>::next_peek() const): Added.
1249 (decode_non_negative_decimal_integer(string_type&)):
1250 Renamed from decode_decimal_integer(string_type&).
1251 (session<Allocator>::decode_nested_name):
1252 Decode <template_param> as well.
1253 (session<Allocator>::add_substitution):
1254 Handle <template-param> for <nested-name>'s.
1255 (enum xary_nt): Added.
1256 (struct entry_st): Added member `xary_nt type' instead of `bool unary'.
1257 (symbol_name_table_c): Updated for `entry_st::type' and additional
1258 operators (unary `operator+' and `sizeof(type)').
1259 (offset_table_c): Updated for new operators (causing a new hash map).
1260 (decode_operator_name): Match the updated hash map.
1261 (session<Allocator>::decode_expression):
1262 Support for `sizeof ([typename] type)' (st),
1263 dependent names (sr) and casting operator (cv). Handle
1264 `entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
1265 and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
1266 (session<Allocator>::decode_type_with_postfix):
1267 Support `extern "C"' function types (FY).
1268 * testsuite/demangle/regression/cw-16.cc: Added tests for the
1269 added functionality.
1270 * testsuite/demangle/regression/3111-2.cc: sizeof now has a space
1271 appended.
1272
dfad48c6
PC
12732003-11-11 Paolo Carlini <pcarlini@suse.de>
1274
1275 PR libstdc++/12875
1276 * include/bits/fstream.tcc (setbuf): Don't do anything
1277 after open(), in particular don't discard data.
1278 (_M_allocate_internal_buffer): Tweak to not allocate memory
1279 in case the buffer is provided by the user via setbuf.
1280 * include/ext/stdio_filebuf.h: Tweak comment.
1281 * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
1282 * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
1283 * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
1284 setbuf does nothing after open().
1285 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
1286
285b36d6
BK
12872003-11-11 Doug Gregor <gregod@cs.rpi.edu>
1288
1289 * docs/html/debug.html: Document libstdc++ debug mode.
1290 * docs/html/debug_mode.html: Document libstdc++ debug mode design.
1291 * docs/html/test.html: Document how to test under debug mode.
1292 * docs/html/17_intro/howto.html: Document debug-mode macros.
1293 * include/Makefile.am: Install debug-mode headers.
1294 * src/Makefile.am: Include debug.cc.
1295 * include/bits/basic_string.tcc:
1296 (basic_string::_S_construct): Fix NULL pointer check.
1297 (__is_null_pointer): New.
1298 Add precondition annotations.
1299 * include/bits/stream_iterator.h (istream_iterator,
1300 ostream_iterator): Added precondition annotations.
1301 * include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
1302 * include/bits/stl_queue.h (queue, priority_queue): Ditto.
1303 * include/bits/stl_stack.h (stack): Ditto.
1304 * include/bits/basic_string.h (basic_string): Ditto.
1305 * include/bits/basic_string.tcc (basic_string): Ditto.
1306 * include/std/std_memory.h (auto_ptr): Ditto.
1307 * include/std/std_valarray.h (valarray): Ditto.
1308 * include/bits/stl_algo.h: Added algorithm precondition
1309 annotations.
1310 * include/bits/stl_algobase.h: Added algorithm precondition
1311 annotations.
1312 * include/bits/stl_numeric.h: Ditto.
1313 * include/ext/algorithm: Added algorithm precondition
1314 annotations.
1315 (__is_heap): Moved away from here.
1316 * include/bits/stl_heap.h: Added algorithm precondition
1317 annotations.
1318 (__is_heap): Moved to the top of this file.
1319 (__is_heap): Added iterator range overloads.
1320 * testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
1321 with changes in std_memory.h.
1322 * testsuite/23_containers/list/operators/4.cc: Don't verify
1323 performance guarantees when in debug mode.
1324 * testsuite/23_containers/bitset/invalidation/1.cc: New.
1325 * testsuite/23_containers/deque/invalidation/1.cc: New.
1326 * testsuite/23_containers/deque/invalidation/2.cc: New.
1327 * testsuite/23_containers/deque/invalidation/3.cc: New.
1328 * testsuite/23_containers/deque/invalidation/4.cc: New.
1329 * testsuite/23_containers/list/invalidation/1.cc: New.
1330 * testsuite/23_containers/list/invalidation/2.cc: New.
1331 * testsuite/23_containers/list/invalidation/3.cc: New.
1332 * testsuite/23_containers/list/invalidation/4.cc: New.
1333 * testsuite/23_containers/map/invalidation/1.cc: New.
1334 * testsuite/23_containers/map/invalidation/2.cc: New.
1335 * testsuite/23_containers/multimap/invalidation/1.cc: New.
1336 * testsuite/23_containers/multimap/invalidation/2.cc: New.
1337 * testsuite/23_containers/multiset/invalidation/1.cc: New.
1338 * testsuite/23_containers/multiset/invalidation/2.cc: New.
1339 * testsuite/23_containers/set/invalidation/1.cc: New.
1340 * testsuite/23_containers/set/invalidation/2.cc: New.
1341 * testsuite/23_containers/vector/invalidation/1.cc: New.
1342 * testsuite/23_containers/vector/invalidation/2.cc: New.
1343 * testsuite/23_containers/vector/invalidation/3.cc: New.
1344 * testsuite/23_containers/vector/invalidation/4.cc: New.
1345 * testsuite/25_algorithms/heap.cc: Don't verify
1346 performance guarantees when in debug mode.
1347 * include/debug/bitset: New.
1348 * include/debug/debug.h: New.
1349 * include/debug/deque: New.
1350 * include/debug/formatter.h: New.
1351 * include/debug/hash_map: New.
1352 * include/debug/hash_map.h: New.
1353 * include/debug/hash_multimap.h: New.
1354 * include/debug/hash_set: New.
1355 * include/debug/hash_set.h: New.
1356 * include/debug/hash_multiset.h: New.
1357 * include/debug/list: New.
1358 * include/debug/map: New.
1359 * include/debug/map.h: New.
1360 * include/debug/multimap.h: New.
1361 * include/debug/multiset.h: New.
1362 * include/debug/safe_base.h: New.
1363 * include/debug/safe_iterator.h: New.
1364 * include/debug/safe_iterator.tcc: New.
1365 * include/debug/safe_sequence.h: New.
1366 * include/debug/set: New.
1367 * include/debug/set.h: New.
1368 * include/debug/string: New.
1369 * include/debug/vector: New.
1370 * src/debug.cc: New.
1371 * config/linker-map.gnu: Add debug mode symbols.
1372
13732003-11-11 Benjamin Kosnik <bkoz@redhat.com>
1374
1375 * src/string-inst.cc: Tweak namespaces.
1376 * src/misc-inst.cc: Same.
1377 * docs/html/debug.html: Edits.
1378 * config/link-map.gnu: Remove cruft.
1379
1380 * include/bits/c++config: Add in namespace associations.
1381 * include/std/std_bitset.h: Adjust namespace to __gnu_norm,
1382 comment tweaks.
1383 * include/bits/deque.tcc: Same.
1384 * include/bits/list.tcc: Same.
1385 * include/bits/stl_bvector.h: Same.
1386 * include/bits/stl_deque.h: Same.
1387 * include/bits/stl_list.h: Same.
1388 * include/bits/stl_map.h: Same.
1389 * include/bits/stl_multimap.h: Same.
1390 * include/bits/stl_multiset.h: Same.
1391 * include/bits/stl_set.h: Same.
1392 * include/bits/stl_vector.h: Same.
1393 * include/bits/vector.tcc: Same.
1394
1395 * include/std/std_algorithm.h: Remove markup comments.
1396 * include/std/std_functional.h: Same.
1397 * include/std/std_iterator.h: Same.
1398 * include/std/std_numeric.h: Same.
1399 * include/std/std_utility.h: Same.
1400 * include/bits/stl_queue.h: Formatting tweaks.
1401 * include/bits/stl_stack.h: Same.
1402 * include/std/std_deque.h: Include debugging version in debug mode.
1403 * include/std/std_list.h: Same.
1404 * include/std/std_map.h: Same.
1405 * include/std/std_set.h: Same.
1406 * include/std/std_vector.h: Same.
1407 * include/std/std_queue.h: Use deque, vector.
1408 * include/std/std_stack.h: Same.
1409
f6a7db9e
PC
14102003-11-09 Paolo Carlini <pcarlini@suse.de>
1411
1412 * include/bits/locale_facets.tcc (_M_insert_int,
1413 _M_insert_float): Move a couple of vars inside an if block.
1414
7c752655
PC
14152003-11-09 Paolo Carlini <pcarlini@suse.de>
1416
1417 PR libstdc++/12971
1418 * include/bits/locale_facets.tcc
1419 (money_put::do_put(..., long double)): Fix conversion
1420 specification as per DR 328 [WP].
1421 * testsuite/22_locale/money_put/put/char/12971.cc: Add.
1422 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
1423 * docs/html/ext/howto.html: Add entry for DR 328.
1424
41d3a0c3
PC
14252003-11-08 Paolo Carlini <pcarlini@suse.de>
1426
1427 PR libstdc++/12967
1428 * include/bits/list.tcc (merge): Implement resolution of
1429 DR 300 [WP].
1430 * docs/html/ext/howto.html: Add entry for DR 300; tweak entry
1431 for DR 231.
1432
1433 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
1434 Import R27.
1435
3ab3dca6
JW
14362003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
1437
1438 * libsupc++/vec.cc: Conform to C++STYLE.
1439
2d369f35
CW
14402003-11-07 Carlo Wood <carlo@alinoe.com>
1441
1442 PR libstdc++/12736
1443 * bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
1444 (qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
1445 K, V, r and A qualifiers before processing them as a group.
1446 * testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
1447 * testsuite/demangle/regression/cw-16.cc: New.
1448
b938ad89
RM
14492003-11-07 Robert Millan <robertmh@gnu.org>
1450
f6a7db9e
PC
1451 * configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
1452 * crossconfig.m4: Likewise.
1453 * configure: Regenerate.
b938ad89 1454
eb622d37
CW
14552003-11-07 Carlo Wood <carlo@alinoe.com>
1456
f6a7db9e
PC
1457 * include/bits/demangle.h
1458 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
1459 string_type&, bool member_function_pointer_qualifiers):
1460 Always separate the '[' of an array type with a space from
1461 what is left of it, except when that is the closing bracket
1462 of another array dimension.
eb622d37 1463
2215f732
CW
14642003-11-07 Carlo Wood <carlo@alinoe.com>
1465
f6a7db9e 1466 * include/bits/demangle.h
2215f732
CW
1467 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
1468 string_type&, bool) const): Made const.
1469 (qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
1470 (_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
1471 std::ostream& operator<<(std::ostream&, qualifier const&),
1472 std::ostream& operator<<(std::ostream&, qualifier_list const&),
1473 qualifier_list<Allocator>::decode_qualifiers(string_type&,
1474 string_type&, bool) const,
1475 session<Allocator>::decode_type_with_postfix(string_type&,
1476 string_type&, qualifier_list<Allocator>*))
1477 Added and/or changed debug-only hooks and code.
1478
d30b600a
JO
14792003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
1480
1481 * libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
1482 immediately return. This reflects a C++ ABI change 2003 Nov 03.
1483 (__cxa_vec_delete3): Likewise.
1484
5e93f39f
PR
14852003-11-03 Petur Runolfsson <peturr02@ru.is>
1486
1487 PR libstdc++/12790
1488 * include/bits/fstream.tcc: Delete _M_last_overflowed.
1489 (basic_filebuf::basic_filebuf): Initialize _M_state_last.
1490 (basic_filebuf::open, basic_filebuf::close): Assign
1491 _M_state_beg to _M_state_cur and _M_state_last.
1492 (basic_filebuf::close): Call _M_terminate_output to handle
1493 unshift and flushing.
1494 (basic_filebuf::underflow): Assign _M_state_last, throw
1495 exception instead of calling abort when codecvt::max_length()
1496 is bad.
1497 (basic_filebuf::seekoff): Use _M_state_last when calling
1498 codecvt::length(), pass correct state to _M_seek.
1499 (basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
1500 (basic_filebuf::_M_seek): Add __state_type parameter,
1501 set _M_state_cur correctly, store the resulting state in
1502 the return value and use _M_terminate_output to handle
1503 flushing and unshift.
1504 (basic_filebuf::_M_terminate_output): Flush contents of
1505 output buffer, if any, then call codecvt::unshift as
1506 needed and output the result.
1507 (basic_filebuf::sync): Move here, don't modify _M_writing
1508 or _M_reading.
1509
1510 * include/std/std_fstream.h
1511 (basic_filebuf::_M_state_last): Declare it.
1512 (basic_filebuf::_M_last_overflowed): Delete.
1513 (basic_filebuf::_M_seek): Add __state_type parameter.
1514 (basic_filebuf::sync): Declare only.
1515 (basic_filebuf::_M_output_unshift): Delete.
1516 (basic_filebuf::_M_terminate_output): Declare it.
1517
1518 * testsuite/testsuite_character.h:
1519 Define character class and state class plus char_traits and
1520 codecvt specializations for same for testing support for
1521 stateful encodings.
1522
1523 * testsuite/27_io/basic_filebuf/close/12790-1.cc,
1524 * testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
1525 * testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
1526 * testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
1527 * testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
1528 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
1529 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
1530 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
1531 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
1532 * testsuite/27_io/basic_filebuf/open/12790-1.cc,
1533 * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
1534 * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
1535 * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
1536 * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
1537 * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
1538 * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
1539 * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
1540 * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
1541 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
1542 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
1543 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
1544 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
1545 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
1546 * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
1547 * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
1548 * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
1549 * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
1550 * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
1551 * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
1552 * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
1553 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
1554 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
1555 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
1556 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
1557 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
1558 * testsuite/27_io/basic_filebuf/sync/char/1.cc,
1559 * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
1560 New tests.
1561
1562 * testsuite/27_io/basic_filebuf/3.cc,
1563 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
1564 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
1565 * testsuite/27_io/basic_fstream/3.cc,
1566 * testsuite/27_io/basic_ifstream/3.cc,
1567 * testsuite/27_io/basic_ofstream/3.cc:
1568 Use streamoff as off_type and fpos<state_type> as pos_type.
1569
1570 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
1571 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
1572 Check that sync does *not* set _M_writing to false.
1573
1b9e6d64
AG
15742003-11-03 Anthony Green <green@redhat.com>
1575
1576 * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
1577 they're used.
1578
e0f05105
BK
15792003-11-03 Benjamin Kosnik <bkoz@redhat.com>
1580
1581 * include/bits/locale_facets.h (time_get::_M_extract_name): Add
1582 ctype argument.
1583 * include/bits/locale_facets.tcc: Same, use it to allow
1584 capitalized names.
1585
1586 * include/bits/fstream.tcc: Spacing tweak.
1587 * include/bits/istream.tcc: Same.
1588 * include/bits/ostream.tcc: Same.
1589
08b9183d
PC
15902003-10-30 Paolo Carlini <pcarlini@suse.de>
1591
1592 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1593 __mod is only assigned, never used its value, remove it.
1594
f1e7988a
PC
15952003-10-29 Paolo Carlini <pcarlini@suse.de>
1596
1597 * include/bits/locale_facets.tcc (time_get::do_get_year):
1598 Absolutely avoid dereferencing end iterators.
1599 (time_put::put): Minor clean up.
1600
1601 * include/bits/locale_facets.tcc: Cosmetic reformattings.
1602
58c9703f
PC
16032003-10-29 Paolo Carlini <pcarlini@suse.de>
1604
1605 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1606 Revert the last commit, is not correct, sorry.
1607
4f363232
PC
16082003-10-29 Paolo Carlini <pcarlini@suse.de>
1609
1610 * config/locale/generic/c_locale.cc: Add back <cmath> and
1611 <cstdlib>.
1612
1613 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1614 Clean up.
1615
6bf0b59c
PC
16162003-10-29 Paolo Carlini <pcarlini@suse.de>
1617
1618 * include/bits/locale_facets.tcc (time_put::put): Absolutely
1619 avoid dereferencing end iterators; clean up.
1620
1621 * include/bits/locale_facets.tcc (num_get::_M_extract_float,
1622 num_get::_M_extract_int): Minor tweak.
1623
c9cca2c2
PC
16242003-10-29 Paolo Carlini <pcarlini@suse.de>
1625
1626 * include/bits/locale_facets.tcc: Remove some unnecessary
1627 includes.
1628 * config/locale/generic/c_locale.cc: Include <cerrno> here.
1629 * config/locale/gnu/c_locale.cc: Likewise.
1630
157f3283
PC
16312003-10-28 Paolo Carlini <pcarlini@suse.de>
1632
1633 * include/bits/locale_facets.tcc
1634 (money_get<>::do_get(..., string_type&)): Absolutely avoid
1635 dereferencing end iterators; general clean up.
1636
cc27f5a2
PC
16372003-10-28 Paolo Carlini <pcarlini@suse.de>
1638
1639 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
1640 Absolutely avoid dereferencing end iterators.
1641 (time_get::_M_extract_name): Likewise.
1642
1643 * include/bits/locale_facets.tcc
1644 (time_get::_M_extract_via_format, case 'e'): Don't try to
1645 be smart wrt returning the right __beg in case of parse
1646 error, time_get::_M_extract_num must be fixed instead.
1647
0c6b814a
PC
16482003-10-27 Paolo Carlini <pcarlini@suse.de>
1649
1650 PR libstdc++/12778
1651 * acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
1652 * aclocal.m4: Regenerate.
1653 * configure: Regenerate.
1654
0f09879b
BK
16552003-10-27 Benjamin Kosnik <bkoz@redhat.com>
1656
1657 * docs/html/17_intro/TODO: Add links.
1658 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1659 Uncomment.
1660
f20d2b78
PC
16612003-10-27 Paolo Carlini <pcarlini@suse.de>
1662
1663 PR libstdc++/12750
1664 * include/bits/locale_facets.tcc
1665 (time_get::_M_extract_via_format): Deal with code 'e'.
1666 * testsuite/22_locale/time_get/get_date/char/12750.cc: New.
1667 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
1668
1669 * include/bits/locale_facets.tcc
1670 (time_get::_M_extract_via_format): Tweak to absolutely avoid
1671 dereferencing end iterators.
1672
1673 * include/bits/locale_facets.h (__verify_grouping):
1674 Const-ify second parameter.
1675 * include/bits/locale_facets.tcc (__verify_grouping): Ditto.
1676 * src/locale-inst.cc (__verify_grouping): Ditto.
1677
16782003-10-27 Paolo Carlini <pcarlini@suse.de>
1679
1680 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1681 Various things: 1- Avoid absolutely end iterator dereferences;
1682 2- Improve performance-wise the code skipping leading zeros;
1683 3- Fix two bugs wrt early bail out in case of parsing errors
1684 (see testcases); 4- General clean up.
1685 (num_get::_M_extract_int): Likewise, except 3-. Additionally,
1686 use __builtin_expect to favor base 10 inputs.
1687 * testsuite/22_locale/num_get/get/char/7.cc: New.
1688 * testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
1689
f883c8dc
PC
16902003-10-26 Paolo Carlini <pcarlini@suse.de>
1691
1692 * testsuite/22_locale/money_put/put/char/1.cc: Clean up.
1693 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
1694
999bf60f
PC
16952003-10-25 Paolo Carlini <pcarlini@suse.de>
1696
1697 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
1698 __pos in only incremented, never used its value, remove it.
1699
b2398b49
RM
17002003-10-24 Robert Millan <robertmh@gnu.org>
1701
1702 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
1703 and knetbsd*-gnu.
1704 * aclocal.m4: Regenerated.
1705 * configure: Regenerated.
1706
761faeec
PC
17072003-10-24 Paolo Carlini <pcarlini@suse.de>
1708
1709 * include/bits/locale_facets.tcc (money_get::do_get(...,
1710 long double&): Properly size the temporary buffer.
1711 * testsuite/22_locale/money_get/get/char/11.cc: New.
1712 * testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
1713
1714 * include/bits/locale_facets.tcc (num_put::_M_group_int,
1715 num_put::_M_group_float, money_put::do_put(..., const
1716 string_type&), collate::do_compare, collate::do_transform):
1717 Prefer basic_string::data() to c_str() when the '\0'
1718 terminator is not really needed.
1719
eebf21ef
PC
17202003-10-24 Paolo Carlini <pcarlini@suse.de>
1721
1722 * include/bits/locale_facets.tcc (__verify_grouping):
1723 Prefer '=' to an unnecessary '&='.
1724
ebaeca8b
PC
17252003-10-24 Paolo Carlini <pcarlini@suse.de>
1726
1727 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1728 Tweak my fix for libstdc++/12657.
1729
bf22935f
PC
17302003-10-24 Paolo Carlini <pcarlini@suse.de>
1731
1732 * include/bits/locale_facets.tcc (money_get::do_get(...,
1733 string_type&): Minor tweak to the previous commit.
1734
14628700
PC
17352003-10-24 Paolo Carlini <pcarlini@suse.de>
1736
1737 * include/bits/locale_facets.tcc (money_get::do_get(...,
1738 string_type&): Disregard the previous commit: doesn't hurt but
1739 doesn't accomplish anything useful either. This is the right
1740 one, speeding up greatly the function in case of early fail.
1741
cdd5cf72
PC
17422003-10-24 Paolo Carlini <pcarlini@suse.de>
1743
1744 * include/bits/locale_facets.tcc (money_get::do_get(...,
1745 string_type&): Move an if block, thus minimizing the amount
1746 of code processed anyway when __tmp_units.size() == 0.
1747
c21dbe85
PC
17482003-10-24 Paolo Carlini <pcarlini@suse.de>
1749
1750 * include/bits/locale_facets.tcc
1751 (time_get<>::_M_extract_via_format): Deal with case 'C' too,
1752 equivalent to 'y'.
1753
d2c354f3
BK
17542003-10-23 Benjamin Kosnik <bkoz@redhat.com>
1755
1756 * docs/html/documentation.html: Add a pointer to the doxygen style
1757 guide.
1758 * docs/html/17_intro/TODO: Update.
1759 * docs/html/test.html: Add instructions for running a subset of
1760 tests, update.
1761
60aa9fc3
PC
17622003-10-23 Paolo Carlini <pcarlini@suse.de>
1763
1764 * include/bits/locale_facets.tcc (money_get<>::do_get(...,
1765 string_type&)): Use find_first_not_of to strip leading
1766 zeros; if __tmp_units == "0" never prefix it with '-';
1767 always fail if __tmp_units is empty.
1768 * testsuite/22_locale/money_get/get/char/10.cc: New.
1769 * testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
1770
861f9573
PE
17712003-10-23 Phil Edwards <phil@codesourcery.com>
1772
1773 * config/os/vxworks/ctype_noninline.h: Adjust ctor to match
1774 2003-10-21 change.
1775
3c21d6e0
PC
17762003-10-22 Paolo Carlini <pcarlini@suse.de>
1777
1778 * include/bits/locale_facets.tcc (__int_to_char): Remove
1779 the const int parameter.
1780 (_M_insert_int): Update caller.
1781 * src/locale-inst.cc (__int_to_char): Update instantiations.
1782
bf5fe473
BK
17832003-10-22 Benjamin Kosnik <bkoz@redhat.com>
1784
1785 * include/bits/locale_facets.h: Correct byname facets for "C"
1786 locale.
1787 * config/locale/generic/ctype_members.cc: Same.
1788 * config/locale/generic/messages_members.h: Same.
1789 * config/locale/gnu/ctype_members.cc: Same.
1790 * config/locale/gnu/messages_members.h: Same.
1791 * include/bits/codecvt.h: Same.
1792 * src/ctype.cc: Same.
1793 * testsuite/22_locale/codecvt_byname/1.cc: New.
1794 * testsuite/22_locale/collate/1.cc: Edit.
1795 * testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
1796 * testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
1797 * testsuite/22_locale/ctype/1.cc: Derivation tests.
1798 * testsuite/22_locale/ctype/11844.cc: Move...
1799 * testsuite/22_locale/ctype_base/11844.cc: ...here.
1800 * testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
1801 * testsuite/22_locale/ctype_byname/1.cc: Name.
1802 * testsuite/22_locale/messages_byname/1.cc: New.
1803 * testsuite/22_locale/messages_byname/named_equivalence.cc: New.
1804 * testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
1805 * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
1806 * testsuite/22_locale/numpunct/1.cc: Edit.
1807 * testsuite/22_locale/numpunct_byname/2.cc: Move...
1808 * testsuite/22_locale/numpunct/members/char/3.cc: ...here.
1809 * testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
1810 * testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
1811
3d05b345
PC
18122003-10-22 Paolo Carlini <pcarlini@suse.de>
1813
1814 PR libstdc++/8610
1815 * acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
1816 checking for the availability of int64_t.
1817 (GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
1818 * configure.ac: Call here.
1819 * acconfig.h: Add undef for the corresponding symbols.
1820 * config/io/basic_file_stdio.cc (__basic_file<char>::open):
1821 Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
1822 (__basic_file<char>::seekoff): Likewise, call lseek64 when
1823 available, otherwise lseek, checking the __off parameter.
1824 * include/bits/postypes.h: Typedef __streamoff_base_type
1825 to int64_t if available, otherwise long long.
1826 * aclocal.m4: Regenerate.
1827 * config.h.in: Likewise.
1828 * configure: Likewise.
1829
1830 * acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
1831 Use AC_TRY_LINK instead of AC_TRY_COMPILE.
1832
57d01e69
PC
18332003-10-22 Paolo Carlini <pcarlini@suse.de>
1834
1835 PR libstdc++/12657
1836 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1837 Implement resolution of DR 292 (WP).
1838 * docs/html/ext/howto.html: Add entry for DR 292.
1839
6b5a2662
BK
18402003-10-21 Benjamin Kosnik <bkoz@redhat.com>
1841
1842 * include/ext/mt_allocator.h: Change include to gthr.h.
1843 * include/ext/rope: Same. Add _Refcount_base definitions.
1844 * include/ext/pool_allocator.h: Adjust namespaces.
1845 * include/bits/stl_threads.h (_Refcount_base): Move.
1846 Put remaining into namespace __gnu_cxx.
1847
82c2e3d4
BK
18482003-10-21 Benjamin Kosnik <bkoz@redhat.com>
1849
1850 PR libstdc++/9858
1851 * include/bits/locale_facets.h (ctype<char>): Remove
1852 __ctype_abstract_base.
1853 (ctype<char>::do_is): Remove.
1854 (ctype<char>::do_scan_is): Remove.
1855 * src/ctype.cc: Same. Inline the rest.
1856 * testsuite/22_locale/ctype/is/char/9858.cc: New.
1857 * config/os/aix/ctype_noninline.h: Adjust ctor.
1858 * config/os/bsd/freebsd/ctype_noninline.h: Same.
1859 * config/os/bsd/netbsd/ctype_noninline.h: Same.
1860 * config/os/djgpp/ctype_noninline.h: Same.
1861 * config/os/generic/ctype_noninline.h: Same.
1862 * config/os/gnu-linux/ctype_noninline.h: Same.
1863 * config/os/hpux/ctype_noninline.h: Same.
1864 * config/os/irix/irix5.2/ctype_noninline.h: Same.
1865 * config/os/irix/irix6.5/ctype_noninline.h: Same.
1866 * config/os/mingw32/ctype_noninline.h: Same.
1867 * config/os/newlib/ctype_noninline.h: Same.
1868 * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
1869 * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
1870 * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
1871 * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
1872 * config/os/windiss/ctype_noninline.h: Same.
1873
d23ad8c8
PC
18742003-10-21 Paolo Carlini <pcarlini@suse.de>
1875
1876 * src/locale.cc: Tweak a comment.
1877 * src/localename.cc: Move a comment.
1878
9540958e
BK
18792003-10-20 Benjamin Kosnik <bkoz@redhat.com>
1880
1881 PR libstdc++/10081
1882 * testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
1883 * testsuite_hooks.cc: Same.
1884 * 22_locale/numpunct/members/pod/1.cc: Edit.
1885 * 22_locale/numpunct/members/pod/2.cc: Same.
1886 * 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
1887 * 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
1888 * 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
1889 * 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
1890 * 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
1891 * 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
1892 * 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
1893 * 27_io/basic_istream/sentry/pod/1.cc: New.
1894 * 27_io/basic_ostream/sentry/pod/1.cc: New.
1895 * 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
1896 * 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
1897
27d54b2a
RO
18982003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1899
1900 * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
1901 of external _MIPS_SIM_ABI32.
1902
65fc9769
PE
19032003-10-20 Phil Edwards <phil@codesourcery.com>
1904
1905 * configure.ac: Fix comment typo.
1906 * configure.host: Add vxworks to host_os switch.
1907 * crossconfig.m4: Remove old commented os_include_dir variables
1908 left over from autotools transition.
1909 (*-vxworks): New stanza.
1910 (*-windiss): Add missing symbols.
1911 * configure: Regenerate.
1912 * config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
1913 config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
1914 New files.
1915 * config/os/windiss/os_defines.h: Define __C9X__.
1916
47395a24
DE
19172003-10-19 David Edelsohn <edelsohn@gnu.org>
1918
1919 PR other/12506
1920 * configure.host (aix4,aix*): Define os_include_dir to os/generic.
1921
8f4c7b67
AT
19222003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
1923
1924 * src/locale.cc (locale::_S_initialize): Re-apply workaround a
1925 confusion of the use of the gthr API when __gthread_active_p()
1926 returns true.
1927
c755e77d
BK
19282003-10-17 Benjamin Kosnik <bkoz@redhat.com>
1929
1930 * src/Makefile.am: Add new files.
1931 * src/Makefile.in: Regenerate.
1932 * src/globals.cc: Split into..
1933 * src/globals_io.cc: New.
1934 * src/globals_locale.cc: New.
1935 * src/ios.cc: Split into...
1936 * src/ios_init.cc: New.
1937 * src/ios_locale.cc: New.
1938 * src/locale-inst.cc: Split into..
1939 * src/wlocale-inst.cc: New.
1940 * src/locale-misc-inst.cc: New.
1941 * src/locale.cc, src/localename: Split into...
1942 * src/locale_facets.cc: New.
1943 * src/locale_init.cc: New.
1944 * src/wstring-inst.cc: Add copyright info.
1945
4c4809c1
BK
19462003-10-16 Petur Runolfsson <peturr02@ru.is>
1947
4c4809c1
BK
1948 PR libstdc++/11450
1949 PR libstdc++/11543
1950 PR libstdc++/12065
1951 * config/io/basic_file_stdio.cc (__basic_file::seekoff):
1952 Change return value from streampos to streamoff.
1953 (__basic_file::seekpos): Delete.
1954 * config/io/basic_file_stdio.h: Same.
1955 * config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
1956 * include/Makefile.am (bits_headers): Add bits/postypes.h.
1957 * include/bits/char_traits.h: Include bits/postypes.h instead of
1958 bits/fpos.h.
1959 * include/bits/fstream.tcc (basic_filebuf::open,
1960 basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
1961 values, use == and != instead.
1962 (basic_filebuf::_M_seek): Use explicit conversion from streamoff
1963 to pos_type.
1964 (basic_filebuf::imbue): Don't use ! on pos_type values, use
1965 == instead. Don't use __check_facet(_M_codecvt) unless is_open().
1966 * include/bits/postypes.h: New file.
1967 Add __streamoff_base_type typedef, streamsize.
1968 (streamoff, streampos, wstreampos): Define typedefs, with
1969 streamoff defined as...
1970 (streamoff): New class. Document implementation defined
1971 aspects.
1972 (fpos): New implementation. Document implementation defined
1973 aspects.
1974 * include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
1975 explicit conversion from pos_type to off_type.
1976 * include/std/std_iosfwd.h: Include bits/postypes.h instead
1977 of bits/fpos.h.
1978 * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
1979 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
1980 * testsuite/27_io/fpos/11450.cc: New test.
1981 * testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
1982 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
1983 * testsuite/27_io/types/3.cc: New test.
1984
19852003-10-16 Benjamin Kosnik <bkoz@redhat.com>
f883c8dc
PC
1986
1987 * configure.host: Remove fpos_include_dir.
1988 * configure.ac: Remove FPOS_INC_SRCDIR.
1989 * configure: Regenerate.
1990 * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
1991 * aclocal.m4: Regenerate.
1992 * include/Makefile.am (host_headers): Remove fpos.h.
1993 (bits_headers): Add postypes.h.
1994 * include/Makefile.in: Regenerate.
1995 * config/os/gnu-linux/fposh: Remove.
1996 * config/os/generic/fpos.h: Remove.
1997
1998 * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
1999 * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
2000 * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
2001 * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
2002 * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
2003 * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
2004 * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
2005 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
2006 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
2007 * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
2008 * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
2009 * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
2010 * testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
2011 * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
2012 * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
2013 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
2014 * testsuite/27_io/objects/char/10.cc: Same.
4c4809c1 2015
0392ff98
PC
20162003-10-16 Paolo Carlini <pcarlini@suse.de>
2017
2018 * src/locale.cc (locale::locale(const char*)): ... one
2019 more comparison missed in the previous commit.
2020
d2f663d1
BK
20212003-10-16 Benjamin Kosnik <bkoz@redhat.com>
2022
5d78fe72
BK
2023 * acconfig.h: Add HAVE_DRAND48.
2024 * crossconfig.m4: Remove ISATTY.
d2f663d1
BK
2025 * aclocal.m4: Regenerated.
2026 * config.h.in: Regenerated.
5d78fe72 2027 * configure: Regenerated.
d2f663d1 2028
068c84e3
BI
20292003-10-16 Bernardo Innocenti <bernie@develer.com>
2030
2031 * config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
2032 __mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
2033 Document SMP safeness of asm macros.
2034
eaed902b
PC
20352003-10-16 Paolo Carlini <pcarlini@suse.de>
2036
2037 * src/locale.cc (locale::locale(const char*)): Tweak
2038 a couple of comparisons to use basic_string operators.
2039
f991b1d8
PC
20402003-10-16 Paolo Carlini <pcarlini@suse.de>
2041
2042 PR libstdc++/12540
2043 * config/locale/gnu/monetary_members.cc
2044 (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
2045 Don't leak memory if new throws.
2046 * src/locale.cc (locale::locale(const char*)): In order not
2047 to leak memory in case new throws, use a basic_string type
2048 for __res too and avoid strdup.
2049
84e72d83
JB
20502003-10-14 Jeff Bailey <jbailey@nisa.net>
2051
2052 PR libstdc++/12562
2053 * crossconfig.m4: Share the config between *-linux* and *-gnu*.
2054 * configure: Regenerate.
2055
be3faf89
CW
20562003-10-14 Carlo Wood <carlo@alinoe.com>
2057
2058 PR libstdc++/12600
2059 * include/bits/demangle.h (session<Allocator>::
2060 decode_unqualified_name(string_type& output)): Fail on a
2061 <operator-name> when decoding <template-argument>.
2062 * testsuite/demangle/regression/cw-15.cc: New.
2063
1638f5c9
PC
20642003-10-14 Paolo Carlini <pcarlini@unitus.it>
2065
2066 PR libstdc++/11480
2067 * include/bits/stl_algo.h (unique): Fix.
2068 * testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
2069 * testsuite/25_algorithms/unique/11480.cc: New, from the PR.
2070 * testsuite/25_algorithms/unique/2.cc: New.
2071
42db0f21
PC
20722003-10-14 Paolo Carlini <pcarlini@unitus.it>
2073
2074 * src/localename.cc (_M_replace_categories, M_replace_facet):
2075 Const-ify a couple of variables.
2076
9dccaa6b
PR
20772003-10-14 Petur Runolfsson <peturr02@ru.is>
2078 Andreas Tobler <a.tobler@schweiz.ch>
2079
2080 * src/locale.cc (locale::_S_initialize): Workaround a confusion
2081 of the use of the gthr API when __gthread_active_p() returns true.
2082
a62e7311
PR
20832003-10-12 Petur Runolfsson <peturr02@ru.is>
2084 Paolo Carlini <pcarlini@unitus.it>
2085
2086 PR libstdc++/11460
2087 * src/strstream.cc (pbackfail): Fix to use to_int_type.
2088 * testsuite/backward/11460.cc: New, from the PR.
2089
f5677b15
PC
20902003-10-12 Paolo Carlini <pcarlini@unitus.it>
2091
2092 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
2093 Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
2094 * include/bits/basic_string.tcc: Likewise.
2095 * include/bits/ios_base.h: Likewise.
2096 * include/bits/istream.tcc: Likewise.
2097 * include/bits/locale_facets.tcc: Likewise.
2098 * include/bits/ostream.tcc: Likewise.
2099 * include/bits/stl_function.h: Likewise.
2100 * include/bits/stl_multiset.h: Likewise.
2101 * include/bits/stl_pair.h: Likewise.
2102 * include/bits/stl_set.h: Likewise.
2103 * include/bits/streambuf_iterator.h
2104 * include/std/std_iosfwd.h: Likewise.
2105 * include/std/std_istream.h: Likewise.
2106 * include/std/std_sstream.h: Likewise.
2107 * include/std/std_streambuf.h: Likewise.
2108 * src/ios.cc: Likewise.
2109 * include/bits/c++config:
2110 Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
2111 * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
2112 dg-error directive due to removal of a blank line.
2113 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
2114
c411fdae
AT
21152003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
2116 Paolo Carlini <pcarlini@unitus.it>
2117
2118 PR libstdc++/11844/11740 (cont)
2119 * config/os/generic/ctype_inline.h (ctype<char>::is):
2120 Generically, use a bitmasksize of 15 (instead of 10);
2121 Fix the logic to actually return (M & m) != 0 as per
2122 22.2.1.1.2.
2123
796d7a86
BI
21242003-10-11 Bernardo Innocenti <bernie@develer.com>
2125
2126 * crossconfig.m4 (*-uclinux*): New target.
2127 * configure: Regenerate.
2128
6b61bca4
PC
21292003-10-10 Paolo Carlini <pcarlini@unitus.it>
2130
2131 * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
2132 Avoid unnecessarily calling __builtin_alloca and dealing
2133 explicitly with width() smaller than zero.
2134 (operator<<(basic_ostream&, char), operator<<(basic_ostream&,
2135 const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
2136 const char*), operator<<(basic_ostream<char, _Traits>&,
2137 const char*), operator<<(basic_ostream, const basic_string&)):
2138 Likewise.
2139
5aaa2108
BK
21402003-10-09 Benjamin Kosnik <bkoz@redhat.com>
2141
2142 * config/linker-map.gnu: Make more *_type_info bits visible.
2143 Move new/delete bits back into GLIBCXX space.
2144
2145 * include/bits/locale_classes.h: Move _M_id out of line, so that
2146 locale::id::_S_highwater can be removed from the export list.
2147 * src/locale.cc (locale::id::_M_id): Define.
2148
64833be0
AT
21492003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
2150
2151 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
2152 SPARC64.
2153
2f800bcc
PC
21542003-10-09 Paolo Carlini <pcarlini@unitus.it>
2155
2156 PR libstdc++/11844
2157 * config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
2158 to conform to the requirements of 22.2.1.
2159 * config/os/bsd/freebsd/ctype_base.h: Likewise.
2160 * config/os/djgpp/ctype_base.h: Likewise.
2161 * config/os/generic/ctype_base.h: Likewise.
2162 * config/os/gnu-linux/ctype_base.h: Likewise.
2163 * config/os/hpux/ctype_base.h: Likewise.
2164 * config/os/irix/irix6.5/ctype_base.h: Likewise.
2165 * config/os/solaris/solaris2.6/ctype_base.h: Likewise.
2166 * config/os/solaris/solaris2.7/ctype_base.h: Likewise.
2167 * testsuite/22_locale/ctype/11844.cc: New.
2168
2169 * config/locale/generic/ctype_members.cc (do_is):
2170 Generically, use a bitmasksize of 15 (instead of 10), since
2171 we don't know the numerical encoding of the various categories
2172 in the underlying /usr/include/ctype.h.
2173
93d04686
BK
21742003-10-09 Benjamin Kosnik <bkoz@redhat.com>
2175
2176 * src/string-inst.cc: Prune.
2177 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
2178 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
2179
21802003-10-09 Petur Runolfsson <peturr02@ru.is>
2181
2182 * src/io-inst.cc: Don't include iostream.
2183 * include/bits/ios_base.h (ios_base::failure): Use string.
2184 * src/Makefile.am: Add ios_failure.cc.
2185 * src/Makefile.in: Regenerate.
2186 * src/ios.cc: Move ios_base::failure definitions to...
2187 * src/ios_failure.cc: ...here. New.
2188
1a139c59
PR
21892003-10-09 Petur Runolfsson <peturr02@ru.is>
2190
2191 PR libstdc++/9874
2192 * include/bits/fstream.tcc (basic_filebuf::seekoff):
2193 Move code needed for both seekoff and seekpos...
2194 (basic_filebuf::_M_seek): ...here. New function.
2195 (basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
2196 * include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
2197 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
2198
2199 * testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
2200
a761195b
PC
22012003-10-08 Paolo Carlini <pcarlini@unitus.it>
2202
2203 * include/bits/locale_facets.tcc: More minor cosmetic
2204 changes and const-ifications of some variables.
2205
905df1fb
PC
22062003-10-07 Paolo Carlini <pcarlini@unitus.it>
2207
2208 * include/bits/locale_facets.tcc: Minor cosmetic changes
2209 and const-ifications of some variables.
2210
2211 * include/bits/locale_facets.tcc
2212 (money_get::do_get(..., string_type&)): Simplify an if-else.
2213
ba9b12d1
PC
22142003-10-06 Paolo Carlini <pcarlini@unitus.it>
2215
2216 PR libstdc++/11740
2217 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
2218 Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
2219 * config/locale/generic/ctype_members.cc: Same.
2220 * testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
2221
e4f7d0a1
PC
22222003-10-06 Paolo Carlini <pcarlini@unitus.it>
2223
2224 * include/bits/locale_facets.tcc (__pad<>::_S_pad):
2225 Improve performance-wise: avoid one traits::copy, avoid
2226 the __builtin_alloca, streamline.
2227
5b577977
PC
22282003-10-05 Paolo Carlini <pcarlini@unitus.it>
2229
2230 * include/bits/locale_facets.tcc
2231 (num_put::do_put(..., bool)): Prefer ?: to if-else.
2232 (time_get::_M_extract_name): Qualify min with std::.
2233 (__pad<>::_S_pad): Constify two variables; simplify an
2234 if-else statement factoring out some code.
2235
2236 * include/bits/locale_facets.tcc: Minor cosmetic changes.
2237
dff186db
PC
22382003-10-04 Paolo Carlini <pcarlini@unitus.it>
2239
2240 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
2241 Constify a couple of variables.
2242 (num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
2243 ++__beg to *__beg++.
2244
2811b823
PC
22452003-10-04 Paolo Carlini <pcarlini@unitus.it>
2246 Petur Runolfsson <peturr02@ru.is>
2247
2248 * include/ext/stdio_sync_filebuf.h: Don't include the whole
2249 <fstream>, only <streambuf> and <cstdio>.
2250
184b434c
PC
22512003-10-04 Paolo Carlini <pcarlini@unitus.it>
2252
2253 PR libstdc++/12206
2254 * include/bits/fstream.tcc (imbue): In case a codecvt facet
2255 is not available, set _M_codecvt = 0.
2256 * testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
2257
cafc7337
HB
22582003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
2259
2260 PR libstdc++/12451
2261 * libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
2262
bb1b12ec
BK
22632003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2264
2265 * include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
2266 * src/locale.cc: Define.
2267 * src/localename.cc: Use it.
2268 * config/locale/generic/time_members.h: Same.
2269 * config/locale/gnu/messages_members.h: Same.
2270 * config/locale/gnu/time_members.h: Same.
2271
8dcaff28
PC
22722003-10-02 Paolo Carlini <pcarlini@unitus.it>
2273
2274 PR libstdc++/12232
2275 * include/bits/fstream.tcc (seekoff): Ignore the openmode
2276 argument; simplify.
2277 * config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
2278 seekpos): Remove the openmode argument.
2279 * config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
2280 seekpos): Remove redundant placeholder for the openmode argument.
2281 * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
2282 * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
2283 * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
2284 * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
2285 * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
2286
5c109a17
BK
22872003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2288
2289 * src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
2290 (locale::facet::_S_get_c_locale): Same.
2291
8ae81136
BK
22922003-10-02 Benjamin Kosnik <bkoz@redhat.com>
2293
2294 * config/linker-map.gnu: Export _S_get_c_locale instead of
2295 _S_c_locale object.
2296
22972003-10-02 Petur Runolfsson <peturr02@ru.is>
2298
2299 * config/locale/generic/c_locale.cc
2300 (category_names, locale::_S_categories): Const qualify.
2301 * config/locale/gnu/c_locale.cc: Same.
2302 * config/locale/generic/time_members.h (__timepunct::__timepunct):
2303 Copy string contents before assigning to _M_name_timepunct,
2304 qualify strcpy and strlen with std::.
2305 * config/locale/gnu/time_members.h: Same.
2306 * config/locale/gnu/messages_members.h (messages::messages):
2307 Copy string contents before assigning to _M_name_messages,
2308 qualify strcpy and strlen with std::.
2309 * config/os/gnu-linux/ctype_noninline.h
2310 (ctype<char>::classic_table()): Don't call locale::classic().
2311 * include/bits/locale_classes.h
2312 (locale::_S_categories): Const qualify.
2313 (locale::_S_once, locale::_S_initialize_once,
2314 locale::facet::_S_once, locale::facet::_S_initialize_once,
2315 locale::facet::_S_get_c_locale): Declare.
2316 (locale::_S_initialize): Don't define.
2317 (locale::facet::_S_c_locale): Make private.
2318 (locale::facet::_S_c_name): Same, const qualify.
2319 (locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
2320 parameters, add throw() specifier.
2321 * include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
2322 messages::_M_name_messages): Const qualify.
2323 * src/locale.cc
2324 (locale::_S_once, locale::facet::_S_once): Define.
2325 (locale::classic): Move initialization code...
2326 (locale::_S_initialize_once): ...here.
2327 (locale::_S_initialize): Call _S_initialize_once through
2328 __gthread_once.
2329 (locale::facet::_S_initialize_once): Initialize _S_c_locale.
2330 (locale::facet::_S_get_c_locale): Call _S_initialize_once through
2331 __gthread_once before returning _S_c_locale.
2332 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
2333 Drop unused parameters, add throw() specifier, don't initialize
2334 locale::facet::_S_c_locale and _S_c_name.
2335
2336 * config/locale/generic/messages_members.h:
2337 Replace _S_c_locale with _S_get_c_locale().
2338 * config/locale/gnu/c_locale.cc: Same.
2339 * config/locale/gnu/messages_members.h: Same.
2340 * config/locale/gnu/numeric_members.cc: Same.
2341 * config/locale/gnu/time_members.cc: Same.
2342 * config/os/gnu-linux/ctype_noninline.h: Same.
2343 * include/bits/locale_facets.h: Same.
2344 * include/bits/locale_facets.tcc: Same.
2345 * src/codecvt.cc: Same.
2346 * src/ctype.cc: Same.
2347
4a035cf7
CW
23482003-10-02 Carlo Wood <carlo@alinoe.com>
2349
2350 * include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
2351 Decode symbols that start with _GLOBAL_[ID]_ differently: the
2352 trailing part ends with a terminating zero and is not necessarily an
2353 encoding.
2354 * src/demangle.cc (): Same.
2355 * testsuite/demangle/regression/cw-13.cc: Adjust for new output.
2356
86b4ab73
PC
23572003-10-02 Paolo Carlini <pcarlini@unitus.it>
2358
2359 * testsuite/22_locale/locale/cons/12438.cc: Use
2360 __gnu_test::try_named_locale("").
2361
222a5b1d
RO
23622003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2363
2364 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
2365 (GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
2366 instead of drand48.
2367 * acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
2368 * crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
2369 HAVE_DRAND48.
2370 * config.h.in, configure: Regenerate.
2371 * include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
2372 lrand48 use.
2373
e39dd1ce
NM
23742003-10-01 Nathan Myers <ncm@cantrip.org>
2375
2376 * include/bits/locale_facets.tcc (time_put::put): Avoid
2377 expensive *__s++, in favor of *__s, ++__s.
2378
530ce551
PC
23792003-10-01 Paolo Carlini <pcarlini@unitus.it>
2380
2381 * include/bits/locale_facets.tcc (time_put::put): Minor
2382 tweak to the previous commit.
2383
52a16d08
PC
23842003-10-01 Paolo Carlini <pcarlini@unitus.it>
2385
2386 PR libstdc++/12439
2387 * include/bits/locale_facets.tcc (time_put::put): Deal
2388 with the three issues pointed out by the PR.
2389 * testsuite/22_locale/time_put/put/char/12439_1.cc: New.
2390 * testsuite/22_locale/time_put/put/char/12439_3.cc: New.
2391 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
2392 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
2393 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
2394
ae7c3ba5
PC
23952003-09-30 Paolo Carlini <pcarlini@unitus.it>
2396
2397 * include/bits/stl_algo.h: Minor cosmetic reformattings.
2398
cbc6c296
PC
23992003-09-30 Paolo Carlini <pcarlini@unitus.it>
2400
2401 * include/bits/stl_algo.h (search_n): Tweak, to spare the
2402 first --__n.
2403
2ea247d3
PC
24042003-09-30 Paolo Carlini <pcarlini@unitus.it>
2405
2406 * testsuite/22_locale/locale/cons/12352.cc: Explicitly
2407 qualify exception name.
2408
155f6fbb
PC
24092003-09-30 Paolo Carlini <pcarlini@unitus.it>
2410
2411 PR libstdc++/12438
2412 * include/bits/locale_facets.tcc (locale::combine): Don't
2413 leak memory if _M_replace_facet throws.
2414 * testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
2415
2416 * include/bits/locale_classes.h (locale::locale(const locale&,
2417 _Facet*)): Tweak, use consistently _M_remove_reference.
2418
70863cbd
PC
24192003-09-30 Paolo Carlini <pcarlini@unitus.it>
2420
2421 PR libstdc++/12352 (cont)
2422 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
2423 Don't leak __cloc; don't leak if any of the _M_init_facet(...)
2424 calls fail.
2425 (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
2426 (locale::_Impl::~_Impl): Don't do anything if !_M_facets,
2427 !_M_caches, !_M_names.
2428
51ac684e
RO
24292003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2430
2431 * configure.host: Handle Solaris 2.5 micro releases explicitly.
2432 Remove wildcards from Solaris 2.6, 7-9: there were no
2433 micro releases.
2434 Treat Solaris 10 and up like 7-9.
2435
6821a40b
PC
24362003-09-29 Paolo Carlini <pcarlini@unitus.it>
2437
2438 * include/bits/stl_algo.h (search_n): Improve the previous
2439 fix as suggested by Martin.
2440
e5012ba5
PC
24412003-09-29 Paolo Carlini <pcarlini@unitus.it>
2442
2443 PR libstdc++/12296
2444 * include/bits/istream.tcc (peek): Set eofbit if sgetc
2445 returns eof.
2446 * testsuite/27_io/basic_istream/peek/char/12296.cc:
2447 New, from the PR.
2448
24492003-09-29 Nathan Myers <ncm@cantrip.org>
2450 Paolo Carlini <pcarlini@unitus.it>
2451
2452 PR libstdc++/11400
2453 * include/bits/stl_algo.h (search_n):
2454 Use iterator_traits<>::difference_type for __n.
2455 * testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
2456
6cd6aed7
PC
24572003-09-29 Paolo Carlini <pcarlini@unitus.it>
2458
2459 * testsuite/22_locale/locale/cons/12352.cc:
2460 Use __attribute__((unused)) for test.
2461
33b16690
UW
24622003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
2463
2464 * testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
2465 "Son" or "So" as abbreviated name for Sunday in de_DE locale.
2466 * testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
2467
2d07c3f5
BS
24682003-09-26 Brad Spencer <spencer@infointeractive.com>
2469
2470 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
2471 Explicitly qualify exceptions.
2472 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
2473 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2474 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2475 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2476
91675f9d
PC
24772003-09-25 Paolo Carlini <pcarlini@unitus.it>
2478
2479 PR libstdc++/12352
2480 * src/localename.cc (locale::_Impl::_Impl(const _Impl&,
2481 size_t)): Don't leak if memory allocations for _M_facets,
2482 _M_caches, and _M_names fail.
2483 (locale::_Impl::_Impl(const char*, size_t)): Ditto.
2484 (locale::_Impl::_M_replace_categories(const _Impl*,
2485 category)): Ditto.
2486 (locale::_Impl::_M_install_facet(const locale::id*,
2487 const facet*)): Ditto.
2488 * include/bits/locale_classes.h (locale::locale(const locale&,
2489 _Facet*)): Don't leak memory.
2490 * testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
2491
2492 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
2493 bool)): Qualify with std:: strcpy, tweak.
2494 * include/bits/locale_classes.h
2495 (locale::_Impl::_M_check_same_name): Qualify strcmp.
2496
2b1be54b
BS
24972003-09-25 Brad Spencer <spencer@infointeractive.com>
2498
2499 PR libstdc++/6072
775ee48e
BK
2500 * acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
2501 wcstof, iswblank.
2b1be54b
BS
2502 * aclocal.m4: Regenerate.
2503 * config.h.in: Regenerate.
2504 * configure: Regenerate.
2505 * crossconfig.m4: Add in wchar_t bits for solaris crosses.
2506 * config/io/basic_file_stdio.cc: Guard unistd.h.
2507 * include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
2508 * include/c_std/std_cwchar.h: Same.
2509 * include/c_std/std_cwctype.h: Same.
2510
465ad0c7
BK
25112003-09-25 Benjamin Kosnik <bkoz@redhat.com>
2512
775ee48e 2513 PR libstdc++/11065
465ad0c7
BK
2514 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
2515 * config/locale/generic/ctype_members.cc: Same.
2516 * testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
2517 * testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
2518
2519 * config/os/generic/ctype_inline.h: Update.
2520
7b865c36
UW
25212003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
2522
2523 * src/Makefile.am (version_dep): New variable.
2524 (libstdc___la_DEPENDENCIES): Use it to add dependency on
2525 libstdc++-symbol.ver only when using symbol versioning.
2526 * src/Makefile.in: Regenerate.
2527
11f10e6b
BK
25282003-09-23 Benjamin Kosnik <bkoz@redhat.com>
2529
2530 * include/bits/locale_facets.tcc: Tweak to avoid warnings.
2531 * testsuite/testsuite_hooks.h: Same.
2532 * testsuite/*/*.cc: Same.
2533
89ec0c4b
PR
25342003-09-22 Petur Runolfsson <peturr02@ru.is>
2535
2536 * include/bits/istream.tcc (basic_istream::read,
2537 basic_istream::readsome, basic_istream::putback,
2538 basic_istream::unget, operator>>(basic_istream, CharT)):
2539 Avoid redundant setstate(failbit) calls when sentry::operator bool()
2540 returns false.
2541
dc25fbc7
CW
25422003-09-22 Carlo Wood <carlo@alinoe.com>
2543
2544 PR libstdc++/12365
2545 * include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
2546 char const*, int, int)): Remove unused identifier
2547 cv_qualifier for overloaded constructor.
2548
b2bc3339
BK
25492003-09-18 Benjamin Kosnik <bkoz@redhat.com>
2550
2551 PR libstdc++/11504
2552 * acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
2553 WARN_FLAGS, remove -Wno-format.
2554 * aclocal.m4: Regenerate.
2555 * configure: Regenerate.
2556
0b5ce4f1
PR
25572003-09-18 Petur Runolfsson <peturr02@ru.is>
2558
2559 * config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
2560 * config/io/basic_file_stdio.h: Same.
2561 * include/std/std_fstream.h (__ctype_type): Delete.
2562 * include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
2563
43892f8c
BK
25642003-09-17 Benjamin Kosnik <bkoz@redhat.com>
2565
2566 PR libstdc++/12239
2567 * configure.host (abi_baseline_pair): Error out on solaris2
2568 configurations without a minor version number.
2569
4bc8ae23
PE
25702003-09-13 Phil Edwards <phil@codesourcery.com>
2571
2572 * docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
2573 if man pages are on.
2574 * docs/doxygen/user.cfg.in: And here.
2575
dbc66058
DJ
25762003-09-10 Daniel Jacobowitz <drow@mvista.com>
2577 Andreas Jaeger <aj@suse.de>
2578
2579 PR libstdc++/12189
2580 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
2581 abi_check if cross compiling.
2582 * aclocal.m4: Regenerated.
2583 * configure: Regenerated.
2584
520abf69
JO
25852003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
2586
2587 * libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
2588 NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
2589 (__cxa_vec_new3): Likewise.
2590
8c8dec01
PR
25912003-09-10 Petur Runolfsson <peturr02@ru.is>
2592
2593 * include/bits/fstream.tcc (basic_filebuf::seekoff):
2594 Use codecvt::length to handle variable-width stateless encodings
2595 correctly.
2596 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
2597 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
2598
80e46d77
AM
25992003-09-10 Alan Modra <amodra@bigpond.net.au>
2600
2601 * config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
2602 rather than or'ing.
2603
e517f636
AM
26042003-09-09 Alan Modra <amodra@bigpond.net.au>
2605
2606 * configure: Regenerate.
2607
263594d2
DE
26082003-09-09 David Edelsohn <edelsohn@gnu.org>
2609
2610 * src/ios.cc (ios_base::Init::Init): Remove unnecessary
2611 qualifier from _S_synced_with_stdio.
2612
26132003-09-09 Bernardo Innocenti <bernie@develer.com>
e7f115de
BI
2614
2615 * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
2616
f1813b69
PR
26172003-09-04 Petur Runolfsson <peturr02@ru.is>
2618
2619 PR libstdc++/9028
2620 * include/bits/fstream.tcc
2621 (basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
2622 (basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
2623 _M_ext_buf_size, _M_ext_next and _M_ext_end.
2624 (basic_filebuf::underflow): Handle variable-width stateless
2625 encodings (codecvt::encoding() == 0), including UTF-8.
2626 * include/std/std_fstream.h (basic_filebuf):
2627 Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
2628 * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
2629 * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
2630 * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
2631 * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
2632 * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
2633 * testsuite/27_io/objects/wchar_t/12.cc: New test.
2634 * testsuite/27_io/objects/wchar_t/13.cc: New test.
2635
7976070c
JW
26362003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
2637
2638 * docs/html/faq/index.html: Note that a namespace alias can't be
2639 used when specialising templates in extension namespace.
2640 * docs/html/faq/index.txt: Regenerate.
2641
149639d4
PR
26422003-09-03 Petur Runolfsson <peturr02@ru.is>
2643
2644 PR libstdc++/12048
2645 * include/ext/stdio_sync_filebuf.h
2646 (stdio_sync_filebuf::_M_unget_buf): Declare it.
2647 (stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
2648 (stdio_sync_filebuf::uflow): Store the returned character in
2649 _M_unget_buf.
2650 (stdio_sync_filebuf::pbackfail): If argument is eof(), pass
2651 _M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
2652 (stdio_sync_filebuf<char>::xsgetn): Store last read character in
2653 _M_unget_buf, if any, else eof().
2654 (stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
2655 _M_unget_buf, if any, else eof().
2656 * testsuite/27_io/objects/char/12048.cc: Rename to...
2657 * testsuite/27_io/objects/char/12048-1.cc: ...this.
2658 * testsuite/27_io/objects/char/12048-2.cc: New test.
2659 * testsuite/27_io/objects/char/12048-3.cc: New test.
2660 * testsuite/27_io/objects/char/12048-4.cc: New test.
2661 * testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
2662 * testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
2663 * testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
2664 * testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
2665 * testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
2666 * testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
2667 * testsuite/ext/stdio_sync_filebuf_char.cc
2668 (test02, test03, test04, test05): New tests.
2669 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc
2670 (test02, test03, test04, test05): New tests.
2671
26722003-09-03 Petur Runolfsson <peturr02@ru.is>
2673
2674 * docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
2675 stringbuf or strstreambuf. Fix typos.
2676
3660e02f
PE
26772003-09-02 Phil Edwards <phil@codesourcery.com>
2678
2679 * acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
2680 appropriately.
2681 * config.h.in: Add _GLIBCXX_HOSTED.
2682 * libsupc++/eh_term_handler.cc: Test it here; initialize
2683 __terminate_handler to std::abort if freestanding.
2684 * aclocal.m4, configure: Regenerated.
2685 * docs/html/configopts.html: Document --disable-hosted-libstdcxx.
2686
a3aff86a
NM
26872003-08-29 Nathan Myers <ncm@cantrip.org>
2688
2689 PR libstdc++/11990
2690 * include/bits/locale_facets.tcc (__pad): delete dead code.
2691
f5cf58dd
AM
26922003-08-28 Alan Modra <amodra@bigpond.net.au>
2693
2694 * configure.ac: Test $with_cross_host against $build_alias, not $build.
2695 * configure: Regenerate.
2696
3bedd161
PR
26972003-08-27 Petur Runolfsson <peturr02@ru.is>
2698
2699 * testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
2700 * testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
2701
ca618b60
PE
27022003-08-27 Phil Edwards <pme@gcc.gnu.org>
2703
2704 * Makefile.am: Remove trailing whitespace. Remove needless
2705 "foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
2706 * include/Makefile.am: Likewise.
2707 * libmath/Makefile.am: Likewise.
2708 * libsupc++/Makefile.am: Likewise.
2709 * po/Makefile.am: Likewise.
2710 * src/Makefile.am: Likewise.
2711 * testsuite/Makefile.am: Likewise.
2712
2713 * Makefile.in, include/Makefile.in, libmath/Makefile.in,
2714 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2715 testsuite/Makefile.in: Regenerated.
2716
37e0ff11
PE
27172003-08-27 Phil Edwards <pme@gcc.gnu.org>
2718
2719 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
2720 includedir.
2721 * aclocal.m4, configure: Regenerate.
2722
72730fdb
DJ
27232003-08-27 Daniel Jacobowitz <drow@mvista.com>
2724
2725 * acinclude.m4: Include no-executables.m4.
2726 * configure.ac: Uncomment GCC_NO_EXECUTABLES.
2727 * aclocal.m4: Regenerated.
2728 * configure: Regenerated.
2729
ec0d7421
DJ
27302003-08-27 Daniel Jacobowitz <drow@mvista.com>
2731
2732 * acinclude.m4: Don't call AC_ISC_POSIX.
2733 * aclocal.m4: Regenerated.
2734 * configure: Regenerated.
2735
92eabea2
PE
27362003-08-27 Phil Edwards <pme@gcc.gnu.org>
2737
2738 * acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
2739 AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
2740 (GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
2741 used elsewhere in this file.
2742 (GLIBCXX_EVALUATE_CONDITIONALS): New macro...
2743 * configure.ac: ...called here to expand all conditionals.
2744 * Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
2745 * include/Makefile.am: Remove redundant gxx_include_dir assignment.
2746 (install-freestanding-headers): New target, a subset of
2747 install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
2748
2749 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2750 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2751 src/Makefile.in, testsuite/Makefile.in: Regenerated.
2752
a43d13fb
PE
27532003-08-26 Phil Edwards <pme@gcc.gnu.org>
2754
2755 * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
2756 pathnames from generated tag file.
2757
82ba99d5
PE
27582003-08-26 Phil Edwards <pme@gcc.gnu.org>
2759
2760 * Makefile.am: Add comment.
2761 * acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
2762 SUBDIRS variables.
2763 * configure.ac: Use them both here, instead of hardcoded lists.
2764
2765 * fragment.am: Add STAMP varaible.
2766 * include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
2767 instead of @LN_S@.
2768 (stamp-*): Move file creation rule outside of 'if' branches to
2769 ensure the stamp-* files are actually updated. Use $(STAMP).
2770 * src/Makefile.am: Remove now-nonexistant variable.
2771 * libsupc++/Makefile.am: Likewise. Snap the assignment chain
2772 for -prefer-pic.
2773 * po/Makefile.am: Include same fragment as all the others.
2774
2775 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2776 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
2777
73780bfe
LR
27782003-08-26 Loren J. Rittle <ljrittle@acm.org>
2779
2780 * testsuite/data/cin_unget-1.txt: New.
2781 * testsuite/27_io/objects/char/12048.cc: New.
2782
7e2055ec
ZW
27832003-08-25 Zack Weinberg <zack@codesourcery.com>
2784
2785 * config/os/hpux/os_defines.h: Unconditionally define
2786 _GLIBCXX_GTHREAD_USE_WEAK to 0.
2787
a6f3e253
GK
27882003-08-19 Geoffrey Keating <geoffk@apple.com>
2789
2790 * crossconfig.m4 (*-darwin*): Add a large and boring stanza for
2791 crosses to Darwin targets.
2792 * configure: Regenerate.
2793
1b391ba9
PR
27942003-08-19 Petur Runolfsson <peturr02@ru.is>
2795
7e2055ec
ZW
2796 * include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
2797
77e862fa
PE
27982003-08-17 Phil Edwards <pme@gcc.gnu.org>
2799
2800 * configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
2801 in the patch from 3 minutes ago. Boy, is my face red.
2802 * configure: At least I remembered to regenerate this.
2803
0df3f383
PE
28042003-08-17 Phil Edwards <pme@gcc.gnu.org>
2805
2806 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
2807 and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
2808 things from the top level.
2809 * configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
2810 Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
2811 (currently unused). Strip the fake-VPATH shell fragment from
2812 automake-generated rules, if present.
2813 * linkage.m4: Add comment.
2814
2815 * fragment.am: New file, containing factored-out common settings.
2816 (AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
2817 * Makefile.am: Include fragment.am. Remove common variables.
2818 * include/Makefile.am: Likewise.
2819 * libmath/Makefile.am: Likewise.
2820 * libsupc++/Makefile.am: Likewise.
2821 * po/Makefile.am: Likewise. Print rules during check.
2822 * src/Makefile.am: Likewise.
2823 * testsuite/Makefile.am: Likewise.
2824
2825 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2826 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2827 src/Makefile.in, testsuite/Makefile.in: Regenerate.
2828
e885821f
JL
28292003-08-11 John Levon <levon@movementarian.org>
2830
2831 * docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
2832 remaining places for the name change from GLIBCPP_FORCE_NEW
2833 to GLIBCXX_FORCE_NEW
2834
2803847d
BK
28352003-08-11 Benjamin Kosnik <bkoz@redhat.com>
2836
2837 * include/bits/basic_ios.h: Remove *_iter typedefs, change num*
7e2055ec 2838 typedefs to num_*.
2803847d
BK
2839 * include/bits/basic_ios.tcc: Same.
2840 * include/bits/istream.tcc: Same.
2841 * include/bits/locale_facets.h: Same.
2842 * include/bits/ostream.tcc: Same.
2843 * include/std/std_istream.h: Same.
2844 * include/std/std_ostream.h: Same.
2845 * testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
2846
2847 * include/ext/rope: Remove build warning.
7e2055ec 2848
51c1f3c9
AJ
28492003-08-11 Andreas Jaeger <aj@suse.de>
2850
2851 * include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
2852 to make SMP-safe.
2853 * include/Makefile.in: Regenerated.
2854
f6dda651
PE
28552003-08-11 Phil Edwards <pme@gcc.gnu.org>
2856
2857 * acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
2858 when calling AC_PROG_CC.
2859 * aclocal.m4, configure: Regenerate.
2860
fbe057bb
PE
28612003-08-11 Phil Edwards <pme@gcc.gnu.org>
2862
2863 * acinclude.m4: Properly quote variable which will be expanded
2864 inside makefiles. Use CXX instead of CC to extract compiler info.
2865 * configure.ac (AC_INIT): Use the new 4-arg form to finally get the
2866 correct form in PACKAGE.
2867 * aclocal.m4, configure: Regenerate.
2868
258e7dbc
BK
28692003-08-08 Benjamin Kosnik <bkoz@redhat.com>
2870
2871 * testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
2872 (check-abi-verbose): Same.
2873 * testsuite/testsuite_performance.h (report_performance): Same.
7e2055ec 2874
3e083bea
LR
28752003-08-08 Loren J. Rittle <ljrittle@acm.org>
2876
2877 * testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
2878
5a9ed693
DG
28792003-08-07 Doug Gregor <dgregor@apple.com>
2880
7e2055ec
ZW
2881 * include/bits/char_traits.h (char_traits::not_eof): Match operand
2882 types in ? :.
5a9ed693 2883
4e9ebd4b
BI
28842003-08-07 Bernardo Innocenti <bernie@develer.com>
2885
2886 PR libstdc++/11784
2887 * libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
2888 Replace variants with new BSET-based version.
7e2055ec 2889
a9ebaa2b
CW
28902003-08-07 Carlo Wood <carlo@alinoe.com>
2891
0df3f383 2892 * include/bits/demangle.h: Do not use cctype functions that depend
a9ebaa2b 2893 on locale.
7e2055ec 2894
8b171e55
PE
28952003-08-05 Phil Edwards <pme@gcc.gnu.org>
2896
2897 * configure.in: Rename...
2898 * configure.ac: ...to this.
2899 * docs/html/17_intro/porting.texi: Update name.
2900
2901 * docs/html/17_intro/porting.html: Regenerate.
2902 * config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
2903 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2904 testsuite/Makefile.in: Regenerate (picks up new dependancy).
2905
1260d70f
PE
29062003-08-05 Phil Edwards <pme@gcc.gnu.org>
2907
2908 * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
2909 pipe, open the window to let out the fumes, redo the option-handling
2910 logic to properly execute the detection test.
2911 * aclocal.m4, configure: Regenerate.
2912
ff66d28f
PE
29132003-08-04 Phil Edwards <pme@gcc.gnu.org>
2914
2915 Convert to new autotools.
2916 * acconfig.h: Update with correct names.
2917 * configure.host (ATOMICITYH): Rename to atomicity_include_dir.
2918 (qnx6.[12]*): 'q' comes before 's', not after 'w'.
2919 * configure.in: Update. Split hardcoded cross-configury settings
2920 out to...
2921 * crossconfig.m4: ...here. New file. Contents untouched.
2922 * acinclude.m4: Reorganize and rewrite as needed. Split large
2923 chunks out to...
2924 * linkage.m4: ...here. New file. Math and stdlib linkage tests.
2925 Contents untouched.
2926 * scripts/testsuite_flags.in: Update.
2927
2928 * Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
2929 variables (already generated by automake).
2930 * include/Makefile.am: Ditto.
2931 * libmath/Makefile.am: Ditto.
2932 * libsupc++/Makefile.am: Ditto.
2933 * po/Makefile.am: Ditto.
2934 * src/Makefile.am: Ditto.
2935
2936 * aclocal.m4: Regenerate using new versions.
2937 * config.h.in: Ditto.
2938 * configure: Ditto.
2939 * Makefile.in: Ditto.
2940 * include/Makefile.in: Ditto.
2941 * libmath/Makefile.in: Ditto.
2942 * libsupc++/Makefile.in: Ditto.
2943 * po/Makefile.in: Ditto.
2944 * src/Makefile.in: Ditto.
2945 * testsuite/Makefile.in: Ditto.
2946
5e7c251d
PE
29472003-08-04 Phil Edwards <pme@gcc.gnu.org>
2948
2949 * po/libstdc++.pot: Re-extract/regenerate.
2950
caf21254
PE
29512003-08-04 Phil Edwards <pme@gcc.gnu.org>
2952
2953 * testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
2954 Remove unneeded variable assignments. Leave them for automake.
2955 * testsuite/lib/libstdc++-v3.exp: Rename...
2956 * testsuite/lib/libstdc++.exp: ...to this. Adjust function names
2957 accordingly.
2958 * testsuite/libstdc++-v3.dg/dg.exp: Rename...
2959 * testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
2960 names accordingly.
2961
f7ab5fa4
PE
29622003-08-04 Phil Edwards <pme@gcc.gnu.org>
2963
2964 * docs/doxygen/guide.html: run_doxygen uses bash.
2965 * docs/doxygen/mainpage.html: We'll be shipping tag files.
2966 * docs/doxygen/run_doxygen: Tweaks and improvements.
2967 * docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
2968 * docs/html/install.html: Update autoconf/automake requirements.
2969 * docs/html/test.html: Add section describing DejaGNU support.
2970 * docs/html/17_intro/confdeps.dot: New file, generates...
2971 * docs/html/17_intro/confdeps.png: ...this new file.
2972 * docs/html/Makefile: Generated here.
2973 * docs/html/17_intro/configury.html: New file.
2974
b3f2a032
PE
29752003-07-31 Phil Edwards <pme@gcc.gnu.org>
2976
2977 * testsuite/lib/libstdc++-v3-dg.exp: Rename...
2978 * testsuite/lib/libstdc++-v3.exp: ...to this.
2979 * testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
2980
e64a227a
DG
29812003-07-31 Doug Gregor <dgregor@apple.com>
2982
2983 Add user specialization tests.
2984 * testsuite/23_containers/deque/1.cc: New.
2985 * testsuite/23_containers/list/1.cc: New.
2986 * testsuite/23_containers/map/1.cc: New.
2987 * testsuite/23_containers/multimap/1.cc: New.
2988 * testsuite/23_containers/multiset/1.cc: New.
2989 * testsuite/23_containers/set/1.cc: New.
2990 * testsuite/23_containers/vector/1.cc: New.
7e2055ec 2991
17472bb6
BK
29922003-07-31 Benjamin Kosnik <bkoz@redhat.com>
2993
2994 Reshuffle 23_containers testsuite.
7e2055ec 2995 * 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
17472bb6
BK
2996 bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
2997 list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
2998 map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
2999 set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
3000 vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
3001 vector_resize.cc: Split into...
3002 * 23_containers/bitset/cons/1.cc: New.
3003 * 23_containers/bitset/cons/6282.cc: New.
3004 * 23_containers/bitset/count/6124.cc: New.
3005 * 23_containers/bitset/operations/1.cc: New.
3006 * 23_containers/bitset/operations/2.cc: New.
3007 * 23_containers/bitset/test/1.cc: New.
3008 * 23_containers/bitset/to_ulong/1.cc: New.
3009 * 23_containers/deque/cons/1.cc: New.
3010 * 23_containers/deque/cons/2.cc: New.
3011 * 23_containers/deque/operators/1.cc: New.
3012 * 23_containers/list/capacity/1.cc: New.
3013 * 23_containers/list/cons/1.cc: New.
3014 * 23_containers/list/cons/2.cc: New.
3015 * 23_containers/list/cons/3.cc: New.
3016 * 23_containers/list/cons/4.cc: New.
3017 * 23_containers/list/cons/5.cc: New.
3018 * 23_containers/list/cons/6.cc: New.
3019 * 23_containers/list/cons/7.cc: New.
3020 * 23_containers/list/cons/8.cc: New.
3021 * 23_containers/list/cons/9.cc: New.
3022 * 23_containers/list/modifiers/1.cc: New.
3023 * 23_containers/list/modifiers/2.cc: New.
3024 * 23_containers/list/modifiers/3.cc: New.
3025 * 23_containers/list/operators/1.cc: New.
3026 * 23_containers/list/operators/2.cc: New.
3027 * 23_containers/list/operators/3.cc: New.
3028 * 23_containers/list/operators/4.cc: New.
3029 * 23_containers/map/insert/1.cc: New.
3030 * 23_containers/map/operators/1.cc: New.
3031 * 23_containers/map/operators/1_neg.cc: New.
3032 * 23_containers/multiset/insert/1.cc: New.
3033 * 23_containers/priority_queue/members/7161.cc: New.
3034 * 23_containers/queue/members/7157.cc: New.
3035 * 23_containers/set/operators/1_neg.cc: New.
3036 * 23_containers/stack/members/7158.cc: New.
3037 * 23_containers/vector/bool/1.cc: New.
3038 * 23_containers/vector/bool/6886.cc: New.
3039 * 23_containers/vector/capacity/1.cc: New.
3040 * 23_containers/vector/capacity/2.cc: New.
3041 * 23_containers/vector/capacity/8230.cc: New.
3042 * 23_containers/vector/cons/1.cc: New.
3043 * 23_containers/vector/cons/2.cc: New.
3044 * 23_containers/vector/cons/3.cc: New.
3045 * 23_containers/vector/cons/4.cc: New.
3046 * 23_containers/vector/cons/6513.cc: New.
3047 * 23_containers/vector/element_access/1.cc: New.
3048 * 23_containers/vector/modifiers/1.cc: New.
3049 * 23_containers/vector/modifiers/2.cc: New.
3050 * 23_containers/vector/resize/1.cc: New.
7e2055ec 3051
515aab7c
RO
30522003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3053
3054 * testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
3055 dg-options.
3056 * testsuite/thread/pthread2.cc: Likewise.
3057 * testsuite/thread/pthread3.cc: Likewise.
3058 * testsuite/thread/pthread4.cc: Likewise.
3059 * testsuite/thread/pthread5.cc: Likewise.
3060 * testsuite/thread/pthread6.cc: Likewise.
3061 * testsuite/thread/pthread7-rope.cc: Likewise.
3062
1051c718
PE
30632003-07-30 Phil Edwards <pme@gcc.gnu.org>
3064
3065 * include/bits/c++config: Partial reversion (comment placement) of
3066 previous patch.
3067
5f697f7a
BK
30682003-07-30 Benjamin Kosnik <bkoz@redhat.com>
3069
3070 * include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
3071 (_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
3072 (_GLIBCXX_AT_AT): Remove.
3073 (__USE_MALLOC): Remove.
3074 * include/std/std_fstream.h: Modify.
3075 * include/bits/basic_ios.h: Same.
3076 * include/bits/valarray_array.h: Same.
3077 * include/c_std/std_cmath.h: Same.
3078 * include/c_std/cmath.tcc: Same.
3079 * include/std/std_vector.h: Same.
3080 * include/std/std_string.h: Same.
3081 * include/std/std_stack.h: Same.
3082 * include/std/std_queue.h: Same.
3083 * include/std/std_list.h: Same.
3084 * include/std/std_deque.h: Same.
3085 * include/std/std_streambuf.h: Same.
3086 * include/std/std_sstream.h: Same.
3087 * include/std/std_ostream.h: Same.
3088 * include/std/std_istream.h: Same.
3089 * include/bits/valarray_array.tcc: Same, format.
3090
3091 * include/c/std_cctype.h: Fix include guards.
3092 * include/c/std_cerrno.h: Same.
3093 * include/c/std_cfloat.h: Same.
3094 * include/c/std_climits.h: Same.
3095 * include/c/std_clocale.h: Same.
3096 * include/c/std_cmath.h: Same.
3097 * include/c/std_csetjmp.h: Same.
3098 * include/c/std_csignal.h: Same.
3099 * include/c/std_cstdarg.h: Same.
3100 * include/c/std_cstddef.h: Same.
3101 * include/c/std_cstdio.h: Same.
3102 * include/c/std_cstdlib.h: Same.
3103 * include/c/std_cstring.h: Same.
3104 * include/c/std_ctime.h: Same.
3105 * include/c/std_cwchar.h: Same.
3106 * include/c/std_cwctype.h: Same.
3107 * include/c_std/cmath.tcc: Same.
3108 * include/c_std/std_cmath.h: Same.
7e2055ec 3109
b4c70e89
GB
31102003-07-30 Gawain Bolton <gp.bolton@computer.org>
3111
7e2055ec 3112 PR libstdc++/11504.
b4c70e89
GB
3113 * include/bits/stl_tree.h: Replace C-style casts with C++-style
3114 casts. Changes to avoid casting away constness. Eliminate
3115 _Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
3116 initialization lists. Move out implementation of __black_count()
3117 to...
7e2055ec
ZW
3118 * src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
3119 Rename_Rb_tree_base_iterator::_M_increment() to
3120 _Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
3121 _Rb_tree_decrement.
3122 * config/linker-map.gnu: Add and change symbols here.
b4c70e89 3123
48b3222d
JW
31242003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
3125
3126 * docs/html/22_locale/howto.html: Use locale::classic() instead
3127 of locale("C").
3128
cb584bcf
BK
31292003-07-28 Benjamin Kosnik <bkoz@redhat.com>
3130
3131 * testsuite/testsuite_hooks.h: Remove list include.
3132 (func_callback): Define as unique type, not std::list.
3133 Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
3134 * testsuite/libstdc++-v3.dg/dg.exp: Same.
3135 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
7e2055ec 3136 * testsuite/23_containers/bitset_ctor.cc:
cb584bcf
BK
3137 * testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
3138 * testsuite/18_support/numeric_limits.cc: Same.
3139 * testsuite/21_strings/basic_string/append/char/1.cc: Same.
3140 * testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
3141 * testsuite/21_strings/basic_string/compare/char/1.cc: Same.
3142 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
3143 * testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
3144 * testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
3145 * testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
3146 * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
3147 * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
3148 * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
3149 * testsuite/21_strings/basic_string/find/char/1.cc: Same.
3150 * testsuite/21_strings/basic_string/find/char/2.cc: Same.
3151 * testsuite/21_strings/basic_string/find/char/3.cc: Same.
3152 * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
3153 * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
3154 * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
3155 * testsuite/21_strings/basic_string/insert/char/1.cc: Same.
3156 * testsuite/21_strings/basic_string/insert/char/2.cc: Same.
3157 * testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
3158 * testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
7e2055ec
ZW
3159 * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
3160 * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
3161 * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
3162 * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
3163 * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
3164 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
3165 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
3166 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
3167 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
3168 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
cb584bcf
BK
3169 * testsuite/21_strings/basic_string/operators/char/1.cc: Same.
3170 * testsuite/21_strings/basic_string/operators/char/2.cc: Same.
3171 * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
3172 * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
3173 * testsuite/21_strings/basic_string/replace/char/1.cc: Same.
3174 * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
3175 * testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
3176 * testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
3177 * testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
3178 * testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
3179 * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
3180 * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
3181 * testsuite/21_strings/basic_string/substr/char/1.cc: Same.
3182 * testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
3183 * testsuite/23_containers/bitset_ctor.cc: Same.
3184 * testsuite/23_containers/bitset_shift.cc: Same.
3185 * testsuite/23_containers/vector_ctor.cc: Same.
3186 * testsuite/23_containers/vector_element_access.cc: Same.
3187 * testsuite/24_iterators/istreambuf_iterator.cc: Same.
3188 * testsuite/24_iterators/iterator.cc: Same.
3189 * testsuite/24_iterators/ostreambuf_iterator.cc: Same.
3190 * testsuite/25_algorithms/lower_bound.cc: Same.
3191 * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
3192 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
3193 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
3194 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
3195 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
3196 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
3197 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
3198 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
3199 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
3200 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
7e2055ec
ZW
3201 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
3202 Same.
3203
1cb1de7e
PE
32042003-07-28 Phil Edwards <pme@gcc.gnu.org>
3205
3206 * docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
3207 docs/html/test.html, docs/html/17_intro/headers_cc.txt,
3208 docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
3209 GLIBCPP to GLIBCXX (and explain as needed).
3210
6dfe0fc9
PE
32112003-07-28 Phil Edwards <pme@gcc.gnu.org>
3212
3213 * README: Update.
3214
2cb1c928
PE
32152003-07-28 Phil Edwards <pme@gcc.gnu.org>
3216
3217 * testsuite/22_locale/messages/members/char/1.cc,
3218 testsuite/22_locale/messages/members/char/2.cc,
3219 testsuite/22_locale/messages/members/char/3.cc,
3220 testsuite/22_locale/messages_byname/1.cc: Update comment regarding
3221 the origin of LOCALEDIR.
3222 * testsuite/lib/libstdc++-v3.exp: New file.
3223
b66ea7d4
BK
32242003-07-25 Benjamin Kosnik <bkoz@redhat.com>
3225
3226 * include/bits/char_traits.h: Update copyright, tweak.
e884d397 3227 * testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
b66ea7d4
BK
3228 std types.
3229
d5ff4e3f
MA
32302003-07-24 Matt Austern <austern@apple.com>
3231
3232 * /include/bits/char_traits.h (class char_traits): Put all the
3233 real work into the new class template __gnu_cxx::char_traits.
3234 Gave generic definitions for member functions. Types are taken
3235 from the new class template __gnu_cxx::_Char_types.
3236 * testsuite/21_strings/char_traits/requirements/short/1.cc: New
3237 file. Test of std::char_traits<short>, which serves as a test of
3238 the char_traits primary template.
3239
aecf642c
BK
32402003-07-24 Benjamin Kosnik <bkoz@redhat.com>
3241
3242 * testsuite/*: Change __gnu_cxx_test to __gnu_test.
3243
32442003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
d7541133 3245
7e2055ec
ZW
3246 * testsuite/23_containers/map_operators.cc: Conform to
3247 container requirement as value must be Assignable.
d7541133 3248
118545ec
AO
32492003-07-23 Alexandre Oliva <aoliva@redhat.com>
3250
3251 * acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
3252 tests not only generation of pch files, but also their use.
3253 * aclocal.m4, configure: Rebuilt.
3254
ff89cb01
SE
32552003-07-23 Steve Ellcey <sje@cup.hp.com>
3256
3257 * config/cpu/hppa/atomicity.h: Change
3258 _GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
3259 to match misc-inst.cc
3260
1143680e
SE
32612003-07-23 Steve Ellcey <sje@cup.hp.com>
3262
3263 * include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
3264 * include/c_std/std_cctype.h: Ditto.
3265 * include/c_std/std_cerrno.h: Ditto.
3266 * include/c_std/std_cfloat.h: Ditto.
3267 * include/c_std/std_climits.h: Ditto.
3268 * include/c_std/std_clocale.h: Ditto.
3269 * include/c_std/std_cmath.h: Ditto.
3270 * include/c_std/std_csetjmp.h: Ditto.
3271 * include/c_std/std_csignal.h: Ditto.
3272 * include/c_std/std_cstdarg.h: Ditto.
3273 * include/c_std/std_cstddef.h: Ditto.
3274 * include/c_std/std_cstdio.h: Ditto.
3275 * include/c_std/std_cstdlib.h: Ditto.
3276 * include/c_std/std_cstring.h: Ditto.
3277 * include/c_std/std_ctime.h: Ditto.
3278 * include/c_std/std_cwchar.h: Ditto.
3279 * include/c_std/std_cwctype.h: Ditto.
3280 * include/std/std_algorithm.h: Ditto.
3281 * include/std/std_bitset.h: Ditto.
3282 * include/std/std_complex.h: Ditto.
3283 * include/std/std_deque.h: Ditto.
3284 * include/std/std_fstream.h: Ditto.
3285 * include/std/std_functional.h: Ditto.
3286 * include/std/std_iomanip.h: Ditto.
3287 * include/std/std_ios.h: Ditto.
3288 * include/std/std_iosfwd.h: Ditto.
3289 * include/std/std_iostream.h: Ditto.
3290 * include/std/std_istream.h: Ditto.
3291 * include/std/std_iterator.h: Ditto.
3292 * include/std/std_limits.h: Ditto.
3293 * include/std/std_list.h: Ditto.
3294 * include/std/std_locale.h: Ditto.
3295 * include/std/std_map.h: Ditto.
3296 * include/std/std_memory.h: Ditto.
3297 * include/std/std_numeric.h: Ditto.
3298 * include/std/std_ostream.h: Ditto.
3299 * include/std/std_queue.h: Ditto.
3300 * include/std/std_set.h: Ditto.
3301 * include/std/std_sstream.h: Ditto.
3302 * include/std/std_stack.h: Ditto.
3303 * include/std/std_stdexcept.h: Ditto.
3304 * include/std/std_streambuf.h: Ditto.
3305 * include/std/std_string.h: Ditto.
3306 * include/std/std_utility.h: Ditto.
3307 * include/std/std_valarray.h: Ditto.
3308 * include/std/std_vector.h: Ditto.
3309
3988d179
DG
33102003-07-22 Doug Gregor <dgregor@apple.com>
3311
3312 * include/bits/basic_string.h (basic_string::insert): Deprecate
3313 GNU extension.
3314
5dfda042
BK
33152003-07-21 Benjamin Kosnik <bkoz@redhat.com>
3316
3317 * scripts/testsuite_flags.in (--build-includes): Remove extraneous
3318 paths for libio.
3319 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
3320 (test03): Include typeinfo for bad_cast.
3321 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
3322 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
3323 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
3324
3988d179 33252003-07-21 Doug Gregor <dgregor@apple.com>
f345c6b5
DG
3326
3327 * include/bits/boost_concept_check.h:
7e2055ec
ZW
3328 (_EqualityComparableConcept::__constraints): Remove != from the
3329 list of constraints; it is not listed in Table 28 of the C++98
3330 standard.
f345c6b5 3331
2d5f9af2
AJ
33322003-07-18 Andreas Jaeger <aj@suse.de>
3333
3334 * config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
3335 * config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
3336 * config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
3337 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
3338
fea4065d 33392003-07-17 Benjamin Kosnik <bkoz@redhat.com>
7e2055ec 3340
fea4065d
BK
3341 * config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
3342 * config/locale/generic/messages_members.h: Tweaks.
3343 * config/locale/generic/monetary_members.cc
3344 (moneypunct::_M_initialize_moneypunct): Use cache.
3345 (moneypunct::~moneypunct): Delete cache.
3346 * config/locale/generic/time_members.cc:
3347 (__timepunct::_M_initialize_timepunct): Use cache.
3348 * config/locale/generic/time_members.h:
3349 (__timepunct::~__timepunct): Delete cache.
3350 (__timepunct::__timepunct): Set cache.
3351 * config/locale/gnu/messages_members.h: Tweaks.
3352 * config/locale/gnu/monetary_members.cc:
3353 (moneypunct::_M_initialize_moneypunct): Use cache.
3354 (moneypunct::~moneypunct): Delete cache.
3355 * config/locale/gnu/time_members.cc:
3356 (__timepunct::_M_initialize_timepunct): Use cache.
3357 * config/locale/gnu/time_members.h:
3358 (__timepunct::~__timepunct): Delete cache.
3359 (__timepunct::__timepunct): Set cache.
3360 * include/bits/locale_facets.h (__timepunct_cache): New.
3361 (__moneypunct_cache): New.
3362 * include/bits/locale_facets.tcc: Tweak.
3363 * src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
3364 * src/locale-inst.cc: Instantiate caches.
3365 * src/globals.cc: Add "C" caches.
3366 * src/localename.cc: Use external "C" caches.
3367
83a279e4
PE
33682003-07-17 Phil Edwards <pme@gcc.gnu.org>
3369
3370 * docs/doxygen/guide.html: Fix typo.
3371
db5eed18
BK
33722003-07-16 Benjamin Kosnik <bkoz@redhat.com>
3373
3374 * include/ext/pod_char_traits.h: Add state template argument.
3375
7942afdc
BK
33762003-07-16 Benjamin Kosnik <bkoz@redhat.com>
3377
3378 * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
3379 (num_get::_M_convert_int): To _M_insert_int.
7e2055ec 3380 (num_get::_M_convert_float): To _M_insert_float.
7942afdc
BK
3381 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
3382 Use caches for ctype, num_get.
3383 (num_get::_M_extract_int): Same.
3384 (num_get::get(bool)): Same.
3385 (__verify_grouping): Use size_t.
3386 * src/locale-inst.cc: Update.
3387 * src/locale.cc: Adjust _S_atoms_in.
3388
1ef4a5d4
PE
33892003-07-16 Phil Edwards <pme@gcc.gnu.org>
3390
3391 * docs/doxygen/mainpage.html: Move building/writing instructions...
3392 * docs/doxygen/guide.html: ...to here. New file.
3393
dced0d12
JW
33942003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
3395
3396 * docs/html/ext/howto.html: Update URL for SGI STL docs.
3397 * docs/html/faq/index.html: Same.
3398 * docs/html/faq/index.txt: Regenerate.
3399
e50344b9
PC
34002003-07-16 Paolo Carlini <pcarlini@unitus.it>
3401
3402 PR libstdc++/11528
3403 * include/bits/locale_facets.tcc (money_get::do_get):
3404 Strip only _leading_ zeros.
3405 * testsuite/22_locale/money_get/get/char/11528.cc: Add.
3406 * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
3407
94b7906a
GP
34082003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
3409
3410 * include/ext/hash_map (class hash_multimap): Remove extra
3411 semicolons from __glibcxx_class_requires3 entries.
3412 * include/ext/hash_set (class hash_set): Ditto.
3413 (class hash_multiset): Ditto.
3414
73a530bd
PR
34152003-07-15 Petur Runolfsson <peturr02@ru.is>
3416
3417 * include/bits/char_traits.h (char_traits<wchar_t>::move):
3418 Change last parameter from int_type to size_t.
3419
119dbb1f
JQ
34202003-07-15 Jerry Quinn <jlquinn@optonline.net>
3421
3422 * include/bits/stl_algo.h (includes, set_union, set_intersection,
7e2055ec
ZW
3423 set_difference, set_symmetric_difference, max_element, min_element,
3424 next_permutation, prev_permutation, find_first_of, find_end):
3425 Document.
119dbb1f 3426 * include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
7e2055ec 3427 restrictions in docs.
119dbb1f 3428 * include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
7e2055ec 3429 Document.
119dbb1f
JQ
3430 * docs/doxygen/doxygroups.cc (setoperations): New group.
3431
284f19bf
JQ
34322003-07-15 Jerry Quinn <jlquinn@optonline.net>
3433
7e2055ec 3434 * include/bits/basic_string.h: Document public functions.
284f19bf
JQ
3435 * docs/doxygen/TODO: Update c21 todo.
3436
709e7c9f
JQ
34372003-07-15 Jerry Quinn <jlquinn@optonline.net>
3438
3439 * include/bits/stl_list.h: Document more functions.
3440 * docs/doxygen/TODO: Update c23 todo.
3441
f45e487d
PC
34422003-07-14 Paolo Carlini <pcarlini@unitus.it>
3443
3444 * config/locale/gnu/c_locale.h (__convert_from_v): One more
3445 qualification.
3446
f088510d
PC
34472003-07-14 Paolo Carlini <pcarlini@unitus.it>
3448
3449 * include/bits/stl_tempbuf.h: Qualify free with std::.
3450 * src/locale.cc: Include <cstdlib>, qualify getenv.
3451
2def5b76
PC
34522003-07-14 Paolo Carlini <pcarlini@unitus.it>
3453
3454 * config/locale/gnu/c_locale.h (__convert_from_v): Include
3455 <cstdio>. Qualify names.
3456 * config/locale/generic/c_locale.h (__convert_from_v): Ditto.
3457
bda243ec
PC
34582003-07-14 Paolo Carlini <pcarlini@unitus.it>
3459 Nathan C. Myers <ncm-nospam@cantrip.org>
3460
3461 PR libstdc++/11378
3462 * include/std/std_fstream.h (xsputn): Declare only.
3463 * include/bits/fstream.tcc (xsputn): Define, optimize for the
7e2055ec 3464 always_noconv() case: when __n is sufficiently large flush
bda243ec
PC
3465 the buffer and issue a direct write, if possible combining the
3466 two with writev in __basic_file<>::xsputn_2.
3467 * config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
3468 New, declare.
3469 * config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
3470 Define.
3471 * acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
3472 the availability of writev in <sys/uio.h>.
3473 * configure.in: Call here.
3474 * acconfig.h: Add undef for the corresponding symbol.
3475 * aclocal.m4: Regenerate.
3476 * configure: Regenerate.
3477 * config.h.in: Regenerate.
3478 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
3479
3480 * include/std/std_fstream.h (sync): Constify a variable.
3481
c573d965
BK
34822003-07-14 Benjamin Kosnik <bkoz@redhat.com>
3483
3484 * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
3485 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
7e2055ec 3486
3ad249b9
GDR
34872003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
3488
3489 * config/locale/gnu/c_locale.h (__convert_from_v): Include
3490 <cstring> and <cstdlib>. Qualify names.
3491
f2ffecb1
MM
34922003-07-13 Mark Mitchell <mark@codesourcery.com>
3493
3494 * config/locale/generic/c_locale.h: Include <cstdlib> and
3495 <cstring>.
3496 * include/bits/boost_concept_check.h: Add this-> to unqualified
3497 method calls.
3498 * include/bits/deque.tcc: Likewise.
3499 * include/bits/locale_facets.h : Likewise.
3500 * include/bits/ostream.tcc: Likewise.
3501 * include/bits/stl_algo.h: Likewise.
3502 * include/bits/stl_bvector.h: Likewise.
3503 * include/bits/stl_deque.h: Likewise.
3504 * include/bits/stl_list.h: Likewise.
3505 * include/bits/stl_tree.h: Likewise.
3506 * include/bits/stl_vector.h: Likewise.
3507 * include/bits/vector.tcc: Likewise.
3508 * include/ext/rope: Likewise.
3509 * include/ext/ropeimpl.h: Likewise.
3510 * include/ext/stdio_filebuf.h: Likewise.
3511
e2fcbaa3
JQ
35122003-07-11 Jerry Quinn <jlquinn@optonline.net>
3513
3514 * include/bits/basic_ios.h (copyfmt): Document.
3515 * include/bits/ios_base.h (event, event_callback, register_callback,
3516 xalloc, iword, pword): Document.
3517 (imbue, ~ios_base): Update docs on callbacks.
3518
58579a27
PE
35192003-07-11 Phil Edwards <pme@gcc.gnu.org>
3520
3521 * acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
3522 warning messages if the environment cannot support symbol versioning.
3523 (port_specific_symbol_file): It's plural, add an 's' on the end.
3524 * configure.host: Likewise.
3525 * src/Makefile.am: Likewise.
3526 * config/linker-map.gnu: Remove one semicolon, heh.
3527 * scripts/extract_symvers: Don't assume useful 'export' syntax.
3528 Set LANG as well as LC_ALL for possibly-broken sort(1)s.
3529 * aclocal.m4, configure, src/Makefile.in: Regenerated.
3530
cde63840
BK
35312003-07-09 Benjamin Kosnik <bkoz@redhat.com>
3532
3533 * include/bits/locale_facets.tcc: Use function object for
7e2055ec 3534 __use_cache instead of template function. Partially specialize for
cde63840
BK
3535 __numpunct<_CharT>.
3536 * include/bits/locale_classes.h: Update friend declaration for
3537 __use_cache.
3538 (_M_install_cache): No throw exception specs.
3539 * src/locale.cc: Remove __use_cache specializations.
3540 * include/ext/pod_char_traits.h (length): Tweak.
3541 * include/bits/locale_facets.h (__numpunct_cache): Remove
3542 char_type typedef.
3543 * testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
3544 (pod_long): Remove.
3545 * testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
3546 * testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
3547 * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
3548 * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
3549 * testsuite/22_locale/numpunct/members/pod/1.cc: New.
3550 * testsuite/22_locale/numpunct/members/pod/2.cc: New.
7e2055ec 3551
e7f042e4
JQ
35522003-07-09 Jerry Quinn <jlquinn@optonline.net>
3553
3554 * src/ios.cc (_M_grow_words): Fix spelling.
3555
ca1c7011
GB
35562003-07-09 Gawain Bolton <gp.bolton@computer.org>
3557
3558 * include/bits/stl_tree.h: Move larger member functions in
3559 _Rb_tree_base_iterator and _Rb_tree_node to...
3560 * src/stl_tree.cc: Here.
3561 * src/Makefile.in: Add stl_tree.cc.
3562 * src/Makefile.in: Regenerated.
3563 * config/linker-map.gnu: Add symbols here.
3564
9e7facfd
BK
35652003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3566
3567 * testsuite/ext/pod_char_traits.cc: New.
3568 * include/ext/pod_char_traits.h: New.
3569 * include/Makefile.am (ext_headers): Add pod_char_traits.h.
3570 * include/Makefile.in: Regenerate.
3571 * docs/html/21_strings/howto.html: Update.
7e2055ec 3572
e55dc371
GB
35732003-07-08 Gawain Bolton <gp.bolton@computer.org>
3574
3575 * testsuite/performance/list_create_fill_sort.cc: New.
3576
c094e9b9
BK
35772003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3578
3579 * config/locale/generic/numeric_members.cc: Correct type info.
3580 * config/locale/gnu/numeric_members.cc: Same.
3581 * include/bits/locale_facets.h: Same.
7e2055ec 3582
c094e9b9
BK
3583 * include/bits/char_traits.h: Correct spacing.
3584
3585 * src/locale.cc: Wrap to 80 col.
7e2055ec 3586
a8784c4c
PC
35872003-07-07 Paolo Carlini <pcarlini@unitus.it>
3588
3589 * include/std/std_complex.h: Partially revert last
3590 changes: cmath functions must not be qualified.
3591
313dd504
PE
35922003-07-06 Phil Edwards <pme@gcc.gnu.org>
3593
3594 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
3595 2.11 with globbing backport fix.
3596 * aclocal.m4, configure: Regenerated.
3597
6623b2f2
PC
35982003-07-06 Paolo Carlini <pcarlini@unitus.it>
3599
3600 * include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
3601 if output is at all possible (!_M_reading), cannot be active.
3602
3603 * include/std/std_fstream.h: Tweak comments to doxygen style.
3604
391cfc46
PC
36052003-07-06 Paolo Carlini <pcarlini@unitus.it>
3606
3607 * include/bits/locale_classes.h: Fully qualify standard
3608 functions with std::, thus avoiding Koenig lookup.
3609 * include/bits/locale_facets.tcc: Likewise.
3610 * src/locale.cc: Likewise.
3611 * src/localename.cc: Likewise.
3612
48166869
PE
36132003-07-06 Phil Edwards <pme@gcc.gnu.org>
3614
3615 * include/bits/allocator_traits.h: Fix doxygen markup.
3616 * include/ext/mt_allocator.h: Likewise.
3617
aaa4a229
PE
36182003-07-06 Phil Edwards <pme@gcc.gnu.org>
3619
3620 * testsuite/testsuite_hooks.h: Guard against a missing unlink().
3621
e6b7a69a
PE
36222003-07-05 Phil Edwards <pme@gcc.gnu.org>
3623
3624 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
3625 requirement. Add port_specific_symbol_file variable.
3626 * configure.host: Add docs for port_specific_symbol_file.
3627 Clean up try_cpu block for x86.
3628 * config/linker-map.gnu: No more "last symbol can't have a
3629 semicolon" kaka. Add hook for port-specific symbols.
3630 * src/Makefile.am: Remove trailing whitespace.
3631 (libstdc++-symbol.ver): Detect the presence of port-specific
3632 symbols, and add them accordingly.
3633
3634 * docs/html/17_intro/porting.texi: Bring up to date.
3635
3636 * src/Makefile.in, aclocal.m4, configure,
3637 docs/html/17_intro/porting.html: Regenerated.
3638
ac3d7b44
PE
36392003-07-05 Phil Edwards <pme@gcc.gnu.org>
3640
3641 * scripts/create_testsuite_files: New file.
3642 * testsuite/Makefile.am (all-local, check-performance): Use it.
3643 * testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
3644 * testsuite/Makefile.in: Regenerated.
3645
3646 * testsuite/performance/filebuf_sputc.cc: Remove the temporary
3647 files at the end.
3648 * testsuite/performance/fstream_seek_write.cc: Likewise.
3649 * testsuite/performance/ofstream_insert_float.cc: Likewise.
3650 * testsuite/performance/ofstream_insert_int.cc: Likewise.
3651 * testsuite/abi_check.cc (main): Nicer spacing in usage output.
3652
e3d51be2
GB
36532003-07-05 Gawain Bolton <gp.bolton@computer.org>
3654
3655 * include/bits/stl_list.h: Performance and memory usage
c094e9b9
BK
3656 improvements. In particular, the behaviour of the constructor and
3657 destructor as the list header node is no longer dynamically
3658 allocated/de-allocated.
e3d51be2
GB
3659 * include/bits/list.tcc: Likewise.
3660
eb9a4231
PC
36612003-07-05 Paolo Carlini <pcarlini@unitus.it>
3662
3663 * include/std/std_complex.h: Fully qualify standard
3664 functions with std::, thus avoiding Koenig lookup.
3665 * include/std/std_memory.h: Likewise.
3666 * include/std/std_valarray.h: Likewise.
3667
f92c5313
GB
36682003-07-05 Gawain Bolton <gp.bolton@computer.org>
3669
3670 * include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
7e2055ec 3671 variable for grandparent and use const
f92c5313 3672
8b87d3fa
DB
36732003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
3674
3675 * testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
3676 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
3677 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
3678 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
3679 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
3680 * testsuite/27_io/objects/char/7.cc: Ditto
3681 * testsuite/27_io/objects/char/9661-1.cc: Ditto
3682
a8cad3e1
PC
36832003-07-05 Paolo Carlini <pcarlini@unitus.it>
3684
3685 * include/std/std_bitset.h: Fully qualify standard
3686 functions with std::, thus avoiding Koenig lookup.
3687
3688 * include/std/std_fstream.h: Change comment to doxygen style.
3689
2778669a
PE
36902003-07-05 Phil Edwards <pme@gcc.gnu.org>
3691
3692 * include/std/std_limits.h: More CPP->CXX changes.
3693 * scripts/check_survey.in: Likewise.
3694
3d7c150e
BK
36952003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3696
3697 Move from CPP to CXX.
3698 * include/bits/c++config: Move to GLIBCXX from GLIBCPP.
3699 * testsuite/Makefile.am: Same.
3700 * testsuite/Makefile.in: Regenerate.
3701 * po/Makefile.am: Same.
7e2055ec 3702 * po/Makefile.in: Regenerate.
3d7c150e 3703 * libsupc++/Makefile.am: Same.
7e2055ec 3704 * libsupc++/Makefile.in: Regenerate.
3d7c150e 3705 * libmath/Makefile.am: Same.
7e2055ec 3706 * libmath/Makefile.in: Regenerate.
3d7c150e 3707 * include/Makefile.am: Same.
7e2055ec 3708 * include/Makefile.in: Regenerate.
3d7c150e 3709 * src/Makefile.am: Same.
7e2055ec 3710 * src/Makefile.in: Regenerate.
3d7c150e
BK
3711 * acconfig.h: Same.
3712 * configure.host: Same.
3713 * configure.in: Same.
3714 * configure: Regenerate.
3715 * acinclude.m4: Same.
3716 * aclocal.m4: Same.
3717 * src: Change all files in this directory.
3718 * testsuite: Same.
3719 * include: Same, standardize include guards.
3720 * config: Same.
3721 * libsupc++: Same.
7e2055ec 3722
e6cc3a24
ZW
37232003-07-04 Zack Weinberg <zack@codesourcery.com>
3724
3725 * testsuite/22_locale/collate/compare/wchar_t/2.cc
3726 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
3727 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
3728 * testsuite/22_locale/collate/hash/wchar_t/2.cc
3729 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
3730 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
3731 * testsuite/22_locale/collate/transform/wchar_t/2.cc
3732 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
3733 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
3734 XFAIL on all targets.
3735
d542f114
BK
37362003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3737
3738 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
3739 * aclocal.m4: Regenerate.
3740 * configure: Regenerate.
e6cc3a24 3741
d542f114
BK
37422003-07-04 Jerry Quinn <jlquinn@optonline.net>
3743
3744 * include/bits/locale_facets.tcc (__int_to_char): Move common case
3745 to the top.
3746
69ef29fd 37472003-07-04 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24
ZW
3748 Petur Runolfsson <peturr02@ru.is>
3749
69ef29fd
BK
3750 * config/io/basic_file_stdio.cc: Revert.
3751
5b5bf717
PC
37522003-07-04 Paolo Carlini <pcarlini@unitus.it>
3753
3754 * include/bits/deque.tcc: Fully qualify standard
3755 functions with std::, thus avoiding Koenig lookup.
3756 * include/bits/gslice_array.h: Likewise.
3757 * include/bits/indirect_array.h: Likewise.
3758 * include/bits/list.tcc: Likewise.
3759 * include/bits/mask_array.h: Likewise.
3760 * include/bits/slice_array.h: Likewise.
3761
7f6dd1ca
GB
37622003-07-04 Gawain Bolton <gbolton@free.fr>
3763
3764 * include/bits/stl_tree.h: Performance and memory usage
3765 improvements.
3766
8c90b13a
L
37672003-07-04 H.J. Lu <hongjiu.lu@intel.com>
3768
3769 * Makefile.am: Replace PWD with PWD_COMMAND.
3770 * Makefile.in: Regenerated.
3771 * docs/html/Makefile: Likewise.
3772
2f805868
PC
37732003-07-04 Paolo Carlini <pcarlini@unitus.it>
3774
3775 * include/bits/valarray_array.h: Fully qualify standard
3776 functions with std::, thus avoiding Koenig lookup.
3777 * include/bits/vector.tcc: Likewise.
3778
a30335e9
BK
37792003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3780
3781 * include/Makefile.am: Update target_ to host_.
3782 * include/Makefile.in: Regenerate.
3783 * src/Makefile.am: Same.
3784 * src/Makefile.in: Regenerate.
3785
3786 * config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
e6cc3a24 3787
d8d81f62
BK
37882003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3789
3790 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
3791 --enable-libstdcxx-debug-flags.
3792 (GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
3793 (GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
3794 * aclocal.m4: Regenerate.
3795 * configure: Same.
3796 * docs/html/configopts.html: Update.
e6cc3a24 3797
10ef4e2e
PC
37982003-07-04 Paolo Carlini <pcarlini@unitus.it>
3799
3800 Revert the fix for libstdc++/11378.
3801
ac2c48d7
PC
38022003-07-04 Paolo Carlini <pcarlini@unitus.it>
3803
3804 PR libstdc++/11378
3805 * include/std/std_fstream.h (xsputn): In the unbuffered case,
3806 provided always_noconv(), issue directly _M_file.xsputn.
3807 * testsuite/performance/filebuf_unbuf_sputn.cc: New.
3808
9dd90ac6
PC
38092003-07-04 Paolo Carlini <pcarlini@unitus.it>
3810
3811 * include/bits/stl_list.h: Fully qualify standard
3812 functions with std::, thus avoiding Koenig lookup.
3813 * include/bits/stl_queue.h: Likewise.
3814 * include/bits/stl_raw_storage_iter.h: Likewise.
3815 * include/bits/stl_tempbuf.h: Likewise.
3816 * include/bits/stl_tree.h: Likewise.
3817 * include/bits/stl_uninitialized.h: Likewise.
3818 * include/bits/stl_vector.h: Likewise.
e6cc3a24 3819 * include/ext/rope: Change includes order.
9dd90ac6 3820
1b33b6b2
BK
38212003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3822
3823 * configure.host (fpos_include_dir): Fix.
3824
369b78b0
PC
38252003-07-04 Paolo Carlini <pcarlini@unitus.it>
3826
3827 * include/bits/stl_heap.h: Fully qualify standard
3828 functions with std::, thus avoiding Koenig lookup.
3829 * include/bits/stl_iterator_base_funcs.h: Likewise.
3830
3831 * include/bits/stl_algo.h: Qualify __iterator_category too.
3832 * include/bits/stl_algobase.h: Likewise.
3833 * include/bits/stl_bvector.h: Likewise.
3834
3835 * include/bits/stl_algo.h: Don't qualify the pair type.
3836
cc5112c9
BK
38372003-07-03 Benjamin Kosnik <bkoz@redhat.com>
3838
3839 * include/Makefile.am (target_headers): Add fpos.h
3840 (bits_headers): Remove.
3841 * include/Makefile.in: Regenerate.
3842 * configure.in: Add FPOS_INC_SRCDIR, substitute it.
3843 * configure: Regenerate.
3844 * configure.host: Add fpos_include_dir.
3845 * config/os/gnu-linux/fpos.h: New.
e6cc3a24
ZW
3846 * config/os/generic/fpos.h: Add.
3847 * include/bits/fpos.h: Remove.
cc5112c9
BK
3848
3849 * config/io/c_io_stdio.h: Remove fpos_t typedef.
3850
3851 * include/bits/fstream.tcc: Tweaks.
3852 * include/std/std_fstream.h: Same.
e6cc3a24 3853
cc5112c9
BK
3854 * testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
3855 * testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
3856 * testsuite/27_io/fpos/mbstate_t/2.cc: Same.
3857 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
3858 * testsuite/27_io/fpos/1.cc: New.
e6cc3a24 3859
cc5112c9
BK
38602003-07-03 Benjamin Kosnik <bkoz@redhat.com>
3861 Petur Runolfsson <peturr02@ru.is>
e6cc3a24 3862
cc5112c9
BK
3863 * include/std/std_streambuf.h: Remove _M_pos.
3864 * config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
3865 * config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
3866 use fread/fwrite instead of read/write.
3867 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
3868 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
3869 before reading again.
3870 * testsuite/27_io/objects/char/6.cc: Tweak.
e6cc3a24 3871
304d79dc
DE
38722003-07-03 David Edelsohn <edelsohn@gnu.org>
3873
3874 * testsuite/22_locale/num_put/put/char/7.cc: Guard with
3875 _GLIBCPP_USE_WCHAR_T.
3876
41ba4c46
PC
38772003-07-02 Paolo Carlini <pcarlini@unitus.it>
3878
3879 * include/bits/basic_string.tcc (_M_replace_aux): Constify
3880 __n1 and __off1.
3881
da73f9de
PC
38822003-07-02 Paolo Carlini <pcarlini@unitus.it>
3883
3884 * include/bits/stl_bvector.h: Fully qualify standard
3885 functions with std::, thus avoiding Koenig lookup.
3886 * include/bits/stl_construct.h: Likewise.
3887 * include/bits/stl_deque.h: Likewise.
3888
1c380095
PC
38892003-07-02 Paolo Carlini <pcarlini@unitus.it>
3890
3891 * testsuite/22_locale/num_put/put/char/7.cc: Include
3892 <testsuite_hooks.h>, tweak.
3893 * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3894
f9f4d1e1
PE
38952003-07-01 Phil Edwards <pme@gcc.gnu.org>
3896
3897 * testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
3898 check* targets, but not libs/programs).
3899 * testsuite/Makefile.in: Regenerate.
3900
b7693a46
RS
39012003-07-01 Roger Sayle <roger@eyesopen.com>
3902
3903 * acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
3904 (GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
3905 * aclocal.m4: Regenerate.
3906 * configure: Regenerate.
3907
a5b1b26c
BK
39082003-07-01 Benjamin Kosnik <bkoz@redhat.com>
3909
3910 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
3911 * aclocal.m4: Regenerated.
3912 * configure: Regenerated.
e6cc3a24 3913
f64f3e74
PC
39142003-07-01 Paolo Carlini <pcarlini@unitus.it>
3915
3916 PR libstdc++/11389
3917 * include/bits/fstream.tcc (underflow): For encoding() == 0
3918 don't read more than __buflen chars.
3919 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
3920 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
3921 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
3922 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
3923
5ee78c21
JQ
39242003-07-01 Jerry Quinn <jlquinn@optonline.net>
3925
3926 * 22_locale/num_put/put/char/7.cc: New.
3927 * 22_locale/num_put/put/wchar_t/7.cc: New.
3928
e97ee22e
JQ
39292003-06-30 Jerry Quinn <jlquinn@optonline.net>
3930
3931 * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
3932 * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
3933
7d6a0993
BK
39342003-06-30 Benjamin Kosnik <bkoz@redhat.com>
3935
3936 * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
3937 * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
3938 * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
3939 * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
3940 * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
3941 * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
3942 * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
3943 * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
3944 * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
3945 * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
3946 * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
3947 * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
3948 * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
3949 * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
3950 * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
3951 * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
3952 * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
3953 * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
3954 * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
3955 * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
3956 * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
3957 * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
3958 * data/seekoff-1.tst: Remove.
3959 * data/seekoff-1io.tst: New.
3960 * data/seekoff-1out.tst: New.
3961 * data/seekoff-2.tst: Remove.
3962 * data/seekoff-2io.tst: New.
3963 * data/seekoff-2out.tst: New.
3964 * data/seekoff.txt
3965 * data/seekpos-1.tst: Remove.
3966 * data/seekpos-1io.tst: New.
3967 * data/seekpos-1out.tst: New.
3968 * data/seekpos-2.tst: Remove.
3969 * data/seekpos-2io.tst: New.
3970 * data/seekpos-2out.tst: New.
3971 * data/seekpos.txt: New.
3972
a5b1b26c 39732003-06-30 Jerry Quinn <jlquinn@optonline.net>
cf0cad09
JQ
3974
3975 * src/locale.cc (__use_cache<numpunct>): Move from here ...
3976 * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
3977 here.
3978
884a757a
PC
39792003-06-30 Paolo Carlini <pcarlini@unitus.it>
3980
3981 * include/bits/stl_algobase.h: Fully qualify standard
3982 functions with std::, thus avoiding Koenig lookup.
3983
5892c641 39842003-06-30 Doug Gregor <dgregor@apple.com>
e6cc3a24 3985
5892c641 3986 * include/bits/locale_facets.tcc (money_get::do_get): Avoid
e6cc3a24 3987 subscripting empty string.
5892c641 3988
7685a26d
PE
39892003-06-30 Phil Edwards <pme@gcc.gnu.org>
3990
3991 * testsuite/Makefile.am (check-am): Do not override.
3992 (baseline_symbols): Declare as PHONY, so no need to 'touch' it.
3993 * testsuite/Makefile.in: Regenerate.
3994
e6cc3a24
ZW
39952003-06-30 Doug Gregor <dgregor@apple.com>
3996
d147b75b
DG
3997 * testsuite/24_iterators/insert_iterator.cc (test01, test02):
3998 Don't initialize an insert_iterator with a singular iterator.
3999
44f0760e 40002003-06-30 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 4001
44f0760e
BK
4002 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
4003 * aclocal.m4: Regenerate.
4004 * configure.in (GLIBCPP_CHECK_PCH): Move, change to
4005 GLIBCPP_ENABLE_PCH, default to yes.
4006 * configure: Regenerate.
4007 * docs/html/configopts.html: Add --enable-pch.
e6cc3a24 4008
e37f7da7
PE
40092003-06-30 Phil Edwards <pme@gcc.gnu.org>
4010
4011 * testsuite/lib/libstdc++-v3-dg.exp: Add comments.
4012 (libstdc++-v3-init): Also set LD_RUN_PATH.
4013
cd16e04b
PC
40142003-06-30 Paolo Carlini <pcarlini@unitus.it>
4015
fbfcbadc
PC
4016 * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
4017 from here to filebuf and stringbuf.
cd16e04b
PC
4018 (~basic_streambuf()): Don't set _M_mode.
4019 (basic_streambuf()): Don't set _M_mode.
4020 * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
4021 (~basic_filebuf()): Clean up.
4022 * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
4023 * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
4024 * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
4025 * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
4026 * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
4027 * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
4028 * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
4029
40302003-06-30 Paolo Carlini <pcarlini@unitus.it>
4031
4032 * include/std/std_fstream.h (_M_underflow): Remove.
4033 (uflow): Remove, inherited from streambuf.
4034 (underflow): Only declare.
e6cc3a24 4035 * include/bits/fstream.tcc (_M_underflow): Rename to
cd16e04b
PC
4036 underflow, to which is equivalent for __bump == false,
4037 simplify.
4038 * include/std/std_sstream.h (_M_underflow): Remove.
4039 (uflow): Remove, inherited from streambuf.
4040 (underflow): Only declare.
e6cc3a24 4041 * include/bits/sstream.tcc (_M_underflow): Rename to
cd16e04b
PC
4042 underflow, to which is equivalent for __bump == false,
4043 simplify.
4044
c868f37e
PC
40452003-06-29 Paolo Carlini <pcarlini@unitus.it>
4046
fbfcbadc
PC
4047 * include/bits/stl_algo.h: Fully qualify standard functions
4048 with std::, thus avoiding Koenig lookup.
c868f37e 4049
165f54e0
PC
40502003-06-29 Paolo Carlini <pcarlini@unitus.it>
4051
4052 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
4053 Improve type correctness-wise.
4054 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
4055 Likewise.
4056 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
4057 Likewise.
4058 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
4059 Likewise.
4060
90319d16
PC
40612003-06-29 Paolo Carlini <pcarlini@unitus.it>
4062
4063 * include/std/std_streambuf.h (uflow): According to
4064 27.5.2.4.3,p16, don't check gptr() < egptr().
4065
b417ae14
PC
40662003-06-28 Paolo Carlini <pcarlini@unitus.it>
4067
4068 PR libstdc++/9875
4069 * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
4070 (seekpos): Likewise.
4071 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
4072 New test.
4073 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
4074 New test.
4075
f1a22109
BK
40762003-06-27 Benjamin Kosnik <bkoz@redhat.com>
4077
4078 * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
4079 output name to libstdc++-v3-performance.sum.
4080 * testsuite/Makefile.am (CLEANFILES): Remove .performance.
4081 * testsuite/Makefile.in: Regenerate.
e6cc3a24 4082
f1a22109
BK
40832003-06-27 Matthias Klose <doko@debian.org>
4084
4085 * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
4086 output of abi-check in libstdc++-v3-abi.sum.
4087 * testsuite/Makefile.in: Regenerate.
4088
2e8a523f
KW
40892003-06-27 Krister Walfridsson <cato@df.lth.se>
4090
4091 * config/os/bsd/netbsd/ctype_noninline.h
4092 (_C_ctype_): Declare.
4093 (ctype<char>::classic_table): Return _C_ctype_ + 1.
4094 (ctype<char>::ctype): Use classic_table.
4095
3461133d
PC
40962003-06-27 Paolo Carlini <pcarlini@unitus.it>
4097 Nathan C. Myers <ncm-nospam@cantrip.org>
4098
4099 PR libstdc++/9178
4100 * include/bits/fstream.tcc (_M_underflow): Properly estimate
4101 the worst-case number of external bytes for a given get area.
4102 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
4103
41042003-06-27 Paolo Carlini <pcarlini@unitus.it>
4105 Petur Runolfsson <peturr02@ru.is>
4106
4107 PR libstdc++/11305
4108 * include/bits/fstream.tcc (overflow): Properly estimate the
4109 worst-case number of external bytes for a given put area
4110 (by using codecvt::max_length()).
4111 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
4112 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
4113 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
4114 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
4115
5648db54
NS
41162003-06-27 Nathan Sidwell <nathan@codesourcery.com>
4117
4118 * config/linker-map.gnu: Remove ; after __numpunct_cache.
4119
215f9e28
BK
41202003-06-26 Benjamin Kosnik <bkoz@redhat.com>
4121
4122 * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
4123 to the imbued locale.
4124 * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
4125 _M_getloc.
4126 (num_put::_M_convert_float): Use.
4127
41282003-06-26 Benjamin Kosnik <bkoz@redhat.com>
4129 Jerry Quinn <jlquinn@optonline.net>
4130
4131 * config/linker-map.gnu: Add __numpunct_cache.
4132 * config/locale/gnu/numeric_members.cc
4133 (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
4134 all elements for "C" locale.
4135 (numpunct::~numpunct): Delete _M_data.
e6cc3a24 4136 * config/locale/generic/numeric_members.cc: Same.
215f9e28
BK
4137 * include/bits/basic_ios.tcc
4138 (basic_ios::init): Remove __locale_cache bits.
4139 (basic_ios::_M_cache_locale): Same.
e6cc3a24 4140 * include/bits/ios_base.h: Same. Tweaks.
215f9e28
BK
4141 * include/bits/locale_classes.h: Tweaks. Reorder classes.
4142 (__use_cache): Make friends with _Impl, locale.
4143 (_Impl::_M_caches): Add.
4144 (_Impl::_M_install_cache): Add.
4145 * include/bits/locale_facets.h (__numpunct_cache): New.
4146 (numpunct): Encapsulate data members in __numpunct_cache member,
4147 _M_data. Adjust virtuals.
e6cc3a24 4148 (numpunct::numpunct): New ctor for the same.
215f9e28 4149 (__locale_cache_base): Remove.
e6cc3a24 4150 (__locale_cache): Remove.
215f9e28
BK
4151 * include/bits/locale_facets.tcc (__use_cache): New function,
4152 specializations.
4153 (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
4154 * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
4155 * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
4156 * src/locale-inst.cc: Same. Add __numpunct_cache.
4157 * src/locale.cc: Tweak inlines.
4158 (__use_cache): Define specializations.
4159 * src/localename.cc: Use global bits.
4160 (_Impl::~Impl): Deal with __numpunct_cache destruction.
4161 (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
4162 (_Impl::_M_init_facet): Take into account __numpunct_cache.
4163 * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
4164 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
4165
8370378a 41662003-06-26 Nathan C. Myers <ncm-nospam@cantrip.org>
e6cc3a24 4167 Paolo Carlini <pcarlini@unitus.it>
8370378a
NM
4168
4169 * testsuite/performance/filebuf_copy.cc: New, testing char
4170 by char file copy.
4171
2cfe4e68 41722003-06-26 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 4173 Nathan C. Myers <ncm-nospam@cantrip.org>
2cfe4e68
PC
4174
4175 * include/bits/fstream.tcc (_M_underflow): When the actual
4176 end of file is reached, set 'uncommitted' mode to allow a
4177 next write without an intervening seek (see C++98 27.8.1.1,2
4178 and C89 7.9.5.3).
4179 * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
4180
29d9ed97
NM
41812003-06-25 Nathan C. Myers <ncm-nospam@cantrip.org>
4182
4183 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4184 sputc): Move inline, from here...
4185 * include/std/std_streambuf.h: ... to here.
4186
4187 * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
4188 sputbackc, sungetc, sputc): Use __builtin_expect.
4189
c1a62440
PE
41902003-06-24 Phil Edwards <pme@gcc.gnu.org>
4191
4192 * docs/doxygen/mainpage.html: Use a useful title.
4193
cdc1242a
BK
41942003-06-24 Benjamin Kosnik <bkoz@redhat.com>
4195
4196 * docs/html/documentation.html: Remove assignment info.
4197 * docs/html/17_intro/contribute.html: Edits.
4198 * docs/html/17_intro/libstdc++-assign.tx: Remove.
4199
4200 * docs/html/test.html: Update.
4201
4202 * README: Update.
e6cc3a24 4203
1b6f0a56 42042003-06-24 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 4205 Ulrich Drepper <drepper@redhat.com>
1b6f0a56
BK
4206
4207 * testsuite/testsuite_performance.h: Tweak mallinfo.
4208
71b46021 42092003-06-24 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 4210 Nathan C. Myers <ncm-nospam@cantrip.org>
71b46021
PC
4211
4212 * include/std/std_fstream.h (_M_filepos): Remove.
4213 (_M_reading, _M_writing): New, encode the various I/O modes:
4214 'read', 'write' and 'uncommitted'.
4215 (sync): If there is something to flush, do it, then go to
4216 'uncommitted' mode.
4217 * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
4218 with three different cases: __off > 0 (upon underflow),
4219 __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
4220 seekoff/pos).
4221 (_M_underflow): Don't call overflow, set _M_reading to true
4222 on success, tweak.
4223 (pbackfail): Set _M_reading to true on pback creation, tweak.
4224 (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
4225 set _M_writing to true on success, tweak.
4226 (seekoff): Simplify, set _M_reading, _M_writing to false, call
4227 _M_set_buffer(-1) ('uncommitted').
4228 (open, close, setbuf): Set _M_reading, _M_writing to false and
4229 call _M_set_buffer(-1), tweak.
4230 (basic_filebuf): Don't set _M_buf_unified.
4231 (_M_destroy_internal_buffer): Don't call setg and setp.
4232 * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
4233 _M_writing and _M_set_buffer(-1).
4234 * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
4235 _M_out_lim, _M_buf_unified): Remove.
4236 (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
e6cc3a24 4237 (setp): Don't set _M_out_lim.
71b46021
PC
4238 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
4239 the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
4240 upon open the mode is 'uncommitted' and therefore the put area
4241 pointers are null.
4242 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
4243 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
4244 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
4245 * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
4246 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
4247 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
4248 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4249 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
4250 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
4251 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
4252 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
4253 * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
4254 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
4255 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
4256 * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
4257 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
4258 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
4259 * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
4260 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
4261 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
4262
4263 * include/bits/fstream.tcc (showmanyc): Use only the
4264 documented derivation interface to basic_streambuf (gptr(),
4265 setg(), etc.) to work right with user specializations.
4266 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
4267 sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
4268 * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
4269 Likewise.
4270 * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
4271 xsgetn): Likewise.
4272
9eb6e1d3
LR
42732003-06-23 Loren J. Rittle <ljrittle@acm.org>
4274
4275 * configure.host (freebsd*): Set abi_baseline_pair.
4276 * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
4277 (at or near first release) to 3.3.
4278 * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
4279 * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
4280 * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
4281
3d57d7ba 4282 * include/ext/mt_allocator.h: Portability.
d1a2c4d6 4283 * testsuite/testsuite_performance.h: Likewise.
3d57d7ba 4284
c89c30dd
BK
42852003-06-23 Benjamin Kosnik <bkoz@redhat.com>
4286
4287 * docs/html/17_intro/libstdc++-assign.txt: Update address.
4288
4289 * testsuite/performance/ifstream_getline.cc: Fix.
e6cc3a24 4290
c89c30dd 42912003-06-23 Doug Gregor <dgregor@apple.com>
2b491e3a 4292
e6cc3a24
ZW
4293 * include/bits/boost_concept_check.h: Don't use _D or _R for type
4294 names.
2b491e3a 4295
1b170b55
PC
42962003-06-22 Paolo Carlini <pcarlini@unitus.it>
4297 Nathan C. Myers <ncm-nospam@cantrip.org>
4298
4299 * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
4300 is now used only for filebuf, when _M_buf_unified is true.
4301 epgtr() plays the role of _M_out_lim but it's only updated
4302 upon overflow, underflow, uflow, seekoff/pos.
4303 * include/bits/sstream.tcc (_M_underflow): New, implements
4304 stringbuf::underflow and uflow.
4305 (seekoff, seekpos): Tweak, use _M_update_egptr.
4306 * include/std/std_sstream.h (str): Rewrote, deal correctly
4307 with the new logic, in particular, when pptr() > egptr().
4308 (_M_sync): When __testout && !__testin set all the get area
4309 pointers to the current string end.
4310 (_M_update_egptr): New, internal function updating egptr()
4311 to the actual string end.
4312 (_M_underflow): New, declare.
4313 (underflow): Dispatch to _M_underflow(false).
4314 (uflow): Dispatch to _M_underflow(true).
4315
4316 * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
4317 seekpos): Use only the documented derivation interface to
4318 basic_streambuf (gptr(), setg(), etc.) to work right with
4319 user specializations.
4320 * include/std/std_sstream.h (str, _M_sync): Likewise.
4321
8dbe14be
DG
43222003-06-20 Doug Gregor <dgregor@apple.com>
4323
1b170b55
PC
4324 * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
4325 * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
4326 dereference end iterator.
4327 * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
4328 * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
4329 index equal to the length of a string.
4330 * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
4331 * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
4332 * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
4333 * testsuite/22_locale/ctype/widen/char/1.cc: Same.
4334 * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
4335 * testsuite/23_containers/list_modifiers.cc: Don't dereference
4336 singular reverse iterator.
4337 * testsuite/23_containers/vector_bool.cc: Don't increment singular
4338 iterator.
4339 * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
8dbe14be 4340
bdb0f0f5
DG
43412003-06-20 Doug Gregor <dgregor@apple.com>
4342
e6cc3a24 4343 * include/bits/basic_string.h (basic_string::replace): Dispatch
bdb0f0f5
DG
4344 _InputIterator version based on _Is_integer.
4345 * include/bits/basic_string.tcc (basic_string::replace):
4346 Renamed replace(iterator, iterator, size_type, _CharT) to
4347 _M_replace_aux.
4348 * testsuite/21_strings/basic_string/assign/char/1.cc (test01):
4349 Test basic_string::assign(_InputIterator, _InputIterator),
4350 which calls basic_string::replace(iterator, iterator,
4351 _Input_iterator, _InputIterator).
4352
f5a6463e
BK
43532003-06-20 Benjamin Kosnik <bkoz@redhat.com>
4354
4355 * testsuite/testsuite_performance.h (resource_counter): Don't use
4356 mallinfo at the moment.
4357
bbdfb3e8
MK
43582003-06-20 Matthias Klose <doko@debian.org>
4359
4360 * configure.host: Set try_cpu to target_cpu for existing
4361 baseline files.
4362
97460e9a
AJ
43632003-06-19 Andreas Jaeger <aj@suse.de>
4364
4365 * testsuite/Makefile.am (extract_symvers): Revert accidental
4366 change.
4367 * testsuite/Makefile.in: Regenerate.
4368
4369 * configure.in: Pass MULTISUBDIR to testsuite/Makefile.
4370 * configure: Regenerated.
4371
50af15ec
PC
43722003-06-19 Paolo Carlini <pcarlini@unitus.it>
4373
4374 * include/std/std_sstream.h (_M_sync): Make non virtual.
4375
ce4f8c6b
BK
43762003-06-18 Benjamin Kosnik <bkoz@redhat.com>
4377
4378 * testsuite/testsuite_performance.h (time_counter): New.
4379 (resource_counter): New.
4380 (report_performance): New.
4381 (start_counters): New.
4382 (stop_counters): New.
97460e9a 4383 (clear_counters): New.
ce4f8c6b
BK
4384 * testsuite/performance/allocator.cc: Instrument.
4385 * testsuite/performance/cout_insert_int.cc: Same.
4386 * testsuite/performance/complex_norm.cc: Same.
4387 * testsuite/performance/filebuf_sputc.cc: New.
4388 * testsuite/performance/fstream_seek_write.cc: Same.
4389 * testsuite/performance/ifstream_getline.cc: Same.
4390 * testsuite/performance/map_create_fill.cc: Same.
4391 * testsuite/performance/ofstream_insert_float.cc: Same.
4392 * testsuite/performance/ofstream_insert_int.cc: Same.
97460e9a 4393 * testsuite/performance/string_append.cc: Convert.
ce4f8c6b
BK
4394 * scripts/check_performance: New.
4395 * testsuite/Makefile.am (check-performance): New.
4396 (CLEANFILES): Add.
97460e9a 4397
b82a33d2 43982003-06-18 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 4399 Benjamin Kosnik <bkoz@redhat.com>
b82a33d2
PC
4400
4401 * include/std/std_sstream.h (setbuf): Check __n >= 0.
4402 * include/bits/fstream.tcc (setbuf): Tweak.
4403
4c526d09
PC
44042003-06-18 Paolo Carlini <pcarlini@unitus.it>
4405
4406 * include/bits/sstream.tcc (seekoff): We can't seek beyond
4407 _M_out_lim, therefore _M_move_out_cur boils down to simply
4408 updating _M_out_cur.
4409 (seekpos): Likewise, clean up.
4410
c1b74c21 44112003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
e6cc3a24 4412 Paolo Carlini <pcarlini@unitus.it>
c1b74c21
NM
4413
4414 * include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
4415 simply equivalent to the unbuffered case (0, 0) as far as
4416 _M_buf_size is concerned.
4417
a1af4623
AJ
44182003-06-18 Andreas Jaeger <aj@suse.de>
4419
4420 * testsuite/Makefile.am (new-abi-baseline): Create baseline
4421 directory.
4422 (baseline_file): Use baseline_dir.
4423 (baseline_dir): New.
4424 (mkinstalldirs): New.
4425
4426 * acinclude.m4: Rename baseline_file to baseline_dir, strip
4427 filename from baseline_dir.
4428
4429 * testsuite/Makefile.in: Regenerated.
4430 * Makefile.in: Regenerated.
4431 * aclocal.m4: Regenerated.
4432 * configure: Regenerated.
4433
2f934953
BK
44342003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4435
4436 * configure.in: Missed check_survey bit.
4437 * configure: Regenerated.
4438
0676e930
BK
44392003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4440
4441 * scripts: New.
4442 * config/abi/extract_symvers: Move to...
4443 * scripts/extract_symvers: ...here.
4444 * mkcheck.in: Move to..
4445 * scripts/check_survey.in: ...here.
4446 * testsuite_flags.in: Move to..
4447 * scripts/testsuite_flags.in: ...here.
4448 * configure.in: Change check and testsuite_flags locations.
4449 * configure: Regenerate.
4450 * testsuite/Makefile.am (current_symbols.txt): Change location.
4451 * testsuite/Makefile.in: Regenerate.
4452 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
4453 location of testsuite_flags.
4454 * Makefile.am (check-script): Move..
4455 (check-script-install): Move...
a1af4623 4456 * testsuite/Makefile.am: ... here.
0676e930 4457 * testsuite/Makefile.in: Regenerate.
a1af4623
AJ
4458 * Makefile.in: Regenerate.
4459
82620aaf
BK
44602003-06-17 Benjamin Kosnik <bkoz@redhat.com>
4461
4462 * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
4463
c4c064e7
BK
44642003-06-16 Benjamin Kosnik <bkoz@redhat.com>
4465
4466 * Makefile.am (check-abi): Move...
4467 (new-abi-baseline): Move...
4468 * testsuite/Makefile.am: ...here.
4469 (new-abi-baseline): Conditionalize.
4470 (check-abi): Conditionalize.
4471 (check-abi-verbose): New.
4472 * Makefile.in: Regenerate.
a1af4623 4473 * testsuite/Makefile.in: Regenerate.
c4c064e7
BK
4474 * configure.in: Consolidate testsuite configure bits.
4475 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
4476 * configure: Regenerate.
a1af4623 4477 * aclocal.m4: Regenerate.
c4c064e7
BK
4478 * testsuite/abi_check.cc: Add --check-verbose.
4479 Only output detailed information if --check-verbose.
4480
e7bb3511 44812003-06-16 Andreas Jaeger <aj@suse.de>
a1af4623 4482
e6cc3a24 4483 * testsuite/abi_check.cc: Create summary report.
a1af4623 4484
8363b773
PC
44852003-06-16 Paolo Carlini <pcarlini@unitus.it>
4486
4487 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
4488 for systems with BUFSIZ != 8192.
4489 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4490 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
4491 Minor tweaks.
4492
5ab481e0
BK
44932003-06-16 Andreas Jaeger <aj@suse.de>
4494
4495 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
4496 check-abi multilib aware.
4497 * aclocal.m4: Regenerate.
4498 * configure: Regenerate.
a1af4623 4499
5ab481e0 45002003-06-16 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 4501 Andreas Jaeger <aj@suse.de>
5ab481e0
BK
4502
4503 * configure.host: Set x86_64 abi_baseline pair correctly.
4504
0bad3b7c
PC
45052003-06-16 Paolo Carlini <pcarlini@unitus.it>
4506
4507 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
e6cc3a24 4508 fix for missing seeks between gets and puts into...
0bad3b7c
PC
4509 * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
4510 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
4511 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
4512 * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
4513 * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
4514 * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
a1af4623 4515
dc4add82
RH
45162003-06-15 Richard Henderson <rth@redhat.com>
4517
4518 * config/linker-map.gnu: Export virtual function thunks for
4519 64-bit systems too.
4520
ef16a298
BK
45212003-06-13 Benjamin Kosnik <bkoz@redhat.com>
4522
4523 * config/abi/i686-pc-linux-gnu: To..
4524 * config/abi/i486-linux-gnu: ...this.
4525 * config/abi/alphaev67-unknown-linux-gnu: To..
4526 * config/abi/alpha-linux-gnu: ...this.
4527 * config/abi/ia64-unknown-linux-gnu: To...
4528 * config/abi/ia64-linux-gnu: ...this.
4529 * config/abi/x86_64-unknown-linux-gnu: To...
4530 * config/abi/x86_64-linux-gnu: ...this.
4531 * config/abi/i386-unknown-freebsd4: To...
4532 * config/abi/i386-freebsd4: ...this.
5ab481e0
BK
4533 * config/linker-map.gnu: Cleanups, move libsupc++ bits into
4534 CXXABI.
ef16a298
BK
4535 * configure.host: abi_baseline_triplet to abi_baseline_pair.
4536 Simplify cpu bits so that abi_baseline_pair can use the same
4537 cpu configuration.
4538 * acinclude.m4: Same.
4539 * aclocal.m4: Regenerate.
4540 * configure.in: Can't get enable_abi_check to yes unless native.
4541 * configure: Regenerate.
4542
ed242935
PC
45432003-06-13 Paolo Carlini <pcarlini@unitus.it>
4544
4545 * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
4546 fix for missing seeks between gets and puts into...
4547 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
4548 * testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
4549 * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
4550 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
4551 * testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
4552 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
4553 for missing seeks between gets and puts.
4554 * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
4555 * testsuite/data/seekoff-1.tst: New.
4556 * testsuite/data/seekoff-2.tst: New.
4557 * testsuite/data/seekpos-1.tst: New.
4558 * testsuite/data/seekpos-2.tst: New.
4559
ca566e4c
NM
45602003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
4561
4562 Avoid multi-processor bus contention on increment/decrement-and-
a1af4623 4563 test of the reference count in the empty-string object, by comparing
e6cc3a24
ZW
4564 addresses first, and never touching the reference count of the empty-
4565 string object.
ca566e4c
NM
4566 * include/bits/basic_string.h:
4567 (_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
4568 members.
a1af4623 4569 (_Rep::_S_empty_rep()): New accessor.
ca566e4c
NM
4570 (_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
4571 a base class _Rep_base.
4572 (_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
4573 (basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
4574 since no longer must increment its refcount.
4575 * include/bits/basic_string.tcc:
a1af4623 4576 (_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
e6cc3a24
ZW
4577 return immediately. The former might be unnecessary. The latter
4578 prevents begin() and end() from cloning it unnecessarily.
ca566e4c
NM
4579 (_S_construct(_InIterator, _InIterator, const _Alloc&,
4580 input_iterator_tag), _S_construct(_InIterator, _InIterator,
4581 const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
4582 const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
4583 (_M_mutate): Check for the empty string and treat it as shared.
e6cc3a24
ZW
4584 This is necessary here because _M_mutate is sometimes called with
4585 all-zero arguments; in all other uses of _M_is_shared, the test comes
4586 out right anyhow.
a1af4623 4587
c37514ff
BK
45882003-06-12 Benjamin Kosnik <bkoz@redhat.com>
4589
4590 * src/allocator-inst.cc: Explicitly instantiate.
4591 * include/ext/pool_allocator.h: Inhibit implicit instantiations.
4592 Tweaks.
4593 * config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
a1af4623 4594
58ac1d7f
BK
45952003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4596
4597 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
4598 * aclocal.m4: Regenerate.
4599 * Makefile.am (SUBDIRS): Remove libio.
4600 * Makefile.in: Regenerate.
4601 * configure.in: Same.
4602 * configure: Regenerate.
4603 * config/io/basic_file_libio.cc: Remove.
a1af4623 4604 * config/io/basic_file_libio.h: Remove.
58ac1d7f 4605 * config/io/c_io_libio_codecvt.c: Remove.
a1af4623 4606 * config/io/c_io_libio.h: Remove.
58ac1d7f
BK
4607 * libio/*: Remove.
4608 * src/Makefile.am: Same.
4609 * src/Makefile.in: Regenerate.
a1af4623 4610 * docs/html/configopts.html: Edits.
58ac1d7f 4611 * docs/html/explanations.html: Edits.
a1af4623 4612
1ff9402d
BK
46132003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4614
4615 * include/bits/stl_alloc.h (__debug_alloc): Move out.
4616 (__malloc_alloc): Same.
4617 (__pool_alloc): Same.
4618 (__new_alloc): Same.
4619 Rename to..
4620 * include/bits/allocator.h: ...this.
4621 * include/bits/stl_deque.h: Modify comment.
4622 * include/bits/stl_tree.h: Modify include.
4623 * include/std/std_memory.h: Same.
4624 * include/ext/rope: Same.
a1af4623 4625 * include/ext/slist: Same.
1ff9402d
BK
4626 * include/std/std_vector.h: Same.
4627 * include/std/std_stack.h: Same.
4628 * include/std/std_queue.h: Same.
4629 * include/std/std_list.h: Same.
4630 * include/std/std_deque.h: Same.
4631 * include/backward/alloc.h: Same.
4632 * include/ext/debug_allocator.h: New.
a1af4623
AJ
4633 * include/ext/malloc_allocator.h: New.
4634 * include/ext/pool_allocator.h: New.
1ff9402d
BK
4635 * include/ext/new_allocator.h: New.
4636 * include/bits/pthread_allocimpl.h: Remove.
a1af4623 4637 * include/bits/stl_pthread_alloc.h: Remove.
1ff9402d
BK
4638 * include/Makefile.am (ext_headers): Add.
4639 * include/Makefile.in: Regenerate.
4640 * src/stl-inst.cc: Use __gnu_cxx namespace.
4641 * src/stl-inst.cc: Move to...
4642 * src/allocator-inst.cc: Here.
4643 * src/Makefile.am (sources): Update.
4644 * src/Makefile.in: Regenerate.
4645 * config/linker-map.gnu: Remove __pool_alloc bits.
4646 * testsuite/ext/headers.cc: Add.
4647 * testsuite/ext/allocators.cc: Fixup.
a1af4623 4648
1ff9402d 46492003-06-11 Stefan Olsson <stefan@snon.net>
e6cc3a24 4650