]> gcc.gnu.org Git - gcc.git/blame - libstdc++-v3/ChangeLog
index.txt: Regenerate after adding <link> tags.
[gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
a7bc3cdc
JW
12003-12-12 Jonathan Wakely <redi@gcc.gnu.org>
2
3 * docs/html/faq/index.txt: Regenerate after adding <link> tags.
4
cbc67955
NF
52003-12-11 Neil Ferguson <nferguso@eso.org>
6 Paolo Carlini <pcarlini@suse.de>
7
8 * include/bits/basic_string.tcc (reserve): Allow shrink-to-fit.
9 * testsuite/21_strings/basic_string/capacity/1.cc: Tweak.
10 * testsuite/21_strings/basic_string/capacity/char/1.cc: Ditto.
11 * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Ditto.
12
645112dd
BK
132003-12-10 Benjamin Kosnik <bkoz@redhat.com>
14
15 PR libstdc++/6243
16 * testsuite/lib/libstdc++.exp (v3-init): Add
17 original_ld_library_path, calculate ld_library path, set
18 LD_LIBRARY_PATH to both. Based on libjava.exp.
19
9f503dd3
BK
202003-12-10 Benjamin Kosnik <bkoz@redhat.com>
21 Alexandre Oliva <aoliva@redhat.com>
22
23 PR libstdc++/11612
24 * testsuite/Makefile.am (GLIBCXX_DIR): New.
25 (GLIBGCC_DIR): New.
26 (CXXLINK): Use both with -R so libtool links the correct libs.
27
3090572c
PC
282003-12-10 Paolo Carlini <pcarlini@suse.de>
29
30 PR libstdc++/13217
31 * include/bits/fstream.tcc (underflow): Deal gracefully with
32 read errors: throw ios_base::failure.
33
35d6801e
BK
342003-12-10 Benjamin Kosnik <bkoz@redhat.com>
35
36 PR libstdc++/10063
37 * config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
38 * testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
39 * testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
40
e8c5fc66
PC
412003-12-10 Paolo Carlini <pcarlini@suse.de>
42
43 * include/bits/locale_facets.tcc (num_put::do_put(void*)):
44 Remove the try/catch, not necessary.
45
9877afe8
PC
462003-12-10 Paolo Carlini <pcarlini@suse.de>
47
48 * testsuite/22_locale/locale/cons/12438.cc: Tweak memory
49 limit and iterations to avoid spurious failures on some
50 64 bit machines.
51
5ec3f566
BK
522003-12-09 Benjamin Kosnik <bkoz@redhat.com>
53
54 * config/linker-map.gnu: Remove private ios_base members from
55 export list.
56
57 * config/cpu/alpha/atomicity.h: Consistently format.
58 * config/cpu/cris/atomicity.h: Same.
59 * config/cpu/generic/atomicity.h: Same.
60 * config/cpu/hppa/atomicity.h: Same.
61 * config/cpu/i386/atomicity.h: Same.
62 * config/cpu/i486/atomicity.h: Same.
63 * config/cpu/ia64/atomicity.h: Same.
64 * config/cpu/m68k/atomicity.h: Same.
65 * config/cpu/mips/atomicity.h: Same.
66 * config/cpu/powerpc/atomicity.h: Same.
67 * config/cpu/s390/atomicity.h: Same.
68 * config/cpu/sparc/atomicity.h: Same.
69
86025553
BK
702003-12-09 Benjamin Kosnik <bkoz@redhat.com>
71
72 PR libstdc++/13296
73 * acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
74 * aclocal.m4: Regenerate.
75 * configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
76 * conigure: Regenerate.
77 * src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
78 * src/Makefile.in: Regenerate.
79 * docs/html/17_intro/configury.html: Modify.
80
7c1ca569
PC
812003-12-09 Paolo Carlini <pcaelini@suse.de>
82
83 * include/bits/demangle.h (struct implementation_details):
84 Keep in comments the names of the unused parameters.
85
015fa971
PC
862003-12-09 Paolo Carlini <pcaelini@suse.de>
87
88 * include/bits/demangle.h (struct implementation_details):
89 Fix unused parameters warning.
90
1f3adac2
PC
912003-12-09 Paolo Carlini <pcarlini@suse.de>
92
93 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
94 Slightly streamline the code dealing with overflows and the
95 parsing of the sign.
96
fa30fe72
BI
972003-12-09 Bernardo Innocenti <bernie@develer.com>
98
99 * include/ext/algorithm, include/ext/debug_allocator.h,
100 include/ext/enc_filebuf.h, include/ext/functional,
101 include/ext/hash_fun.h, include/ext/hash_map, include/ext/hash_set,
102 include/ext/hashtable.h, include/ext/iterator,
103 include/ext/malloc_allocator.h, include/ext/memory,
104 include/ext/mt_allocator.h, include/ext/numeric,
105 include/ext/pod_char_traits.h, include/ext/pool_allocator.h,
106 include/ext/rb_tree, include/ext/rope, include/ext/ropeimpl.h,
107 include/ext/slist, include/ext/stdio_filebuf.h,
108 include/ext/stdio_sync_filebuf.h: Remove trailing whitespace.
109
526da49c
BI
1102003-12-09 Bernardo Innocenti <bernie@develer.com>
111
112 * include/debug/bitset, include/debug/debug.h, include/debug/deque,
113 include/debug/formatter.h, include/debug/hash_map.h,
114 include/debug/hash_multimap.h, include/debug/hash_multiset.h,
115 include/debug/hash_set, include/debug/hash_set.h, include/debug/list,
116 include/debug/map.h, include/debug/multimap.h,
117 include/debug/multiset.h, include/debug/safe_base.h,
118 include/debug/safe_iterator.h, include/debug/safe_iterator.tcc,
119 include/debug/safe_sequence.h, include/debug/set.h,
120 include/debug/string, include/debug/vector: Remove trailing whitespace.
121
23131008
BI
1222003-12-09 Bernardo Innocenti <bernie@develer.com>
123
124 * include/c_compatibility/iso646.h, include/c_compatibility/limits.h,
125 include/c_compatibility/locale.h, include/c_compatibility/stdio.h,
126 include/c_compatibility/string.h, include/c_compatibility/time.h,
127 include/c_compatibility/wchar.h, include/c_compatibility/wctype.h:
128 Remove trailing whitespace.
129
7dd8177f
BI
1302003-12-09 Bernardo Innocenti <bernie@develer.com>
131
132 * include/c_std/cmath.tcc, include/c_std/std_cassert.h,
133 include/c_std/std_cctype.h, include/c_std/std_cmath.h,
134 include/c_std/std_cstddef.h, include/c_std/std_cstdio.h,
135 include/c_std/std_cstdlib.h, include/c_std/std_cstring.h,
136 include/c_std/std_cwchar.h, include/c_std/std_cwctype.h:
137 Remove trailing whitespace.
138
7b74e24e
BI
1392003-12-09 Bernardo Innocenti <bernie@develer.com>
140
141 * include/c/std_cctype.h, include/c/std_cmath.h,
142 include/c/std_cstdlib.h include/c/std_cwchar.h,
143 include/c/std_cwctype.h: Remove trailing whitespace.
144
e64738b3
BI
1452003-12-09 Bernardo Innocenti <bernie@develer.com>
146
147 * include/backward/algo.h, include/backward/algobase.h,
148 include/backward/alloc.h, include/backward/complex.h,
149 include/backward/defalloc.h, include/backward/function.h,
150 include/backward/iterator.h, include/backward/new.h,
151 include/backward/ostream.h, include/backward/queue.h,
152 include/backward/rope.h, include/backward/stream.h,
153 include/backward/streambuf.h, include/backward/strstream,
154 include/backward/tempbuf.h, include/backward/tree.h,
155 include/backward/vector.h: Remove trailing whitespace.
156
0fa96a60
PC
1572003-12-08 Paolo Carlini <pcarlini@suse.de>
158
159 * config/locale/generic/c_locale.cc (__convert_to_v(long&),
160 __convert_to_v(unsigned long&), __convert_to_v(long long&),
161 __convert_to_v(unsigned long long&): Remove.
162 (__convert_to_v(float&), __convert_to_v(double&),
163 __convert_to_v(long double&)): Remove last unused parameter.
164 * config/locale/gnu/c_locale.cc: Likewise.
165 * include/bits/locale_facets.h: Likewise.
166 (num_get::_M_extract_int): Update declaration.
167 (class __num_base): Tweak _S_ie and _S_iE according to the
168 _S_atoms_in changes.
169 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
170 Provide directly the final _ValueT, not a string: accumulate
171 the result checking for overflow at each digit.
172 (num_get::do_get(bool&), num_get::do_get(long&),
173 num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
174 num_get::do_get(unsigned long&), num_get::do_get(long long&),
175 num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
176 Use the new _M_extract_int, simplify.
177 * src/locale-inst.cc (num_get::_M_extract_int(long&),
178 num_get::_M_extract_int(unsigned short&),
179 num_get::_M_extract_int(unsigned int&),
180 num_get::_M_extract_int(unsigned long&),
181 num_get::_M_extract_int(long long&),
182 num_get::_M_extract_int(unsigned long long&): Instantiate.
183 * src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
184 the chars in the natural order: abcdefABCDEF.
185
09755a85
DM
1862003-12-08 David S. Miller <davem@redhat.com>
187
188 PR libstdc++/12496
189 * config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
190 Extend increment to _Atomic_word before giving to assembler.
191
57616df1
BK
1922003-12-06 Benjamin Kosnik <bkoz@redhat.com>
193
194 * testsuite/ext/enc_filebuf/char/13189.cc: Guard for __enc_traits.
195 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Same.
196
e80213d2
BK
1972003-12-06 Benjamin Kosnik <bkoz@redhat.com>
198
199 PR libstdc++/11691
200 * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
201 Remove __del argument to file descriptor constructor.
202 * config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
203 bool argument.
204 * config/io/basic_file_stdio.cc: Same.
205
42134429
BK
2062003-12-05 Benjamin Kosnik <bkoz@redhat.com>
207
208 PR libstdc++/13189
209 * include/ext/enc_filebuf.h: Fix.
210 * include/bits/fstream.tcc: Tweak formatting.
211 * include/bits/postypes.h: Same.
212 * include/bits/sstream.tcc: Same.
213 * include/bits/streambuf.tcc: Same.
214 * testsuite/ext/stdio_filebuf.cc: Split.
215 * testsuite/ext/stdio_filebuf_2.cc: Split.
216 * testsuite/ext/stdio_sync_filebuf_char.cc: Split.
217 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc: Split.
218 * testsuite/ext/enc_filebuf/char/13189.cc: New.
219 * testsuite/ext/enc_filebuf/wchar_t/13189.cc: New.
220 * testsuite/ext/stdio_filebuf/char/1.cc: New.
221 * testsuite/ext/stdio_filebuf/char/2.cc: New.
222 * testsuite/ext/stdio_sync_filebuf/char/1.cc: New.
223 * testsuite/ext/stdio_sync_filebuf/char/12048-1.cc: New.
224 * testsuite/ext/stdio_sync_filebuf/char/12048-2.cc: New.
225 * testsuite/ext/stdio_sync_filebuf/char/12048-3.cc: New.
226 * testsuite/ext/stdio_sync_filebuf/char/12048-4.cc: New.
227 * testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: New.
228 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-1.cc: New.
229 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-2.cc: New.
230 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-3.cc: New.
231 * testsuite/ext/stdio_sync_filebuf/wchar_t/12948-4.cc: New.
232
69f73bd3
CW
2332003-12-05 Carlo Wood <carlo@alinoe.com>
234
235 PR libstdc++/13045
236 * bits/demangle.h
237 namespace __gnu_cxx::demangler
238 (enum substitution_nt): Removed trailing comma.
239 (implementation_details): Added.
240 (session<Allocator>::M_implementation_details): Added.
241 (session<Allocator>::session): Pass implementation_details.
242 (session<Allocator>::decode_encoding): Same.
243 (session<Allocator>::decode_real): Added.
244 (_GLIBCXX_DEMANGLER_STYLE_VOID _GLIBCXX_DEMANGLER_STYLE_LITERAL
245 _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT
246 _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
247 _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Replaced with
248 implementation_details equivalent.
249 (session<Allocator>::decode_expression):
250 Use M_implementation_details instead of macros. Add extra parentheses
251 around 'larger than' operator in expressions in template arguments.
252 (session<Allocator>::decode_bare_function_type): Idem.
253 (session<Allocator>::decode_literal):
254 Idem, and call decode_real for floating literals.
255 (session<Allocator>::decode_type_with_postfix): Put the postfix
256 of the return type of (member) functions after the function
257 instead of after the return type. Also, put a space after the
258 prefix of qualified function pointers: "int (* const<space>".
259 * src/demangle.cc: include most dependent header file first.
260 * testsuite/demangle/regression/cw-16.cc: Updated two
261 and added three tests.
262
82fa4538
BK
2632003-12-04 Benjamin Kosnik <bkoz@redhat.com>
264
265 PR libstdc++/13284
266 * include/bits/stl_algo.h (__random_number): Remove.
267 (random_shuffle): Use rand, as permitted by DR 395.
268 * include/ext/algorithm: Same.
269 * linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
270 * acconfig.h: Same.
271 * crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
272 * config.h.in: Regenerated.
273 * configure: Same.
274 * aclocal.m4: Same.
275
7f1156ed
PC
2762003-12-04 Paolo Carlini <pcarlini@suse.de>
277
278 PR libstdc++/12653
279 * include/std/std_bitset.h (operator>>): Implement resolution
280 of DR 303 [WP]: use widen('0') and widen('1').
281 * docs/html/ext/howto.html: Add an entry for DR 303.
282
283 * include/std/std_bitset.h (operator>>): Implement the common
284 requirements of formatted input functions (27.6.1.2.1).
285
286 * include/std/std_bitset.h (operator>>): Set the failbit when
287 nothing was extracted and _Nb != 0.
288 * testsuite/23_containers/bitset/input/1.cc: New.
289
3259561c
PC
2902003-12-03 Paolo Carlini <pcarlini@suse.de>
291
292 PR libstdc++/12791
293 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
294 Rewrite, stop the parsing as soon as a digit cannot possibly
295 lead to a final number within the bounds; otherwise, simplify,
296 avoiding __ctype.is() and atoi().
297 * testsuite/22_locale/time_get/get_date/char/12791.cc: New.
298 * testsuite/22_locale/time_get/get_date/wchar_t/12791.cc: New.
299
300 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
301 Minor tweak: a 4-digit integer cannot be bigger than 9999.
302
303 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Use
304 type-correct wchar_t string literals.
305 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
306 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
307 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
308 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
309
17e15f7f
PC
3102003-12-02 Paolo Carlini <pcarlini@suse.de>
311
312 * include/bits/locale_facets.tcc (time_get::do_get_year):
313 Avoid using a basic_string and calling a full blown strtol
314 (via __convert_to_v) for simple 2 or 4 digits, base 10,
315 positive integers; simplify.
316
142b798b
PC
3172003-12-02 Paolo Carlini <pcarlini@suse.de>
318
319 * config/locale/gnu/monetary_members.cc
320 (money_base::_S_construct_pattern): For case 3: and 4:
321 exchanging 'if (__precedes)' and 'if (__space)' allows
322 to factor out a few more assignments.
323
6b98580b
BK
3242003-12-01 Benjamin Kosnik <bkoz@redhat.com>
325
326 * include/bits/basic_ios.h (basic_ios::setstate): Revert.
327 * include/bits/istream.tcc: Only call setstate if __err != goodbit.
328 * include/bits/ostream.tcc: Same.
329 * testsuite/27_io/basic_ios/exceptions/char/2.cc: New.
330
331 * testsuite/testsuite_io.h (__gnu_test::fail_streambuf): Make
332 internal buffer non-static.
333
d78e147a
BK
3342003-12-01 Benjamin Kosnik <bkoz@redhat.com>
335
336 * docs/html/17_intro/C++STYLE: Add exception bits.
337 * include/bits/fstream.tcc: Add location info to exception strings.
338
339 * include/bits/stl_construct.h: Formatting tweaks.
340
9dbaa948
PC
3412003-12-01 Paolo Carlini <pcarlini@suse.de>
342
343 PR libstdc++/10378
344 * include/bits/allocator.h (allocator::construct): Implement
345 resolution of DR 402 [Ready] (in Revision 28).
346 * include/bits/allocator_traits.h (__allocator::construct):
347 Likewise.
348 * include/bits/stl_construct.h (_Construct): Likewise.
349 * testsuite/20_util/allocator_members.cc: Move to...
350 * testsuite/20_util/allocator/1.cc: ... here.
351 * testsuite/20_util/allocator/10378.cc: New.
352 * docs/html/ext/howto.html: Add an entry for DR 402.
353
1644f06d
PC
3542003-11-30 Paolo Carlini <pcarlini@suse.de>
355
356 * config/locale/gnu/codecvt_members.cc (codecvt::do_in,
357 codecvt::do_length): More minor tweaks.
358
11816ba2
PC
3592003-11-30 Paolo Carlini <pcarlini@suse.de>
360
361 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
362 Minor stylistic tweak.
363
6c39c207
PC
3642003-11-30 Paolo Carlini <pcarlini@suse.de>
365
366 * include/bits/locale_facets.tcc (num_put::do_put(..., bool)):
367 Minor tweaks, consistent with the style used in other facets.
368
4da2b960
PC
3692003-11-29 Paolo Carlini <pcarlini@suse.de>
370
371 * include/bits/fstream.tcc (underflow): Minor tweaks in
372 preparation for libstdc++/13217.
373
2d25605a
PC
3742003-11-29 Paolo Carlini <pcarlini@suse.de>
375
376 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc:
377 Tweak for a few small problems (fix timings, use VERIFY..)
378
05a47a47
PC
3792003-11-28 Paolo Carlini <pcarlini@suse.de>
380
381 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: Remove.
382 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13171-3.cc: New,
383 the original third testcase for libstdc++/13171 belong here.
384
ac912ba1
PC
3852003-11-28 Paolo Carlini <pcarlini@suse.de>
386
387 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc:
388 Remove extraneous wchar_t lines.
389
5536b61c
PC
3902003-11-27 Paolo Carlini <pcarlini@suse.de>
391
392 PR libstdc++/11544
393 PR libstdc++/11603
3090572c 394 * include/bits/fstream.tcc (underflow): Throw ios_base::failure
5536b61c
PC
395 upon incomplete or invalid byte sequences in the file.
396 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-1.cc: New.
397 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11544-2.cc: New.
398 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc: New.
399
fb8d4638
PC
4002003-11-27 Paolo Carlini <pcarlini@suse.de>
401
402 * include/std/std_streambuf.h (__copy_streambufs): Remove
403 the first, unused, basic_ios<> parameter.
404 * src/streambuf-inst.cc: Likewise.
405 * include/bits/streambuf.tcc: Likewise.
406 * include/bits/istream.tcc (operator>>(__streambuf_type*)):
407 Tweak accordingly the call.
408 * include/bits/ostream.tcc (operator<<(__streambuf_type*)):
409 Likewise.
410
411 * include/bits/streambuf.tcc (__copy_streambufs): Remove
412 redundant try/catch.
413
12841eb3
BK
4142003-11-26 Benjamin Kosnik <bkoz@redhat.com>
415
416 PR libstdc++/9371
417 PR libstdc++/9546
418 PR libstdc++/10093
419 PR libstdc++/10095
420 * include/bits/basic_ios.h (basic_ios::setstate): Elide if goodbit.
421 (basic_ios::_M_setstate): Consolidate common error handling code.
422 * include/bits/basic_ios.tcc: Tweak.
423 * include/bits/fstream.tcc: Tweak.
424 * include/bits/istream.tcc: Use _M_setstate for common exception
425 handling. Move setstate calls after catch.
426 (basic_istream::tellg): Check for exceptions thrown by streambuf
427 virtual functions.
428 (basic_istream::seekg): Same.
429 * include/bits/ostream.tcc: Same, but for ostream.
430 (basic_ostream::flush): Check for exceptions thrown by streambuf
431 virtual functions.
432 (basic_istream::tellp): Same.
433 (basic_istream::seekp): Same.
434 * include/bits/locale_facets.tcc: Tweak.
435 * include/bits/streambuf.tcc: Tweak.
436 (__copy_streambufs): Propagate exceptions.
437 * testsuite/testsuite_io.h (fail_streambuf): New.
438 (fail_num_get): New.
439 (fail_num_put): New.
440 (facet_error): New.
441 (underflow_error): New.
442 (overflow_error): New.
443 (positioning_error): New.
444 * testsuite/27_io/basic_istream/exceptions/char/9561.cc: Tweak.
445 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
446 exceptions_badbit_throw.cc, exceptions_failbit.cc,
447 exceptions_failbit_throw.cc: New.
448 * testsuite/27_io/basic_istream/extractors_other/char/
449 error_failbit.cc, exceptions_badbit_throw.cc,
450 exceptions_failbit_throw.cc, exceptions_null.cc: New.
451 * testsuite/27_io/basic_istream/seekg/char/exceptions_badbit_throw.cc:
452 New.
453 * testsuite/27_io/basic_istream/tellg/char/exceptions_badbit_throw.cc:
454 New.
455 * testsuite/27_io/basic_ostream/flush/char/exceptions_badbit_throw.cc:
456 New.
457 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/
458 exceptions_badbit_throw.cc, exceptions_failbit_throw.cc: New.
459 * testsuite/27_io/basic_ostream/inserters_other/char/
460 error_failbit.cc, exceptions_badbit_throw.cc,
461 exceptions_failbit_throw.cc, exceptions_null.cc: New.
462 * testsuite/27_io/basic_ostream/seekp/char/exceptions_badbit_throw.cc:
463 New.
464 * testsuite/27_io/basic_ostream/tellp/char/exceptions_badbit_throw.cc:
465 New.
466
48f499cf
BK
4672003-11-26 Benjamin Kosnik <bkoz@redhat.com>
468
469 PR libstdc++/12297
470 * include/bits/istream.tcc
471 (basic_istream::sentry::sentry): Set failbit and eofbit when eof.
472 * testsuite/27_io/basic_istream/sentry/char/12297.cc: New.
473
c03d83d4
PC
4742003-11-26 Paolo Carlini <pcarlini@suse.de>
475 Petur Runolfsson <peturr02@ru.is>
476
477 PR libstdc++/13171
478 * include/bits/fstream.tcc (imbue): Relax the conditions under
479 which the function succeeds: allow for two consecutive calls with
480 the same name; state dependent encodings are ok even after open
481 if at the beginning of the file; don't check seekoff return value
482 (pipes, cin, cout, etc...)
483 * testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
484 * testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
485 * testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
486 * testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
487 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
488 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
489 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
490 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
491
492 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
493 correctly use the UTF-8 locale appearing in the PR.
494
7fb1d711
PC
4952003-11-26 Paolo Carlini <pcarlini@suse.de>
496
497 * include/bits/locale_facets.h
498 (__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
499 _M_truename and _M_falsename: the constructor always does
500 it immediately before the _M_cache call.
501
5af91f06
PC
5022003-11-25 Paolo Carlini <pcarlini@suse.de>
503
504 * config/locale/gnu/codecvt_members.cc (codecvt::do_length):
505 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
506 former is very fast, but stops if encounters a NUL.
507 (codecvt::do_out): Tweaks.
508 (codecvt::do_in): Tweaks, improve the code dealing with errors.
509 * testsuite/performance/wchar_t_length.cc: New.
510
3c8797ae
PC
5112003-11-24 Paolo Carlini <pcarlini@suse.de>
512
513 * config/locale/gnu/codecvt_members.cc (codecvt::do_in):
514 Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
515 former is very fast, but stops if encounters a NUL.
516 (codecvt::do_out): Tweak.
517 * testsuite/performance/wchar_t_in.cc: New.
518
5192003-11-24 Paolo Carlini <pcarlini@suse.de>
520
521 * include/bits/locale_facets.h
522 (__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
523 in order to avoid memory leaks; simplify a bit.
524
e0ec69c9
BK
5252003-11-24 Benjamin Kosnik <bkoz@redhat.com>
526
527 * include/bits/streambuf_iterator.h (ostreambuf_iterator): Remove
528 non-standard throw specs.
529 * testsuite/24_iterators/istreambuf_iterator.cc: Split into...
530 * testsuite/24_iterators/istreambuf_iterator/1.cc
531 * testsuite/24_iterators/istreambuf_iterator/2.cc
532 * testsuite/24_iterators/istreambuf_iterator/2627.cc
533 * testsuite/24_iterators/ostreambuf_iterator.cc: Split into...
534 * testsuite/24_iterators/ostreambuf_iterator/1.cc
535 * testsuite/24_iterators/ostreambuf_iterator/2.cc
536
537 * testsuite/24_iterators/reverse_iterator/1.cc: Just compile,
538 don't link.
539
540 * include/bits/allocator.h: Formatting tweak.
541
ce492af3
PC
5422003-11-24 Paolo Carlini <pcarlini@suse.de>
543
544 * src/locale_init.cc: Cosmetic reformatting.
545
bf058d22
PC
5462003-11-23 Paolo Carlini <pcarlini@suse.de>
547
548 * include/bits/locale_facets.tcc (__add_grouping):
549 Cosmetic reformatting.
550
89a2fb90
PC
5512003-11-23 Paolo Carlini <pcarlini@suse.de>
552
553 * include/bits/locale_facets.tcc (_M_extract_float,
554 _M_extract_int): Remove a wrong comment and simplify
555 the corresponding code using char_traits::find().
556
cc0c2f79
PC
5572003-11-22 Paolo Carlini <pcarlini@suse.de>
558
559 * config/locale/gnu/monetary_members.cc
560 (money_base::_S_construct_pattern): Factor out two assignments.
561
a3b1b804
PC
5622003-11-22 Paolo Carlini <pcarlini@suse.de>
563
564 * include/bits/istream.tcc (getline(basic_string<>&)):
565 Fix error in comment of the previous commit.
566
1a311979
PC
5672003-11-22 Paolo Carlini <pcarlini@suse.de>
568
569 PR libstdc++/12593
570 * include/bits/istream.tcc (operator>>(basic_string<>&),
571 getline(basic_string<>&)): Implement resolution of DR 91 [WP];
572 fix some minor issues with the exit conditions.
573 * docs/html/ext/howto.html: Add an entry for DR 91.
574
f7ba331c
PC
5752003-11-21 Paolo Carlini <pcarlini@suse.de>
576
577 * config/locale/gnu/monetary_members.cc
578 (money_base::_S_construct_pattern): Factor out an assignment.
579
5c89246d
PC
5802003-11-21 Paolo Carlini <pcarlini@suse.de>
581
582 PR libstdc++/12882 (partial)
583 * acinclude.m4 (GLIBCXX_CHECK_LFS): Check fseeko64
584 and ftello64 too.
585 * include/ext/stdio_sync_filebuf.h (seekoff): Use fseeko64
586 and ftello64 if available.
587 * aclocal.m4: Regenerate.
588 * configure: Ditto.
589
9dc420e6
BK
5902003-11-20 Benjamin Kosnik <bkoz@redhat.com>
591
592 * include/debug/formatter.h: Use _Tp as template argument.
593 * src/debug.cc: Same, instantiate std::size_t.
594
4be58168
BK
5952003-11-20 Benjamin Kosnik <bkoz@redhat.com>
596
597 PR libstdc++/13109
598 * include/debug/formatter.h (_Error_formatter::_M_format_word): New.
599 * src/debug.cc (__gnu_debug): Format.
600 (_Error_formatter::_M_format_word): Define, use, instantiate.
601
0fd18701
PC
6022003-11-20 Paolo Carlini <pcarlini@suse.de>
603
604 PR libstdc++/11602
605 * config/locale/gnu/codecvt_members.cc (codecvt::do_out):
606 Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
607 former is very fast, but stops if encounters a NUL.
608 * testsuite/performance/wchar_t_out.cc: New, from the PR.
609
1f33554a
PC
6102003-11-19 Paolo Carlini <pcarlini@suse.de>
611
612 * config/locale/gnu/codecvt_members.cc (do_out): If
613 we can upper bound the total number of external chars
614 to something smaller than __to_end - __to, avoid the
615 temporary buffer, the memcopy and simplify the loop.
616 * config/locale/generic/codecvt_members.cc (do_out):
617 Likewise.
618
90635952
AT
6192003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
620
621 * testsuite/lib/libstdc++.exp: Add DYLD_LIBRARY_PATH for darwin.
622 * testsuite/libstdc++-dg/normal.exp: Add -multiply_defined suppress
623 flag.
624
bc225f98
JW
6252003-11-18 Jonathan Wakely <redi@gcc.gnu.org>
626
627 * docs/html/configopts.html, docs/html/debug.html,
628 docs/html/documentation.html, docs/html/explanations.html,
629 docs/html/install.html, docs/html/17_intro/contribute.html,
630 docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
631 docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
632 docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
633 docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
634 docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
635 docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
636 docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
637 docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
638 docs/html/ext/howto.html, docs/html/ext/sgiexts.html: Add <link> tags.
639
29342463
PC
6402003-11-18 Paolo Carlini <pcarlini@suse.de>
641
642 PR libstdc++/12868
643 * include/bits/fstream.tcc (imbue): For encodings != -1 it's
644 always ok to imbue a new locale, provided seekoff(0, cur, ...)
645 doesn't fail, of course.
646 (underflow): In order for the above to work, deal gracefully
647 with _M_codecvt->in returning codecvt_base::error while
648 (__ilen = __iend - this->eback()) > 0: it just means __ilen
649 correctly converted internal characters before an error.
650 * testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: New.
651
c2466393
PC
6522003-11-17 Paolo Carlini <pcarlini@suse.de>
653
654 * include/bits/locale_facets.tcc: Fix typo in comment.
655
6a7ee0d6
PC
6562003-11-17 Paolo Carlini <pcarlini@suse.de>
657
658 * testsuite/22_locale/num_put/put/char/8.cc: New test,
659 summarizing the discussion ensuing libstdc++/12988.
660 * testsuite/22_locale/num_put/put/wchar_t/8.cc: Ditto.
661
781a5298
PC
6622003-11-15 Paolo Carlini <pcarlini@suse.de>
663
664 * include/std/std_fstream.h: Tweak a comment.
665
c85dfef7
RS
6662003-11-15 Roger Sayle <roger@eyesopen.com>
667
668 * include/c_std/std_cmath.h: Don't import C99's float transcendentals
669 into the __gnu_cxx::__c99_binding namespace.
670 (acos, asin, atan, atan2, ceil, cosh, exp, floor, fmod, frexp,
671 ldexp, log, log10, modf, pow, sinh, tan, tanh): Implement using
672 GCC's math builtins, i.e. __builtin_foo.
673 * libmath/stubs.c (acosf, acosl, asinf, asinl, atanf, atanl,
674 ceilf, ceill, floorf, floorl, fmodf, fmodl, frexpf, frexpl,
675 ldexpf, ldexpl, modff, modfl): Provide stub implementations.
676
38455b2b
PC
6772003-11-14 Paolo Carlini <pcarlini@suse.de>
678
679 * testsuite/22_locale/locale/cons/12352.cc: Use
680 __gnu_test::try_named_locale.
681
c60cfc76
PC
6822003-11-14 Paolo Carlini <pcarlini@suse.de>
683
684 * docs/html/ext/howto.html: Add entries for DR 63, 75
685 and 305; tweak entries for DR 60 and 328.
686
1b80d64a
DG
6872003-11-13 Douglas Gregor <gregod@cs.rpi.edu>
688
689 * docs/html/debug.html: Users are allowed to specialize in
690 namespace __gnu_debug, unlike in the Apple version of the debug
691 mode. Clear up a confusing double-negative. Note that
692 std::basic_string does provide extra debugging capabilities, but
693 not safe iterators.
694 * include/bits/basic_string.tcc: Make sure there's never an
695 ambiguity when calling __is_null_pointer.
696 * include/debug/deque: (deque::erase) Properly handle invalidation
697 when erasing at the end of the deque.
698 * include/debug/vector: (vector::swap): Swap _M_guaranteed_capacity.
699 (vector::clear): Set the guaranteed capacity to 0.
700 * testsuite/23_containers/deque/invalidation/4.cc: (test04): Test
701 iterator invalidation when erasing at the end of the deque.
702
a2dcfada
PC
7032003-11-13 Paolo Carlini <pcarlini@suse.de>
704 Petur Runolfsson <peturr02@ru.is>
705
706 PR libstdc++/13007
707 * include/bits/fstream.tcc (imbue): Don't touch the stored
708 locale.
709 * include/std/std_streambuf.h (imbue): According to the
710 standard, base class version does nothing.
711 (pubimbue): Store the locale.
712 * testsuite/27_io/basic_filebuf/imbue/char/13007.cc: New.
713 * testsuite/27_io/basic_filebuf/imbue/wchar_t/13007.cc: New.
714 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak.
715 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Likewise.
716 * testsuite/27_io/basic_streambuf/imbue/char/13007-1.cc: New.
717 * testsuite/27_io/basic_streambuf/imbue/char/13007-2.cc: New.
718 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-1.cc: New.
719 * testsuite/27_io/basic_streambuf/imbue/wchar_t/13007-2.cc: New.
720
5681c890
PR
7212003-11-13 Petur Runolfsson <peturr02@ru.is>
722
723 PR libstdc++/12594
724 * include/bits/ostream.tcc
725 (basic_ostream::operator<<(basic_ostream& (*)(basic_ostream&)),
726 basic_ostream::operator<<(basic_ios& (*)(basic_ios&)),
727 basic_ostream::operator<<(ios_base& (*)(ios_base&))):
728 Implement the resolution of DR 60 (TC): These are not formatted
729 output functions so don't construct sentry objects and don't
730 catch exceptions.
731 (basic_ostream::put, basic_ostream::write): Implement the
732 resolution of DR 63 (TC) by catching exceptions and setting
733 badbit.
734 (basic_ostream::flush): Implement the resolution of DR 60 (TC):
735 This is not an unformatted output function so don't construct
736 a sentry object.
737 * testsuite/testsuite_io.h (sync_streambuf): Define.
738 * testsuite/27_io/basic_ostream/flush/char/2.cc: New test.
739 * testsuite/27_io/basic_ostream/inserters_other/char/5.cc: New test.
740 * testsuite/27_io/basic_ostream/put/char/1.cc: New test.
741 * testsuite/27_io/basic_ostream/write/char/1.cc: New test.
742
f144e859
PC
7432003-11-13 Paolo Carlini <pcarlini@suse.de>
744
745 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1:
746 Fix, closely following the testcase included in the PR.
747 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: Ditto.
748 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: Ditto.
749 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: Ditto.
750
a198480e
JW
7512003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
752
753 * docs/html/17_intro/configury.html: XHTML tweak.
754
684edd67
JW
7552003-11-13 Jonathan Wakely <redi@gcc.gnu.org>
756
757 * docs/html/debug_mode.html: XHTML fixes.
758
89341602
BK
7592003-11-12 Benjamin Kosnik <bkoz@redhat.com>
760
761 * docs/html/debug_mode.html: Update.
762 * docs/html/17_intro/TODO: Update.
763
f9d52373
BK
7642003-11-12 Benjamin Kosnik <bkoz@redhat.com>
765
766 * include/bits/c++config: Move using directive...
767 * include/debug/formatter.h: ...here.
768
22e5c8fa
CW
7692003-11-12 Carlo Wood <carlo@alinoe.com>
770
771 PR libstdc++/12947
772 * bits/demangle.h
773 (_GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS): Added.
774 (_GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME): Added.
775 (session<Allocator>::next_peek() const): Added.
776 (decode_non_negative_decimal_integer(string_type&)):
777 Renamed from decode_decimal_integer(string_type&).
778 (session<Allocator>::decode_nested_name):
779 Decode <template_param> as well.
780 (session<Allocator>::add_substitution):
781 Handle <template-param> for <nested-name>'s.
782 (enum xary_nt): Added.
783 (struct entry_st): Added member `xary_nt type' instead of `bool unary'.
784 (symbol_name_table_c): Updated for `entry_st::type' and additional
785 operators (unary `operator+' and `sizeof(type)').
786 (offset_table_c): Updated for new operators (causing a new hash map).
787 (decode_operator_name): Match the updated hash map.
788 (session<Allocator>::decode_expression):
789 Support for `sizeof ([typename] type)' (st),
790 dependent names (sr) and casting operator (cv). Handle
791 `entry_st::type'. Handle _GLIBCXX_DEMANGLER_STYLE_COMPACT_EXPR_OPS
792 and _GLIBCXX_DEMANGLER_STYLE_SIZEOF_TYPENAME.
793 (session<Allocator>::decode_type_with_postfix):
794 Support `extern "C"' function types (FY).
795 * testsuite/demangle/regression/cw-16.cc: Added tests for the
796 added functionality.
797 * testsuite/demangle/regression/3111-2.cc: sizeof now has a space
798 appended.
799
dfad48c6
PC
8002003-11-11 Paolo Carlini <pcarlini@suse.de>
801
802 PR libstdc++/12875
803 * include/bits/fstream.tcc (setbuf): Don't do anything
804 after open(), in particular don't discard data.
805 (_M_allocate_internal_buffer): Tweak to not allocate memory
806 in case the buffer is provided by the user via setbuf.
807 * include/ext/stdio_filebuf.h: Tweak comment.
808 * testsuite/27_io/basic_filebuf/setbuf/char/12875-1.cc: New.
809 * testsuite/27_io/basic_filebuf/setbuf/char/12875-2.cc: Likewise.
810 * testsuite/27_io/basic_filebuf/setbuf/char/2.cc: Tweak, now
811 setbuf does nothing after open().
812 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Likewise.
813
285b36d6
BK
8142003-11-11 Doug Gregor <gregod@cs.rpi.edu>
815
816 * docs/html/debug.html: Document libstdc++ debug mode.
817 * docs/html/debug_mode.html: Document libstdc++ debug mode design.
818 * docs/html/test.html: Document how to test under debug mode.
819 * docs/html/17_intro/howto.html: Document debug-mode macros.
820 * include/Makefile.am: Install debug-mode headers.
821 * src/Makefile.am: Include debug.cc.
822 * include/bits/basic_string.tcc:
823 (basic_string::_S_construct): Fix NULL pointer check.
824 (__is_null_pointer): New.
825 Add precondition annotations.
826 * include/bits/stream_iterator.h (istream_iterator,
827 ostream_iterator): Added precondition annotations.
828 * include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
829 * include/bits/stl_queue.h (queue, priority_queue): Ditto.
830 * include/bits/stl_stack.h (stack): Ditto.
831 * include/bits/basic_string.h (basic_string): Ditto.
832 * include/bits/basic_string.tcc (basic_string): Ditto.
833 * include/std/std_memory.h (auto_ptr): Ditto.
834 * include/std/std_valarray.h (valarray): Ditto.
835 * include/bits/stl_algo.h: Added algorithm precondition
836 annotations.
837 * include/bits/stl_algobase.h: Added algorithm precondition
838 annotations.
839 * include/bits/stl_numeric.h: Ditto.
840 * include/ext/algorithm: Added algorithm precondition
841 annotations.
842 (__is_heap): Moved away from here.
843 * include/bits/stl_heap.h: Added algorithm precondition
844 annotations.
845 (__is_heap): Moved to the top of this file.
846 (__is_heap): Added iterator range overloads.
847 * testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
848 with changes in std_memory.h.
849 * testsuite/23_containers/list/operators/4.cc: Don't verify
850 performance guarantees when in debug mode.
851 * testsuite/23_containers/bitset/invalidation/1.cc: New.
852 * testsuite/23_containers/deque/invalidation/1.cc: New.
853 * testsuite/23_containers/deque/invalidation/2.cc: New.
854 * testsuite/23_containers/deque/invalidation/3.cc: New.
855 * testsuite/23_containers/deque/invalidation/4.cc: New.
856 * testsuite/23_containers/list/invalidation/1.cc: New.
857 * testsuite/23_containers/list/invalidation/2.cc: New.
858 * testsuite/23_containers/list/invalidation/3.cc: New.
859 * testsuite/23_containers/list/invalidation/4.cc: New.
860 * testsuite/23_containers/map/invalidation/1.cc: New.
861 * testsuite/23_containers/map/invalidation/2.cc: New.
862 * testsuite/23_containers/multimap/invalidation/1.cc: New.
863 * testsuite/23_containers/multimap/invalidation/2.cc: New.
864 * testsuite/23_containers/multiset/invalidation/1.cc: New.
865 * testsuite/23_containers/multiset/invalidation/2.cc: New.
866 * testsuite/23_containers/set/invalidation/1.cc: New.
867 * testsuite/23_containers/set/invalidation/2.cc: New.
868 * testsuite/23_containers/vector/invalidation/1.cc: New.
869 * testsuite/23_containers/vector/invalidation/2.cc: New.
870 * testsuite/23_containers/vector/invalidation/3.cc: New.
871 * testsuite/23_containers/vector/invalidation/4.cc: New.
872 * testsuite/25_algorithms/heap.cc: Don't verify
873 performance guarantees when in debug mode.
874 * include/debug/bitset: New.
875 * include/debug/debug.h: New.
876 * include/debug/deque: New.
877 * include/debug/formatter.h: New.
878 * include/debug/hash_map: New.
879 * include/debug/hash_map.h: New.
880 * include/debug/hash_multimap.h: New.
881 * include/debug/hash_set: New.
882 * include/debug/hash_set.h: New.
883 * include/debug/hash_multiset.h: New.
884 * include/debug/list: New.
885 * include/debug/map: New.
886 * include/debug/map.h: New.
887 * include/debug/multimap.h: New.
888 * include/debug/multiset.h: New.
889 * include/debug/safe_base.h: New.
890 * include/debug/safe_iterator.h: New.
891 * include/debug/safe_iterator.tcc: New.
892 * include/debug/safe_sequence.h: New.
893 * include/debug/set: New.
894 * include/debug/set.h: New.
895 * include/debug/string: New.
896 * include/debug/vector: New.
897 * src/debug.cc: New.
898 * config/linker-map.gnu: Add debug mode symbols.
899
9002003-11-11 Benjamin Kosnik <bkoz@redhat.com>
901
902 * src/string-inst.cc: Tweak namespaces.
903 * src/misc-inst.cc: Same.
904 * docs/html/debug.html: Edits.
905 * config/link-map.gnu: Remove cruft.
906
907 * include/bits/c++config: Add in namespace associations.
908 * include/std/std_bitset.h: Adjust namespace to __gnu_norm,
909 comment tweaks.
910 * include/bits/deque.tcc: Same.
911 * include/bits/list.tcc: Same.
912 * include/bits/stl_bvector.h: Same.
913 * include/bits/stl_deque.h: Same.
914 * include/bits/stl_list.h: Same.
915 * include/bits/stl_map.h: Same.
916 * include/bits/stl_multimap.h: Same.
917 * include/bits/stl_multiset.h: Same.
918 * include/bits/stl_set.h: Same.
919 * include/bits/stl_vector.h: Same.
920 * include/bits/vector.tcc: Same.
921
922 * include/std/std_algorithm.h: Remove markup comments.
923 * include/std/std_functional.h: Same.
924 * include/std/std_iterator.h: Same.
925 * include/std/std_numeric.h: Same.
926 * include/std/std_utility.h: Same.
927 * include/bits/stl_queue.h: Formatting tweaks.
928 * include/bits/stl_stack.h: Same.
929 * include/std/std_deque.h: Include debugging version in debug mode.
930 * include/std/std_list.h: Same.
931 * include/std/std_map.h: Same.
932 * include/std/std_set.h: Same.
933 * include/std/std_vector.h: Same.
934 * include/std/std_queue.h: Use deque, vector.
935 * include/std/std_stack.h: Same.
936
f6a7db9e
PC
9372003-11-09 Paolo Carlini <pcarlini@suse.de>
938
939 * include/bits/locale_facets.tcc (_M_insert_int,
940 _M_insert_float): Move a couple of vars inside an if block.
941
7c752655
PC
9422003-11-09 Paolo Carlini <pcarlini@suse.de>
943
944 PR libstdc++/12971
945 * include/bits/locale_facets.tcc
946 (money_put::do_put(..., long double)): Fix conversion
947 specification as per DR 328 [WP].
948 * testsuite/22_locale/money_put/put/char/12971.cc: Add.
949 * testsuite/22_locale/money_put/put/wchar_t/12971.cc: Ditto.
950 * docs/html/ext/howto.html: Add entry for DR 328.
951
41d3a0c3
PC
9522003-11-08 Paolo Carlini <pcarlini@suse.de>
953
954 PR libstdc++/12967
955 * include/bits/list.tcc (merge): Implement resolution of
956 DR 300 [WP].
957 * docs/html/ext/howto.html: Add entry for DR 300; tweak entry
958 for DR 231.
959
960 * docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
961 Import R27.
962
3ab3dca6
JW
9632003-11-07 Jonathan Wakely <redi@gcc.gnu.org>
964
965 * libsupc++/vec.cc: Conform to C++STYLE.
966
2d369f35
CW
9672003-11-07 Carlo Wood <carlo@alinoe.com>
968
969 PR libstdc++/12736
970 * bits/demangle.h (qualifier_list<Allocator>::decode_KVrA): Added.
971 (qualifier_list<Allocator>::decode_qualifiers): Collect concatenated
972 K, V, r and A qualifiers before processing them as a group.
973 * testsuite/demangle/abi_text/01.cc: Reordered CV-qualifiers.
974 * testsuite/demangle/regression/cw-16.cc: New.
975
b938ad89
RM
9762003-11-07 Robert Millan <robertmh@gnu.org>
977
f6a7db9e
PC
978 * configure.host: Add kfreebsd*-gnu and knetbsd*-gnu.
979 * crossconfig.m4: Likewise.
980 * configure: Regenerate.
b938ad89 981
eb622d37
CW
9822003-11-07 Carlo Wood <carlo@alinoe.com>
983
f6a7db9e
PC
984 * include/bits/demangle.h
985 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
986 string_type&, bool member_function_pointer_qualifiers):
987 Always separate the '[' of an array type with a space from
988 what is left of it, except when that is the closing bracket
989 of another array dimension.
eb622d37 990
2215f732
CW
9912003-11-07 Carlo Wood <carlo@alinoe.com>
992
f6a7db9e 993 * include/bits/demangle.h
2215f732
CW
994 (qualifier_list<Allocator>::decode_qualifiers(string_type&,
995 string_type&, bool) const): Made const.
996 (qualifier_list<Allocator>::M_printing_suppressed): Added mutable.
997 (_GLIBCXX_DEMANGLER_DOUT_ENTERING3, _GLIBCXX_DEMANGLER_RETURN3,
998 std::ostream& operator<<(std::ostream&, qualifier const&),
999 std::ostream& operator<<(std::ostream&, qualifier_list const&),
1000 qualifier_list<Allocator>::decode_qualifiers(string_type&,
1001 string_type&, bool) const,
1002 session<Allocator>::decode_type_with_postfix(string_type&,
1003 string_type&, qualifier_list<Allocator>*))
1004 Added and/or changed debug-only hooks and code.
1005
d30b600a
JO
10062003-11-04 Jeffrey D. Oldham <oldham@codesourcery.com>
1007
1008 * libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
1009 immediately return. This reflects a C++ ABI change 2003 Nov 03.
1010 (__cxa_vec_delete3): Likewise.
1011
5e93f39f
PR
10122003-11-03 Petur Runolfsson <peturr02@ru.is>
1013
1014 PR libstdc++/12790
1015 * include/bits/fstream.tcc: Delete _M_last_overflowed.
1016 (basic_filebuf::basic_filebuf): Initialize _M_state_last.
1017 (basic_filebuf::open, basic_filebuf::close): Assign
1018 _M_state_beg to _M_state_cur and _M_state_last.
1019 (basic_filebuf::close): Call _M_terminate_output to handle
1020 unshift and flushing.
1021 (basic_filebuf::underflow): Assign _M_state_last, throw
1022 exception instead of calling abort when codecvt::max_length()
1023 is bad.
1024 (basic_filebuf::seekoff): Use _M_state_last when calling
1025 codecvt::length(), pass correct state to _M_seek.
1026 (basic_filebuf::seekpos): Pass __pos.state() to _M_seek.
1027 (basic_filebuf::_M_seek): Add __state_type parameter,
1028 set _M_state_cur correctly, store the resulting state in
1029 the return value and use _M_terminate_output to handle
1030 flushing and unshift.
1031 (basic_filebuf::_M_terminate_output): Flush contents of
1032 output buffer, if any, then call codecvt::unshift as
1033 needed and output the result.
1034 (basic_filebuf::sync): Move here, don't modify _M_writing
1035 or _M_reading.
1036
1037 * include/std/std_fstream.h
1038 (basic_filebuf::_M_state_last): Declare it.
1039 (basic_filebuf::_M_last_overflowed): Delete.
1040 (basic_filebuf::_M_seek): Add __state_type parameter.
1041 (basic_filebuf::sync): Declare only.
1042 (basic_filebuf::_M_output_unshift): Delete.
1043 (basic_filebuf::_M_terminate_output): Declare it.
1044
1045 * testsuite/testsuite_character.h:
1046 Define character class and state class plus char_traits and
1047 codecvt specializations for same for testing support for
1048 stateful encodings.
1049
1050 * testsuite/27_io/basic_filebuf/close/12790-1.cc,
1051 * testsuite/27_io/basic_filebuf/close/char/12790-1.cc,
1052 * testsuite/27_io/basic_filebuf/close/char/12790-2.cc,
1053 * testsuite/27_io/basic_filebuf/close/char/12790-3.cc,
1054 * testsuite/27_io/basic_filebuf/close/char/12790-4.cc,
1055 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-1.cc,
1056 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-2.cc,
1057 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-3.cc,
1058 * testsuite/27_io/basic_filebuf/close/wchar_t/12790-4.cc,
1059 * testsuite/27_io/basic_filebuf/open/12790-1.cc,
1060 * testsuite/27_io/basic_filebuf/seekoff/12790-1.cc,
1061 * testsuite/27_io/basic_filebuf/seekoff/12790-2.cc,
1062 * testsuite/27_io/basic_filebuf/seekoff/12790-3.cc,
1063 * testsuite/27_io/basic_filebuf/seekoff/12790-4.cc,
1064 * testsuite/27_io/basic_filebuf/seekoff/char/12790-1.cc,
1065 * testsuite/27_io/basic_filebuf/seekoff/char/12790-2.cc,
1066 * testsuite/27_io/basic_filebuf/seekoff/char/12790-3.cc,
1067 * testsuite/27_io/basic_filebuf/seekoff/char/12790-4.cc,
1068 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-1.cc,
1069 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-2.cc,
1070 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-3.cc,
1071 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/12790-4.cc,
1072 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/3.cc,
1073 * testsuite/27_io/basic_filebuf/seekpos/12790-1.cc,
1074 * testsuite/27_io/basic_filebuf/seekpos/12790-2.cc,
1075 * testsuite/27_io/basic_filebuf/seekpos/12790-3.cc,
1076 * testsuite/27_io/basic_filebuf/seekpos/char/12790-1.cc,
1077 * testsuite/27_io/basic_filebuf/seekpos/char/12790-2.cc,
1078 * testsuite/27_io/basic_filebuf/seekpos/char/12790-3.cc,
1079 * testsuite/27_io/basic_filebuf/seekpos/char/12790-4.cc,
1080 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/1.cc,
1081 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-1.cc,
1082 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-2.cc,
1083 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-3.cc,
1084 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/12790-4.cc,
1085 * testsuite/27_io/basic_filebuf/sync/char/1.cc,
1086 * testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc:
1087 New tests.
1088
1089 * testsuite/27_io/basic_filebuf/3.cc,
1090 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc,
1091 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc,
1092 * testsuite/27_io/basic_fstream/3.cc,
1093 * testsuite/27_io/basic_ifstream/3.cc,
1094 * testsuite/27_io/basic_ofstream/3.cc:
1095 Use streamoff as off_type and fpos<state_type> as pos_type.
1096
1097 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc,
1098 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc:
1099 Check that sync does *not* set _M_writing to false.
1100
1b9e6d64
AG
11012003-11-03 Anthony Green <green@redhat.com>
1102
1103 * libmath/stubs.c (sqrtf, sqrtl): Reorder so they appear before
1104 they're used.
1105
e0f05105
BK
11062003-11-03 Benjamin Kosnik <bkoz@redhat.com>
1107
1108 * include/bits/locale_facets.h (time_get::_M_extract_name): Add
1109 ctype argument.
1110 * include/bits/locale_facets.tcc: Same, use it to allow
1111 capitalized names.
1112
1113 * include/bits/fstream.tcc: Spacing tweak.
1114 * include/bits/istream.tcc: Same.
1115 * include/bits/ostream.tcc: Same.
1116
08b9183d
PC
11172003-10-30 Paolo Carlini <pcarlini@suse.de>
1118
1119 * include/bits/locale_facets.tcc (time_get::_M_extract_via_format):
1120 __mod is only assigned, never used its value, remove it.
1121
f1e7988a
PC
11222003-10-29 Paolo Carlini <pcarlini@suse.de>
1123
1124 * include/bits/locale_facets.tcc (time_get::do_get_year):
1125 Absolutely avoid dereferencing end iterators.
1126 (time_put::put): Minor clean up.
1127
1128 * include/bits/locale_facets.tcc: Cosmetic reformattings.
1129
58c9703f
PC
11302003-10-29 Paolo Carlini <pcarlini@suse.de>
1131
1132 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1133 Revert the last commit, is not correct, sorry.
1134
4f363232
PC
11352003-10-29 Paolo Carlini <pcarlini@suse.de>
1136
1137 * config/locale/generic/c_locale.cc: Add back <cmath> and
1138 <cstdlib>.
1139
1140 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1141 Clean up.
1142
6bf0b59c
PC
11432003-10-29 Paolo Carlini <pcarlini@suse.de>
1144
1145 * include/bits/locale_facets.tcc (time_put::put): Absolutely
1146 avoid dereferencing end iterators; clean up.
1147
1148 * include/bits/locale_facets.tcc (num_get::_M_extract_float,
1149 num_get::_M_extract_int): Minor tweak.
1150
c9cca2c2
PC
11512003-10-29 Paolo Carlini <pcarlini@suse.de>
1152
1153 * include/bits/locale_facets.tcc: Remove some unnecessary
1154 includes.
1155 * config/locale/generic/c_locale.cc: Include <cerrno> here.
1156 * config/locale/gnu/c_locale.cc: Likewise.
1157
157f3283
PC
11582003-10-28 Paolo Carlini <pcarlini@suse.de>
1159
1160 * include/bits/locale_facets.tcc
1161 (money_get<>::do_get(..., string_type&)): Absolutely avoid
1162 dereferencing end iterators; general clean up.
1163
cc27f5a2
PC
11642003-10-28 Paolo Carlini <pcarlini@suse.de>
1165
1166 * include/bits/locale_facets.tcc (time_get::_M_extract_num):
1167 Absolutely avoid dereferencing end iterators.
1168 (time_get::_M_extract_name): Likewise.
1169
1170 * include/bits/locale_facets.tcc
1171 (time_get::_M_extract_via_format, case 'e'): Don't try to
1172 be smart wrt returning the right __beg in case of parse
1173 error, time_get::_M_extract_num must be fixed instead.
1174
0c6b814a
PC
11752003-10-27 Paolo Carlini <pcarlini@suse.de>
1176
1177 PR libstdc++/12778
1178 * acinclude.m4 (GLIBCXX_CHECK_LFS): Use the C++ compiler.
1179 * aclocal.m4: Regenerate.
1180 * configure: Regenerate.
1181
0f09879b
BK
11822003-10-27 Benjamin Kosnik <bkoz@redhat.com>
1183
1184 * docs/html/17_intro/TODO: Add links.
1185 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1186 Uncomment.
1187
f20d2b78
PC
11882003-10-27 Paolo Carlini <pcarlini@suse.de>
1189
1190 PR libstdc++/12750
1191 * include/bits/locale_facets.tcc
1192 (time_get::_M_extract_via_format): Deal with code 'e'.
1193 * testsuite/22_locale/time_get/get_date/char/12750.cc: New.
1194 * testsuite/22_locale/time_get/get_date/wchar_t/12750.cc: Ditto.
1195
1196 * include/bits/locale_facets.tcc
1197 (time_get::_M_extract_via_format): Tweak to absolutely avoid
1198 dereferencing end iterators.
1199
1200 * include/bits/locale_facets.h (__verify_grouping):
1201 Const-ify second parameter.
1202 * include/bits/locale_facets.tcc (__verify_grouping): Ditto.
1203 * src/locale-inst.cc (__verify_grouping): Ditto.
1204
12052003-10-27 Paolo Carlini <pcarlini@suse.de>
1206
1207 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1208 Various things: 1- Avoid absolutely end iterator dereferences;
1209 2- Improve performance-wise the code skipping leading zeros;
1210 3- Fix two bugs wrt early bail out in case of parsing errors
1211 (see testcases); 4- General clean up.
1212 (num_get::_M_extract_int): Likewise, except 3-. Additionally,
1213 use __builtin_expect to favor base 10 inputs.
1214 * testsuite/22_locale/num_get/get/char/7.cc: New.
1215 * testsuite/22_locale/num_get/get/wchar_t/7.cc: Ditto.
1216
f883c8dc
PC
12172003-10-26 Paolo Carlini <pcarlini@suse.de>
1218
1219 * testsuite/22_locale/money_put/put/char/1.cc: Clean up.
1220 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Ditto.
1221
999bf60f
PC
12222003-10-25 Paolo Carlini <pcarlini@suse.de>
1223
1224 * include/bits/locale_facets.tcc (num_get::_M_extract_int):
1225 __pos in only incremented, never used its value, remove it.
1226
b2398b49
RM
12272003-10-24 Robert Millan <robertmh@gnu.org>
1228
1229 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add kfreebsd*-gnu
1230 and knetbsd*-gnu.
1231 * aclocal.m4: Regenerated.
1232 * configure: Regenerated.
1233
761faeec
PC
12342003-10-24 Paolo Carlini <pcarlini@suse.de>
1235
1236 * include/bits/locale_facets.tcc (money_get::do_get(...,
1237 long double&): Properly size the temporary buffer.
1238 * testsuite/22_locale/money_get/get/char/11.cc: New.
1239 * testsuite/22_locale/money_get/get/wchar_t/11.cc: Ditto.
1240
1241 * include/bits/locale_facets.tcc (num_put::_M_group_int,
1242 num_put::_M_group_float, money_put::do_put(..., const
1243 string_type&), collate::do_compare, collate::do_transform):
1244 Prefer basic_string::data() to c_str() when the '\0'
1245 terminator is not really needed.
1246
eebf21ef
PC
12472003-10-24 Paolo Carlini <pcarlini@suse.de>
1248
1249 * include/bits/locale_facets.tcc (__verify_grouping):
1250 Prefer '=' to an unnecessary '&='.
1251
ebaeca8b
PC
12522003-10-24 Paolo Carlini <pcarlini@suse.de>
1253
1254 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1255 Tweak my fix for libstdc++/12657.
1256
bf22935f
PC
12572003-10-24 Paolo Carlini <pcarlini@suse.de>
1258
1259 * include/bits/locale_facets.tcc (money_get::do_get(...,
1260 string_type&): Minor tweak to the previous commit.
1261
14628700
PC
12622003-10-24 Paolo Carlini <pcarlini@suse.de>
1263
1264 * include/bits/locale_facets.tcc (money_get::do_get(...,
1265 string_type&): Disregard the previous commit: doesn't hurt but
1266 doesn't accomplish anything useful either. This is the right
1267 one, speeding up greatly the function in case of early fail.
1268
cdd5cf72
PC
12692003-10-24 Paolo Carlini <pcarlini@suse.de>
1270
1271 * include/bits/locale_facets.tcc (money_get::do_get(...,
1272 string_type&): Move an if block, thus minimizing the amount
1273 of code processed anyway when __tmp_units.size() == 0.
1274
c21dbe85
PC
12752003-10-24 Paolo Carlini <pcarlini@suse.de>
1276
1277 * include/bits/locale_facets.tcc
1278 (time_get<>::_M_extract_via_format): Deal with case 'C' too,
1279 equivalent to 'y'.
1280
d2c354f3
BK
12812003-10-23 Benjamin Kosnik <bkoz@redhat.com>
1282
1283 * docs/html/documentation.html: Add a pointer to the doxygen style
1284 guide.
1285 * docs/html/17_intro/TODO: Update.
1286 * docs/html/test.html: Add instructions for running a subset of
1287 tests, update.
1288
60aa9fc3
PC
12892003-10-23 Paolo Carlini <pcarlini@suse.de>
1290
1291 * include/bits/locale_facets.tcc (money_get<>::do_get(...,
1292 string_type&)): Use find_first_not_of to strip leading
1293 zeros; if __tmp_units == "0" never prefix it with '-';
1294 always fail if __tmp_units is empty.
1295 * testsuite/22_locale/money_get/get/char/10.cc: New.
1296 * testsuite/22_locale/money_get/get/wchar_t/10.cc: Ditto.
1297
861f9573
PE
12982003-10-23 Phil Edwards <phil@codesourcery.com>
1299
1300 * config/os/vxworks/ctype_noninline.h: Adjust ctor to match
1301 2003-10-21 change.
1302
3c21d6e0
PC
13032003-10-22 Paolo Carlini <pcarlini@suse.de>
1304
1305 * include/bits/locale_facets.tcc (__int_to_char): Remove
1306 the const int parameter.
1307 (_M_insert_int): Update caller.
1308 * src/locale-inst.cc (__int_to_char): Update instantiations.
1309
bf5fe473
BK
13102003-10-22 Benjamin Kosnik <bkoz@redhat.com>
1311
1312 * include/bits/locale_facets.h: Correct byname facets for "C"
1313 locale.
1314 * config/locale/generic/ctype_members.cc: Same.
1315 * config/locale/generic/messages_members.h: Same.
1316 * config/locale/gnu/ctype_members.cc: Same.
1317 * config/locale/gnu/messages_members.h: Same.
1318 * include/bits/codecvt.h: Same.
1319 * src/ctype.cc: Same.
1320 * testsuite/22_locale/codecvt_byname/1.cc: New.
1321 * testsuite/22_locale/collate/1.cc: Edit.
1322 * testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
1323 * testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
1324 * testsuite/22_locale/ctype/1.cc: Derivation tests.
1325 * testsuite/22_locale/ctype/11844.cc: Move...
1326 * testsuite/22_locale/ctype_base/11844.cc: ...here.
1327 * testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
1328 * testsuite/22_locale/ctype_byname/1.cc: Name.
1329 * testsuite/22_locale/messages_byname/1.cc: New.
1330 * testsuite/22_locale/messages_byname/named_equivalence.cc: New.
1331 * testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
1332 * testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
1333 * testsuite/22_locale/numpunct/1.cc: Edit.
1334 * testsuite/22_locale/numpunct_byname/2.cc: Move...
1335 * testsuite/22_locale/numpunct/members/char/3.cc: ...here.
1336 * testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
1337 * testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
1338
3d05b345
PC
13392003-10-22 Paolo Carlini <pcarlini@suse.de>
1340
1341 PR libstdc++/8610
1342 * acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
1343 checking for the availability of int64_t.
1344 (GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
1345 * configure.ac: Call here.
1346 * acconfig.h: Add undef for the corresponding symbols.
1347 * config/io/basic_file_stdio.cc (__basic_file<char>::open):
1348 Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
1349 (__basic_file<char>::seekoff): Likewise, call lseek64 when
1350 available, otherwise lseek, checking the __off parameter.
1351 * include/bits/postypes.h: Typedef __streamoff_base_type
1352 to int64_t if available, otherwise long long.
1353 * aclocal.m4: Regenerate.
1354 * config.h.in: Likewise.
1355 * configure: Likewise.
1356
1357 * acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
1358 Use AC_TRY_LINK instead of AC_TRY_COMPILE.
1359
57d01e69
PC
13602003-10-22 Paolo Carlini <pcarlini@suse.de>
1361
1362 PR libstdc++/12657
1363 * include/bits/basic_ios.tcc (copyfmt(const basic_ios&)):
1364 Implement resolution of DR 292 (WP).
1365 * docs/html/ext/howto.html: Add entry for DR 292.
1366
6b5a2662
BK
13672003-10-21 Benjamin Kosnik <bkoz@redhat.com>
1368
1369 * include/ext/mt_allocator.h: Change include to gthr.h.
1370 * include/ext/rope: Same. Add _Refcount_base definitions.
1371 * include/ext/pool_allocator.h: Adjust namespaces.
1372 * include/bits/stl_threads.h (_Refcount_base): Move.
1373 Put remaining into namespace __gnu_cxx.
1374
82c2e3d4
BK
13752003-10-21 Benjamin Kosnik <bkoz@redhat.com>
1376
1377 PR libstdc++/9858
1378 * include/bits/locale_facets.h (ctype<char>): Remove
1379 __ctype_abstract_base.
1380 (ctype<char>::do_is): Remove.
1381 (ctype<char>::do_scan_is): Remove.
1382 * src/ctype.cc: Same. Inline the rest.
1383 * testsuite/22_locale/ctype/is/char/9858.cc: New.
1384 * config/os/aix/ctype_noninline.h: Adjust ctor.
1385 * config/os/bsd/freebsd/ctype_noninline.h: Same.
1386 * config/os/bsd/netbsd/ctype_noninline.h: Same.
1387 * config/os/djgpp/ctype_noninline.h: Same.
1388 * config/os/generic/ctype_noninline.h: Same.
1389 * config/os/gnu-linux/ctype_noninline.h: Same.
1390 * config/os/hpux/ctype_noninline.h: Same.
1391 * config/os/irix/irix5.2/ctype_noninline.h: Same.
1392 * config/os/irix/irix6.5/ctype_noninline.h: Same.
1393 * config/os/mingw32/ctype_noninline.h: Same.
1394 * config/os/newlib/ctype_noninline.h: Same.
1395 * config/os/qnx/qnx6.1/ctype_noninline.h: Same.
1396 * config/os/solaris/solaris2.5/ctype_noninline.h: Same.
1397 * config/os/solaris/solaris2.6/ctype_noninline.h: Same.
1398 * config/os/solaris/solaris2.7/ctype_noninline.h: Same.
1399 * config/os/windiss/ctype_noninline.h: Same.
1400
d23ad8c8
PC
14012003-10-21 Paolo Carlini <pcarlini@suse.de>
1402
1403 * src/locale.cc: Tweak a comment.
1404 * src/localename.cc: Move a comment.
1405
9540958e
BK
14062003-10-20 Benjamin Kosnik <bkoz@redhat.com>
1407
1408 PR libstdc++/10081
1409 * testsuite_hooks.h: Add pod_type, ctype and numpunct specializations.
1410 * testsuite_hooks.cc: Same.
1411 * 22_locale/numpunct/members/pod/1.cc: Edit.
1412 * 22_locale/numpunct/members/pod/2.cc: Same.
1413 * 27_io/basic_istream/sentry/char/3983-fstream.cc: Move ...
1414 * 27_io/basic_istream/sentry/char/3983-sstream.cc: Move ...
1415 * 27_io/basic_istream/extractors_arithmetic/pod/3983-1.cc: Here.
1416 * 27_io/basic_istream/extractors_character/pod/3983-2.cc: Here.
1417 * 27_io/basic_istream/extractors_other/pod/3983-3.cc: Here.
1418 * 27_io/basic_ostream/sentry/char/3983-fstream.cc: Remove.
1419 * 27_io/basic_ostream/sentry/char/3983-sstream.cc: Remove.
1420 * 27_io/basic_istream/sentry/pod/1.cc: New.
1421 * 27_io/basic_ostream/sentry/pod/1.cc: New.
1422 * 21_strings/basic_string/inserters_extractors/pod/10081-in.cc: New.
1423 * 21_strings/basic_string/inserters_extractors/pod/10081-out.cc: New.
1424
27d54b2a
RO
14252003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1426
1427 * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
1428 of external _MIPS_SIM_ABI32.
1429
65fc9769
PE
14302003-10-20 Phil Edwards <phil@codesourcery.com>
1431
1432 * configure.ac: Fix comment typo.
1433 * configure.host: Add vxworks to host_os switch.
1434 * crossconfig.m4: Remove old commented os_include_dir variables
1435 left over from autotools transition.
1436 (*-vxworks): New stanza.
1437 (*-windiss): Add missing symbols.
1438 * configure: Regenerate.
1439 * config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
1440 config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
1441 New files.
1442 * config/os/windiss/os_defines.h: Define __C9X__.
1443
47395a24
DE
14442003-10-19 David Edelsohn <edelsohn@gnu.org>
1445
1446 PR other/12506
1447 * configure.host (aix4,aix*): Define os_include_dir to os/generic.
1448
8f4c7b67
AT
14492003-10-18 Andreas Tobler <a.tobler@schweiz.ch>
1450
1451 * src/locale.cc (locale::_S_initialize): Re-apply workaround a
1452 confusion of the use of the gthr API when __gthread_active_p()
1453 returns true.
1454
c755e77d
BK
14552003-10-17 Benjamin Kosnik <bkoz@redhat.com>
1456
1457 * src/Makefile.am: Add new files.
1458 * src/Makefile.in: Regenerate.
1459 * src/globals.cc: Split into..
1460 * src/globals_io.cc: New.
1461 * src/globals_locale.cc: New.
1462 * src/ios.cc: Split into...
1463 * src/ios_init.cc: New.
1464 * src/ios_locale.cc: New.
1465 * src/locale-inst.cc: Split into..
1466 * src/wlocale-inst.cc: New.
1467 * src/locale-misc-inst.cc: New.
1468 * src/locale.cc, src/localename: Split into...
1469 * src/locale_facets.cc: New.
1470 * src/locale_init.cc: New.
1471 * src/wstring-inst.cc: Add copyright info.
1472
4c4809c1
BK
14732003-10-16 Petur Runolfsson <peturr02@ru.is>
1474
4c4809c1
BK
1475 PR libstdc++/11450
1476 PR libstdc++/11543
1477 PR libstdc++/12065
1478 * config/io/basic_file_stdio.cc (__basic_file::seekoff):
1479 Change return value from streampos to streamoff.
1480 (__basic_file::seekpos): Delete.
1481 * config/io/basic_file_stdio.h: Same.
1482 * config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
1483 * include/Makefile.am (bits_headers): Add bits/postypes.h.
1484 * include/bits/char_traits.h: Include bits/postypes.h instead of
1485 bits/fpos.h.
1486 * include/bits/fstream.tcc (basic_filebuf::open,
1487 basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
1488 values, use == and != instead.
1489 (basic_filebuf::_M_seek): Use explicit conversion from streamoff
1490 to pos_type.
1491 (basic_filebuf::imbue): Don't use ! on pos_type values, use
1492 == instead. Don't use __check_facet(_M_codecvt) unless is_open().
1493 * include/bits/postypes.h: New file.
1494 Add __streamoff_base_type typedef, streamsize.
1495 (streamoff, streampos, wstreampos): Define typedefs, with
1496 streamoff defined as...
1497 (streamoff): New class. Document implementation defined
1498 aspects.
1499 (fpos): New implementation. Document implementation defined
1500 aspects.
1501 * include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
1502 explicit conversion from pos_type to off_type.
1503 * include/std/std_iosfwd.h: Include bits/postypes.h instead
1504 of bits/fpos.h.
1505 * testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
1506 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
1507 * testsuite/27_io/fpos/11450.cc: New test.
1508 * testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
1509 * testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
1510 * testsuite/27_io/types/3.cc: New test.
1511
15122003-10-16 Benjamin Kosnik <bkoz@redhat.com>
f883c8dc
PC
1513
1514 * configure.host: Remove fpos_include_dir.
1515 * configure.ac: Remove FPOS_INC_SRCDIR.
1516 * configure: Regenerate.
1517 * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
1518 * aclocal.m4: Regenerate.
1519 * include/Makefile.am (host_headers): Remove fpos.h.
1520 (bits_headers): Add postypes.h.
1521 * include/Makefile.in: Regenerate.
1522 * config/os/gnu-linux/fposh: Remove.
1523 * config/os/generic/fpos.h: Remove.
1524
1525 * testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
1526 * testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
1527 * testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
1528 * testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
1529 * testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
1530 * testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
1531 * testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
1532 * testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
1533 * testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
1534 * testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
1535 * testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
1536 * testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
1537 * testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
1538 * testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
1539 * testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
1540 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
1541 * testsuite/27_io/objects/char/10.cc: Same.
4c4809c1 1542
0392ff98
PC
15432003-10-16 Paolo Carlini <pcarlini@suse.de>
1544
1545 * src/locale.cc (locale::locale(const char*)): ... one
1546 more comparison missed in the previous commit.
1547
d2f663d1
BK
15482003-10-16 Benjamin Kosnik <bkoz@redhat.com>
1549
5d78fe72
BK
1550 * acconfig.h: Add HAVE_DRAND48.
1551 * crossconfig.m4: Remove ISATTY.
d2f663d1
BK
1552 * aclocal.m4: Regenerated.
1553 * config.h.in: Regenerated.
5d78fe72 1554 * configure: Regenerated.
d2f663d1 1555
068c84e3
BI
15562003-10-16 Bernardo Innocenti <bernie@develer.com>
1557
1558 * config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
1559 __mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
1560 Document SMP safeness of asm macros.
1561
eaed902b
PC
15622003-10-16 Paolo Carlini <pcarlini@suse.de>
1563
1564 * src/locale.cc (locale::locale(const char*)): Tweak
1565 a couple of comparisons to use basic_string operators.
1566
f991b1d8
PC
15672003-10-16 Paolo Carlini <pcarlini@suse.de>
1568
1569 PR libstdc++/12540
1570 * config/locale/gnu/monetary_members.cc
1571 (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct):
1572 Don't leak memory if new throws.
1573 * src/locale.cc (locale::locale(const char*)): In order not
1574 to leak memory in case new throws, use a basic_string type
1575 for __res too and avoid strdup.
1576
84e72d83
JB
15772003-10-14 Jeff Bailey <jbailey@nisa.net>
1578
1579 PR libstdc++/12562
1580 * crossconfig.m4: Share the config between *-linux* and *-gnu*.
1581 * configure: Regenerate.
1582
be3faf89
CW
15832003-10-14 Carlo Wood <carlo@alinoe.com>
1584
1585 PR libstdc++/12600
1586 * include/bits/demangle.h (session<Allocator>::
1587 decode_unqualified_name(string_type& output)): Fail on a
1588 <operator-name> when decoding <template-argument>.
1589 * testsuite/demangle/regression/cw-15.cc: New.
1590
1638f5c9
PC
15912003-10-14 Paolo Carlini <pcarlini@unitus.it>
1592
1593 PR libstdc++/11480
1594 * include/bits/stl_algo.h (unique): Fix.
1595 * testsuite/25_algorithms/unique.cc: Move to unique/1.cc.
1596 * testsuite/25_algorithms/unique/11480.cc: New, from the PR.
1597 * testsuite/25_algorithms/unique/2.cc: New.
1598
42db0f21
PC
15992003-10-14 Paolo Carlini <pcarlini@unitus.it>
1600
1601 * src/localename.cc (_M_replace_categories, M_replace_facet):
1602 Const-ify a couple of variables.
1603
9dccaa6b
PR
16042003-10-14 Petur Runolfsson <peturr02@ru.is>
1605 Andreas Tobler <a.tobler@schweiz.ch>
1606
1607 * src/locale.cc (locale::_S_initialize): Workaround a confusion
1608 of the use of the gthr API when __gthread_active_p() returns true.
1609
a62e7311
PR
16102003-10-12 Petur Runolfsson <peturr02@ru.is>
1611 Paolo Carlini <pcarlini@unitus.it>
1612
1613 PR libstdc++/11460
1614 * src/strstream.cc (pbackfail): Fix to use to_int_type.
1615 * testsuite/backward/11460.cc: New, from the PR.
1616
f5677b15
PC
16172003-10-12 Paolo Carlini <pcarlini@unitus.it>
1618
1619 * config/locale/ieee_1003.1-2001/codecvt_specializations.h:
1620 Change #ifdef _GLIBCXX_RESOLVE_LIB_DEFECTS to a comment.
1621 * include/bits/basic_string.tcc: Likewise.
1622 * include/bits/ios_base.h: Likewise.
1623 * include/bits/istream.tcc: Likewise.
1624 * include/bits/locale_facets.tcc: Likewise.
1625 * include/bits/ostream.tcc: Likewise.
1626 * include/bits/stl_function.h: Likewise.
1627 * include/bits/stl_multiset.h: Likewise.
1628 * include/bits/stl_pair.h: Likewise.
1629 * include/bits/stl_set.h: Likewise.
1630 * include/bits/streambuf_iterator.h
1631 * include/std/std_iosfwd.h: Likewise.
1632 * include/std/std_istream.h: Likewise.
1633 * include/std/std_sstream.h: Likewise.
1634 * include/std/std_streambuf.h: Likewise.
1635 * src/ios.cc: Likewise.
1636 * include/bits/c++config:
1637 Comment out #define _GLIBCXX_RESOLVE_LIB_DEFECTS 1.
1638 * testsuite/27_io/ios_base/cons/assign_neg.cc: Tweak a
1639 dg-error directive due to removal of a blank line.
1640 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
1641
c411fdae
AT
16422003-10-12 Andreas Tobler <a.tobler@schweiz.ch>
1643 Paolo Carlini <pcarlini@unitus.it>
1644
1645 PR libstdc++/11844/11740 (cont)
1646 * config/os/generic/ctype_inline.h (ctype<char>::is):
1647 Generically, use a bitmasksize of 15 (instead of 10);
1648 Fix the logic to actually return (M & m) != 0 as per
1649 22.2.1.1.2.
1650
796d7a86
BI
16512003-10-11 Bernardo Innocenti <bernie@develer.com>
1652
1653 * crossconfig.m4 (*-uclinux*): New target.
1654 * configure: Regenerate.
1655
6b61bca4
PC
16562003-10-10 Paolo Carlini <pcarlini@unitus.it>
1657
1658 * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT))
1659 Avoid unnecessarily calling __builtin_alloca and dealing
1660 explicitly with width() smaller than zero.
1661 (operator<<(basic_ostream&, char), operator<<(basic_ostream&,
1662 const _CharT*), operator<<(basic_ostream<_CharT, _Traits>&,
1663 const char*), operator<<(basic_ostream<char, _Traits>&,
1664 const char*), operator<<(basic_ostream, const basic_string&)):
1665 Likewise.
1666
5aaa2108
BK
16672003-10-09 Benjamin Kosnik <bkoz@redhat.com>
1668
1669 * config/linker-map.gnu: Make more *_type_info bits visible.
1670 Move new/delete bits back into GLIBCXX space.
1671
1672 * include/bits/locale_classes.h: Move _M_id out of line, so that
1673 locale::id::_S_highwater can be removed from the export list.
1674 * src/locale.cc (locale::id::_M_id): Define.
1675
64833be0
AT
16762003-10-09 Andreas Tobler <a.tobler@schweiz.ch>
1677
1678 * testsuite/lib/libstdc++.exp: Set LD_LIBRARY_PATH_64 for
1679 SPARC64.
1680
2f800bcc
PC
16812003-10-09 Paolo Carlini <pcarlini@unitus.it>
1682
1683 PR libstdc++/11844
1684 * config/os/aix/ctype_base.h: Fix 'alnum' and 'graph'
1685 to conform to the requirements of 22.2.1.
1686 * config/os/bsd/freebsd/ctype_base.h: Likewise.
1687 * config/os/djgpp/ctype_base.h: Likewise.
1688 * config/os/generic/ctype_base.h: Likewise.
1689 * config/os/gnu-linux/ctype_base.h: Likewise.
1690 * config/os/hpux/ctype_base.h: Likewise.
1691 * config/os/irix/irix6.5/ctype_base.h: Likewise.
1692 * config/os/solaris/solaris2.6/ctype_base.h: Likewise.
1693 * config/os/solaris/solaris2.7/ctype_base.h: Likewise.
1694 * testsuite/22_locale/ctype/11844.cc: New.
1695
1696 * config/locale/generic/ctype_members.cc (do_is):
1697 Generically, use a bitmasksize of 15 (instead of 10), since
1698 we don't know the numerical encoding of the various categories
1699 in the underlying /usr/include/ctype.h.
1700
93d04686
BK
17012003-10-09 Benjamin Kosnik <bkoz@redhat.com>
1702
1703 * src/string-inst.cc: Prune.
1704 * testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
1705 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
1706
17072003-10-09 Petur Runolfsson <peturr02@ru.is>
1708
1709 * src/io-inst.cc: Don't include iostream.
1710 * include/bits/ios_base.h (ios_base::failure): Use string.
1711 * src/Makefile.am: Add ios_failure.cc.
1712 * src/Makefile.in: Regenerate.
1713 * src/ios.cc: Move ios_base::failure definitions to...
1714 * src/ios_failure.cc: ...here. New.
1715
1a139c59
PR
17162003-10-09 Petur Runolfsson <peturr02@ru.is>
1717
1718 PR libstdc++/9874
1719 * include/bits/fstream.tcc (basic_filebuf::seekoff):
1720 Move code needed for both seekoff and seekpos...
1721 (basic_filebuf::_M_seek): ...here. New function.
1722 (basic_filebuf::seekpos): Don't call seekoff, call _M_seek.
1723 * include/std/std_fstream.h (basic_filebuf::_M_seek): Declare it.
1724 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: New test.
1725
1726 * testsuite/22_locale/locale/cons/12438.cc: Increase memory limit.
1727
a761195b
PC
17282003-10-08 Paolo Carlini <pcarlini@unitus.it>
1729
1730 * include/bits/locale_facets.tcc: More minor cosmetic
1731 changes and const-ifications of some variables.
1732
905df1fb
PC
17332003-10-07 Paolo Carlini <pcarlini@unitus.it>
1734
1735 * include/bits/locale_facets.tcc: Minor cosmetic changes
1736 and const-ifications of some variables.
1737
1738 * include/bits/locale_facets.tcc
1739 (money_get::do_get(..., string_type&)): Simplify an if-else.
1740
ba9b12d1
PC
17412003-10-06 Paolo Carlini <pcarlini@unitus.it>
1742
1743 PR libstdc++/11740
1744 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is):
1745 Fix to actually return (M & m) != 0 as per 22.2.1.1.2.
1746 * config/locale/generic/ctype_members.cc: Same.
1747 * testsuite/22_locale/ctype/is/wchar_t/11740.cc: New.
1748
e4f7d0a1
PC
17492003-10-06 Paolo Carlini <pcarlini@unitus.it>
1750
1751 * include/bits/locale_facets.tcc (__pad<>::_S_pad):
1752 Improve performance-wise: avoid one traits::copy, avoid
1753 the __builtin_alloca, streamline.
1754
5b577977
PC
17552003-10-05 Paolo Carlini <pcarlini@unitus.it>
1756
1757 * include/bits/locale_facets.tcc
1758 (num_put::do_put(..., bool)): Prefer ?: to if-else.
1759 (time_get::_M_extract_name): Qualify min with std::.
1760 (__pad<>::_S_pad): Constify two variables; simplify an
1761 if-else statement factoring out some code.
1762
1763 * include/bits/locale_facets.tcc: Minor cosmetic changes.
1764
dff186db
PC
17652003-10-04 Paolo Carlini <pcarlini@unitus.it>
1766
1767 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
1768 Constify a couple of variables.
1769 (num_get::do_get(..., bool&)): Constify __c; prefer *__beg,
1770 ++__beg to *__beg++.
1771
2811b823
PC
17722003-10-04 Paolo Carlini <pcarlini@unitus.it>
1773 Petur Runolfsson <peturr02@ru.is>
1774
1775 * include/ext/stdio_sync_filebuf.h: Don't include the whole
1776 <fstream>, only <streambuf> and <cstdio>.
1777
184b434c
PC
17782003-10-04 Paolo Carlini <pcarlini@unitus.it>
1779
1780 PR libstdc++/12206
1781 * include/bits/fstream.tcc (imbue): In case a codecvt facet
1782 is not available, set _M_codecvt = 0.
1783 * testsuite/27_io/basic_filebuf/imbue/12206.cc: New.
1784
cafc7337
HB
17852003-10-02 Harald Boehme <boehme@informatik.hu-berlin.de>
1786
1787 PR libstdc++/12451
1788 * libsupc++/cxxabi.h: Move forward declaration of __class_type_info.
1789
bb1b12ec
BK
17902003-10-02 Benjamin Kosnik <bkoz@redhat.com>
1791
1792 * include/bits/locale_classes.h (locale::facet::_S_get_c_name): Add.
1793 * src/locale.cc: Define.
1794 * src/localename.cc: Use it.
1795 * config/locale/generic/time_members.h: Same.
1796 * config/locale/gnu/messages_members.h: Same.
1797 * config/locale/gnu/time_members.h: Same.
1798
8dcaff28
PC
17992003-10-02 Paolo Carlini <pcarlini@unitus.it>
1800
1801 PR libstdc++/12232
1802 * include/bits/fstream.tcc (seekoff): Ignore the openmode
1803 argument; simplify.
1804 * config/io/basic_file_stdio.h (__basic_file<char>::seekoff,
1805 seekpos): Remove the openmode argument.
1806 * config/io/basic_file_stdio.cc (__basic_file<char>::seekoff,
1807 seekpos): Remove redundant placeholder for the openmode argument.
1808 * testsuite/27_io/basic_filebuf/seekoff/char/12232.cc: New.
1809 * testsuite/27_io/basic_filebuf/seekoff/char/3-in.cc: Tweak.
1810 * testsuite/27_io/basic_filebuf/seekoff/char/3-out.cc: Likewise.
1811 * testsuite/27_io/basic_filebuf/seekpos/char/3-in.cc: Likewise.
1812 * testsuite/27_io/basic_filebuf/seekpos/char/3-out.cc: Likewise.
1813
5c109a17
BK
18142003-10-02 Benjamin Kosnik <bkoz@redhat.com>
1815
1816 * src/locale.cc (locale::_S_initialize): Use __gthread_active_p.
1817 (locale::facet::_S_get_c_locale): Same.
1818
8ae81136
BK
18192003-10-02 Benjamin Kosnik <bkoz@redhat.com>
1820
1821 * config/linker-map.gnu: Export _S_get_c_locale instead of
1822 _S_c_locale object.
1823
18242003-10-02 Petur Runolfsson <peturr02@ru.is>
1825
1826 * config/locale/generic/c_locale.cc
1827 (category_names, locale::_S_categories): Const qualify.
1828 * config/locale/gnu/c_locale.cc: Same.
1829 * config/locale/generic/time_members.h (__timepunct::__timepunct):
1830 Copy string contents before assigning to _M_name_timepunct,
1831 qualify strcpy and strlen with std::.
1832 * config/locale/gnu/time_members.h: Same.
1833 * config/locale/gnu/messages_members.h (messages::messages):
1834 Copy string contents before assigning to _M_name_messages,
1835 qualify strcpy and strlen with std::.
1836 * config/os/gnu-linux/ctype_noninline.h
1837 (ctype<char>::classic_table()): Don't call locale::classic().
1838 * include/bits/locale_classes.h
1839 (locale::_S_categories): Const qualify.
1840 (locale::_S_once, locale::_S_initialize_once,
1841 locale::facet::_S_once, locale::facet::_S_initialize_once,
1842 locale::facet::_S_get_c_locale): Declare.
1843 (locale::_S_initialize): Don't define.
1844 (locale::facet::_S_c_locale): Make private.
1845 (locale::facet::_S_c_name): Same, const qualify.
1846 (locale::_Impl::_Impl(facet**, size_t, bool)): Drop unused
1847 parameters, add throw() specifier.
1848 * include/bits/locale_facets.h (__timepunct::_M_name_timepunct,
1849 messages::_M_name_messages): Const qualify.
1850 * src/locale.cc
1851 (locale::_S_once, locale::facet::_S_once): Define.
1852 (locale::classic): Move initialization code...
1853 (locale::_S_initialize_once): ...here.
1854 (locale::_S_initialize): Call _S_initialize_once through
1855 __gthread_once.
1856 (locale::facet::_S_initialize_once): Initialize _S_c_locale.
1857 (locale::facet::_S_get_c_locale): Call _S_initialize_once through
1858 __gthread_once before returning _S_c_locale.
1859 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool)):
1860 Drop unused parameters, add throw() specifier, don't initialize
1861 locale::facet::_S_c_locale and _S_c_name.
1862
1863 * config/locale/generic/messages_members.h:
1864 Replace _S_c_locale with _S_get_c_locale().
1865 * config/locale/gnu/c_locale.cc: Same.
1866 * config/locale/gnu/messages_members.h: Same.
1867 * config/locale/gnu/numeric_members.cc: Same.
1868 * config/locale/gnu/time_members.cc: Same.
1869 * config/os/gnu-linux/ctype_noninline.h: Same.
1870 * include/bits/locale_facets.h: Same.
1871 * include/bits/locale_facets.tcc: Same.
1872 * src/codecvt.cc: Same.
1873 * src/ctype.cc: Same.
1874
4a035cf7
CW
18752003-10-02 Carlo Wood <carlo@alinoe.com>
1876
1877 * include/bits/demangle.h (demangle<Allocator>::symbol(char const*)):
1878 Decode symbols that start with _GLOBAL_[ID]_ differently: the
1879 trailing part ends with a terminating zero and is not necessarily an
1880 encoding.
1881 * src/demangle.cc (): Same.
1882 * testsuite/demangle/regression/cw-13.cc: Adjust for new output.
1883
86b4ab73
PC
18842003-10-02 Paolo Carlini <pcarlini@unitus.it>
1885
1886 * testsuite/22_locale/locale/cons/12438.cc: Use
1887 __gnu_test::try_named_locale("").
1888
222a5b1d
RO
18892003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1890
1891 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE_0): Define.
1892 (GLIBCXX_CHECK_STDLIB_SUPPORT): Use it to test for lrand48
1893 instead of drand48.
1894 * acconfig.h (HAVE_DRAND48): Renamed to HAVE_LRAND48.
1895 * crossconfig.m4 (*-freebsd*): Define HAVE_LRAND48 instead of
1896 HAVE_DRAND48.
1897 * config.h.in, configure: Regenerate.
1898 * include/bits/stl_algo.h: Use _GLIBCXX_HAVE_LRAND48 to guard
1899 lrand48 use.
1900
e39dd1ce
NM
19012003-10-01 Nathan Myers <ncm@cantrip.org>
1902
1903 * include/bits/locale_facets.tcc (time_put::put): Avoid
1904 expensive *__s++, in favor of *__s, ++__s.
1905
530ce551
PC
19062003-10-01 Paolo Carlini <pcarlini@unitus.it>
1907
1908 * include/bits/locale_facets.tcc (time_put::put): Minor
1909 tweak to the previous commit.
1910
52a16d08
PC
19112003-10-01 Paolo Carlini <pcarlini@unitus.it>
1912
1913 PR libstdc++/12439
1914 * include/bits/locale_facets.tcc (time_put::put): Deal
1915 with the three issues pointed out by the PR.
1916 * testsuite/22_locale/time_put/put/char/12439_1.cc: New.
1917 * testsuite/22_locale/time_put/put/char/12439_3.cc: New.
1918 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: New.
1919 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: New.
1920 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: New.
1921
ae7c3ba5
PC
19222003-09-30 Paolo Carlini <pcarlini@unitus.it>
1923
1924 * include/bits/stl_algo.h: Minor cosmetic reformattings.
1925
cbc6c296
PC
19262003-09-30 Paolo Carlini <pcarlini@unitus.it>
1927
1928 * include/bits/stl_algo.h (search_n): Tweak, to spare the
1929 first --__n.
1930
2ea247d3
PC
19312003-09-30 Paolo Carlini <pcarlini@unitus.it>
1932
1933 * testsuite/22_locale/locale/cons/12352.cc: Explicitly
1934 qualify exception name.
1935
155f6fbb
PC
19362003-09-30 Paolo Carlini <pcarlini@unitus.it>
1937
1938 PR libstdc++/12438
1939 * include/bits/locale_facets.tcc (locale::combine): Don't
1940 leak memory if _M_replace_facet throws.
1941 * testsuite/22_locale/locale/cons/12438.cc: New, from the PR.
1942
1943 * include/bits/locale_classes.h (locale::locale(const locale&,
1944 _Facet*)): Tweak, use consistently _M_remove_reference.
1945
70863cbd
PC
19462003-09-30 Paolo Carlini <pcarlini@unitus.it>
1947
1948 PR libstdc++/12352 (cont)
1949 * src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
1950 Don't leak __cloc; don't leak if any of the _M_init_facet(...)
1951 calls fail.
1952 (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak.
1953 (locale::_Impl::~_Impl): Don't do anything if !_M_facets,
1954 !_M_caches, !_M_names.
1955
51ac684e
RO
19562003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1957
1958 * configure.host: Handle Solaris 2.5 micro releases explicitly.
1959 Remove wildcards from Solaris 2.6, 7-9: there were no
1960 micro releases.
1961 Treat Solaris 10 and up like 7-9.
1962
6821a40b
PC
19632003-09-29 Paolo Carlini <pcarlini@unitus.it>
1964
1965 * include/bits/stl_algo.h (search_n): Improve the previous
1966 fix as suggested by Martin.
1967
e5012ba5
PC
19682003-09-29 Paolo Carlini <pcarlini@unitus.it>
1969
1970 PR libstdc++/12296
1971 * include/bits/istream.tcc (peek): Set eofbit if sgetc
1972 returns eof.
1973 * testsuite/27_io/basic_istream/peek/char/12296.cc:
1974 New, from the PR.
1975
19762003-09-29 Nathan Myers <ncm@cantrip.org>
1977 Paolo Carlini <pcarlini@unitus.it>
1978
1979 PR libstdc++/11400
1980 * include/bits/stl_algo.h (search_n):
1981 Use iterator_traits<>::difference_type for __n.
1982 * testsuite/25_algorithms/search_n/11400.cc: New, from the PR.
1983
6cd6aed7
PC
19842003-09-29 Paolo Carlini <pcarlini@unitus.it>
1985
1986 * testsuite/22_locale/locale/cons/12352.cc:
1987 Use __attribute__((unused)) for test.
1988
33b16690
UW
19892003-09-26 Ulrich Weigand <uweigand@de.ibm.com>
1990
1991 * testsuite/22_locale/time_put/put/char/2.cc (test_02): Allow either
1992 "Son" or "So" as abbreviated name for Sunday in de_DE locale.
1993 * testsuite/22_locale/time_put/put/wchar_t/2.cc (test_02): Likewise.
1994
2d07c3f5
BS
19952003-09-26 Brad Spencer <spencer@infointeractive.com>
1996
1997 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc:
1998 Explicitly qualify exceptions.
1999 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Same.
2000 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2001 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2002 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2003
91675f9d
PC
20042003-09-25 Paolo Carlini <pcarlini@unitus.it>
2005
2006 PR libstdc++/12352
2007 * src/localename.cc (locale::_Impl::_Impl(const _Impl&,
2008 size_t)): Don't leak if memory allocations for _M_facets,
2009 _M_caches, and _M_names fail.
2010 (locale::_Impl::_Impl(const char*, size_t)): Ditto.
2011 (locale::_Impl::_M_replace_categories(const _Impl*,
2012 category)): Ditto.
2013 (locale::_Impl::_M_install_facet(const locale::id*,
2014 const facet*)): Ditto.
2015 * include/bits/locale_classes.h (locale::locale(const locale&,
2016 _Facet*)): Don't leak memory.
2017 * testsuite/22_locale/locale/cons/12352.cc: New, from the PR.
2018
2019 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t,
2020 bool)): Qualify with std:: strcpy, tweak.
2021 * include/bits/locale_classes.h
2022 (locale::_Impl::_M_check_same_name): Qualify strcmp.
2023
2b1be54b
BS
20242003-09-25 Brad Spencer <spencer@infointeractive.com>
2025
2026 PR libstdc++/6072
775ee48e
BK
2027 * acinclude.m4: Split out checks for vfwscanf, vswscanf, vwscanf,
2028 wcstof, iswblank.
2b1be54b
BS
2029 * aclocal.m4: Regenerate.
2030 * config.h.in: Regenerate.
2031 * configure: Regenerate.
2032 * crossconfig.m4: Add in wchar_t bits for solaris crosses.
2033 * config/io/basic_file_stdio.cc: Guard unistd.h.
2034 * include/c_compatibility/wchar.h: Guard extra wchar_t functionality.
2035 * include/c_std/std_cwchar.h: Same.
2036 * include/c_std/std_cwctype.h: Same.
2037
465ad0c7
BK
20382003-09-25 Benjamin Kosnik <bkoz@redhat.com>
2039
775ee48e 2040 PR libstdc++/11065
465ad0c7
BK
2041 * config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_is): Fix.
2042 * config/locale/generic/ctype_members.cc: Same.
2043 * testsuite/22_locale/ctype/is/char/1.cc: Initialize mask.
2044 * testsuite/22_locale/ctype/is/wchar_t/1.cc: Same.
2045
2046 * config/os/generic/ctype_inline.h: Update.
2047
7b865c36
UW
20482003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
2049
2050 * src/Makefile.am (version_dep): New variable.
2051 (libstdc___la_DEPENDENCIES): Use it to add dependency on
2052 libstdc++-symbol.ver only when using symbol versioning.
2053 * src/Makefile.in: Regenerate.
2054
11f10e6b
BK
20552003-09-23 Benjamin Kosnik <bkoz@redhat.com>
2056
2057 * include/bits/locale_facets.tcc: Tweak to avoid warnings.
2058 * testsuite/testsuite_hooks.h: Same.
2059 * testsuite/*/*.cc: Same.
2060
89ec0c4b
PR
20612003-09-22 Petur Runolfsson <peturr02@ru.is>
2062
2063 * include/bits/istream.tcc (basic_istream::read,
2064 basic_istream::readsome, basic_istream::putback,
2065 basic_istream::unget, operator>>(basic_istream, CharT)):
2066 Avoid redundant setstate(failbit) calls when sentry::operator bool()
2067 returns false.
2068
dc25fbc7
CW
20692003-09-22 Carlo Wood <carlo@alinoe.com>
2070
2071 PR libstdc++/12365
2072 * include/bits/demangle.h (qualifier(int, cv_qualifier_nt,
2073 char const*, int, int)): Remove unused identifier
2074 cv_qualifier for overloaded constructor.
2075
b2bc3339
BK
20762003-09-18 Benjamin Kosnik <bkoz@redhat.com>
2077
2078 PR libstdc++/11504
2079 * acinclude.m4 (GLIBCXX_EXPORT_FLAGS): Add -Wcast-qual to
2080 WARN_FLAGS, remove -Wno-format.
2081 * aclocal.m4: Regenerate.
2082 * configure: Regenerate.
2083
0b5ce4f1
PR
20842003-09-18 Petur Runolfsson <peturr02@ru.is>
2085
2086 * config/io/basic_file_stdio.cc (sys_getc, sys_ungetc): Delete.
2087 * config/io/basic_file_stdio.h: Same.
2088 * include/std/std_fstream.h (__ctype_type): Delete.
2089 * include/std/std_streambuf.h (__ctype_type, __state_type): Delete.
2090
43892f8c
BK
20912003-09-17 Benjamin Kosnik <bkoz@redhat.com>
2092
2093 PR libstdc++/12239
2094 * configure.host (abi_baseline_pair): Error out on solaris2
2095 configurations without a minor version number.
2096
4bc8ae23
PE
20972003-09-13 Phil Edwards <phil@codesourcery.com>
2098
2099 * docs/doxygen/run_doxygen: Clear GENERATE_TAGFILE entirely
2100 if man pages are on.
2101 * docs/doxygen/user.cfg.in: And here.
2102
dbc66058
DJ
21032003-09-10 Daniel Jacobowitz <drow@mvista.com>
2104 Andreas Jaeger <aj@suse.de>
2105
2106 PR libstdc++/12189
2107 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't build
2108 abi_check if cross compiling.
2109 * aclocal.m4: Regenerated.
2110 * configure: Regenerated.
2111
520abf69
JO
21122003-09-10 Jeffrey D. Oldham <oldham@codesourcery.com>
2113
2114 * libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
2115 NULL, return NULL. This reflects a C++ ABI change 2003 Sep 05.
2116 (__cxa_vec_new3): Likewise.
2117
8c8dec01
PR
21182003-09-10 Petur Runolfsson <peturr02@ru.is>
2119
2120 * include/bits/fstream.tcc (basic_filebuf::seekoff):
2121 Use codecvt::length to handle variable-width stateless encodings
2122 correctly.
2123 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: New test.
2124 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/2.cc: New test.
2125
80e46d77
AM
21262003-09-10 Alan Modra <amodra@bigpond.net.au>
2127
2128 * config/io/basic_file_stdio.cc (_M_open_mode): Assign __p_mode
2129 rather than or'ing.
2130
e517f636
AM
21312003-09-09 Alan Modra <amodra@bigpond.net.au>
2132
2133 * configure: Regenerate.
2134
263594d2
DE
21352003-09-09 David Edelsohn <edelsohn@gnu.org>
2136
2137 * src/ios.cc (ios_base::Init::Init): Remove unnecessary
2138 qualifier from _S_synced_with_stdio.
2139
21402003-09-09 Bernardo Innocenti <bernie@develer.com>
e7f115de
BI
2141
2142 * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
2143
f1813b69
PR
21442003-09-04 Petur Runolfsson <peturr02@ru.is>
2145
2146 PR libstdc++/9028
2147 * include/bits/fstream.tcc
2148 (basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
2149 (basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
2150 _M_ext_buf_size, _M_ext_next and _M_ext_end.
2151 (basic_filebuf::underflow): Handle variable-width stateless
2152 encodings (codecvt::encoding() == 0), including UTF-8.
2153 * include/std/std_fstream.h (basic_filebuf):
2154 Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
2155 * testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
2156 * testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
2157 * testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
2158 * testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
2159 * testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
2160 * testsuite/27_io/objects/wchar_t/12.cc: New test.
2161 * testsuite/27_io/objects/wchar_t/13.cc: New test.
2162
7976070c
JW
21632003-09-04 Jonathan Wakely <redi@gcc.gnu.org>
2164
2165 * docs/html/faq/index.html: Note that a namespace alias can't be
2166 used when specialising templates in extension namespace.
2167 * docs/html/faq/index.txt: Regenerate.
2168
149639d4
PR
21692003-09-03 Petur Runolfsson <peturr02@ru.is>
2170
2171 PR libstdc++/12048
2172 * include/ext/stdio_sync_filebuf.h
2173 (stdio_sync_filebuf::_M_unget_buf): Declare it.
2174 (stdio_sync_filebuf::stdio_sync_filebuf): Initialize _M_unget_buf.
2175 (stdio_sync_filebuf::uflow): Store the returned character in
2176 _M_unget_buf.
2177 (stdio_sync_filebuf::pbackfail): If argument is eof(), pass
2178 _M_unget_buf to syncungetc(). Set _M_unget_buf to eof().
2179 (stdio_sync_filebuf<char>::xsgetn): Store last read character in
2180 _M_unget_buf, if any, else eof().
2181 (stdio_sync_filebuf<wchar_t>::xsgetn: Store last read character in
2182 _M_unget_buf, if any, else eof().
2183 * testsuite/27_io/objects/char/12048.cc: Rename to...
2184 * testsuite/27_io/objects/char/12048-1.cc: ...this.
2185 * testsuite/27_io/objects/char/12048-2.cc: New test.
2186 * testsuite/27_io/objects/char/12048-3.cc: New test.
2187 * testsuite/27_io/objects/char/12048-4.cc: New test.
2188 * testsuite/27_io/objects/char/12048-5.cc: New test. XFAIL.
2189 * testsuite/27_io/objects/wchar_t/12048-1.cc: New test.
2190 * testsuite/27_io/objects/wchar_t/12048-2.cc: New test.
2191 * testsuite/27_io/objects/wchar_t/12048-3.cc: New test.
2192 * testsuite/27_io/objects/wchar_t/12048-4.cc: New test.
2193 * testsuite/27_io/objects/wchar_t/12048-5.cc: New test. XFAIL.
2194 * testsuite/ext/stdio_sync_filebuf_char.cc
2195 (test02, test03, test04, test05): New tests.
2196 * testsuite/ext/stdio_sync_filebuf_wchar_t.cc
2197 (test02, test03, test04, test05): New tests.
2198
21992003-09-03 Petur Runolfsson <peturr02@ru.is>
2200
2201 * docs/html/27_io/howto.html: setbuf(0, 0) has no effect on
2202 stringbuf or strstreambuf. Fix typos.
2203
3660e02f
PE
22042003-09-02 Phil Edwards <phil@codesourcery.com>
2205
2206 * acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED
2207 appropriately.
2208 * config.h.in: Add _GLIBCXX_HOSTED.
2209 * libsupc++/eh_term_handler.cc: Test it here; initialize
2210 __terminate_handler to std::abort if freestanding.
2211 * aclocal.m4, configure: Regenerated.
2212 * docs/html/configopts.html: Document --disable-hosted-libstdcxx.
2213
a3aff86a
NM
22142003-08-29 Nathan Myers <ncm@cantrip.org>
2215
2216 PR libstdc++/11990
2217 * include/bits/locale_facets.tcc (__pad): delete dead code.
2218
f5cf58dd
AM
22192003-08-28 Alan Modra <amodra@bigpond.net.au>
2220
2221 * configure.ac: Test $with_cross_host against $build_alias, not $build.
2222 * configure: Regenerate.
2223
3bedd161
PR
22242003-08-27 Petur Runolfsson <peturr02@ru.is>
2225
2226 * testsuite/27_io/objects/wchar_t/10.cc: Move wcout stuff...
2227 * testsuite/27_io/objects/wchar_t/11.cc: ...here. New file.
2228
ca618b60
PE
22292003-08-27 Phil Edwards <pme@gcc.gnu.org>
2230
2231 * Makefile.am: Remove trailing whitespace. Remove needless
2232 "foo = @foo@" assignments. Replace direct uses of @foo@ with $(foo).
2233 * include/Makefile.am: Likewise.
2234 * libmath/Makefile.am: Likewise.
2235 * libsupc++/Makefile.am: Likewise.
2236 * po/Makefile.am: Likewise.
2237 * src/Makefile.am: Likewise.
2238 * testsuite/Makefile.am: Likewise.
2239
2240 * Makefile.in, include/Makefile.in, libmath/Makefile.in,
2241 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2242 testsuite/Makefile.in: Regenerated.
2243
37e0ff11
PE
22442003-08-27 Phil Edwards <pme@gcc.gnu.org>
2245
2246 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Change quoting of
2247 includedir.
2248 * aclocal.m4, configure: Regenerate.
2249
72730fdb
DJ
22502003-08-27 Daniel Jacobowitz <drow@mvista.com>
2251
2252 * acinclude.m4: Include no-executables.m4.
2253 * configure.ac: Uncomment GCC_NO_EXECUTABLES.
2254 * aclocal.m4: Regenerated.
2255 * configure: Regenerated.
2256
ec0d7421
DJ
22572003-08-27 Daniel Jacobowitz <drow@mvista.com>
2258
2259 * acinclude.m4: Don't call AC_ISC_POSIX.
2260 * aclocal.m4: Regenerated.
2261 * configure: Regenerated.
2262
92eabea2
PE
22632003-08-27 Phil Edwards <pme@gcc.gnu.org>
2264
2265 * acinclude.m4 (GLIBCXX_CONDITIONAL): New macro. Wrap
2266 AM_CONDITIONAL. Replace all calls to AM_CONDITIONAL with this one.
2267 (GLIBCXX_ENABLE_HOSTED): New macro, sets new variable is_hosted,
2268 used elsewhere in this file.
2269 (GLIBCXX_EVALUATE_CONDITIONALS): New macro...
2270 * configure.ac: ...called here to expand all conditionals.
2271 * Makefile.am: Conditionalize SUBDIRS on GLIBCXX_HOSTED.
2272 * include/Makefile.am: Remove redundant gxx_include_dir assignment.
2273 (install-freestanding-headers): New target, a subset of
2274 install-headers. Conditionalize install-data-local on GLIBCXX_HOSTED.
2275
2276 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2277 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2278 src/Makefile.in, testsuite/Makefile.in: Regenerated.
2279
a43d13fb
PE
22802003-08-26 Phil Edwards <pme@gcc.gnu.org>
2281
2282 * docs/doxygen/run_doxygen: Shell fixes. Remove hardcoded local
2283 pathnames from generated tag file.
2284
82ba99d5
PE
22852003-08-26 Phil Edwards <pme@gcc.gnu.org>
2286
2287 * Makefile.am: Add comment.
2288 * acinclude.m4 (GLIBCXX_CONFIGURE): Set new glibcxx_SUBDIRS and
2289 SUBDIRS variables.
2290 * configure.ac: Use them both here, instead of hardcoded lists.
2291
2292 * fragment.am: Add STAMP varaible.
2293 * include/Makefile.am: Cosmetic whitespace cleanup. Use $(LN_S)
2294 instead of @LN_S@.
2295 (stamp-*): Move file creation rule outside of 'if' branches to
2296 ensure the stamp-* files are actually updated. Use $(STAMP).
2297 * src/Makefile.am: Remove now-nonexistant variable.
2298 * libsupc++/Makefile.am: Likewise. Snap the assignment chain
2299 for -prefer-pic.
2300 * po/Makefile.am: Include same fragment as all the others.
2301
2302 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2303 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in: Regenerated.
2304
73780bfe
LR
23052003-08-26 Loren J. Rittle <ljrittle@acm.org>
2306
2307 * testsuite/data/cin_unget-1.txt: New.
2308 * testsuite/27_io/objects/char/12048.cc: New.
2309
7e2055ec
ZW
23102003-08-25 Zack Weinberg <zack@codesourcery.com>
2311
2312 * config/os/hpux/os_defines.h: Unconditionally define
2313 _GLIBCXX_GTHREAD_USE_WEAK to 0.
2314
a6f3e253
GK
23152003-08-19 Geoffrey Keating <geoffk@apple.com>
2316
2317 * crossconfig.m4 (*-darwin*): Add a large and boring stanza for
2318 crosses to Darwin targets.
2319 * configure: Regenerate.
2320
1b391ba9
PR
23212003-08-19 Petur Runolfsson <peturr02@ru.is>
2322
7e2055ec
ZW
2323 * include/ext/ropeimpl.h: #include <ostream> instead of <iostream>
2324
77e862fa
PE
23252003-08-17 Phil Edwards <pme@gcc.gnu.org>
2326
2327 * configure.ac: GCC_NO_EXECUTABLES was supposed to be commented
2328 in the patch from 3 minutes ago. Boy, is my face red.
2329 * configure: At least I remembered to regenerate this.
2330
0df3f383
PE
23312003-08-17 Phil Edwards <pme@gcc.gnu.org>
2332
2333 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES
2334 and LIBSUPCXX_INCLUDES. Re-purpose TOPLEVEL_INCLUDES to refer to
2335 things from the top level.
2336 * configure.ac (GLIBCXX_IS_NATIVE): Determine earlier and re-order.
2337 Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
2338 (currently unused). Strip the fake-VPATH shell fragment from
2339 automake-generated rules, if present.
2340 * linkage.m4: Add comment.
2341
2342 * fragment.am: New file, containing factored-out common settings.
2343 (AM_CPPFLAGS): Absorb the deprecated INCLUDES variable contents.
2344 * Makefile.am: Include fragment.am. Remove common variables.
2345 * include/Makefile.am: Likewise.
2346 * libmath/Makefile.am: Likewise.
2347 * libsupc++/Makefile.am: Likewise.
2348 * po/Makefile.am: Likewise. Print rules during check.
2349 * src/Makefile.am: Likewise.
2350 * testsuite/Makefile.am: Likewise.
2351
2352 * aclocal.m4, configure, Makefile.in, include/Makefile.in,
2353 libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
2354 src/Makefile.in, testsuite/Makefile.in: Regenerate.
2355
e885821f
JL
23562003-08-11 John Levon <levon@movementarian.org>
2357
2358 * docs/html/ext/howto/guide.html (GLIBCXX_FORCE_NEW): Update
2359 remaining places for the name change from GLIBCPP_FORCE_NEW
2360 to GLIBCXX_FORCE_NEW
2361
2803847d
BK
23622003-08-11 Benjamin Kosnik <bkoz@redhat.com>
2363
2364 * include/bits/basic_ios.h: Remove *_iter typedefs, change num*
7e2055ec 2365 typedefs to num_*.
2803847d
BK
2366 * include/bits/basic_ios.tcc: Same.
2367 * include/bits/istream.tcc: Same.
2368 * include/bits/locale_facets.h: Same.
2369 * include/bits/ostream.tcc: Same.
2370 * include/std/std_istream.h: Same.
2371 * include/std/std_ostream.h: Same.
2372 * testsuite/26_numerics/complex_inserters_extractors.cc: Fix.
2373
2374 * include/ext/rope: Remove build warning.
7e2055ec 2375
51c1f3c9
AJ
23762003-08-11 Andreas Jaeger <aj@suse.de>
2377
2378 * include/Makefile.am (stamp-c_base): Add dependency on stamp-bits
2379 to make SMP-safe.
2380 * include/Makefile.in: Regenerated.
2381
f6dda651
PE
23822003-08-11 Phil Edwards <pme@gcc.gnu.org>
2383
2384 * acinclude.m4 (GLIBCXX_CONFIGURE): Unprecious CC and CFLAGS
2385 when calling AC_PROG_CC.
2386 * aclocal.m4, configure: Regenerate.
2387
fbe057bb
PE
23882003-08-11 Phil Edwards <pme@gcc.gnu.org>
2389
2390 * acinclude.m4: Properly quote variable which will be expanded
2391 inside makefiles. Use CXX instead of CC to extract compiler info.
2392 * configure.ac (AC_INIT): Use the new 4-arg form to finally get the
2393 correct form in PACKAGE.
2394 * aclocal.m4, configure: Regenerate.
2395
258e7dbc
BK
23962003-08-08 Benjamin Kosnik <bkoz@redhat.com>
2397
2398 * testsuite/Makefile.am (check-abi): Change libstdc++-v3 to libstdc++.
2399 (check-abi-verbose): Same.
2400 * testsuite/testsuite_performance.h (report_performance): Same.
7e2055ec 2401
3e083bea
LR
24022003-08-08 Loren J. Rittle <ljrittle@acm.org>
2403
2404 * testsuite/testsuite_performance.h (__FreeBSD__): Add fake mallinfo.
2405
5a9ed693
DG
24062003-08-07 Doug Gregor <dgregor@apple.com>
2407
7e2055ec
ZW
2408 * include/bits/char_traits.h (char_traits::not_eof): Match operand
2409 types in ? :.
5a9ed693 2410
4e9ebd4b
BI
24112003-08-07 Bernardo Innocenti <bernie@develer.com>
2412
2413 PR libstdc++/11784
2414 * libstdc++-v3/config/cpu/m68k/atomicity.h (__exchange_and_add):
2415 Replace variants with new BSET-based version.
7e2055ec 2416
a9ebaa2b
CW
24172003-08-07 Carlo Wood <carlo@alinoe.com>
2418
0df3f383 2419 * include/bits/demangle.h: Do not use cctype functions that depend
a9ebaa2b 2420 on locale.
7e2055ec 2421
8b171e55
PE
24222003-08-05 Phil Edwards <pme@gcc.gnu.org>
2423
2424 * configure.in: Rename...
2425 * configure.ac: ...to this.
2426 * docs/html/17_intro/porting.texi: Update name.
2427
2428 * docs/html/17_intro/porting.html: Regenerate.
2429 * config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
2430 libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
2431 testsuite/Makefile.in: Regenerate (picks up new dependancy).
2432
1260d70f
PE
24332003-08-05 Phil Edwards <pme@gcc.gnu.org>
2434
2435 * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Put down the crack
2436 pipe, open the window to let out the fumes, redo the option-handling
2437 logic to properly execute the detection test.
2438 * aclocal.m4, configure: Regenerate.
2439
ff66d28f
PE
24402003-08-04 Phil Edwards <pme@gcc.gnu.org>
2441
2442 Convert to new autotools.
2443 * acconfig.h: Update with correct names.
2444 * configure.host (ATOMICITYH): Rename to atomicity_include_dir.
2445 (qnx6.[12]*): 'q' comes before 's', not after 'w'.
2446 * configure.in: Update. Split hardcoded cross-configury settings
2447 out to...
2448 * crossconfig.m4: ...here. New file. Contents untouched.
2449 * acinclude.m4: Reorganize and rewrite as needed. Split large
2450 chunks out to...
2451 * linkage.m4: ...here. New file. Math and stdlib linkage tests.
2452 Contents untouched.
2453 * scripts/testsuite_flags.in: Update.
2454
2455 * Makefile.am: Remove unneeded AUTOMAKE_OPTIONS settings and other
2456 variables (already generated by automake).
2457 * include/Makefile.am: Ditto.
2458 * libmath/Makefile.am: Ditto.
2459 * libsupc++/Makefile.am: Ditto.
2460 * po/Makefile.am: Ditto.
2461 * src/Makefile.am: Ditto.
2462
2463 * aclocal.m4: Regenerate using new versions.
2464 * config.h.in: Ditto.
2465 * configure: Ditto.
2466 * Makefile.in: Ditto.
2467 * include/Makefile.in: Ditto.
2468 * libmath/Makefile.in: Ditto.
2469 * libsupc++/Makefile.in: Ditto.
2470 * po/Makefile.in: Ditto.
2471 * src/Makefile.in: Ditto.
2472 * testsuite/Makefile.in: Ditto.
2473
5e7c251d
PE
24742003-08-04 Phil Edwards <pme@gcc.gnu.org>
2475
2476 * po/libstdc++.pot: Re-extract/regenerate.
2477
caf21254
PE
24782003-08-04 Phil Edwards <pme@gcc.gnu.org>
2479
2480 * testsuite/Makefile.am (DEJATOOL,EXPECT,RUNTEST,RUNTESTFLAGS):
2481 Remove unneeded variable assignments. Leave them for automake.
2482 * testsuite/lib/libstdc++-v3.exp: Rename...
2483 * testsuite/lib/libstdc++.exp: ...to this. Adjust function names
2484 accordingly.
2485 * testsuite/libstdc++-v3.dg/dg.exp: Rename...
2486 * testsuite/libstdc++-dg/normal.exp: ...to this. Adjust function
2487 names accordingly.
2488
f7ab5fa4
PE
24892003-08-04 Phil Edwards <pme@gcc.gnu.org>
2490
2491 * docs/doxygen/guide.html: run_doxygen uses bash.
2492 * docs/doxygen/mainpage.html: We'll be shipping tag files.
2493 * docs/doxygen/run_doxygen: Tweaks and improvements.
2494 * docs/doxygen/user.cfg.in: Set GENERATE_TAGFILE.
2495 * docs/html/install.html: Update autoconf/automake requirements.
2496 * docs/html/test.html: Add section describing DejaGNU support.
2497 * docs/html/17_intro/confdeps.dot: New file, generates...
2498 * docs/html/17_intro/confdeps.png: ...this new file.
2499 * docs/html/Makefile: Generated here.
2500 * docs/html/17_intro/configury.html: New file.
2501
b3f2a032
PE
25022003-07-31 Phil Edwards <pme@gcc.gnu.org>
2503
2504 * testsuite/lib/libstdc++-v3-dg.exp: Rename...
2505 * testsuite/lib/libstdc++-v3.exp: ...to this.
2506 * testsuite/libstdc++-v3.dg/dg.exp: No special case needed now.
2507
e64a227a
DG
25082003-07-31 Doug Gregor <dgregor@apple.com>
2509
2510 Add user specialization tests.
2511 * testsuite/23_containers/deque/1.cc: New.
2512 * testsuite/23_containers/list/1.cc: New.
2513 * testsuite/23_containers/map/1.cc: New.
2514 * testsuite/23_containers/multimap/1.cc: New.
2515 * testsuite/23_containers/multiset/1.cc: New.
2516 * testsuite/23_containers/set/1.cc: New.
2517 * testsuite/23_containers/vector/1.cc: New.
7e2055ec 2518
17472bb6
BK
25192003-07-31 Benjamin Kosnik <bkoz@redhat.com>
2520
2521 Reshuffle 23_containers testsuite.
7e2055ec 2522 * 23_containers/adaptors.cc, bitset_ctor.cc,bitset_members.cc,
17472bb6
BK
2523 bitset_shift.cc, deque_ctor.cc, deque_operators.cc,
2524 list_capacity.cc, list_ctor.cc, list_modifiers.cc, list_operators.cc,
2525 map_insert.cc, map_operators.cc, map_operators_neg.cc, multiset.cc,
2526 set_operators_neg.cc, vector_bool.cc, vector_capacity.cc,
2527 vector_ctor.cc, vector_element_access.cc, vector_modifiers.cc,
2528 vector_resize.cc: Split into...
2529 * 23_containers/bitset/cons/1.cc: New.
2530 * 23_containers/bitset/cons/6282.cc: New.
2531 * 23_containers/bitset/count/6124.cc: New.
2532 * 23_containers/bitset/operations/1.cc: New.
2533 * 23_containers/bitset/operations/2.cc: New.
2534 * 23_containers/bitset/test/1.cc: New.
2535 * 23_containers/bitset/to_ulong/1.cc: New.
2536 * 23_containers/deque/cons/1.cc: New.
2537 * 23_containers/deque/cons/2.cc: New.
2538 * 23_containers/deque/operators/1.cc: New.
2539 * 23_containers/list/capacity/1.cc: New.
2540 * 23_containers/list/cons/1.cc: New.
2541 * 23_containers/list/cons/2.cc: New.
2542 * 23_containers/list/cons/3.cc: New.
2543 * 23_containers/list/cons/4.cc: New.
2544 * 23_containers/list/cons/5.cc: New.
2545 * 23_containers/list/cons/6.cc: New.
2546 * 23_containers/list/cons/7.cc: New.
2547 * 23_containers/list/cons/8.cc: New.
2548 * 23_containers/list/cons/9.cc: New.
2549 * 23_containers/list/modifiers/1.cc: New.
2550 * 23_containers/list/modifiers/2.cc: New.
2551 * 23_containers/list/modifiers/3.cc: New.
2552 * 23_containers/list/operators/1.cc: New.
2553 * 23_containers/list/operators/2.cc: New.
2554 * 23_containers/list/operators/3.cc: New.
2555 * 23_containers/list/operators/4.cc: New.
2556 * 23_containers/map/insert/1.cc: New.
2557 * 23_containers/map/operators/1.cc: New.
2558 * 23_containers/map/operators/1_neg.cc: New.
2559 * 23_containers/multiset/insert/1.cc: New.
2560 * 23_containers/priority_queue/members/7161.cc: New.
2561 * 23_containers/queue/members/7157.cc: New.
2562 * 23_containers/set/operators/1_neg.cc: New.
2563 * 23_containers/stack/members/7158.cc: New.
2564 * 23_containers/vector/bool/1.cc: New.
2565 * 23_containers/vector/bool/6886.cc: New.
2566 * 23_containers/vector/capacity/1.cc: New.
2567 * 23_containers/vector/capacity/2.cc: New.
2568 * 23_containers/vector/capacity/8230.cc: New.
2569 * 23_containers/vector/cons/1.cc: New.
2570 * 23_containers/vector/cons/2.cc: New.
2571 * 23_containers/vector/cons/3.cc: New.
2572 * 23_containers/vector/cons/4.cc: New.
2573 * 23_containers/vector/cons/6513.cc: New.
2574 * 23_containers/vector/element_access/1.cc: New.
2575 * 23_containers/vector/modifiers/1.cc: New.
2576 * 23_containers/vector/modifiers/2.cc: New.
2577 * 23_containers/vector/resize/1.cc: New.
7e2055ec 2578
515aab7c
RO
25792003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2580
2581 * testsuite/thread/pthread1.cc: Add alpha*-*-osf* to dg-do run,
2582 dg-options.
2583 * testsuite/thread/pthread2.cc: Likewise.
2584 * testsuite/thread/pthread3.cc: Likewise.
2585 * testsuite/thread/pthread4.cc: Likewise.
2586 * testsuite/thread/pthread5.cc: Likewise.
2587 * testsuite/thread/pthread6.cc: Likewise.
2588 * testsuite/thread/pthread7-rope.cc: Likewise.
2589
1051c718
PE
25902003-07-30 Phil Edwards <pme@gcc.gnu.org>
2591
2592 * include/bits/c++config: Partial reversion (comment placement) of
2593 previous patch.
2594
5f697f7a
BK
25952003-07-30 Benjamin Kosnik <bkoz@redhat.com>
2596
2597 * include/bits/c++config (_GLIBCXX_FULLY_COMPLIANT_HEADERS): Remove.
2598 (_GLIBCXX_NO_TEMPLATE_EXPORT): To _GLIBCXX_EXPORT_TEMPLATE.
2599 (_GLIBCXX_AT_AT): Remove.
2600 (__USE_MALLOC): Remove.
2601 * include/std/std_fstream.h: Modify.
2602 * include/bits/basic_ios.h: Same.
2603 * include/bits/valarray_array.h: Same.
2604 * include/c_std/std_cmath.h: Same.
2605 * include/c_std/cmath.tcc: Same.
2606 * include/std/std_vector.h: Same.
2607 * include/std/std_string.h: Same.
2608 * include/std/std_stack.h: Same.
2609 * include/std/std_queue.h: Same.
2610 * include/std/std_list.h: Same.
2611 * include/std/std_deque.h: Same.
2612 * include/std/std_streambuf.h: Same.
2613 * include/std/std_sstream.h: Same.
2614 * include/std/std_ostream.h: Same.
2615 * include/std/std_istream.h: Same.
2616 * include/bits/valarray_array.tcc: Same, format.
2617
2618 * include/c/std_cctype.h: Fix include guards.
2619 * include/c/std_cerrno.h: Same.
2620 * include/c/std_cfloat.h: Same.
2621 * include/c/std_climits.h: Same.
2622 * include/c/std_clocale.h: Same.
2623 * include/c/std_cmath.h: Same.
2624 * include/c/std_csetjmp.h: Same.
2625 * include/c/std_csignal.h: Same.
2626 * include/c/std_cstdarg.h: Same.
2627 * include/c/std_cstddef.h: Same.
2628 * include/c/std_cstdio.h: Same.
2629 * include/c/std_cstdlib.h: Same.
2630 * include/c/std_cstring.h: Same.
2631 * include/c/std_ctime.h: Same.
2632 * include/c/std_cwchar.h: Same.
2633 * include/c/std_cwctype.h: Same.
2634 * include/c_std/cmath.tcc: Same.
2635 * include/c_std/std_cmath.h: Same.
7e2055ec 2636
b4c70e89
GB
26372003-07-30 Gawain Bolton <gp.bolton@computer.org>
2638
7e2055ec 2639 PR libstdc++/11504.
b4c70e89
GB
2640 * include/bits/stl_tree.h: Replace C-style casts with C++-style
2641 casts. Changes to avoid casting away constness. Eliminate
2642 _Rb_tree_base_iterator class. Change _Rb_tree_iterator to use
2643 initialization lists. Move out implementation of __black_count()
2644 to...
7e2055ec
ZW
2645 * src/stl_tree.cc: ...here and rename _Rb_tree_black_count().
2646 Rename_Rb_tree_base_iterator::_M_increment() to
2647 _Rb_tree_increment and _Rb_tree_base_iterator::_M_decrement() to
2648 _Rb_tree_decrement.
2649 * config/linker-map.gnu: Add and change symbols here.
b4c70e89 2650
48b3222d
JW
26512003-07-30 Jonathan Wakely <redi@gcc.gnu.org>
2652
2653 * docs/html/22_locale/howto.html: Use locale::classic() instead
2654 of locale("C").
2655
cb584bcf
BK
26562003-07-28 Benjamin Kosnik <bkoz@redhat.com>
2657
2658 * testsuite/testsuite_hooks.h: Remove list include.
2659 (func_callback): Define as unique type, not std::list.
2660 Change DEBUG_ASSERT to _GLIBCXX_ASSERT.
2661 * testsuite/libstdc++-v3.dg/dg.exp: Same.
2662 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Same.
7e2055ec 2663 * testsuite/23_containers/bitset_ctor.cc:
cb584bcf
BK
2664 * testsuite/17_intro/header_ciso646.cc: Remove DEBUG_ASSERT.
2665 * testsuite/18_support/numeric_limits.cc: Same.
2666 * testsuite/21_strings/basic_string/append/char/1.cc: Same.
2667 * testsuite/21_strings/basic_string/append/wchar_t/1.cc: Same.
2668 * testsuite/21_strings/basic_string/compare/char/1.cc: Same.
2669 * testsuite/21_strings/basic_string/compare/wchar_t/1.cc: Same.
2670 * testsuite/21_strings/basic_string/element_access/char/1.cc: Same.
2671 * testsuite/21_strings/basic_string/element_access/char/2.cc: Same.
2672 * testsuite/21_strings/basic_string/element_access/char/3.cc: Same.
2673 * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Same.
2674 * testsuite/21_strings/basic_string/element_access/wchar_t/2.cc: Same.
2675 * testsuite/21_strings/basic_string/element_access/wchar_t/3.cc: Same.
2676 * testsuite/21_strings/basic_string/find/char/1.cc: Same.
2677 * testsuite/21_strings/basic_string/find/char/2.cc: Same.
2678 * testsuite/21_strings/basic_string/find/char/3.cc: Same.
2679 * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Same.
2680 * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Same.
2681 * testsuite/21_strings/basic_string/find/wchar_t/3.cc: Same.
2682 * testsuite/21_strings/basic_string/insert/char/1.cc: Same.
2683 * testsuite/21_strings/basic_string/insert/char/2.cc: Same.
2684 * testsuite/21_strings/basic_string/insert/wchar_t/1.cc: Same.
2685 * testsuite/21_strings/basic_string/insert/wchar_t/2.cc: Same.
7e2055ec
ZW
2686 * testsuite/21_strings/basic_string/inserters_extractors/char/1.cc:
2687 * testsuite/21_strings/basic_string/inserters_extractors/char/4.cc:
2688 * testsuite/21_strings/basic_string/inserters_extractors/char/5.cc:
2689 * testsuite/21_strings/basic_string/inserters_extractors/char/6.cc:
2690 * testsuite/21_strings/basic_string/inserters_extractors/char/7.cc:
2691 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/1.cc:
2692 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/4.cc:
2693 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/5.cc:
2694 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/6.cc:
2695 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/7.cc:
cb584bcf
BK
2696 * testsuite/21_strings/basic_string/operators/char/1.cc: Same.
2697 * testsuite/21_strings/basic_string/operators/char/2.cc: Same.
2698 * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Same.
2699 * testsuite/21_strings/basic_string/operators/wchar_t/2.cc: Same.
2700 * testsuite/21_strings/basic_string/replace/char/1.cc: Same.
2701 * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Same.
2702 * testsuite/21_strings/basic_string/rfind/char/1.cc: Same.
2703 * testsuite/21_strings/basic_string/rfind/char/2.cc: Same.
2704 * testsuite/21_strings/basic_string/rfind/char/3.cc: Same.
2705 * testsuite/21_strings/basic_string/rfind/wchar_t/1.cc: Same.
2706 * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: Same.
2707 * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: Same.
2708 * testsuite/21_strings/basic_string/substr/char/1.cc: Same.
2709 * testsuite/21_strings/basic_string/substr/wchar_t/1.cc: Same.
2710 * testsuite/23_containers/bitset_ctor.cc: Same.
2711 * testsuite/23_containers/bitset_shift.cc: Same.
2712 * testsuite/23_containers/vector_ctor.cc: Same.
2713 * testsuite/23_containers/vector_element_access.cc: Same.
2714 * testsuite/24_iterators/istreambuf_iterator.cc: Same.
2715 * testsuite/24_iterators/iterator.cc: Same.
2716 * testsuite/24_iterators/ostreambuf_iterator.cc: Same.
2717 * testsuite/25_algorithms/lower_bound.cc: Same.
2718 * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
2719 * testsuite/27_io/basic_istream/extractors_arithmetic/char/01.cc: Same.
2720 * testsuite/27_io/basic_istream/extractors_arithmetic/char/02.cc: Same.
2721 * testsuite/27_io/basic_istream/extractors_arithmetic/char/03.cc: Same.
2722 * testsuite/27_io/basic_istream/extractors_arithmetic/char/06.cc: Same.
2723 * testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc: Same.
2724 * testsuite/27_io/basic_istream/extractors_arithmetic/char/08.cc: Same.
2725 * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc: Same.
2726 * testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc: Same.
2727 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/1.cc: Same.
7e2055ec
ZW
2728 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc:
2729 Same.
2730
1cb1de7e
PE
27312003-07-28 Phil Edwards <pme@gcc.gnu.org>
2732
2733 * docs/doxygen/user.cfg.in, docs/html/abi.txt, docs/html/debug.html,
2734 docs/html/test.html, docs/html/17_intro/headers_cc.txt,
2735 docs/html/17_intro/howto.html, docs/html/ext/howto.html: Change
2736 GLIBCPP to GLIBCXX (and explain as needed).
2737
6dfe0fc9
PE
27382003-07-28 Phil Edwards <pme@gcc.gnu.org>
2739
2740 * README: Update.
2741
2cb1c928
PE
27422003-07-28 Phil Edwards <pme@gcc.gnu.org>
2743
2744 * testsuite/22_locale/messages/members/char/1.cc,
2745 testsuite/22_locale/messages/members/char/2.cc,
2746 testsuite/22_locale/messages/members/char/3.cc,
2747 testsuite/22_locale/messages_byname/1.cc: Update comment regarding
2748 the origin of LOCALEDIR.
2749 * testsuite/lib/libstdc++-v3.exp: New file.
2750
b66ea7d4
BK
27512003-07-25 Benjamin Kosnik <bkoz@redhat.com>
2752
2753 * include/bits/char_traits.h: Update copyright, tweak.
e884d397 2754 * testsuite/ext/pod_char_traits.cc: Explicitly qualify namespace
b66ea7d4
BK
2755 std types.
2756
d5ff4e3f
MA
27572003-07-24 Matt Austern <austern@apple.com>
2758
2759 * /include/bits/char_traits.h (class char_traits): Put all the
2760 real work into the new class template __gnu_cxx::char_traits.
2761 Gave generic definitions for member functions. Types are taken
2762 from the new class template __gnu_cxx::_Char_types.
2763 * testsuite/21_strings/char_traits/requirements/short/1.cc: New
2764 file. Test of std::char_traits<short>, which serves as a test of
2765 the char_traits primary template.
2766
aecf642c
BK
27672003-07-24 Benjamin Kosnik <bkoz@redhat.com>
2768
2769 * testsuite/*: Change __gnu_cxx_test to __gnu_test.
2770
27712003-07-24 Nathan Myers <ncm-nospam@cantrip.org>
d7541133 2772
7e2055ec
ZW
2773 * testsuite/23_containers/map_operators.cc: Conform to
2774 container requirement as value must be Assignable.
d7541133 2775
118545ec
AO
27762003-07-23 Alexandre Oliva <aoliva@redhat.com>
2777
2778 * acinclude.m4 (GLIBCXX_ENABLE_PCH): Rework test such that it
2779 tests not only generation of pch files, but also their use.
2780 * aclocal.m4, configure: Rebuilt.
2781
ff89cb01
SE
27822003-07-23 Steve Ellcey <sje@cup.hp.com>
2783
2784 * config/cpu/hppa/atomicity.h: Change
2785 _GLIBCXX_INST_GLIBCXX_ATOMICITY_LOCK to _GLIBCXX_INST_ATOMICITY_LOCK
2786 to match misc-inst.cc
2787
1143680e
SE
27882003-07-23 Steve Ellcey <sje@cup.hp.com>
2789
2790 * include/c_std/cmath.tcc: Use _GLIBCXX_ prefix on file guard.
2791 * include/c_std/std_cctype.h: Ditto.
2792 * include/c_std/std_cerrno.h: Ditto.
2793 * include/c_std/std_cfloat.h: Ditto.
2794 * include/c_std/std_climits.h: Ditto.
2795 * include/c_std/std_clocale.h: Ditto.
2796 * include/c_std/std_cmath.h: Ditto.
2797 * include/c_std/std_csetjmp.h: Ditto.
2798 * include/c_std/std_csignal.h: Ditto.
2799 * include/c_std/std_cstdarg.h: Ditto.
2800 * include/c_std/std_cstddef.h: Ditto.
2801 * include/c_std/std_cstdio.h: Ditto.
2802 * include/c_std/std_cstdlib.h: Ditto.
2803 * include/c_std/std_cstring.h: Ditto.
2804 * include/c_std/std_ctime.h: Ditto.
2805 * include/c_std/std_cwchar.h: Ditto.
2806 * include/c_std/std_cwctype.h: Ditto.
2807 * include/std/std_algorithm.h: Ditto.
2808 * include/std/std_bitset.h: Ditto.
2809 * include/std/std_complex.h: Ditto.
2810 * include/std/std_deque.h: Ditto.
2811 * include/std/std_fstream.h: Ditto.
2812 * include/std/std_functional.h: Ditto.
2813 * include/std/std_iomanip.h: Ditto.
2814 * include/std/std_ios.h: Ditto.
2815 * include/std/std_iosfwd.h: Ditto.
2816 * include/std/std_iostream.h: Ditto.
2817 * include/std/std_istream.h: Ditto.
2818 * include/std/std_iterator.h: Ditto.
2819 * include/std/std_limits.h: Ditto.
2820 * include/std/std_list.h: Ditto.
2821 * include/std/std_locale.h: Ditto.
2822 * include/std/std_map.h: Ditto.
2823 * include/std/std_memory.h: Ditto.
2824 * include/std/std_numeric.h: Ditto.
2825 * include/std/std_ostream.h: Ditto.
2826 * include/std/std_queue.h: Ditto.
2827 * include/std/std_set.h: Ditto.
2828 * include/std/std_sstream.h: Ditto.
2829 * include/std/std_stack.h: Ditto.
2830 * include/std/std_stdexcept.h: Ditto.
2831 * include/std/std_streambuf.h: Ditto.
2832 * include/std/std_string.h: Ditto.
2833 * include/std/std_utility.h: Ditto.
2834 * include/std/std_valarray.h: Ditto.
2835 * include/std/std_vector.h: Ditto.
2836
3988d179
DG
28372003-07-22 Doug Gregor <dgregor@apple.com>
2838
2839 * include/bits/basic_string.h (basic_string::insert): Deprecate
2840 GNU extension.
2841
5dfda042
BK
28422003-07-21 Benjamin Kosnik <bkoz@redhat.com>
2843
2844 * scripts/testsuite_flags.in (--build-includes): Remove extraneous
2845 paths for libio.
2846 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc
2847 (test03): Include typeinfo for bad_cast.
2848 * testsuite/27_io/basic_ostream/sentry/char/3983-sstream.cc: Same.
2849 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
2850 * testsuite/27_io/basic_istream/sentry/char/3983-sstream.cc: Same.
2851
3988d179 28522003-07-21 Doug Gregor <dgregor@apple.com>
f345c6b5
DG
2853
2854 * include/bits/boost_concept_check.h:
7e2055ec
ZW
2855 (_EqualityComparableConcept::__constraints): Remove != from the
2856 list of constraints; it is not listed in Table 28 of the C++98
2857 standard.
f345c6b5 2858
2d5f9af2
AJ
28592003-07-18 Andreas Jaeger <aj@suse.de>
2860
2861 * config/abi/sparc-linux-gnu/baseline_symbols.txt: New file.
2862 * config/abi/mips-linux-gnu/baseline_symbols.txt: New file.
2863 * config/abi/hppa-linux-gnu/baseline_symbols.txt: New file.
2864 * config/abi/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
2865
fea4065d 28662003-07-17 Benjamin Kosnik <bkoz@redhat.com>
7e2055ec 2867
fea4065d
BK
2868 * config/linker-map.gnu: Add __moneypunct_cache, __timepunct_cache.
2869 * config/locale/generic/messages_members.h: Tweaks.
2870 * config/locale/generic/monetary_members.cc
2871 (moneypunct::_M_initialize_moneypunct): Use cache.
2872 (moneypunct::~moneypunct): Delete cache.
2873 * config/locale/generic/time_members.cc:
2874 (__timepunct::_M_initialize_timepunct): Use cache.
2875 * config/locale/generic/time_members.h:
2876 (__timepunct::~__timepunct): Delete cache.
2877 (__timepunct::__timepunct): Set cache.
2878 * config/locale/gnu/messages_members.h: Tweaks.
2879 * config/locale/gnu/monetary_members.cc:
2880 (moneypunct::_M_initialize_moneypunct): Use cache.
2881 (moneypunct::~moneypunct): Delete cache.
2882 * config/locale/gnu/time_members.cc:
2883 (__timepunct::_M_initialize_timepunct): Use cache.
2884 * config/locale/gnu/time_members.h:
2885 (__timepunct::~__timepunct): Delete cache.
2886 (__timepunct::__timepunct): Set cache.
2887 * include/bits/locale_facets.h (__timepunct_cache): New.
2888 (__moneypunct_cache): New.
2889 * include/bits/locale_facets.tcc: Tweak.
2890 * src/locale.cc (__timepunct::_S_timezones): Adjust for cache.
2891 * src/locale-inst.cc: Instantiate caches.
2892 * src/globals.cc: Add "C" caches.
2893 * src/localename.cc: Use external "C" caches.
2894
83a279e4
PE
28952003-07-17 Phil Edwards <pme@gcc.gnu.org>
2896
2897 * docs/doxygen/guide.html: Fix typo.
2898
db5eed18
BK
28992003-07-16 Benjamin Kosnik <bkoz@redhat.com>
2900
2901 * include/ext/pod_char_traits.h: Add state template argument.
2902
7942afdc
BK
29032003-07-16 Benjamin Kosnik <bkoz@redhat.com>
2904
2905 * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
2906 (num_get::_M_convert_int): To _M_insert_int.
7e2055ec 2907 (num_get::_M_convert_float): To _M_insert_float.
7942afdc
BK
2908 * include/bits/locale_facets.tcc (num_get::_M_extract_float):
2909 Use caches for ctype, num_get.
2910 (num_get::_M_extract_int): Same.
2911 (num_get::get(bool)): Same.
2912 (__verify_grouping): Use size_t.
2913 * src/locale-inst.cc: Update.
2914 * src/locale.cc: Adjust _S_atoms_in.
2915
1ef4a5d4
PE
29162003-07-16 Phil Edwards <pme@gcc.gnu.org>
2917
2918 * docs/doxygen/mainpage.html: Move building/writing instructions...
2919 * docs/doxygen/guide.html: ...to here. New file.
2920
dced0d12
JW
29212003-07-16 Jonathan Wakely <redi@gcc.gnu.org>
2922
2923 * docs/html/ext/howto.html: Update URL for SGI STL docs.
2924 * docs/html/faq/index.html: Same.
2925 * docs/html/faq/index.txt: Regenerate.
2926
e50344b9
PC
29272003-07-16 Paolo Carlini <pcarlini@unitus.it>
2928
2929 PR libstdc++/11528
2930 * include/bits/locale_facets.tcc (money_get::do_get):
2931 Strip only _leading_ zeros.
2932 * testsuite/22_locale/money_get/get/char/11528.cc: Add.
2933 * testsuite/22_locale/money_get/get/wchar_t/11528.cc: Add.
2934
94b7906a
GP
29352003-07-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
2936
2937 * include/ext/hash_map (class hash_multimap): Remove extra
2938 semicolons from __glibcxx_class_requires3 entries.
2939 * include/ext/hash_set (class hash_set): Ditto.
2940 (class hash_multiset): Ditto.
2941
73a530bd
PR
29422003-07-15 Petur Runolfsson <peturr02@ru.is>
2943
2944 * include/bits/char_traits.h (char_traits<wchar_t>::move):
2945 Change last parameter from int_type to size_t.
2946
119dbb1f
JQ
29472003-07-15 Jerry Quinn <jlquinn@optonline.net>
2948
2949 * include/bits/stl_algo.h (includes, set_union, set_intersection,
7e2055ec
ZW
2950 set_difference, set_symmetric_difference, max_element, min_element,
2951 next_permutation, prev_permutation, find_first_of, find_end):
2952 Document.
119dbb1f 2953 * include/bits/stl_algobase.h (copy,copy_backward): Clarify overlap
7e2055ec 2954 restrictions in docs.
119dbb1f 2955 * include/bits/stl_heap.h (push_heap, pop_heap, make_heap, sort_heap):
7e2055ec 2956 Document.
119dbb1f
JQ
2957 * docs/doxygen/doxygroups.cc (setoperations): New group.
2958
284f19bf
JQ
29592003-07-15 Jerry Quinn <jlquinn@optonline.net>
2960
7e2055ec 2961 * include/bits/basic_string.h: Document public functions.
284f19bf
JQ
2962 * docs/doxygen/TODO: Update c21 todo.
2963
709e7c9f
JQ
29642003-07-15 Jerry Quinn <jlquinn@optonline.net>
2965
2966 * include/bits/stl_list.h: Document more functions.
2967 * docs/doxygen/TODO: Update c23 todo.
2968
f45e487d
PC
29692003-07-14 Paolo Carlini <pcarlini@unitus.it>
2970
2971 * config/locale/gnu/c_locale.h (__convert_from_v): One more
2972 qualification.
2973
f088510d
PC
29742003-07-14 Paolo Carlini <pcarlini@unitus.it>
2975
2976 * include/bits/stl_tempbuf.h: Qualify free with std::.
2977 * src/locale.cc: Include <cstdlib>, qualify getenv.
2978
2def5b76
PC
29792003-07-14 Paolo Carlini <pcarlini@unitus.it>
2980
2981 * config/locale/gnu/c_locale.h (__convert_from_v): Include
2982 <cstdio>. Qualify names.
2983 * config/locale/generic/c_locale.h (__convert_from_v): Ditto.
2984
bda243ec
PC
29852003-07-14 Paolo Carlini <pcarlini@unitus.it>
2986 Nathan C. Myers <ncm-nospam@cantrip.org>
2987
2988 PR libstdc++/11378
2989 * include/std/std_fstream.h (xsputn): Declare only.
2990 * include/bits/fstream.tcc (xsputn): Define, optimize for the
7e2055ec 2991 always_noconv() case: when __n is sufficiently large flush
bda243ec
PC
2992 the buffer and issue a direct write, if possible combining the
2993 two with writev in __basic_file<>::xsputn_2.
2994 * config/io/basic_file_stdio.h (__basic_file<>::xsputn_2):
2995 New, declare.
2996 * config/io/basic_file_stdio.cc (__basic_file<>::xsputn_2):
2997 Define.
2998 * acinclude.m4 (GLIBCXX_CHECK_WRITE): New macro, checking for
2999 the availability of writev in <sys/uio.h>.
3000 * configure.in: Call here.
3001 * acconfig.h: Add undef for the corresponding symbol.
3002 * aclocal.m4: Regenerate.
3003 * configure: Regenerate.
3004 * config.h.in: Regenerate.
3005 * testsuite/27_io/basic_filebuf/setbuf/char/3.cc: Tweak.
3006
3007 * include/std/std_fstream.h (sync): Constify a variable.
3008
c573d965
BK
30092003-07-14 Benjamin Kosnik <bkoz@redhat.com>
3010
3011 * testsuite/27_io/ios_base/cons/assign_neg.cc: Fix line numbers.
3012 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
7e2055ec 3013
3ad249b9
GDR
30142003-07-14 Gabriel Dos Reis <gcc@integrable-solutions.net>
3015
3016 * config/locale/gnu/c_locale.h (__convert_from_v): Include
3017 <cstring> and <cstdlib>. Qualify names.
3018
f2ffecb1
MM
30192003-07-13 Mark Mitchell <mark@codesourcery.com>
3020
3021 * config/locale/generic/c_locale.h: Include <cstdlib> and
3022 <cstring>.
3023 * include/bits/boost_concept_check.h: Add this-> to unqualified
3024 method calls.
3025 * include/bits/deque.tcc: Likewise.
3026 * include/bits/locale_facets.h : Likewise.
3027 * include/bits/ostream.tcc: Likewise.
3028 * include/bits/stl_algo.h: Likewise.
3029 * include/bits/stl_bvector.h: Likewise.
3030 * include/bits/stl_deque.h: Likewise.
3031 * include/bits/stl_list.h: Likewise.
3032 * include/bits/stl_tree.h: Likewise.
3033 * include/bits/stl_vector.h: Likewise.
3034 * include/bits/vector.tcc: Likewise.
3035 * include/ext/rope: Likewise.
3036 * include/ext/ropeimpl.h: Likewise.
3037 * include/ext/stdio_filebuf.h: Likewise.
3038
e2fcbaa3
JQ
30392003-07-11 Jerry Quinn <jlquinn@optonline.net>
3040
3041 * include/bits/basic_ios.h (copyfmt): Document.
3042 * include/bits/ios_base.h (event, event_callback, register_callback,
3043 xalloc, iword, pword): Document.
3044 (imbue, ~ios_base): Update docs on callbacks.
3045
58579a27
PE
30462003-07-11 Phil Edwards <pme@gcc.gnu.org>
3047
3048 * acinclude.m4 (GLIBCC_ENABLE_SYMVERS): Tweak comments. Add
3049 warning messages if the environment cannot support symbol versioning.
3050 (port_specific_symbol_file): It's plural, add an 's' on the end.
3051 * configure.host: Likewise.
3052 * src/Makefile.am: Likewise.
3053 * config/linker-map.gnu: Remove one semicolon, heh.
3054 * scripts/extract_symvers: Don't assume useful 'export' syntax.
3055 Set LANG as well as LC_ALL for possibly-broken sort(1)s.
3056 * aclocal.m4, configure, src/Makefile.in: Regenerated.
3057
cde63840
BK
30582003-07-09 Benjamin Kosnik <bkoz@redhat.com>
3059
3060 * include/bits/locale_facets.tcc: Use function object for
7e2055ec 3061 __use_cache instead of template function. Partially specialize for
cde63840
BK
3062 __numpunct<_CharT>.
3063 * include/bits/locale_classes.h: Update friend declaration for
3064 __use_cache.
3065 (_M_install_cache): No throw exception specs.
3066 * src/locale.cc: Remove __use_cache specializations.
3067 * include/ext/pod_char_traits.h (length): Tweak.
3068 * include/bits/locale_facets.h (__numpunct_cache): Remove
3069 char_type typedef.
3070 * testsuite/testsuite_hooks.h (pod_unsigned_int): Remove.
3071 (pod_long): Remove.
3072 * testsuite/22_locale/numpunct/members/char/cache_1.cc: New.
3073 * testsuite/22_locale/numpunct/members/char/cache_2.cc: New.
3074 * testsuite/22_locale/numpunct/members/wchar_t/cache_1.cc: New.
3075 * testsuite/22_locale/numpunct/members/wchar_t/cache_2.cc: New.
3076 * testsuite/22_locale/numpunct/members/pod/1.cc: New.
3077 * testsuite/22_locale/numpunct/members/pod/2.cc: New.
7e2055ec 3078
e7f042e4
JQ
30792003-07-09 Jerry Quinn <jlquinn@optonline.net>
3080
3081 * src/ios.cc (_M_grow_words): Fix spelling.
3082
ca1c7011
GB
30832003-07-09 Gawain Bolton <gp.bolton@computer.org>
3084
3085 * include/bits/stl_tree.h: Move larger member functions in
3086 _Rb_tree_base_iterator and _Rb_tree_node to...
3087 * src/stl_tree.cc: Here.
3088 * src/Makefile.in: Add stl_tree.cc.
3089 * src/Makefile.in: Regenerated.
3090 * config/linker-map.gnu: Add symbols here.
3091
9e7facfd
BK
30922003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3093
3094 * testsuite/ext/pod_char_traits.cc: New.
3095 * include/ext/pod_char_traits.h: New.
3096 * include/Makefile.am (ext_headers): Add pod_char_traits.h.
3097 * include/Makefile.in: Regenerate.
3098 * docs/html/21_strings/howto.html: Update.
7e2055ec 3099
e55dc371
GB
31002003-07-08 Gawain Bolton <gp.bolton@computer.org>
3101
3102 * testsuite/performance/list_create_fill_sort.cc: New.
3103
c094e9b9
BK
31042003-07-08 Benjamin Kosnik <bkoz@redhat.com>
3105
3106 * config/locale/generic/numeric_members.cc: Correct type info.
3107 * config/locale/gnu/numeric_members.cc: Same.
3108 * include/bits/locale_facets.h: Same.
7e2055ec 3109
c094e9b9
BK
3110 * include/bits/char_traits.h: Correct spacing.
3111
3112 * src/locale.cc: Wrap to 80 col.
7e2055ec 3113
a8784c4c
PC
31142003-07-07 Paolo Carlini <pcarlini@unitus.it>
3115
3116 * include/std/std_complex.h: Partially revert last
3117 changes: cmath functions must not be qualified.
3118
313dd504
PE
31192003-07-06 Phil Edwards <pme@gcc.gnu.org>
3120
3121 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Do not test for binutils
3122 2.11 with globbing backport fix.
3123 * aclocal.m4, configure: Regenerated.
3124
6623b2f2
PC
31252003-07-06 Paolo Carlini <pcarlini@unitus.it>
3126
3127 * include/std/std_fstream.h (xsputn): Don't call _M_destroy_pback:
3128 if output is at all possible (!_M_reading), cannot be active.
3129
3130 * include/std/std_fstream.h: Tweak comments to doxygen style.
3131
391cfc46
PC
31322003-07-06 Paolo Carlini <pcarlini@unitus.it>
3133
3134 * include/bits/locale_classes.h: Fully qualify standard
3135 functions with std::, thus avoiding Koenig lookup.
3136 * include/bits/locale_facets.tcc: Likewise.
3137 * src/locale.cc: Likewise.
3138 * src/localename.cc: Likewise.
3139
48166869
PE
31402003-07-06 Phil Edwards <pme@gcc.gnu.org>
3141
3142 * include/bits/allocator_traits.h: Fix doxygen markup.
3143 * include/ext/mt_allocator.h: Likewise.
3144
aaa4a229
PE
31452003-07-06 Phil Edwards <pme@gcc.gnu.org>
3146
3147 * testsuite/testsuite_hooks.h: Guard against a missing unlink().
3148
e6b7a69a
PE
31492003-07-05 Phil Edwards <pme@gcc.gnu.org>
3150
3151 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Bump minimal version
3152 requirement. Add port_specific_symbol_file variable.
3153 * configure.host: Add docs for port_specific_symbol_file.
3154 Clean up try_cpu block for x86.
3155 * config/linker-map.gnu: No more "last symbol can't have a
3156 semicolon" kaka. Add hook for port-specific symbols.
3157 * src/Makefile.am: Remove trailing whitespace.
3158 (libstdc++-symbol.ver): Detect the presence of port-specific
3159 symbols, and add them accordingly.
3160
3161 * docs/html/17_intro/porting.texi: Bring up to date.
3162
3163 * src/Makefile.in, aclocal.m4, configure,
3164 docs/html/17_intro/porting.html: Regenerated.
3165
ac3d7b44
PE
31662003-07-05 Phil Edwards <pme@gcc.gnu.org>
3167
3168 * scripts/create_testsuite_files: New file.
3169 * testsuite/Makefile.am (all-local, check-performance): Use it.
3170 * testsuite/lib/libstdc++-v3-dg.exp (v3-computer-tests): Remove.
3171 * testsuite/Makefile.in: Regenerated.
3172
3173 * testsuite/performance/filebuf_sputc.cc: Remove the temporary
3174 files at the end.
3175 * testsuite/performance/fstream_seek_write.cc: Likewise.
3176 * testsuite/performance/ofstream_insert_float.cc: Likewise.
3177 * testsuite/performance/ofstream_insert_int.cc: Likewise.
3178 * testsuite/abi_check.cc (main): Nicer spacing in usage output.
3179
e3d51be2
GB
31802003-07-05 Gawain Bolton <gp.bolton@computer.org>
3181
3182 * include/bits/stl_list.h: Performance and memory usage
c094e9b9
BK
3183 improvements. In particular, the behaviour of the constructor and
3184 destructor as the list header node is no longer dynamically
3185 allocated/de-allocated.
e3d51be2
GB
3186 * include/bits/list.tcc: Likewise.
3187
eb9a4231
PC
31882003-07-05 Paolo Carlini <pcarlini@unitus.it>
3189
3190 * include/std/std_complex.h: Fully qualify standard
3191 functions with std::, thus avoiding Koenig lookup.
3192 * include/std/std_memory.h: Likewise.
3193 * include/std/std_valarray.h: Likewise.
3194
f92c5313
GB
31952003-07-05 Gawain Bolton <gp.bolton@computer.org>
3196
3197 * include/bits/stl_tree.h: _Rb_tree_rebalance(): Add local
7e2055ec 3198 variable for grandparent and use const
f92c5313 3199
8b87d3fa
DB
32002003-07-05 David Billinghurst <David.Billinghurst@riotinto.com>
3201
3202 * testsuite/27_io/basic_filebuf/close/char/4879.cc: xfail on cygwin
3203 * testsuite/27_io/basic_filebuf/close/char/9964.cc: Ditto
3204 * testsuite/27_io/basic_filebuf/open/char/9507.cc: Ditto
3205 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: Ditto
3206 * testsuite/27_io/basic_filebuf/underflow/char/10097.cc: Ditto
3207 * testsuite/27_io/objects/char/7.cc: Ditto
3208 * testsuite/27_io/objects/char/9661-1.cc: Ditto
3209
a8cad3e1
PC
32102003-07-05 Paolo Carlini <pcarlini@unitus.it>
3211
3212 * include/std/std_bitset.h: Fully qualify standard
3213 functions with std::, thus avoiding Koenig lookup.
3214
3215 * include/std/std_fstream.h: Change comment to doxygen style.
3216
2778669a
PE
32172003-07-05 Phil Edwards <pme@gcc.gnu.org>
3218
3219 * include/std/std_limits.h: More CPP->CXX changes.
3220 * scripts/check_survey.in: Likewise.
3221
3d7c150e
BK
32222003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3223
3224 Move from CPP to CXX.
3225 * include/bits/c++config: Move to GLIBCXX from GLIBCPP.
3226 * testsuite/Makefile.am: Same.
3227 * testsuite/Makefile.in: Regenerate.
3228 * po/Makefile.am: Same.
7e2055ec 3229 * po/Makefile.in: Regenerate.
3d7c150e 3230 * libsupc++/Makefile.am: Same.
7e2055ec 3231 * libsupc++/Makefile.in: Regenerate.
3d7c150e 3232 * libmath/Makefile.am: Same.
7e2055ec 3233 * libmath/Makefile.in: Regenerate.
3d7c150e 3234 * include/Makefile.am: Same.
7e2055ec 3235 * include/Makefile.in: Regenerate.
3d7c150e 3236 * src/Makefile.am: Same.
7e2055ec 3237 * src/Makefile.in: Regenerate.
3d7c150e
BK
3238 * acconfig.h: Same.
3239 * configure.host: Same.
3240 * configure.in: Same.
3241 * configure: Regenerate.
3242 * acinclude.m4: Same.
3243 * aclocal.m4: Same.
3244 * src: Change all files in this directory.
3245 * testsuite: Same.
3246 * include: Same, standardize include guards.
3247 * config: Same.
3248 * libsupc++: Same.
7e2055ec 3249
e6cc3a24
ZW
32502003-07-04 Zack Weinberg <zack@codesourcery.com>
3251
3252 * testsuite/22_locale/collate/compare/wchar_t/2.cc
3253 * testsuite/22_locale/collate/compare/wchar_t/wrapped_env.cc
3254 * testsuite/22_locale/collate/compare/wchar_t/wrapped_locale.cc
3255 * testsuite/22_locale/collate/hash/wchar_t/2.cc
3256 * testsuite/22_locale/collate/hash/wchar_t/wrapped_env.cc
3257 * testsuite/22_locale/collate/hash/wchar_t/wrapped_locale.cc
3258 * testsuite/22_locale/collate/transform/wchar_t/2.cc
3259 * testsuite/22_locale/collate/transform/wchar_t/wrapped_env.cc
3260 * testsuite/22_locale/collate/transform/wchar_t/wrapped_locale.cc:
3261 XFAIL on all targets.
3262
d542f114
BK
32632003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3264
3265 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix missed variable.
3266 * aclocal.m4: Regenerate.
3267 * configure: Regenerate.
e6cc3a24 3268
d542f114
BK
32692003-07-04 Jerry Quinn <jlquinn@optonline.net>
3270
3271 * include/bits/locale_facets.tcc (__int_to_char): Move common case
3272 to the top.
3273
69ef29fd 32742003-07-04 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24
ZW
3275 Petur Runolfsson <peturr02@ru.is>
3276
69ef29fd
BK
3277 * config/io/basic_file_stdio.cc: Revert.
3278
5b5bf717
PC
32792003-07-04 Paolo Carlini <pcarlini@unitus.it>
3280
3281 * include/bits/deque.tcc: Fully qualify standard
3282 functions with std::, thus avoiding Koenig lookup.
3283 * include/bits/gslice_array.h: Likewise.
3284 * include/bits/indirect_array.h: Likewise.
3285 * include/bits/list.tcc: Likewise.
3286 * include/bits/mask_array.h: Likewise.
3287 * include/bits/slice_array.h: Likewise.
3288
7f6dd1ca
GB
32892003-07-04 Gawain Bolton <gbolton@free.fr>
3290
3291 * include/bits/stl_tree.h: Performance and memory usage
3292 improvements.
3293
8c90b13a
L
32942003-07-04 H.J. Lu <hongjiu.lu@intel.com>
3295
3296 * Makefile.am: Replace PWD with PWD_COMMAND.
3297 * Makefile.in: Regenerated.
3298 * docs/html/Makefile: Likewise.
3299
2f805868
PC
33002003-07-04 Paolo Carlini <pcarlini@unitus.it>
3301
3302 * include/bits/valarray_array.h: Fully qualify standard
3303 functions with std::, thus avoiding Koenig lookup.
3304 * include/bits/vector.tcc: Likewise.
3305
a30335e9
BK
33062003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3307
3308 * include/Makefile.am: Update target_ to host_.
3309 * include/Makefile.in: Regenerate.
3310 * src/Makefile.am: Same.
3311 * src/Makefile.in: Regenerate.
3312
3313 * config/os/gnu-linux/os_defines.h: Remove glibc-2.0 support.
e6cc3a24 3314
d8d81f62
BK
33152003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3316
3317 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG_FLAGS): To
3318 --enable-libstdcxx-debug-flags.
3319 (GLIBCPP_ENABLE_DEBUG_FLAGS): To --enable-libstdcxx-debug.
3320 (GLIBCPP_ENABLE_PCH): To --enable-libstdcxx-pch.
3321 * aclocal.m4: Regenerate.
3322 * configure: Same.
3323 * docs/html/configopts.html: Update.
e6cc3a24 3324
10ef4e2e
PC
33252003-07-04 Paolo Carlini <pcarlini@unitus.it>
3326
3327 Revert the fix for libstdc++/11378.
3328
ac2c48d7
PC
33292003-07-04 Paolo Carlini <pcarlini@unitus.it>
3330
3331 PR libstdc++/11378
3332 * include/std/std_fstream.h (xsputn): In the unbuffered case,
3333 provided always_noconv(), issue directly _M_file.xsputn.
3334 * testsuite/performance/filebuf_unbuf_sputn.cc: New.
3335
9dd90ac6
PC
33362003-07-04 Paolo Carlini <pcarlini@unitus.it>
3337
3338 * include/bits/stl_list.h: Fully qualify standard
3339 functions with std::, thus avoiding Koenig lookup.
3340 * include/bits/stl_queue.h: Likewise.
3341 * include/bits/stl_raw_storage_iter.h: Likewise.
3342 * include/bits/stl_tempbuf.h: Likewise.
3343 * include/bits/stl_tree.h: Likewise.
3344 * include/bits/stl_uninitialized.h: Likewise.
3345 * include/bits/stl_vector.h: Likewise.
e6cc3a24 3346 * include/ext/rope: Change includes order.
9dd90ac6 3347
1b33b6b2
BK
33482003-07-04 Benjamin Kosnik <bkoz@redhat.com>
3349
3350 * configure.host (fpos_include_dir): Fix.
3351
369b78b0
PC
33522003-07-04 Paolo Carlini <pcarlini@unitus.it>
3353
3354 * include/bits/stl_heap.h: Fully qualify standard
3355 functions with std::, thus avoiding Koenig lookup.
3356 * include/bits/stl_iterator_base_funcs.h: Likewise.
3357
3358 * include/bits/stl_algo.h: Qualify __iterator_category too.
3359 * include/bits/stl_algobase.h: Likewise.
3360 * include/bits/stl_bvector.h: Likewise.
3361
3362 * include/bits/stl_algo.h: Don't qualify the pair type.
3363
cc5112c9
BK
33642003-07-03 Benjamin Kosnik <bkoz@redhat.com>
3365
3366 * include/Makefile.am (target_headers): Add fpos.h
3367 (bits_headers): Remove.
3368 * include/Makefile.in: Regenerate.
3369 * configure.in: Add FPOS_INC_SRCDIR, substitute it.
3370 * configure: Regenerate.
3371 * configure.host: Add fpos_include_dir.
3372 * config/os/gnu-linux/fpos.h: New.
e6cc3a24
ZW
3373 * config/os/generic/fpos.h: Add.
3374 * include/bits/fpos.h: Remove.
cc5112c9
BK
3375
3376 * config/io/c_io_stdio.h: Remove fpos_t typedef.
3377
3378 * include/bits/fstream.tcc: Tweaks.
3379 * include/std/std_fstream.h: Same.
e6cc3a24 3380
cc5112c9
BK
3381 * testsuite/27_io/fpos/1.cc (test01): Uncomment. Move to...
3382 * testsuite/27_io/fpos/mbstate_t/1.cc: ...here.
3383 * testsuite/27_io/fpos/mbstate_t/2.cc: Same.
3384 * testsuite/27_io/fpos/mbstate_t/3.cc: Same.
3385 * testsuite/27_io/fpos/1.cc: New.
e6cc3a24 3386
cc5112c9
BK
33872003-07-03 Benjamin Kosnik <bkoz@redhat.com>
3388 Petur Runolfsson <peturr02@ru.is>
e6cc3a24 3389
cc5112c9
BK
3390 * include/std/std_streambuf.h: Remove _M_pos.
3391 * config/io/basic_file_stdio.h: Use seekpos instead of seekoff.
3392 * config/io/basic_file_stdio.cc: Same, use fseek instead of lseek,
3393 use fread/fwrite instead of read/write.
3394 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Fix.
3395 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: Close filebufs
3396 before reading again.
3397 * testsuite/27_io/objects/char/6.cc: Tweak.
e6cc3a24 3398
304d79dc
DE
33992003-07-03 David Edelsohn <edelsohn@gnu.org>
3400
3401 * testsuite/22_locale/num_put/put/char/7.cc: Guard with
3402 _GLIBCPP_USE_WCHAR_T.
3403
41ba4c46
PC
34042003-07-02 Paolo Carlini <pcarlini@unitus.it>
3405
3406 * include/bits/basic_string.tcc (_M_replace_aux): Constify
3407 __n1 and __off1.
3408
da73f9de
PC
34092003-07-02 Paolo Carlini <pcarlini@unitus.it>
3410
3411 * include/bits/stl_bvector.h: Fully qualify standard
3412 functions with std::, thus avoiding Koenig lookup.
3413 * include/bits/stl_construct.h: Likewise.
3414 * include/bits/stl_deque.h: Likewise.
3415
1c380095
PC
34162003-07-02 Paolo Carlini <pcarlini@unitus.it>
3417
3418 * testsuite/22_locale/num_put/put/char/7.cc: Include
3419 <testsuite_hooks.h>, tweak.
3420 * testsuite/22_locale/num_put/put/wchar_t/7.cc: Likewise.
3421
f9f4d1e1
PE
34222003-07-01 Phil Edwards <pme@gcc.gnu.org>
3423
3424 * testsuite/Makefile.am (AM_MAKEFLAGS): Set to -j1 (affects
3425 check* targets, but not libs/programs).
3426 * testsuite/Makefile.in: Regenerate.
3427
b7693a46
RS
34282003-07-01 Roger Sayle <roger@eyesopen.com>
3429
3430 * acinclude.m4 (GLIBCPP_CHECK_STDLIB_SUPPORT): Fix typo in CXXFLAGS.
3431 (GLIBCPP_CHECK_MATH_SUPPORT): Likewise.
3432 * aclocal.m4: Regenerate.
3433 * configure: Regenerate.
3434
a5b1b26c
BK
34352003-07-01 Benjamin Kosnik <bkoz@redhat.com>
3436
3437 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Fix obvious error.
3438 * aclocal.m4: Regenerated.
3439 * configure: Regenerated.
e6cc3a24 3440
f64f3e74
PC
34412003-07-01 Paolo Carlini <pcarlini@unitus.it>
3442
3443 PR libstdc++/11389
3444 * include/bits/fstream.tcc (underflow): For encoding() == 0
3445 don't read more than __buflen chars.
3446 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-1.cc: New.
3447 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-2.cc: New.
3448 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-3.cc: New.
3449 * testsuite/27_io/basic_filebuf/underflow/wchar_t/11389-4.cc: New.
3450
5ee78c21
JQ
34512003-07-01 Jerry Quinn <jlquinn@optonline.net>
3452
3453 * 22_locale/num_put/put/char/7.cc: New.
3454 * 22_locale/num_put/put/wchar_t/7.cc: New.
3455
e97ee22e
JQ
34562003-06-30 Jerry Quinn <jlquinn@optonline.net>
3457
3458 * src/locale.cc (__use_cache<numpunct>): Revert previous relocation.
3459 * include/bits/locale_facets.tcc (__use_cache<numpunct>): Ditto.
3460
7d6a0993
BK
34612003-06-30 Benjamin Kosnik <bkoz@redhat.com>
3462
3463 * 27_io/basic_filebuf/seekoff/char/1-in.cc: New.
3464 * 27_io/basic_filebuf/seekoff/char/1-io.cc: New.
3465 * 27_io/basic_filebuf/seekoff/char/1-out.cc: New.
3466 * 27_io/basic_filebuf/seekoff/char/2-in.cc: New.
3467 * 27_io/basic_filebuf/seekoff/char/2-io.cc: New.
3468 * 27_io/basic_filebuf/seekoff/char/2-out.cc: New.
3469 * 27_io/basic_filebuf/seekoff/char/2.cc: Remove.
3470 * 27_io/basic_filebuf/seekoff/char/3-in.cc: New.
3471 * 27_io/basic_filebuf/seekoff/char/3-io.cc: Change.
3472 * 27_io/basic_filebuf/seekoff/char/3-out.cc: New.
3473 * 27_io/basic_filebuf/seekoff/char/4-io.cc: Remove.
3474 * 27_io/basic_filebuf/seekpos/char/1-in.cc: New.
3475 * 27_io/basic_filebuf/seekpos/char/1-io.cc: New.
3476 * 27_io/basic_filebuf/seekpos/char/1-out.cc: New.
3477 * 27_io/basic_filebuf/seekpos/char/2-in.cc: New.
3478 * 27_io/basic_filebuf/seekpos/char/2-io.cc: New.
3479 * 27_io/basic_filebuf/seekpos/char/2-out.cc: New.
3480 * 27_io/basic_filebuf/seekpos/char/2.cc: Change.
3481 * 27_io/basic_filebuf/seekpos/char/3-in.cc: New.
3482 * 27_io/basic_filebuf/seekpos/char/3-io.cc: Remove.
3483 * 27_io/basic_filebuf/seekpos/char/3-out.cc: New.
3484 * 27_io/basic_filebuf/seekpos/char/4-io.cc: Remove.
3485 * data/seekoff-1.tst: Remove.
3486 * data/seekoff-1io.tst: New.
3487 * data/seekoff-1out.tst: New.
3488 * data/seekoff-2.tst: Remove.
3489 * data/seekoff-2io.tst: New.
3490 * data/seekoff-2out.tst: New.
3491 * data/seekoff.txt
3492 * data/seekpos-1.tst: Remove.
3493 * data/seekpos-1io.tst: New.
3494 * data/seekpos-1out.tst: New.
3495 * data/seekpos-2.tst: Remove.
3496 * data/seekpos-2io.tst: New.
3497 * data/seekpos-2out.tst: New.
3498 * data/seekpos.txt: New.
3499
a5b1b26c 35002003-06-30 Jerry Quinn <jlquinn@optonline.net>
cf0cad09
JQ
3501
3502 * src/locale.cc (__use_cache<numpunct>): Move from here ...
3503 * include/bits/locale_facets.tcc (__use_cache<numpunct>): To
3504 here.
3505
884a757a
PC
35062003-06-30 Paolo Carlini <pcarlini@unitus.it>
3507
3508 * include/bits/stl_algobase.h: Fully qualify standard
3509 functions with std::, thus avoiding Koenig lookup.
3510
5892c641 35112003-06-30 Doug Gregor <dgregor@apple.com>
e6cc3a24 3512
5892c641 3513 * include/bits/locale_facets.tcc (money_get::do_get): Avoid
e6cc3a24 3514 subscripting empty string.
5892c641 3515
7685a26d
PE
35162003-06-30 Phil Edwards <pme@gcc.gnu.org>
3517
3518 * testsuite/Makefile.am (check-am): Do not override.
3519 (baseline_symbols): Declare as PHONY, so no need to 'touch' it.
3520 * testsuite/Makefile.in: Regenerate.
3521
e6cc3a24
ZW
35222003-06-30 Doug Gregor <dgregor@apple.com>
3523
d147b75b
DG
3524 * testsuite/24_iterators/insert_iterator.cc (test01, test02):
3525 Don't initialize an insert_iterator with a singular iterator.
3526
44f0760e 35272003-06-30 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 3528
44f0760e
BK
3529 * acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
3530 * aclocal.m4: Regenerate.
3531 * configure.in (GLIBCPP_CHECK_PCH): Move, change to
3532 GLIBCPP_ENABLE_PCH, default to yes.
3533 * configure: Regenerate.
3534 * docs/html/configopts.html: Add --enable-pch.
e6cc3a24 3535
e37f7da7
PE
35362003-06-30 Phil Edwards <pme@gcc.gnu.org>
3537
3538 * testsuite/lib/libstdc++-v3-dg.exp: Add comments.
3539 (libstdc++-v3-init): Also set LD_RUN_PATH.
3540
cd16e04b
PC
35412003-06-30 Paolo Carlini <pcarlini@unitus.it>
3542
fbfcbadc
PC
3543 * include/std/std_streambuf.h (_M_mode): Unused by streambuf, move
3544 from here to filebuf and stringbuf.
cd16e04b
PC
3545 (~basic_streambuf()): Don't set _M_mode.
3546 (basic_streambuf()): Don't set _M_mode.
3547 * include/std/std_fstream.h (_M_mode): Move here, from streambuf.
3548 (~basic_filebuf()): Clean up.
3549 * include/bits/fstream.tcc (basic_filebuf()): Set _M_mode.
3550 * include/std/std_sstream.h (_M_mode): Move here, from streambuf.
3551 * testsuite/27_io/basic_streambuf/cons/char/1.cc: Don't set _M_mode.
3552 * testsuite/27_io/basic_streambuf/overflow/char/1.cc: Likewise.
3553 * testsuite/27_io/basic_streambuf/sgetc/char/1.cc: Likewise.
3554 * testsuite/27_io/basic_streambuf/sgetn/char/1.cc: Likewise.
3555 * testsuite/27_io/basic_streambuf/sputn/char/1.cc: Likewise.
3556
35572003-06-30 Paolo Carlini <pcarlini@unitus.it>
3558
3559 * include/std/std_fstream.h (_M_underflow): Remove.
3560 (uflow): Remove, inherited from streambuf.
3561 (underflow): Only declare.
e6cc3a24 3562 * include/bits/fstream.tcc (_M_underflow): Rename to
cd16e04b
PC
3563 underflow, to which is equivalent for __bump == false,
3564 simplify.
3565 * include/std/std_sstream.h (_M_underflow): Remove.
3566 (uflow): Remove, inherited from streambuf.
3567 (underflow): Only declare.
e6cc3a24 3568 * include/bits/sstream.tcc (_M_underflow): Rename to
cd16e04b
PC
3569 underflow, to which is equivalent for __bump == false,
3570 simplify.
3571
c868f37e
PC
35722003-06-29 Paolo Carlini <pcarlini@unitus.it>
3573
fbfcbadc
PC
3574 * include/bits/stl_algo.h: Fully qualify standard functions
3575 with std::, thus avoiding Koenig lookup.
c868f37e 3576
165f54e0
PC
35772003-06-29 Paolo Carlini <pcarlini@unitus.it>
3578
3579 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1.cc:
3580 Improve type correctness-wise.
3581 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2.cc:
3582 Likewise.
3583 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3.cc:
3584 Likewise.
3585 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4.cc:
3586 Likewise.
3587
90319d16
PC
35882003-06-29 Paolo Carlini <pcarlini@unitus.it>
3589
3590 * include/std/std_streambuf.h (uflow): According to
3591 27.5.2.4.3,p16, don't check gptr() < egptr().
3592
b417ae14
PC
35932003-06-28 Paolo Carlini <pcarlini@unitus.it>
3594
3595 PR libstdc++/9875
3596 * include/bits/fstream.tcc (seekoff): Fix for encoding() > 0.
3597 (seekpos): Likewise.
3598 * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc:
3599 New test.
3600 * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
3601 New test.
3602
f1a22109
BK
36032003-06-27 Benjamin Kosnik <bkoz@redhat.com>
3604
3605 * testsuite/testsuite_performance.h (__gnu_cxx_test): Change
3606 output name to libstdc++-v3-performance.sum.
3607 * testsuite/Makefile.am (CLEANFILES): Remove .performance.
3608 * testsuite/Makefile.in: Regenerate.
e6cc3a24 3609
f1a22109
BK
36102003-06-27 Matthias Klose <doko@debian.org>
3611
3612 * testsuite/Makefile.am (check-abi, check-abi-verbose): Save
3613 output of abi-check in libstdc++-v3-abi.sum.
3614 * testsuite/Makefile.in: Regenerate.
3615
2e8a523f
KW
36162003-06-27 Krister Walfridsson <cato@df.lth.se>
3617
3618 * config/os/bsd/netbsd/ctype_noninline.h
3619 (_C_ctype_): Declare.
3620 (ctype<char>::classic_table): Return _C_ctype_ + 1.
3621 (ctype<char>::ctype): Use classic_table.
3622
3461133d
PC
36232003-06-27 Paolo Carlini <pcarlini@unitus.it>
3624 Nathan C. Myers <ncm-nospam@cantrip.org>
3625
3626 PR libstdc++/9178
3627 * include/bits/fstream.tcc (_M_underflow): Properly estimate
3628 the worst-case number of external bytes for a given get area.
3629 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: New.
3630
36312003-06-27 Paolo Carlini <pcarlini@unitus.it>
3632 Petur Runolfsson <peturr02@ru.is>
3633
3634 PR libstdc++/11305
3635 * include/bits/fstream.tcc (overflow): Properly estimate the
3636 worst-case number of external bytes for a given put area
3637 (by using codecvt::max_length()).
3638 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-1: New.
3639 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-2: New.
3640 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-3: New.
3641 * testsuite/27_io/basic_filebuf/overflow/wchar_t/11305-4: New.
3642
5648db54
NS
36432003-06-27 Nathan Sidwell <nathan@codesourcery.com>
3644
3645 * config/linker-map.gnu: Remove ; after __numpunct_cache.
3646
215f9e28
BK
36472003-06-26 Benjamin Kosnik <bkoz@redhat.com>
3648
3649 * include/bits/ios_base.h (ios_base::_M_getloc): Return reference
3650 to the imbued locale.
3651 * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use
3652 _M_getloc.
3653 (num_put::_M_convert_float): Use.
3654
36552003-06-26 Benjamin Kosnik <bkoz@redhat.com>
3656 Jerry Quinn <jlquinn@optonline.net>
3657
3658 * config/linker-map.gnu: Add __numpunct_cache.
3659 * config/locale/gnu/numeric_members.cc
3660 (numpunct::_M_initialize_numpunct): Account for _M_data, fill in
3661 all elements for "C" locale.
3662 (numpunct::~numpunct): Delete _M_data.
e6cc3a24 3663 * config/locale/generic/numeric_members.cc: Same.
215f9e28
BK
3664 * include/bits/basic_ios.tcc
3665 (basic_ios::init): Remove __locale_cache bits.
3666 (basic_ios::_M_cache_locale): Same.
e6cc3a24 3667 * include/bits/ios_base.h: Same. Tweaks.
215f9e28
BK
3668 * include/bits/locale_classes.h: Tweaks. Reorder classes.
3669 (__use_cache): Make friends with _Impl, locale.
3670 (_Impl::_M_caches): Add.
3671 (_Impl::_M_install_cache): Add.
3672 * include/bits/locale_facets.h (__numpunct_cache): New.
3673 (numpunct): Encapsulate data members in __numpunct_cache member,
3674 _M_data. Adjust virtuals.
e6cc3a24 3675 (numpunct::numpunct): New ctor for the same.
215f9e28 3676 (__locale_cache_base): Remove.
e6cc3a24 3677 (__locale_cache): Remove.
215f9e28
BK
3678 * include/bits/locale_facets.tcc (__use_cache): New function,
3679 specializations.
3680 (num_put::_M_convert_int, _M_convert_float, do_put): Use it.
3681 * src/globals.cc: Add cache_vec, numpunct_cache_c, numpunct_cache_w.
3682 * src/ios.cc (ios_base::ios_base): Remove __locale_cache.
3683 * src/locale-inst.cc: Same. Add __numpunct_cache.
3684 * src/locale.cc: Tweak inlines.
3685 (__use_cache): Define specializations.
3686 * src/localename.cc: Use global bits.
3687 (_Impl::~Impl): Deal with __numpunct_cache destruction.
3688 (_Impl::_Impl): Same. Pre-cache standard numpunct facets.
3689 (_Impl::_M_init_facet): Take into account __numpunct_cache.
3690 * testsuite/27_io/ios_base/cons/assign_neg.cc: Update line numbers.
3691 * testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
3692
8370378a 36932003-06-26 Nathan C. Myers <ncm-nospam@cantrip.org>
e6cc3a24 3694 Paolo Carlini <pcarlini@unitus.it>
8370378a
NM
3695
3696 * testsuite/performance/filebuf_copy.cc: New, testing char
3697 by char file copy.
3698
2cfe4e68 36992003-06-26 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 3700 Nathan C. Myers <ncm-nospam@cantrip.org>
2cfe4e68
PC
3701
3702 * include/bits/fstream.tcc (_M_underflow): When the actual
3703 end of file is reached, set 'uncommitted' mode to allow a
3704 next write without an intervening seek (see C++98 27.8.1.1,2
3705 and C89 7.9.5.3).
3706 * testsuite/27_io/basic_filebuf/underflow/char/2.cc: New.
3707
29d9ed97
NM
37082003-06-25 Nathan C. Myers <ncm-nospam@cantrip.org>
3709
3710 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
3711 sputc): Move inline, from here...
3712 * include/std/std_streambuf.h: ... to here.
3713
3714 * include/std/std_streambuf.h (snextc, sbumpc, sgetc,
3715 sputbackc, sungetc, sputc): Use __builtin_expect.
3716
c1a62440
PE
37172003-06-24 Phil Edwards <pme@gcc.gnu.org>
3718
3719 * docs/doxygen/mainpage.html: Use a useful title.
3720
cdc1242a
BK
37212003-06-24 Benjamin Kosnik <bkoz@redhat.com>
3722
3723 * docs/html/documentation.html: Remove assignment info.
3724 * docs/html/17_intro/contribute.html: Edits.
3725 * docs/html/17_intro/libstdc++-assign.tx: Remove.
3726
3727 * docs/html/test.html: Update.
3728
3729 * README: Update.
e6cc3a24 3730
1b6f0a56 37312003-06-24 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 3732 Ulrich Drepper <drepper@redhat.com>
1b6f0a56
BK
3733
3734 * testsuite/testsuite_performance.h: Tweak mallinfo.
3735
71b46021 37362003-06-24 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 3737 Nathan C. Myers <ncm-nospam@cantrip.org>
71b46021
PC
3738
3739 * include/std/std_fstream.h (_M_filepos): Remove.
3740 (_M_reading, _M_writing): New, encode the various I/O modes:
3741 'read', 'write' and 'uncommitted'.
3742 (sync): If there is something to flush, do it, then go to
3743 'uncommitted' mode.
3744 * include/bits/fstream.tcc (_M_set_buffer): Overhaul to deal
3745 with three different cases: __off > 0 (upon underflow),
3746 __off == 0 (upon overflow), __off == -1 (upon open, setbuf,
3747 seekoff/pos).
3748 (_M_underflow): Don't call overflow, set _M_reading to true
3749 on success, tweak.
3750 (pbackfail): Set _M_reading to true on pback creation, tweak.
3751 (overflow): Don't seek, deal with overflow in 'uncommitted' mode,
3752 set _M_writing to true on success, tweak.
3753 (seekoff): Simplify, set _M_reading, _M_writing to false, call
3754 _M_set_buffer(-1) ('uncommitted').
3755 (open, close, setbuf): Set _M_reading, _M_writing to false and
3756 call _M_set_buffer(-1), tweak.
3757 (basic_filebuf): Don't set _M_buf_unified.
3758 (_M_destroy_internal_buffer): Don't call setg and setp.
3759 * include/ext/stdio_filebuf.h (stdio_filebuf): Use _M_reading,
3760 _M_writing and _M_set_buffer(-1).
3761 * include/std/std_streambuf.h (_M_move_out_cur, _M_move_in_cur,
3762 _M_out_lim, _M_buf_unified): Remove.
3763 (basic_streambuf): Don't set _M_out_lim and _M_buf_unified.
e6cc3a24 3764 (setp): Don't set _M_out_lim.
71b46021
PC
3765 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: Fix for
3766 the new logic ('read', 'write' and 'uncommitted' modes): e.g.,
3767 upon open the mode is 'uncommitted' and therefore the put area
3768 pointers are null.
3769 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: Ditto.
3770 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: Ditto.
3771 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: Ditto.
3772 * testsuite/27_io/basic_filebuf/setbuf/char/1.cc: Ditto.
3773 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: Ditto.
3774 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: Ditto.
3775 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
3776 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: Ditto.
3777 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: Ditto.
3778 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: Ditto.
3779 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Ditto.
3780 * testsuite/27_io/basic_filebuf/sputbackc/char/1-out.cc: Ditto.
3781 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: Ditto.
3782 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: Ditto.
3783 * testsuite/27_io/basic_filebuf/sputc/char/9701-2.cc: Ditto.
3784 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: Ditto.
3785 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: Ditto.
3786 * testsuite/27_io/basic_filebuf/sputn/char/9701-1.cc: Ditto.
3787 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: Ditto.
3788 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: Ditto.
3789
3790 * include/bits/fstream.tcc (showmanyc): Use only the
3791 documented derivation interface to basic_streambuf (gptr(),
3792 setg(), etc.) to work right with user specializations.
3793 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc,
3794 sputc, xsgetn, xsputn, __copy_streambufs): Likewise.
3795 * include/std/std_streambuf.h (in_avail, sgetc, uflow, stossc):
3796 Likewise.
3797 * include/std/std_fstream.h (_M_create_pback, _M_destroy_pback,
3798 xsgetn): Likewise.
3799
9eb6e1d3
LR
38002003-06-23 Loren J. Rittle <ljrittle@acm.org>
3801
3802 * configure.host (freebsd*): Set abi_baseline_pair.
3803 * config/abi/i386-freebsd4/baseline_symbols.txt: Update from 3.2
3804 (at or near first release) to 3.3.
3805 * config/abi/i386-freebsd5/baseline_symbols.txt: New file.
3806 * config/abi/alpha-freebsd5/baseline_symbols.txt: New file.
3807 * config/abi/sparc-freebsd5/baseline_symbols.txt: New file.
3808
3d57d7ba 3809 * include/ext/mt_allocator.h: Portability.
d1a2c4d6 3810 * testsuite/testsuite_performance.h: Likewise.
3d57d7ba 3811
c89c30dd
BK
38122003-06-23 Benjamin Kosnik <bkoz@redhat.com>
3813
3814 * docs/html/17_intro/libstdc++-assign.txt: Update address.
3815
3816 * testsuite/performance/ifstream_getline.cc: Fix.
e6cc3a24 3817
c89c30dd 38182003-06-23 Doug Gregor <dgregor@apple.com>
2b491e3a 3819
e6cc3a24
ZW
3820 * include/bits/boost_concept_check.h: Don't use _D or _R for type
3821 names.
2b491e3a 3822
1b170b55
PC
38232003-06-22 Paolo Carlini <pcarlini@unitus.it>
3824 Nathan C. Myers <ncm-nospam@cantrip.org>
3825
3826 * include/std/std_streambuf.h (_M_move_out_cur): _M_out_lim
3827 is now used only for filebuf, when _M_buf_unified is true.
3828 epgtr() plays the role of _M_out_lim but it's only updated
3829 upon overflow, underflow, uflow, seekoff/pos.
3830 * include/bits/sstream.tcc (_M_underflow): New, implements
3831 stringbuf::underflow and uflow.
3832 (seekoff, seekpos): Tweak, use _M_update_egptr.
3833 * include/std/std_sstream.h (str): Rewrote, deal correctly
3834 with the new logic, in particular, when pptr() > egptr().
3835 (_M_sync): When __testout && !__testin set all the get area
3836 pointers to the current string end.
3837 (_M_update_egptr): New, internal function updating egptr()
3838 to the actual string end.
3839 (_M_underflow): New, declare.
3840 (underflow): Dispatch to _M_underflow(false).
3841 (uflow): Dispatch to _M_underflow(true).
3842
3843 * include/bits/sstream.tcc (pbackfail, overflow, seekoff,
3844 seekpos): Use only the documented derivation interface to
3845 basic_streambuf (gptr(), setg(), etc.) to work right with
3846 user specializations.
3847 * include/std/std_sstream.h (str, _M_sync): Likewise.
3848
8dbe14be
DG
38492003-06-20 Doug Gregor <dgregor@apple.com>
3850
1b170b55
PC
3851 * testsuite/20_util/auto_ptr.cc: Don't dereference NULL auto_ptr
3852 * testsuite/21_strings/basic_string/replace/char/4.cc: Don't
3853 dereference end iterator.
3854 * testsuite/21_strings/basic_string/replace/wchar_t/4.cc: Same.
3855 * testsuite/22_locale/ctype/narrow/char/1.cc: Don't subscript with
3856 index equal to the length of a string.
3857 * testsuite/22_locale/ctype/narrow/char/2.cc: Same.
3858 * testsuite/22_locale/ctype/narrow/wchar_t/1.cc: Same.
3859 * testsuite/22_locale/ctype/narrow/wchar_t/2.cc: Same.
3860 * testsuite/22_locale/ctype/widen/char/1.cc: Same.
3861 * testsuite/22_locale/ctype/widen/wchar_t/1.cc: Same.
3862 * testsuite/23_containers/list_modifiers.cc: Don't dereference
3863 singular reverse iterator.
3864 * testsuite/23_containers/vector_bool.cc: Don't increment singular
3865 iterator.
3866 * testsuite/24_iterators/rel_ops.cc: Don't compare singular iterator.
8dbe14be 3867
bdb0f0f5
DG
38682003-06-20 Doug Gregor <dgregor@apple.com>
3869
e6cc3a24 3870 * include/bits/basic_string.h (basic_string::replace): Dispatch
bdb0f0f5
DG
3871 _InputIterator version based on _Is_integer.
3872 * include/bits/basic_string.tcc (basic_string::replace):
3873 Renamed replace(iterator, iterator, size_type, _CharT) to
3874 _M_replace_aux.
3875 * testsuite/21_strings/basic_string/assign/char/1.cc (test01):
3876 Test basic_string::assign(_InputIterator, _InputIterator),
3877 which calls basic_string::replace(iterator, iterator,
3878 _Input_iterator, _InputIterator).
3879
f5a6463e
BK
38802003-06-20 Benjamin Kosnik <bkoz@redhat.com>
3881
3882 * testsuite/testsuite_performance.h (resource_counter): Don't use
3883 mallinfo at the moment.
3884
bbdfb3e8
MK
38852003-06-20 Matthias Klose <doko@debian.org>
3886
3887 * configure.host: Set try_cpu to target_cpu for existing
3888 baseline files.
3889
97460e9a
AJ
38902003-06-19 Andreas Jaeger <aj@suse.de>
3891
3892 * testsuite/Makefile.am (extract_symvers): Revert accidental
3893 change.
3894 * testsuite/Makefile.in: Regenerate.
3895
3896 * configure.in: Pass MULTISUBDIR to testsuite/Makefile.
3897 * configure: Regenerated.
3898
50af15ec
PC
38992003-06-19 Paolo Carlini <pcarlini@unitus.it>
3900
3901 * include/std/std_sstream.h (_M_sync): Make non virtual.
3902
ce4f8c6b
BK
39032003-06-18 Benjamin Kosnik <bkoz@redhat.com>
3904
3905 * testsuite/testsuite_performance.h (time_counter): New.
3906 (resource_counter): New.
3907 (report_performance): New.
3908 (start_counters): New.
3909 (stop_counters): New.
97460e9a 3910 (clear_counters): New.
ce4f8c6b
BK
3911 * testsuite/performance/allocator.cc: Instrument.
3912 * testsuite/performance/cout_insert_int.cc: Same.
3913 * testsuite/performance/complex_norm.cc: Same.
3914 * testsuite/performance/filebuf_sputc.cc: New.
3915 * testsuite/performance/fstream_seek_write.cc: Same.
3916 * testsuite/performance/ifstream_getline.cc: Same.
3917 * testsuite/performance/map_create_fill.cc: Same.
3918 * testsuite/performance/ofstream_insert_float.cc: Same.
3919 * testsuite/performance/ofstream_insert_int.cc: Same.
97460e9a 3920 * testsuite/performance/string_append.cc: Convert.
ce4f8c6b
BK
3921 * scripts/check_performance: New.
3922 * testsuite/Makefile.am (check-performance): New.
3923 (CLEANFILES): Add.
97460e9a 3924
b82a33d2 39252003-06-18 Paolo Carlini <pcarlini@unitus.it>
e6cc3a24 3926 Benjamin Kosnik <bkoz@redhat.com>
b82a33d2
PC
3927
3928 * include/std/std_sstream.h (setbuf): Check __n >= 0.
3929 * include/bits/fstream.tcc (setbuf): Tweak.
3930
4c526d09
PC
39312003-06-18 Paolo Carlini <pcarlini@unitus.it>
3932
3933 * include/bits/sstream.tcc (seekoff): We can't seek beyond
3934 _M_out_lim, therefore _M_move_out_cur boils down to simply
3935 updating _M_out_cur.
3936 (seekpos): Likewise, clean up.
3937
c1b74c21 39382003-06-18 Nathan C. Myers <ncm-nospam@cantrip.org>
e6cc3a24 3939 Paolo Carlini <pcarlini@unitus.it>
c1b74c21
NM
3940
3941 * include/bits/fstream.tcc (setbuf): Allow (__s, 1) too,
3942 simply equivalent to the unbuffered case (0, 0) as far as
3943 _M_buf_size is concerned.
3944
a1af4623
AJ
39452003-06-18 Andreas Jaeger <aj@suse.de>
3946
3947 * testsuite/Makefile.am (new-abi-baseline): Create baseline
3948 directory.
3949 (baseline_file): Use baseline_dir.
3950 (baseline_dir): New.
3951 (mkinstalldirs): New.
3952
3953 * acinclude.m4: Rename baseline_file to baseline_dir, strip
3954 filename from baseline_dir.
3955
3956 * testsuite/Makefile.in: Regenerated.
3957 * Makefile.in: Regenerated.
3958 * aclocal.m4: Regenerated.
3959 * configure: Regenerated.
3960
2f934953
BK
39612003-06-17 Benjamin Kosnik <bkoz@redhat.com>
3962
3963 * configure.in: Missed check_survey bit.
3964 * configure: Regenerated.
3965
0676e930
BK
39662003-06-17 Benjamin Kosnik <bkoz@redhat.com>
3967
3968 * scripts: New.
3969 * config/abi/extract_symvers: Move to...
3970 * scripts/extract_symvers: ...here.
3971 * mkcheck.in: Move to..
3972 * scripts/check_survey.in: ...here.
3973 * testsuite_flags.in: Move to..
3974 * scripts/testsuite_flags.in: ...here.
3975 * configure.in: Change check and testsuite_flags locations.
3976 * configure: Regenerate.
3977 * testsuite/Makefile.am (current_symbols.txt): Change location.
3978 * testsuite/Makefile.in: Regenerate.
3979 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
3980 location of testsuite_flags.
3981 * Makefile.am (check-script): Move..
3982 (check-script-install): Move...
a1af4623 3983 * testsuite/Makefile.am: ... here.
0676e930 3984 * testsuite/Makefile.in: Regenerate.
a1af4623
AJ
3985 * Makefile.in: Regenerate.
3986
82620aaf
BK
39872003-06-17 Benjamin Kosnik <bkoz@redhat.com>
3988
3989 * config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.3.0.
3990
c4c064e7
BK
39912003-06-16 Benjamin Kosnik <bkoz@redhat.com>
3992
3993 * Makefile.am (check-abi): Move...
3994 (new-abi-baseline): Move...
3995 * testsuite/Makefile.am: ...here.
3996 (new-abi-baseline): Conditionalize.
3997 (check-abi): Conditionalize.
3998 (check-abi-verbose): New.
3999 * Makefile.in: Regenerate.
a1af4623 4000 * testsuite/Makefile.in: Regenerate.
c4c064e7
BK
4001 * configure.in: Consolidate testsuite configure bits.
4002 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Same.
4003 * configure: Regenerate.
a1af4623 4004 * aclocal.m4: Regenerate.
c4c064e7
BK
4005 * testsuite/abi_check.cc: Add --check-verbose.
4006 Only output detailed information if --check-verbose.
4007
e7bb3511 40082003-06-16 Andreas Jaeger <aj@suse.de>
a1af4623 4009
e6cc3a24 4010 * testsuite/abi_check.cc: Create summary report.
a1af4623 4011
8363b773
PC
40122003-06-16 Paolo Carlini <pcarlini@unitus.it>
4013
4014 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: Fix
4015 for systems with BUFSIZ != 8192.
4016 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Ditto.
4017 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc:
4018 Minor tweaks.
4019
5ab481e0
BK
40202003-06-16 Andreas Jaeger <aj@suse.de>
4021
4022 * acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Make
4023 check-abi multilib aware.
4024 * aclocal.m4: Regenerate.
4025 * configure: Regenerate.
a1af4623 4026
5ab481e0 40272003-06-16 Benjamin Kosnik <bkoz@redhat.com>
e6cc3a24 4028 Andreas Jaeger <aj@suse.de>
5ab481e0
BK
4029
4030 * configure.host: Set x86_64 abi_baseline pair correctly.
4031
0bad3b7c
PC
40322003-06-16 Paolo Carlini <pcarlini@unitus.it>
4033
4034 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Split and
e6cc3a24 4035 fix for missing seeks between gets and puts into...
0bad3b7c
PC
4036 * testsuite/27_io/basic_filebuf/sungetc/char/1-in.cc: New.
4037 * testsuite/27_io/basic_filebuf/sungetc/char/1-io.cc: New.
4038 * testsuite/27_io/basic_filebuf/sungetc/char/1-out.cc: New.
4039 * testsuite/27_io/basic_filebuf/sungetc/char/2-in.cc: New.
4040 * testsuite/27_io/basic_filebuf/sungetc/char/2-io.cc: New.
4041 * testsuite/27_io/basic_filebuf/sungetc/char/2-out.cc: New.
a1af4623 4042
dc4add82
RH
40432003-06-15 Richard Henderson <rth@redhat.com>
4044
4045 * config/linker-map.gnu: Export virtual function thunks for
4046 64-bit systems too.
4047
ef16a298
BK
40482003-06-13 Benjamin Kosnik <bkoz@redhat.com>
4049
4050 * config/abi/i686-pc-linux-gnu: To..
4051 * config/abi/i486-linux-gnu: ...this.
4052 * config/abi/alphaev67-unknown-linux-gnu: To..
4053 * config/abi/alpha-linux-gnu: ...this.
4054 * config/abi/ia64-unknown-linux-gnu: To...
4055 * config/abi/ia64-linux-gnu: ...this.
4056 * config/abi/x86_64-unknown-linux-gnu: To...
4057 * config/abi/x86_64-linux-gnu: ...this.
4058 * config/abi/i386-unknown-freebsd4: To...
4059 * config/abi/i386-freebsd4: ...this.
5ab481e0
BK
4060 * config/linker-map.gnu: Cleanups, move libsupc++ bits into
4061 CXXABI.
ef16a298
BK
4062 * configure.host: abi_baseline_triplet to abi_baseline_pair.
4063 Simplify cpu bits so that abi_baseline_pair can use the same
4064 cpu configuration.
4065 * acinclude.m4: Same.
4066 * aclocal.m4: Regenerate.
4067 * configure.in: Can't get enable_abi_check to yes unless native.
4068 * configure: Regenerate.
4069
ed242935
PC
40702003-06-13 Paolo Carlini <pcarlini@unitus.it>
4071
4072 * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Split and
4073 fix for missing seeks between gets and puts into...
4074 * testsuite/27_io/basic_filebuf/seekoff/char/3-io.cc: New.
4075 * testsuite/27_io/basic_filebuf/seekoff/char/4-io.cc: New.
4076 * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Same, into...
4077 * testsuite/27_io/basic_filebuf/seekpos/char/3-io.cc: New.
4078 * testsuite/27_io/basic_filebuf/seekpos/char/4-io.cc: New.
4079 * testsuite/27_io/basic_filebuf/sputbackc/char/1-io.cc: Fix
4080 for missing seeks between gets and puts.
4081 * testsuite/27_io/basic_filebuf/sputbackc/char/2-io.cc: Ditto.
4082 * testsuite/data/seekoff-1.tst: New.
4083 * testsuite/data/seekoff-2.tst: New.
4084 * testsuite/data/seekpos-1.tst: New.
4085 * testsuite/data/seekpos-2.tst: New.
4086
ca566e4c
NM
40872003-06-13 Nathan C. Myers <ncm-nospam@cantrip.org>
4088
4089 Avoid multi-processor bus contention on increment/decrement-and-
a1af4623 4090 test of the reference count in the empty-string object, by comparing
e6cc3a24
ZW
4091 addresses first, and never touching the reference count of the empty-
4092 string object.
ca566e4c
NM
4093 * include/bits/basic_string.h:
4094 (_S_empty_rep_storage): Move into basic_string<>::_Rep for use by its
4095 members.
a1af4623 4096 (_Rep::_S_empty_rep()): New accessor.
ca566e4c
NM
4097 (_Rep::_M_length, _Rep::_M_capacity, _Rep::_M_references): Move to
4098 a base class _Rep_base.
4099 (_Rep::_M_dispose, _Rep::_M_refcopy): Check for the empty string.
4100 (basic_string()): Change to use _M_refdata() in place of _M_refcopy(),
4101 since no longer must increment its refcount.
4102 * include/bits/basic_string.tcc:
a1af4623 4103 (_Rep::_M_destroy, _M_leak_hard): Check for the empty string and
e6cc3a24
ZW
4104 return immediately. The former might be unnecessary. The latter
4105 prevents begin() and end() from cloning it unnecessarily.
ca566e4c
NM
4106 (_S_construct(_InIterator, _InIterator, const _Alloc&,
4107 input_iterator_tag), _S_construct(_InIterator, _InIterator,
4108 const _Alloc&, forward_iterator_tag), _S_construct(size_type, _CharT,
4109 const _Alloc&)): Change to use _M_refdata() in place of _M_refcopy().
4110 (_M_mutate): Check for the empty string and treat it as shared.
e6cc3a24
ZW
4111 This is necessary here because _M_mutate is sometimes called with
4112 all-zero arguments; in all other uses of _M_is_shared, the test comes
4113 out right anyhow.
a1af4623 4114
c37514ff
BK
41152003-06-12 Benjamin Kosnik <bkoz@redhat.com>
4116
4117 * src/allocator-inst.cc: Explicitly instantiate.
4118 * include/ext/pool_allocator.h: Inhibit implicit instantiations.
4119 Tweaks.
4120 * config/linker-map.gnu: Add __pool_alloc bits. Tweaks.
a1af4623 4121
58ac1d7f
BK
41222003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4123
4124 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
4125 * aclocal.m4: Regenerate.
4126 * Makefile.am (SUBDIRS): Remove libio.
4127 * Makefile.in: Regenerate.
4128 * configure.in: Same.
4129 * configure: Regenerate.
4130 * config/io/basic_file_libio.cc: Remove.
a1af4623 4131 * config/io/basic_file_libio.h: Remove.
58ac1d7f 4132 * config/io/c_io_libio_codecvt.c: Remove.
a1af4623 4133 * config/io/c_io_libio.h: Remove.
58ac1d7f
BK
4134 * libio/*: Remove.
4135 * src/Makefile.am: Same.
4136 * src/Makefile.in: Regenerate.
a1af4623 4137 * docs/html/configopts.html: Edits.
58ac1d7f 4138 * docs/html/explanations.html: Edits.
a1af4623 4139
1ff9402d
BK
41402003-06-11 Benjamin Kosnik <bkoz@redhat.com>
4141
4142 * include/bits/stl_alloc.h (__debug_alloc): Move out.
4143 (__malloc_alloc): Same.
4144 (__pool_alloc): Same.
4145 (__new_alloc): Same.
4146 Rename to..
4147 * include/bits/allocator.h: ...this.
4148 * include/bits/stl_deque.h: Modify comment.
4149 * include/bits/stl_tree.h: Modify include.
4150 * include/std/std_memory.h: Same.
4151 * include/ext/rope: Same.
a1af4623 4152 * include/ext/slist: Same.
1ff9402d
BK
4153 * include/std/std_vector.h: Same.
4154 * include/std/std_stack.h: Same.
4155 * include/std/std_queue.h: Same.
4156 * include/std/std_list.h: Same.
4157 * include/std/std_deque.h: Same.
4158 * include/backward/alloc.h: Same.
4159 * include/ext/debug_allocator.h: New.
a1af4623
AJ
4160 * include/ext/malloc_allocator.h: New.
4161 * include/ext/pool_allocator.h: New.
1ff9402d
BK
4162 * include/ext/new_allocator.h: New.
4163 * include/bits/pthread_allocimpl.h: Remove.
a1af4623 4164 * include/bits/stl_pthread_alloc.h: Remove.
1ff9402d
BK
4165 * include/Makefile.am (ext_headers): Add.
4166 * include/Makefile.in: Regenerate.
4167 * src/stl-inst.cc: Use __gnu_cxx namespace.
4168 * src/stl-inst.cc: Move to...
4169 * src/allocator-inst.cc: Here.
4170 * src/Makefile.am (sources): Update.
4171 * src/Makefile.in: Regenerate.
4172 * config/linker-map.gnu: Remove __pool_alloc bits.
4173 * testsuite/ext/headers.cc: Add.
4174 * testsuite/ext/allocators.cc: Fixup.
a1af4623 4175
1ff9402d 41762003-06-11 Stefan Olsson <stefan@snon.net>
e6cc3a24 4177