1 2003-06-05 Benjamin Kosnik <bkoz@redhat.com>
4 * include/bits/fstream.tcc (_M_underflow): Fix for unbuffered.
5 * include/bits/stl_algobase.h: Tweak.
6 * include/std/std_fstream.h: Move _M_buf_size to...
7 * include/std/std_streambuf.h: ...here. Modify.
8 * include/bits/streambuf.tcc: Same.
9 * testsuite/testsuite_hooks.h: Tweak.
10 * testsuite/testsuite_io.h (constraint_filebuf): New.
11 * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Split into...
12 * testsuite/27_io/basic_filebuf/sbumpc/char/1-in.cc: New.
13 * testsuite/27_io/basic_filebuf/sbumpc/char/1-io.cc: New.
14 * testsuite/27_io/basic_filebuf/sbumpc/char/1-out.cc: New.
15 * testsuite/27_io/basic_filebuf/sbumpc/char/2-in.cc: New.
16 * testsuite/27_io/basic_filebuf/sbumpc/char/2-io.cc: New.
17 * testsuite/27_io/basic_filebuf/sbumpc/char/2-out.cc: New.
18 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Split into...
19 * testsuite/27_io/basic_filebuf/sgetc/char/1-in.cc: New.
20 * testsuite/27_io/basic_filebuf/sgetc/char/1-io.cc: New.
21 * testsuite/27_io/basic_filebuf/sgetc/char/1-out.cc: New.
22 * testsuite/27_io/basic_filebuf/sgetc/char/2-in.cc: New.
23 * testsuite/27_io/basic_filebuf/sgetc/char/2-io.cc: New.
24 * testsuite/27_io/basic_filebuf/sgetc/char/2-out.cc: New.
25 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Split into...
26 * testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: New.
27 * testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: New.
28 * testsuite/27_io/basic_filebuf/sgetn/char/1-out.cc: New.
29 * testsuite/27_io/basic_filebuf/sgetn/char/2.cc: Split into...
30 * testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: New.
31 * testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: New.
32 * testsuite/27_io/basic_filebuf/sgetn/char/2-out.cc: New.
33 * testsuite/27_io/basic_filebuf/sgetn/char/3.cc: New.
34 * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Split into...
35 * testsuite/27_io/basic_filebuf/snextc/char/1-in.cc: New.
36 * testsuite/27_io/basic_filebuf/snextc/char/1-io.cc: New.
37 * testsuite/27_io/basic_filebuf/snextc/char/1-out.cc: New.
38 * testsuite/27_io/basic_filebuf/snextc/char/2-in.cc: New.
39 * testsuite/27_io/basic_filebuf/snextc/char/2-io.cc: New.
40 * testsuite/27_io/basic_filebuf/snextc/char/2-out.cc: New.
41 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Split into...
42 * testsuite/27_io/basic_filebuf/sputc/char/1-in.cc: New.
43 * testsuite/27_io/basic_filebuf/sputc/char/1-io.cc: New.
44 * testsuite/27_io/basic_filebuf/sputc/char/1-out.cc: New.
45 * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Split into...
46 * testsuite/27_io/basic_filebuf/sputc/char/2-in.cc: New.
47 * testsuite/27_io/basic_filebuf/sputc/char/2-io.cc: New.
48 * testsuite/27_io/basic_filebuf/sputc/char/2-out.cc: New.
49 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Split into...
50 * testsuite/27_io/basic_filebuf/sputn/char/1-in.cc: New.
51 * testsuite/27_io/basic_filebuf/sputn/char/1-io.cc: New.
52 * testsuite/27_io/basic_filebuf/sputn/char/1-out.cc: New.
53 * testsuite/27_io/basic_filebuf/sputn/char/2-in.cc: New.
54 * testsuite/27_io/basic_filebuf/sputn/char/2-io.cc: New.
55 * testsuite/27_io/basic_filebuf/sputn/char/2-out.cc: New.
56 * testsuite/data/sgetc.txt: New.
57 * testsuite/data/sgetn.txt: New.
59 2003-06-05 Paolo Carlini <pcarlini@unitus.it>
62 * include/bits/istream.tcc (operator>>(basic_istream&, _CharT*)):
63 Deal with width() smaller than zero.
64 * include/bits/ostream.tcc (operator<<(basic_ostream&, _CharT),
65 operator<<(basic_ostream&, char), operator<<(basic_ostream&, const
66 _CharT*), operator<<(basic_ostream<_CharT, _Traits>&, const
67 char*), operator<<(basic_ostream<char, _Traits>&, const char*),
68 operator<<(basic_ostream, const basic_string&)): Likewise.
70 * testsuite/27_io/basic_istream/extractors_character/char/
71 (11095-i.cc, 11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
72 * testsuite/27_io/basic_ostream/inserters_character/char/
73 (11095-oa.cc, 11095-ob.cc, 11095-oc.cc): New.
74 * testsuite/27_io/basic_ostream/inserters_character/wchar_t/
75 (11095-od.cc, 11095-oe.cc, 11095-of.cc): New.
77 2003-06-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
79 * acinclude.m4 (GLIBCPP_CHECK_PCH): Only set glibcpp_PCHFLAGS if
80 .gch compilation works.
81 * aclocal.m4, configure: Regenerate.
82 * testsuite_flags.in (--build-cxx): Use glibcpp_PCHFLAGS to
85 2003-06-04 Paolo Carlini <pcarlini@unitus.it>
87 * include/bits/basic_string.h (_M_fold, insert(iterator, _CharT),
88 erase(iterator), erase(iterator, iterator), c_str,
89 compare(const basic_string&)): Constify various variables.
90 * include/bits/basic_string.tcc (_S_construct(_InIter, _InIter,
91 const _Alloc&, input_iterator_tag), _M_destroy, _M_mutate,
92 _S_create, resize, _M_replace, _M_replace_safe,
93 append(const basic_string&), append(const basic_string&, size_type,
94 size_type), append(const _CharT*, size_type), append(size_type,
95 _CharT), operator+(const _CharT*, const basic_string&),
96 operator+(_CharT, const basic_string&), replace(iterator, iterator,
97 size_type, _CharT), find(const _CharT*, size_type, size_type),
98 find(_CharT, size_type), rfind(const _CharT*, size_type, size_type),
99 rfind(_CharT, size_type), compare(size_type, size_type,
100 const basic_string&), compare(size_type, size_type,
101 const basic_string&, size_type, size_type), compare(const _CharT*),
102 compare(size_type, size_type, const _CharT*), compare(size_type,
103 size_type, const _CharT*, size_type)): Likewise.
105 2003-06-03 Benjamin Kosnik <bkoz@redhat.com>
107 * include/bits/fstream.tcc (pbackfail): Make a rarely taken
108 'if' branch less obscure.
110 2003-06-02 Andrew Pinski <pinskia@physics.uc.edu>
113 * config/cpu/i386/atomicity.h (__exchange_and_add): add intel
115 * config/cpu/i486/atomicity.h (__exchange_and_add): Likewise.
116 (__atomic_add): likewise.
118 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
120 * include/bits/sstream.tcc (pbackfail): Minor clean up and
121 reformatting, consistent with basic_filebuf::pbackfail.
123 2003-06-02 Richard Kreckel <Richard.Kreckel@GiNaC.DE>
126 * config/cpu/mips/atomicity.h: Change __attribute__ ((unused)) to
127 __attribute__ ((__unused__)).
128 * config/os/aix/atomicity.h: Likewise.
130 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
133 * include/bits/fstream.tcc (pbackfail): If the pback buffer
134 is already active don't try to store in it a second char.
135 * testsuite/27_io/basic_filebuf/pbackfail/char/9761.cc: New.
137 * include/bits/fstream.tcc (pbackfail): Add unbuffered bits.
139 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
141 * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: Tweak
144 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
146 * include/std/std_fstream.h (_M_destroy_pback): Use _M_in_beg
147 instead of unnecessarily taking the address of _M_pback.
148 (xsgetn): Simplify slightly for a single char pback buffer.
150 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
152 * include/bits/sstream.tcc (seekoff): Remove four unnecessary
153 variables and two 'if', clean up.
155 2003-06-02 Paolo Carlini <pcarlini@unitus.it>
157 * include/bits/sstream.tcc (seekpos): Test against _M_out_lim
158 not _M_out_end, since the former actually points to the string
160 * testsuite/27_io/basic_stringbuf/seekpos/char/3.cc: New.
162 2003-05-30 Phil Edwards <pme@gcc.gnu.org>
164 * docs/doxygen/filter: New file.
165 * docs/doxygen/filter.sed: New file.
166 * docs/doxygen/run_doxygen: Add g flag to sed substitutions. Duh.
167 * docs/doxygen/user.cfg.in (INPUT_FILTER): Point to new filter.
168 * docs/html/documentation.html: Fix links to doxygen pages.
170 2003-05-30 Paolo Carlini <pcarlini@unitus.it>
172 * include/bits/fstream.tcc (_M_convert_to_external): Don't
173 check for __ilen > 0.
175 2003-05-29 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
178 * include/bits/stl_iterator.h (class __normal_iterator):
179 Don't inherit from iterator, add missing typedefs.
181 2003-05-29 Paolo Carlini <pcarlini@unitus.it>
183 * testsuite/24_iterators/reverse_iterator.cc: Split up, as follows.
184 * testsuite/24_iterators/reverse_iterator/1.cc: New.
185 * testsuite/24_iterators/reverse_iterator/2.cc: New.
186 * testsuite/24_iterators/reverse_iterator/3.cc: New, from
189 2003-05-27 Steve Ellcey <sje@cup.hp.com>
191 * config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
193 * libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
194 _LIBUNWIND_STD_ABI is set.
196 2003-05-26 Brendan Kehoe <brendan@zen.org>
198 * include/bits/locale_facets.tcc (do_get): Honor $22.2.6.3.3/8 and
199 make sure the number of digits required after the decimal-point
200 (if any) is exactly the value returned by frac_digits().
201 * testsuite/22_locale/money_get/get/char/9.cc: New.
202 * testsuite/22_locale/money_get/get/wchar_t/9.cc: New.
204 2003-05-27 Jonathan Wakely <redi@gcc.gnu.org>
206 * include/std/std_istream.h, include/std/std_ostream.h: Typo in
209 2003-05-26 Benjamin Kosnik <bkoz@redhat.com>
212 * include/std/std_fstream.h (basic_filebuf::_M_overflow): Remove.
213 (_M_pback): No array necessary.
214 * include/bits/fstream.tcc (basic_filebuf::_M_overflow): Add
215 unbuffered case, coalesec into ...
216 (basic_filebuf::overflow): ...this.
217 * testsuite/27_io/basic_filebuf/sputn/char/9339.cc: New.
218 * testsuite/27_io/basic_filebuf/sputc/char/2.cc: Unbuffered.
220 2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>
222 * libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
223 libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
224 libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
225 libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
226 libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
227 libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
228 libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
229 libsupc++/eh_unex_handler.cc, libsupc++/exception,
230 libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
231 libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
232 libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
233 libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
234 Replace "GNU CC" with "GCC".
236 * include/backward/new.h: Replace "GNU CC" with "GCC".
238 2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
241 * configure.in: Switch target to host, don't assume newlib.
242 (target_alias): Remove.
243 * configure: Regenerate.
244 * acinclude.m4: Same.
245 * aclocal.m4: Regenerate.
246 * configure.target: Same. Rename to...
247 * configure.host: This.
249 2003-05-22 Paolo Carlini <pcarlini@unitus.it>
251 * include/std/std_fstream.h (_S_pback_size): Remove definition.
252 (_M_create_pback(), _M_destroy_pback()): Simplify for a single-char
254 * include/bits/fstream.tcc (_S_pback_size): Remove declaration.
255 * testsuite/27_io/basic_filebuf/3.cc: Remove explicit instantiation
256 of _S_pback_size for systems with no COMDAT or weak support.
257 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: Likewise.
258 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: Likewise.
259 * testsuite/27_io/basic_filebuf/underflow/10096.cc: Likewise.
260 * testsuite/27_io/basic_fstream/3.cc: Likewise.
261 * testsuite/27_io/basic_ifstream/3.cc: Likewise.
262 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Likewise.
263 * testsuite/27_io/basic_ofstream/3.cc: Likewise.
264 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Likewise.
265 * testsuite/27_io/basic_streambuf/3.cc: Likewise.
267 2003-05-22 Paolo Carlini <pcarlini@unitus.it>
269 * include/bits/fstream.tcc (_M_underflow): Simplify:
270 !__testout implies _M_filepos == _M_in_end, therefore
271 the first _M_file.seekoff call is never issued.
273 2003-05-22 Benjamin Kosnik <bkoz@redhat.com>
275 * configure.in: Sort cross table.
276 * configure: Regenerate.
278 2003-05-22 Brad Spencer <spencer@infointeractive.com>
281 * configure.in: Add Solaris cross bits.
283 2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
285 * libstdc++-v3/config/os/mingw32/os_defines.h
286 (__GTHREAD_HIDE_WIN32API): Define to 1 by defualt.
287 (NOMINMAX): Define. Update copyright year.
289 2003-05-21 Paolo Carlini <pcarlini@unitus.it>
291 * include/std/std_fstream.h (_M_set_buffer): Fix indentation.
293 2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
295 * docs/html/faq/index.html: Fix typo.
296 * docs/html/faq/index.txt: Regenerate.
298 2003-05-21 Jonathan Wakely <redi@gcc.gnu.org>
300 * docs/html/test.html: Fix markup.
302 2003-05-21 Danny Smith <dannysmith@users.sourceforge.net>
304 * libmath/stubs.c (hypot, hypotf, hypotl): Don't divide by
306 Update copyright year.
308 2003-05-20 Paolo Carlini <pcarlini@unitus.it>
310 * testsuite/27_io/basic_filebuf/close/char/4.cc: Fix typo.
312 2003-05-20 Paolo Carlini <pcarlini@unitus.it>
314 * testsuite/27_io/basic_filebuf/close/char/5.cc: New file,
315 further testing that upon filebuf::close() 27.8.1.1,3 is enforced.
317 2003-05-20 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
319 * include/bits/stl_alloc.h (__default_alloc_template::_S_chunk_alloc):
320 Cast via void* to avoid -Wcast-align warnings.
321 (__default_alloc_template::_S_refill): Likewise.
323 2003-05-20 Benjamin Kosnik <bkoz@redhat.com>
325 * testsuite/README: Move to...
326 * docs/html/test.html: ...here. Add documentation.
327 * docs/html/install.html: Move testing bits out..
328 * docs/html/documentation.html: Add separate testing link.
329 * testsuite/performance: Add.
330 * testsuite/performance/allocator.cc: New.
331 * testsuite/performance/complex_norm.cc: New.
332 * testsuite/performance/cout_insert_int.cc: New.
333 * testsuite/performance/fstream_seek_write.cc: New.
334 * testsuite/performance/ifstream_getline.cc: New.
335 * testsuite/performance/map_create_fill.cc: New.
336 * testsuite/performance/ofstream_insert_float.cc: New.
337 * testsuite/performance/ofstream_insert_int.cc: New.
338 * testsuite/performance/string_append.cc: New.
339 * testsuite/lib/libstdc++-v3-dg.exp (v3-compute-tests): Filter
342 2003-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net>
345 * include/std/std_complex.h (pow): Tidy.
347 2003-05-19 Paolo Carlini <pcarlini@unitus.it>
349 * testsuite/27_io/basic_filebuf/close/char/4.cc: New file, testing
350 that upon filebuf::close() 27.8.1.1,3 is enforced.
352 2003-05-15 Loren J. Rittle <ljrittle@acm.org>
354 * testsuite/thread/pthread4.cc: Further tweak to avoid fini race.
356 2003-05-15 Paolo Carlini <pcarlini@unitus.it>
357 Nathan Myers <ncm@cantrip.org>
359 * include/bits/fstream.tcc (_M_overflow): Rewrote to call
360 _M_convert_to_external only once (_M_buf_size is now the size of
361 the put area + 1 for the overflow char of a full area); call
362 _M_set_buffer instead of _M_set_indeterminate.
363 (setbuf): Don't accept a buffer smaller than 2 chars.
364 (_M_underflow): Refill _M_buf_size - 1 chars; call _M_set_buffer,
365 instead of _M_set_determinate.
366 (open): Call _M_set_buffer, instead of _M_set_indeterminate.
368 * include/ext/stdio_filebuf.h (stdio_filebuf(int,
369 std::ios_base::openmode, bool, size_t),
370 stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t):
372 * include/std/std_fstream.h (_M_set_indeterminate): Remove.
373 (_M_set_determinate): Rename as _M_set_buffer, _M_buf_size ->
375 * include/std/std_streambuf.h: Tweak _M_out_lim comment.
376 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Tweak, taking
377 into account that, for _M_buf_size == BUFSIZ == 8192, the size of
378 the put area is now BUFSIZ - 1.
379 * testsuite/ext/stdio_filebuf_2.cc: Tweak, taking into account
380 that now the smallest _M_buf_size is 2 (still fails, for the same
383 2003-05-14 Loren J. Rittle <ljrittle@acm.org>
385 * testsuite/thread/pthread4.cc: Tweak test.
387 2003-05-13 Benjamin Kosnik <bkoz@redhat.com>
389 * testsuite/27_io/ios_base/cons/copy_neg.cc: Remove
390 excess errors dg marker, use dg-errors instead.
391 * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
392 * testsuite/20_util/auto_ptr_neg.cc: Same.
394 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
396 * include/std/std_fstream.h (basic_filebuf::_M_codecvt): Add
398 * include/bits/fstream.tcc (basic_filebuf::basic_filebuf):
399 Initialize _M_codecvt.
400 (basic_filebuf::imbue): Same.
401 (basic_filebuf::showmanyc): Use it.
402 (basic_filebuf::underflow): Use it.
403 (basic_filebuf::_M_convert_to_external): Use it.
404 (basic_filebuf::seekoff): Use it.
405 (basic_filebuf::imbue): Use it, tweaks.
406 * include/bits/localefwd.h (__check_facet): New.
407 * include/bits/locale_classes.h: Tweaks.
408 * include/bits/locale_facets.tcc: Tweaks.
409 * include/bits/basic_ios.h (basic_ios::_M_check_facet): Remove.
410 _M_fctype to _M_ctype, _M_fnumput to _M_num_put, _M_fnumget to
411 _M_num_get. Change _M_check_facet to __check_facet. Tweaks.
412 * include/bits/basic_ios.tcc: Same.
413 * include/bits/istream.tcc: Same.
414 * include/bits/ostream.tcc: Same.
415 * include/std/std_streambuf.h: Same.
416 * testsuite/27_io/basic_filebuf/imbue/char/2.cc: New.
417 * testsuite/27_io/basic_filebuf/imbue/char/3.cc: New.
418 * testsuite/27_io/basic_filebuf/imbue/wchar_t/1.cc: New.
419 * testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: New.
420 * testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: New.
421 * testsuite/27_io/basic_filebuf/imbue/wchar_t/9322.cc: New.
423 2003-05-12 Paolo Carlini <pcarlini@unitus.it>
425 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Remove
426 unnecessary includes and unused string literals.
427 * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
428 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
429 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
430 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
432 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
434 * include/bits/fstream.tcc (_M_overflow): Remove unbuffered bits.
436 2003-05-12 Paolo Carlini <pcarlini@unitus.it>
438 * include/std/std_fstream.h (_M_convert_to_external): Change
439 to return bool, take two less streamsize parameters.
440 * include/bits/fstream.tcc (_M_convert_to_external): Tweak
441 consistently definition.
442 (_M_overflow): Adjust call points.
444 2003-05-12 Benjamin Kosnik <bkoz@redhat.com>
446 * testsuite/27_io/basic_filebuf/underflow/10096.cc: Add weak bits.
448 2003-05-11 Phil Edwards <pme@gcc.gnu.org>
450 * testsuite/Makefile.am: Properly quote /both/ LD_RUN_PATHs.
451 * testsuite/Makefile.in: Regenerate.
453 2003-05-11 Phil Edwards <pme@gcc.gnu.org>
455 * testsuite/Makefile.am: Properly quote LD_RUN_PATH.
456 * testsuite/Makefile.in: Regenerate.
458 2003-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net>
461 * include/c_std/std_cmath.h: #include <bits/cpp_type_traits.h>
462 (acos): Handle integer argument.
481 * include/bits/cpp_type_traits.h (__are_same<>): New traits.
482 (__enable_if): Likewise.
483 * testsuite/26_numerics/cmath/overloads.C: New test.
485 2003-05-10 Petur Runolfsson <peturr02@ru.is>
490 * include/bits/fstream.tcc (basic_file::_M_underflow): Add generic
491 implementation, based on old wchar_t specialization, add support
492 for codecvt::in() return value of codecvt_base::noconv, remove
493 _M_file.sys_ungetc() call.
494 * include/std/std_fstream.h (basic_file::underflow,
495 basic_file::uflow, basic_file::_M_underflow): Remove
496 specialization declarations, call _M_underflow from generic versions
497 of underflow and uflow.
498 * src/fstream.cc (basic_file::underflow, basic_file::uflow,
499 basic_file::_M_underflow): Remove specializations.
500 * src/Makefile.am (sources): Remove fstream.cc.
501 * src/Makefile.in: Regenerated.
502 * testsuite/27_io/basic_filebuf/underflow/10096.cc: New test.
503 * testsuite/27_io/basic_filebuf/underflow/char/1.cc: New test.
504 * testsuite/27_io/basic_filebuf/underflow/char/9027.cc: New test.
505 * testsuite/27_io/basic_filebuf/underflow/wchar_t/9520.cc: New test.
507 2003-05-10 Benjamin Kosnik <bkoz@redhat.com>
509 * include/ext/stdio_filebuf.h (__stdio_filebuf): Remove stack
511 * config/io/basic_file_stdio.h (__basic_file::xsgetn): Remove
513 (__basic_file::xsputn): Same.
514 (__basic_file::seekoff): Same.
515 (__basic_file::seekpos): Same.
516 (__basic_file::showmanyc): Same.
517 * config/io/basic_file_stdio.cc: Same.
518 * include/std/std_fstream.h: Same.
519 * include/bits/fstream.tcc: Same.
520 * src/fstream.cc: Same.
521 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc (test05): Tidy.
523 2003-05-10 Petur Runolfsson <peturr02@ru.is>
528 * include/ext/stdio_sync_filebuf.h: New file.
529 (basic_stdiobuf): New.
530 * include/Makefile.am (ext_headers): Add ext/stdio_sync_filebuf.h
531 * include/Makefile.in: Regenerate.
532 * include/bits/ios_base.h (Init::_S_create_buffers,
533 Init::_S_destroy_buffers): Remove declarations.
534 * src/globals.cc (buf_cout_sync, buf_cin_sync, buf_cerr_sync,
535 buf_wcout_sync, buf_wcin_sync, buf_wcerr_sync): Define.
536 * src/ios.cc (Init::_S_create_buffers,
537 Init::_S_destroy_buffers): Remove.
538 (Init::Init): Create and use syncronized buffers.
539 (ios_base::sync_with_stdio): Destroy syncronized buffers,
540 create and install unsyncronized buffers.
541 * testsuite/27_io/objects/char/10.cc: New test.
542 * testsuite/27_io/objects/char/9.cc: New test.
543 * testsuite/27_io/objects/char/9661-1.cc: New test.
544 * testsuite/27_io/objects/char/9661-2_xin.cc: New test.
545 * testsuite/27_io/objects/char/9661-2_xin.in: New.
546 * testsuite/27_io/objects/wchar_t/1.cc: New test.
547 * testsuite/27_io/objects/wchar_t/10.cc: New test.
548 * testsuite/27_io/objects/wchar_t/2.cc: New test.
549 * testsuite/27_io/objects/wchar_t/2523-1_xin.cc: New test.
550 * testsuite/27_io/objects/wchar_t/2523-1_xin.in: New.
551 * testsuite/27_io/objects/wchar_t/2523-2_xin.cc: New test.
552 * testsuite/27_io/objects/wchar_t/2523-2_xin.in: New.
553 * testsuite/27_io/objects/wchar_t/3045.cc: New test.
554 * testsuite/27_io/objects/wchar_t/3647.cc: New test.
555 * testsuite/27_io/objects/wchar_t/3_xin.cc: New test.
556 * testsuite/27_io/objects/wchar_t/3_xin.in: New.
557 * testsuite/27_io/objects/wchar_t/4_xin.cc: New test.
558 * testsuite/27_io/objects/wchar_t/4_xin.in: New.
559 * testsuite/27_io/objects/wchar_t/5.cc: New test.
560 * testsuite/27_io/objects/wchar_t/5268.cc: New test.
561 * testsuite/27_io/objects/wchar_t/5280_xin.cc: New test.
562 * testsuite/27_io/objects/wchar_t/5280_xin.in: New.
563 * testsuite/27_io/objects/wchar_t/6.cc: New test.
564 * testsuite/27_io/objects/wchar_t/6548_xin.cc: New test.
565 * testsuite/27_io/objects/wchar_t/6548_xin.in: New.
566 * testsuite/27_io/objects/wchar_t/6648-1_xin.cc: New test.
567 * testsuite/27_io/objects/wchar_t/6648-1_xin.in: New.
568 * testsuite/27_io/objects/wchar_t/6648-2_xin.cc: New test.
569 * testsuite/27_io/objects/wchar_t/6648-2_xin.in: New.
570 * testsuite/27_io/objects/wchar_t/7.cc: New test.
571 * testsuite/27_io/objects/wchar_t/7744_xin.cc: New test.
572 * testsuite/27_io/objects/wchar_t/7744_xin.in: New.
573 * testsuite/27_io/objects/wchar_t/8.cc: New test.
574 * testsuite/27_io/objects/wchar_t/9_xin.cc: New test.
575 * testsuite/27_io/objects/wchar_t/9_xin.in: New.
576 * testsuite/27_io/objects/wchar_t/9520.cc: New test.
577 * testsuite/27_io/objects/wchar_t/9661-1.cc: New test.
578 * testsuite/27_io/objects/wchar_t/9661-2_xin.cc: New test.
579 * testsuite/27_io/objects/wchar_t/9661-2_xin.in: New.
580 * testsuite/27_io/objects/wchar_t/9662.cc: New test.
581 * testsuite/ext/stdiobuf_char.cc: New test.
582 * testsuite/ext/stdiobuf_wchar_t.cc: New test.
584 2003-05-10 Paolo Carlini <pcarlini@unitus.it>
586 * testsuite/27_io/basic_filebuf/close/char/3.cc: Remove
587 unnecessary includes and unused string literals.
588 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
590 2003-05-08 Paolo Carlini <pcarlini@unitus.it>
592 * include/std/std_streambuf.h (setg, setp): Don't touch _M_mode.
594 2003-05-07 Richard Henderson <rth@redhat.com>
597 * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
598 (__cxa_end_catch): Likewise.
599 * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use
600 _Unwind_Resume_or_Rethrow.
601 * libsupc++/eh_personality.cc (empty_exception_spec): New.
602 (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
603 for _UA_FORCE_UNWIND. Honor empty filter spec for foreign
604 exceptions. Don't push terminate/unexpected to cxa functions.
605 (__cxa_call_unexpected): Remove foreign exception fixmes.
607 2003-05-07 Benjamin Kosnik <bkoz@redhat.com>
609 * testsuite/27_io/ios_base/cons: New.
610 * testsuite/27_io/ios_base/cons/assign_neg.cc: New.
611 * testsuite/27_io/ios_base/cons/copy_neg.cc: New.
613 2003-05-07 Paolo Carlini <pcarlini@unitus.it>
615 * include/std/std_fstream.h (_M_is_indeterminate): Remove.
617 (basic_filebuf<char/wchar_t>::_M_underflow): Simplify: either
618 there is no buffer or __testget == !__testinit.
621 (basic_filebuf<char/wchar_t>::_M_underflow): _M_set_determinate()
622 automatically sets, if appropriate, _M_out_cur == _M_in_cur.
624 * include/std/std_fstream.h (_M_destroy_pback): Don't set
625 unnecessarily _M_pback_cur_save and _M_pback_end_save.
627 * include/std/std_fstream.h (_M_set_determinate): Minor tweak.
629 * include/std/std_sstream.h (_M_sync): Minor tweak.
631 * include/bits/fstream.tcc (close): No need to call
632 _M_destroy_pback, setting _M_pback_init to false suffices
635 2003-05-06 Benjamin Kosnik <bkoz@redhat.com>
637 * include/bits/stl_algo.h: Enums as _S_.
638 * include/bits/stl_tree.h: Same.
639 * include/bits/stl_bvector.h: Same.
640 * include/bits/ios_base.h: Same.
641 * include/bits/stl_alloc.h: Same.
642 * include/ext/stl_hashtable.h: Same.
643 * src/ios.cc: And here.
645 * include/std/std_sstream.h: Replace _M_really_sync to _M_sync.
646 * include/bits/sstream.tcc: Same.
648 * include/bits/basic_ios.h: Correct spacing for '< ctype'.
650 * include/bits/locale_facets.tcc: Replace __temp to __tmp.
652 * include/bits/locale_facets.h (__num_base): Remove protected.
653 Use _S_[io]* names for enumerations.
654 (_S_format_int): Remove.
655 * include/bits/locale_facets.tcc: Same.
656 * src/locale.cc: Same.
658 * include/std/std_sstream.h (stringbuf::str): Tweak formatting.
660 2003-05-06 Phil Edwards <pme@gcc.gnu.org>
662 * docs/html/faq/index.html (3.10): Add note about mips atomicity.h.
663 * docs/html/faq/index.txt: Regenerated.
665 2003-05-06 Michael Ritzert <Ritzert@t-online.de>
666 Matt Kraai <kraai@alumni.cmu.edu>
668 * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): Tweak.
671 2003-05-06 Richard Sandiford <rsandifo@redhat.com>
673 * configure.target (mips*): Use the generic atomicity.h by default.
675 2003-05-05 Loren J. Rittle <ljrittle@acm.org>
676 (Inspired by an alternate patch from Danny Smith.)
678 * include/bits/stl_threads.h (_Atomic_swap): Kill it...
679 (_Swap_lock_struct<>): ...and the horse it rode in on.
680 * src/globals.cc (_Swap_lock_struct<>): Likewise.
681 * include/ext/stl_rope.h (_Rope_RopeRep<>::_M_c_string_lock): New
683 * include/ext/ropeimpl.h (rope<>::c_str): Follow *all* memory
684 visibility rules related to POSIX threads.
685 * testsuite/thread/pthread7-rope.cc: New test.
687 2003-05-04 Paolo Carlini <pcarlini@unitus.it>
689 * testsuite/21_strings/basic_string/find/char/3.cc: New
690 file, testing basic_string<char>::find_first_not_of.
691 * testsuite/21_strings/basic_string/find/wchar_t/3.cc:
692 Likewise for basic_string<wchar_t>.
694 2003-05-03 Loren J. Rittle <ljrittle@acm.org>
696 * testsuite/thread/pthread1.cc: Remove special case for FreeBSD.
698 2003-05-02 Benjamin Kosnik <bkoz@redhat.com>
700 * include/Makefile.am (CLEANFILES): Remove PCH files in target
702 * include/Makefile.in: Regenerate.
704 2003-05-02 Paolo Carlini <pcarlini@unitus.it>
706 * include/std/std_sstream.h (str()): Tidy.
708 2003-05-02 Nathan Myers <ncm@cantrip.org>
709 Paolo Carlini <pcarlini@unitus.it>
711 * include/bits/streambuf.tcc (__copy_streambufs): Rewrote.
713 2003-05-02 Jonathan Wakely <redi@gcc.gnu.org>
715 * include/bits/basic_string.h (swap): Remove redundant template
716 parameters from declaration of non-template member function.
718 2003-05-01 Phil Edwards <pme@gcc.gnu.org>
720 * acconfig.h (_GLIBCPP_USE_NLS): New symbol.
721 * configure.in: Move libintl.h header test...
722 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): ...to here. Gather all
723 the NLS-related test results into one symbol.
724 * src/functexcept.cc: Use it here.
725 * aclocal.m4, config.h.in, configure: Regenerated.
727 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
729 * include/bits/sstream.tcc (overflow): Instead of calling
730 str(), then _M_string.reserve, thus copying the contents
731 of the current buffer two times, just copy the latter in
732 a temporary, then use the 'swap trick'.
734 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
736 * include/std/std_sstream.h (str()): Revert the best of the
737 previous 'improvement', incorrect due to the COW nature of
738 v3 basic_string; simplify.
740 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
742 * include/bits/streambuf.tcc (__copy_streambufs): Adjust the
743 type of __avail to ptrdiff_t to avoid signed-unsigned warning.
745 2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
747 * testsuite/abi_check.cc (check_version): Update known versions.
748 Check added symbols for version_name != base version. Add missing
749 symbols to incompatible list.
751 2003-05-01 Benjamin Kosnik <bkoz@redhat.com>
753 * acinclude.m4 (GLIBCPP_EXPORT_FLAGS): Remove -Winline.
754 * aclocal.m4: Regenerated.
755 * configure: Regenerated.
757 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
759 * include/bits/streambuf.tcc (basic_streambuf::xsgetn):
760 Const-ify some variables.
761 (basic_streambuf::xsputn): Likewise; change the type of some
763 (__copy_streambufs): Change some variables to size_t.
765 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
767 * include/std/std_sstream.h (str()): Avoid constructing
768 a basic_string temporary not only when it would turn out
769 to be zero-sized but also when identical to the current
772 2003-05-01 Paolo Carlini <pcarlini@unitus.it>
774 * include/ext/stdio_filebuf.h
775 (stdio_filebuf(int, std::ios_base::openmode, bool, size_t),
776 stdio_filebuf(std::__c_file*, std::ios_base::openmode, size_t)):
777 Shorten a bit (-10 lines) by factoring out some code.
779 2003-04-30 Phil Edwards <pme@gcc.gnu.org>
781 * acinclude.m4: Add bit missing from previous patch.
782 * aclocal.m4, configure: Regenerated.
784 2003-04-29 Phil Edwards <pme@gcc.gnu.org>
786 * docs/doxygen/mainpage.html: Bring up to date.
787 * docs/doxygen/run_doxygen: Cosmetic tweaks. Work around a bug
789 * docs/doxygen/user.cfg.in: Scanning the precompiled headers
790 breaks everything. Don't scan them.
791 * docs/html/documentation.html: Point to "Write after approval"
794 2003-04-29 Phil Edwards <pme@gcc.gnu.org>
796 * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Search for gettext outside
797 of libc if message translations are being used. Fix info text in
798 xieee_1003.1-2001 case.
799 * aclocal.m4, configure: Regenerate.
801 2003-04-29 Joel Sherrill <joel.sherrill@OARcorp.com>
802 Loren J. Rittle <ljrittle@acm.org>
803 Martin v. Loewis <martin@v.loewis.de>
805 * config/cpu/i386/atomicity.h: New file.
807 2003-04-29 Paolo Carlini <pcarlini@unitus.it>
809 * include/bits/fstream.tcc (open): Change to single return.
811 2003-04-29 Paolo Carlini <pcarlini@unitus.it>
813 * include/std/std_sstream.h (underflow): Change to single return.
815 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
817 * include/std/std_streambuf.h (_M_buf): is currently
818 used only for basic_filebuf, therefore move it there.
819 (basic_streambuf(), ~basic_streambuf()): Adjust.
820 * include/std/std_fstream.h (_M_buf): Moved here.
821 * include/std/std_sstream.h (setbuf): Don't set _M_buf,
822 is actually redundant for basic_stringbuf.
823 (_M_really_sync): Likewise.
824 * include/bits/fstream.tcc (basic_filebuf()): Adjust.
825 * include/bits/sstream.tcc (seekoff): Adjust.
827 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
829 * src/localename.cc: Standardize exception strings.
830 * src/locale.cc: Same.
832 * include/bits/basic_string.tcc: Same.
833 * include/bits/basic_ios.tcc: Same.
834 * include/std/std_bitset.h: Same.
835 * include/ext/ropeimpl.h: Same.
836 * include/bits/stl_vector.h: Same.
837 * include/bits/stl_deque.h: Same.
838 * include/bits/stl_bvector.h: Same.
839 * config/locale/generic/c_locale.cc: Same.
840 * config/locale/gnu/c_locale.cc: Same.
841 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
843 * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
845 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
847 * include/std/std_streambuf.h (_M_buf_size): is currently
848 used only for basic_filebuf, therefore move it there.
849 (basic_streambuf(), ~basic_streambuf()): Adjust.
850 * include/std/std_fstream.h (_M_buf_size): Moved here.
851 * include/bits/fstream.tcc (basic_filebuf()): Adjust.
853 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
855 * include/bits/streambuf.tcc (__copy_streambufs): Don't use
856 _M_buf_size (synced input is now correctly dealt with
857 elsewhere); when the output buffer is full don't fall back
858 to a snextc-sputc loop, call overflow instead.
860 2003-04-28 Paolo Carlini <pcarlini@unitus.it>
862 * include/bits/sstream.tcc (pbackfail): Shorten a bit (6 lines)
863 the innermost 'if' by factoring out some code.
865 2003-04-28 Phil Edwards <pme@gcc.gnu.org>
867 * configure.in: Test for libintl.h.
868 * include/bits/c++config: Define __N for everybody.
869 * include/bits/basic_string.h, include/bits/stl_bvector.h,
870 include/bits/stl_deque.h, include/bits/stl_vector.h,
871 include/std/std_bitset.h: Wrap all __throw* text with __N.
872 * po/Makefile.am (pot): New rule, mostly working.
873 * src/functexcept.cc: Call gettext on all __throw* arguments when
874 -fexceptions is in effect.
875 * po/Makefile.in, config.h.in, configure: Regenerate.
877 2003-04-28 Petur Runolfsson <peturr02@ru.is>
880 * include/bits/ios_base.h (Init::_S_ios_create,
881 Init::_S_ios_destroy): Remove declarations.
882 (Init::_S_create_buffers,
883 Init::_S_destroy_buffers): Declare
884 * src/ios.cc (Init::_S_ios_create): Remove
885 (Init::_S_create_buffers): Create buffers and add to streams.
886 (Init::_S_ios_destroy): Rename to...
887 (Init::_S_destroy_buffers): this.
888 (Init::Init): Only construct streams once.
889 (Init::~Init): Flush streams, don't destroy them.
890 (ios_base::sync_with_stdio): Don't destroy streams, only buffers.
891 * testsuite/27_io/ios_base/sync_with_stdio/9523.cc: New test.
892 * testsuite/27_io/objects/char/5.cc: New test.
893 * testsuite/27_io/objects/char/5268.cc: Avoid undefined behavior.
894 * testsuite/27_io/objects/char/6.cc: New test.
895 * testsuite/27_io/objects/char/7.cc: New test.
897 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
899 * testsuite/27_io/objects/char/8.cc: New test.
901 2003-04-28 Benjamin Kosnik <bkoz@redhat.com>
903 * testsuite/22_locale/codecvt/unicode/char.cc: Remove bom usage.
904 * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Same.
906 2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
908 * include/std/std_fstream.h (basic_filebuf): _M_pback_destroy to
909 _M_destroy_pback. _M_pback_create to
910 _M_create_pback. _M_underflow_common to
911 _M_underflow. _M_really_overflow to _M_overflow.
912 * include/bits/fstream.tcc: Same.
913 * src/fstream.cc: Same.
914 * include/std/std_streambuf.h (basic_streambuf): _M_in_cur_move to
915 _M_move_in_cur. _M_out_cur_move to _M_move_out_cur.
916 * include/bits/streambuf.tcc: Same.
917 * include/bits/fstream.tcc: Same.
918 * include/bits/sstream.tcc: Same.
920 2003-04-27 Benjamin Kosnik <bkoz@redhat.com>
922 * include/bits/locale_classes.h (locale::_Impl): Change _M_names
923 from fixed size array.
924 (locale): Change _S_categories as well.
926 * include/bits/locale_facets.tcc: Tweak.
927 * config/locale/gnu/c_locale.cc: Assign _S_categories.
928 * config/locale/generic/c_locale.cc: Same.
929 * src/locale.cc: Tweak.
930 * src/globals.cc: Change facet_name to name_vec, add names_c.
931 * src/localename.cc: Use them.
932 (locale::_Impl::~_Impl): Destroy _M_names.
933 (locale::_Impl::_Impl): Create _M_names.
935 2003-04-27 Andreas Schwab <schwab@suse.de>
937 * config/locale/ieee_1003.1-2001/codecvt_specializations.h
938 (__enc_traits): Use __ibom and __ebom instead of ignoring them.
940 2003-04-27 Nathan Myers <ncm@cantrip.org>
942 Move some basic_string members out of line because
943 they are too big to reasonably be inline.
944 * include/bits/basic_string.h
945 (assign(const basic_string&, size_type, size_type),
946 assign(const _CharT*, size_type),
947 insert(size_type, const basic_string&, size_type, size_type),
948 insert(size_type, const _CharT*, size_type),
949 replace(size_type, size_type, const _CharT*, size_type)):
951 * include/bits/basic_string.tcc: ...here.
953 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
955 * include/bits/fstream.tcc (pbackfail): Shorten a bit (10 lines)
956 the innermost 'if' by factoring out some code.
958 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
960 * include/bits/streambuf.tcc (__copy_streambufs): Don't
961 use in_avail(), simplify.
963 2003-04-26 Paolo Carlini <pcarlini@unitus.it>
965 * include/std/std_sstream.h (setbuf): don't set _M_buf_size,
966 in basic_stringbuf it's unused.
968 * include/std/std_sstream.h (underflow): consistently use
969 _M_in_cur, not gptr().
971 2003-04-25 Ranjit Mathew <rmathew@hotmail.com>
972 Phil Edwards <pme@gcc.gnu.org>
974 * testsuite_flags.in: Guard against the possibility
975 of having "xgcc" as a part of a folder name in the
976 path to the GCC build folder.
977 * testsuite/Makefile.am: Likewise.
978 * testsuite/Makefile.in: Regenerated.
980 2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
983 * include/std/std_fstream.h (basic_filebuf::is_open): Add throw()
984 exception specifications.
985 (basic_filebuf::close): Same.
986 (basic_filebuf::_M_pback_destroy): Same.
987 (basic_filebuf::_M_destroy_internal_buffer): Same.
988 (basic_filebuf): Remove __res_type typedef.
989 * src/fstream.cc: Same.
990 * include/bits/fstream.tcc
991 (basic_filebuf::_M_convert_to_external): Simplify.
992 (basic_filebuf::seekoff): Use has_facet before use_facet.
993 (basic_filebuf::close): Add exception specification of throw().
994 * testsuite/27_io/basic_filebuf/cons: New.
995 * testsuite/27_io/basic_filebuf/cons/wchar_t: New.
996 * testsuite/27_io/basic_filebuf/cons/wchar_t/10132-1.cc: New.
997 * testsuite/27_io/basic_filebuf/seekoff/10132-2.cc: New.
998 * testsuite/27_io/basic_filebuf/seekpos/10132-3.cc: New.
1000 2003-04-25 Benjamin Kosnik <bkoz@redhat.com>
1002 * include/bits/locale_classes.h
1003 (locale::_S_extra_categories_size): Remove.
1004 * src/locale.cc: Remove _S_extra_categories_size.
1005 * src/localename.cc: Same.
1006 * config/locale/gnu/c_locale.cc: Same.
1007 * config/locale/generic/c_locale.cc: Same.
1009 2003-04-24 Richard Sandiford <rsandifo@redhat.com>
1011 * src/localename.cc (__gnu_cxx::facet_vec): Correct types.
1013 2003-04-24 Phil Edwards <pme@gcc.gnu.org>
1015 * docs/html/17_intro/howto.html: Update some links.
1016 * docs/html/18_support/howto.html: Link doxygen numeric_limits notes.
1017 * docs/html/27_io/howto.html: Link doxygen stdio_filebuf notes.
1018 * docs/html/ext/howto.html: Link to demangler notes and API.
1019 * docs/html/faq/index.html: Remove trailing whitespace.
1020 (1.4, 2.4, 3.8, 4.1): Bring up to date.
1021 (5.6): Change to a bulleted list.
1023 * docs/html/faq/index.txt, docs/html/documentation.html,
1024 docs/html/17_intro/porting.html: Regenerate.
1026 2003-04-23 Paolo Carlini <pcarlini@unitus.it>
1028 * testsuite/27_io/basic_filebuf/3.cc: _S_pback_size now
1029 belongs to basic_filebuf.
1030 * testsuite/27_io/basic_fstream/3.cc: Likewise.
1031 * testsuite/27_io/basic_ifstream/3.cc: Likewise.
1032 * testsuite/27_io/basic_ios/3.cc: Remove _S_pback_size
1033 instantiation (now belongs to basic_filebuf).
1034 * testsuite/27_io/basic_iostream/3.cc: Likewise.
1035 * testsuite/27_io/basic_istream/3.cc: Likewise.
1036 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
1037 _S_pback_size now belongs to basic_filebuf.
1038 * testsuite/27_io/basic_istringstream/3.cc: Remove _S_pback_size
1039 instantiation (now belongs to basic_filebuf).
1040 * testsuite/27_io/basic_ofstream/3.cc: _S_pback_size now
1041 belongs to basic_filebuf.
1042 * testsuite/27_io/basic_ostream/3.cc: Remove _S_pback_size
1043 instantiation (now belongs to basic_filebuf).
1044 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc:
1045 _S_pback_size now belongs to basic_filebuf.
1046 * testsuite/27_io/basic_ostringstream/3.cc: Remove _S_pback_size
1047 instantiation (now belongs to basic_filebuf).
1048 * testsuite/27_io/basic_streambuf/3.cc: _S_pback_size now belongs
1050 * testsuite/27_io/basic_stringbuf/3.cc: Remove _S_pback_size
1051 instantiation (now belongs to basic_filebuf).
1052 * testsuite/27_io/basic_stringstream/3.cc: Likewise.
1054 2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
1056 * configure.in: Move GLIBCPP_CHECK_PCH before native/cross conditions.
1057 * configure: Regenerated.
1059 2003-04-23 Benjamin Kosnik <bkoz@redhat.com>
1061 * config/locale/generic/c_locale.h (__convert_from_v): Use
1064 2003-04-23 Phil Edwards <pme@gcc.gnu.org>
1066 * docs/html/ext/howto.html ('LWG Issues'): Add issue 60, partial
1067 implementation only.
1068 * include/bits/istream.tcc (putback, unget, sync, tellg, seekg):
1069 Comment and change to comply with DR 60 and the effect on gcount().
1070 * include/std/std_istream.h: Update comments.
1071 * testsuite/27_io/basic_istream/putback/char/1.cc (test01): Add
1072 comments about reasons for tests. Test sync() against gcount().
1073 * testsuite/27_io/basic_istream/seekg/char/2.cc: New file, test
1074 for effect on gcount().
1075 * testsuite/27_io/basic_istream/tellg/char/2.cc: New file, test
1076 for effect on gcount().
1078 2003-04-22 Loren J. Rittle <ljrittle@acm.org>
1080 * testsuite/27_io/basic_filebuf/close/char/9964.cc (test_07):
1083 2003-04-22 Paolo Carlini <pcarlini@unitus.it>
1085 * include/std/std_streambuf.h (_S_pback_size, _M_pback,
1086 _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
1087 _M_pback_create(), _M_pback_destroy()): Move to basic_filebuf.
1088 (basic_streambuf::basic_streambuf()): Adjust.
1089 * include/std/std_fstream.h (_S_pback_size, _M_pback,
1090 _M_pback_cur_save, _M_pback_end_save, _M_pback_init,
1091 _M_pback_create(), _M_pback_destroy()): Moved here
1092 from basic_streambuf.
1093 * include/bits/fstream.tcc (basic_filebuf::basic_filebuf()):
1095 (basic_filebuf::_S_pback_size): Add declaration.
1096 * include/bits/streambuf.tcc (basic_streambuf::_S_pback_size):
1099 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
1101 Consistently use _M_in_beg instead of eback(), _M_in_cur
1102 instead of gptr(), and so on.
1103 * include/bits/fstream.tcc (pbackfail, imbue): Here.
1104 * include/bits/sstream.tcc (pbackfail, seekoff, seekpos): Ditto.
1105 * include/bits/streambuf.tcc (sbumpc, sputbackc,
1106 __copy_streambufs): Ditto.
1107 * include/std/std_streambuf.h (sgetc): Ditto.
1109 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
1111 * include/bits/sstream.tcc (pbackfail, overflow):
1114 2003-04-21 Paolo Carlini <pcarlini@unitus.it>
1116 * include/std/std_streambuf.h (uflow()): It's used only by
1117 basic_stringbuf (i.e., basic_filebuf provide its own uflow()),
1118 therefore do not consider the _M_buf_unified == true case.
1120 * include/std/std_streambuf.h (sgetc()): Restore __ret variable.
1122 2003-04-20 Paolo Carlini <pcarlini@unitus.it>
1124 * docs/html/ext/howto.html ('LWG Issues'):
1125 Add issues 19, 90, 171, 231, 271.
1127 2003-04-20 Paolo Carlini <pcarlini@unitus.it>
1129 * include/bits/sstream.tcc (pbackfail): Remove redundant
1130 NULL pointer check from test involving _M_in_*.
1131 (overflow, seekoff, seekpos): Const qualify bool variables.
1132 * include/std/std_sstream.h (underflow): Remove redundant
1133 NULL pointer check from test involving _M_in_*.
1134 (_M_really_sync): Const qualify bool variables.
1135 * src/fstream.cc (_M_underflow_common): Remove redundant
1136 NULL pointer check from test involving _M_in_*, const qualify
1139 * include/std/std_streambuf.h (sgetc): Remove redundant
1142 2003-04-18 Paolo Carlini <pcarlini@unitus.it>
1144 According to 5.9 para 2 (second bullet) for pointers p, q
1145 pointing to the same type, with p == 0 and q == 0, (p < q)
1147 * include/bits/fstream.tcc (close, overflow, _M_really_overflow,
1148 seekoff): Remove redundant NULL pointer checks from tests
1149 involving _M_out_* and _M_in_*, const qualify bool variables.
1150 (showmanyc, pbackfail, _M_convert_to_external, imbue): Const
1151 qualify bool variables.
1152 * include/bits/streambuf.tcc (sbumpc, sputbackc, sungetc, sputc):
1153 Remove redundant NULL pointer checks from tests involving
1154 _M_out_* and _M_in_*, const qualify bool variables.
1155 * include/std/std_fstream.h (sync): Likewise.
1156 (_M_is_indeterminate): Const qualify bool variables.
1157 * include/std/std_streambuf.h (sgetc, uflow): Remove redundant
1158 NULL pointer checks from tests involving _M_out_* and _M_in_*,
1159 const qualify bool variables.
1160 (_M_in_cur_move, _M_out_cur_move, uflow): Const qualify bool
1163 2003-04-18 Loren J. Rittle <ljrittle@acm.org>
1165 * include/c_std/std_cmath.h (C99 FP capture): Only undefine said
1166 C99 FP macros, if actually captured.
1168 * docs/html/17_intro/porting.texi (_GLIBCPP_USE_C99_CHECK): New macro.
1169 (_GLIBCPP_USE_C99_DYNAMIC): New macro.
1170 (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
1171 (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
1172 * config/os/bsd/freebsd/os_defines.h (_GLIBCPP_USE_C99_CHECK):
1174 (_GLIBCPP_USE_C99_DYNAMIC): New macro.
1175 (_GLIBCPP_USE_C99_LONG_LONG_CHECK): New macro.
1176 (_GLIBCPP_USE_C99_LONG_LONG_DYNAMIC): New macro.
1177 * include/c_std/std_cstdlib.h: Use new macros.
1178 * include/c_std/std_cstdio.h: Use new macros.
1179 * include/c_std/std_cwchar.h: Use new macros.
1181 2003-04-17 Benjamin Kosnik <bkoz@redhat.com>
1184 * include/bits/ostream.tcc: Catch all exceptions for formatted
1185 output, instead of std::exception and derivatives.
1186 * include/bits/istream.tcc: Same.
1187 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/9555-oa.cc:
1188 * testsuite/27_io/basic_ostream/inserters_character/char/9555-oc.cc:
1189 * testsuite/27_io/basic_ostream/inserters_other/char/9555-oo.cc:
1190 * testsuite/27_io/basic_istream/extractors_arithmetic/char/9555-ia.cc:
1191 * testsuite/27_io/basic_istream/extractors_character/char/9555-ic.cc:
1192 * testsuite/27_io/basic_istream/extractors_other/char/9555-io.cc:
1195 2003-04-17 Phil Edwards <pme@gcc.gnu.org>
1197 * include/bits/c++config: Minor cosmetic tweaks.
1199 2003-04-17 Loren J. Rittle <ljrittle@acm.org>
1201 * testsuite_flags.in (PCHFLAGS): Find PCH in new home.
1202 * include/Makefile.am (pch_input): Find in ${target_builddir}.
1203 (pch_output): Rename to...
1204 (pch_output_builddir): ..this. Find in ${target_builddir}.
1205 (pch_source): Tweak.
1206 (pch_build): Key off a built file.
1207 (pch_output rule): Rename to...
1208 (pch_input rule): ...this. Produce ${pch_output_builddir}
1209 instead of ${pch_output}.
1210 (install-pch rule): Install ${pch_output_builddir}.
1211 * include/Makefile.in: Regenerated.
1213 2003-04-17 Paolo Carlini <pcarlini@unitus.it>
1215 * include/std/std_streambuf.h (setp): _M_out_lim, being
1216 the end limit of used put area, is set equal to _M_out_beg.
1218 2003-04-16 Benjamin Kosnik <bkoz@redhat.com>
1220 * acinclude.m4 (GLIBCPP_CHECK_PCH): New.
1221 * aclocal.m4: Regenerated.
1222 * configure.in: Remove old demangler bits.
1224 * configure: Regenerate.
1225 * config.h.in: Regenerate.
1226 * include/Makefile.am (allstamps): Now allstamped.
1227 (allcreated): Define this.
1228 (all-local): Use 'em.
1229 Conditionally define pch_build, pch_install based on
1231 (${pch_output}): New rule.
1232 (install-pch): New rule.
1233 (install-headers): New rule.
1234 (install-data-local): Install headers and conditionally pch.
1235 * include/Makefile.in: Regenerate.
1236 * testsuite_flags.in (--build-cxx): Use pch file.
1238 2003-04-16 Jonathan Wakely <redi@gcc.gnu.org>
1240 * docs/html/ext/sgiexts.html: Fix path to stylesheet.
1242 2003-04-15 Benjamin Kosnik <bkoz at redhat dot com>
1243 Paolo Carlini <pcarlini at unitus dot it>
1246 * docs/html/27_io/howto.html
1247 ('The buffering is screwing up my program!'): Explain that
1248 opening counts as an I/O operation.
1250 2003-04-15 Andreas Tobler <a.tobler@schweiz.ch>
1252 * testsuite/thread/pthread1.cc: Enable for darwin test.
1253 * testsuite/thread/pthread2.cc: Same.
1254 * testsuite/thread/pthread3.cc: Same.
1255 * testsuite/thread/pthread4.cc: Same.
1256 * testsuite/thread/pthread5.cc: Same.
1257 * testsuite/thread/pthread6.cc: Same.
1259 2003-04-15 Loren J. Rittle <ljrittle@acm.org>
1262 * include/c_std/std_cmath.h (__gnu_cx::__c99_binding): New namespace.
1263 Populate it with multiple legal ways to obtain the C99 float
1264 transcendentals. Use them instead of direct global reference.
1265 (C99 FP capture): Guard usage with _GLIBCPP_USE_C99_FP_MACROS_DYNAMIC.
1266 * docs/html/17_intro/porting.texi
1267 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
1268 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
1269 (_GLIBCPP_USE_C99_FP_MACROS_DYNAMIC): New macro.
1270 * config/os/bsd/freebsd/os_defines.h
1271 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_CHECK): New macro.
1272 (_GLIBCPP_USE_C99_FLOAT_TRANSCENDENTALS_DYNAMIC): New macro.
1273 * testsuite/26_numerics/c_math_dynamic.cc: New file.
1275 2003-04-14 Andreas Tobler <toa@pop.agri.ch>
1276 Benjamin Kosnik <bkoz@redhat.com>
1278 * config/os/generic/ctype_inline.h: Fix.
1280 2003-04-14 Benjamin Kosnik <bkoz@redhat.com>
1282 * testsuite/testsuite_hooks.h
1283 (__gnu_cxx_test::run_test_wrapped_generic_locale_exception_catcher):
1284 Change to try_named_locale.
1285 * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Same.
1287 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Use
1289 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
1290 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
1291 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: Same.
1292 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: Same.
1293 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: Same.
1294 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: Same.
1295 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: Same.
1296 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: Same.
1297 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: Same.
1298 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: Same.
1299 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: Same.
1300 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: Same.
1301 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: Same.
1302 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: Same.
1303 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: Same.
1304 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
1305 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
1306 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
1307 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: Same.
1308 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: Same.
1309 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: Same.
1310 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: Same.
1311 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: Same.
1312 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: Same.
1313 * testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Same.
1314 * testsuite/22_locale/collate/compare/char/1.cc: Same.
1315 * testsuite/22_locale/collate/compare/char/2.cc: Same.
1316 * testsuite/22_locale/collate/compare/char/3.cc: Same.
1317 * testsuite/22_locale/collate/compare/wchar_t/1.cc: Same.
1318 * testsuite/22_locale/collate/compare/wchar_t/2.cc: Same.
1319 * testsuite/22_locale/collate/compare/wchar_t/3.cc: Same.
1320 * testsuite/22_locale/collate/hash/char/2.cc: Same.
1321 * testsuite/22_locale/collate/hash/wchar_t/2.cc: Same.
1322 * testsuite/22_locale/collate/transform/char/2.cc: Same.
1323 * testsuite/22_locale/collate/transform/char/3.cc: Same.
1324 * testsuite/22_locale/collate/transform/wchar_t/2.cc: Same.
1325 * testsuite/22_locale/collate/transform/wchar_t/3.cc: Same.
1326 * testsuite/22_locale/collate_byname/1.cc: Same.
1327 * testsuite/22_locale/ctype/is/char/2.cc: Same.
1328 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Same.
1329 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: Same.
1330 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: Same.
1331 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: Same.
1332 * testsuite/22_locale/facet/2.cc: Same.
1333 * testsuite/22_locale/locale/cons/2.cc: Same.
1334 * testsuite/22_locale/locale/cons/4.cc: Same.
1335 * testsuite/22_locale/locale/cons/5.cc: Same.
1336 * testsuite/22_locale/locale/cons/7.cc: Same.
1337 * testsuite/22_locale/locale/cons/7222-c.cc: Same.
1338 * testsuite/22_locale/locale/cons/7222-env.cc: Same.
1339 * testsuite/22_locale/locale/global_locale_objects/2.cc: Same.
1340 * testsuite/22_locale/messages/members/char/1.cc: Same.
1341 * testsuite/22_locale/messages/members/char/2.cc: Same.
1342 * testsuite/22_locale/messages/members/char/3.cc: Same.
1343 * testsuite/22_locale/messages_byname/1.cc: Same.
1344 * testsuite/22_locale/money_get/get/char/1.cc: Same.
1345 * testsuite/22_locale/money_get/get/char/2.cc: Same.
1346 * testsuite/22_locale/money_get/get/char/3.cc: Same.
1347 * testsuite/22_locale/money_get/get/char/4.cc: Same.
1348 * testsuite/22_locale/money_get/get/wchar_t/1.cc: Same.
1349 * testsuite/22_locale/money_get/get/wchar_t/2.cc: Same.
1350 * testsuite/22_locale/money_get/get/wchar_t/3.cc: Same.
1351 * testsuite/22_locale/money_get/get/wchar_t/4.cc: Same.
1352 * testsuite/22_locale/money_put/put/char/1.cc: Same.
1353 * testsuite/22_locale/money_put/put/char/2.cc: Same.
1354 * testsuite/22_locale/money_put/put/char/3.cc: Same.
1355 * testsuite/22_locale/money_put/put/wchar_t/1.cc: Same.
1356 * testsuite/22_locale/money_put/put/wchar_t/2.cc: Same.
1357 * testsuite/22_locale/money_put/put/wchar_t/3.cc: Same.
1358 * testsuite/22_locale/moneypunct/members/char/2.cc: Same.
1359 * testsuite/22_locale/moneypunct/members/wchar_t/2.cc: Same.
1360 * testsuite/22_locale/moneypunct_byname/1.cc: Same.
1361 * testsuite/22_locale/num_get/get/char/1.cc: Same.
1362 * testsuite/22_locale/num_get/get/char/2.cc: Same.
1363 * testsuite/22_locale/num_get/get/char/3.cc: Same.
1364 * testsuite/22_locale/num_get/get/char/5.cc: Same.
1365 * testsuite/22_locale/num_get/get/char/6.cc: Same.
1366 * testsuite/22_locale/num_get/get/wchar_t/1.cc: Same.
1367 * testsuite/22_locale/num_get/get/wchar_t/2.cc: Same.
1368 * testsuite/22_locale/num_get/get/wchar_t/3.cc: Same.
1369 * testsuite/22_locale/num_get/get/wchar_t/5.cc: Same.
1370 * testsuite/22_locale/num_get/get/wchar_t/6.cc: Same.
1371 * testsuite/22_locale/num_put/put/char/1.cc: Same.
1372 * testsuite/22_locale/num_put/put/char/2.cc: Same.
1373 * testsuite/22_locale/num_put/put/char/3.cc: Same.
1374 * testsuite/22_locale/num_put/put/char/5.cc: Same.
1375 * testsuite/22_locale/num_put/put/wchar_t/1.cc: Same.
1376 * testsuite/22_locale/num_put/put/wchar_t/2.cc: Same.
1377 * testsuite/22_locale/num_put/put/wchar_t/3.cc: Same.
1378 * testsuite/22_locale/num_put/put/wchar_t/5.cc: Same.
1379 * testsuite/22_locale/numpunct/members/char/1.cc: Same.
1380 * testsuite/22_locale/numpunct/members/char/2.cc: Same.
1381 * testsuite/22_locale/numpunct/members/wchar_t/1.cc: Same.
1382 * testsuite/22_locale/numpunct/members/wchar_t/2.cc: Same.
1383 * testsuite/22_locale/numpunct_byname/1.cc: Same.
1384 * testsuite/22_locale/numpunct_byname/2.cc: Same.
1385 * testsuite/22_locale/time_get/date_order/char/1.cc: Same.
1386 * testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Same.
1387 * testsuite/22_locale/time_get/get_date/char/1.cc: Same.
1388 * testsuite/22_locale/time_get/get_date/char/2.cc: Same.
1389 * testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Same.
1390 * testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Same.
1391 * testsuite/22_locale/time_get/get_monthname/char/1.cc: Same.
1392 * testsuite/22_locale/time_get/get_monthname/char/2.cc: Same.
1393 * testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Same.
1394 * testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Same.
1395 * testsuite/22_locale/time_get/get_time/char/1.cc: Same.
1396 * testsuite/22_locale/time_get/get_time/char/2.cc: Same.
1397 * testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Same.
1398 * testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Same.
1399 * testsuite/22_locale/time_get/get_weekday/char/1.cc: Same.
1400 * testsuite/22_locale/time_get/get_weekday/char/2.cc: Same.
1401 * testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Same.
1402 * testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Same.
1403 * testsuite/22_locale/time_get/get_year/char/1.cc: Same.
1404 * testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Same.
1405 * testsuite/22_locale/time_put/put/char/1.cc: Same.
1406 * testsuite/22_locale/time_put/put/char/2.cc: Same.
1407 * testsuite/22_locale/time_put/put/char/3.cc: Same.
1408 * testsuite/22_locale/time_put/put/char/4.cc: Same.
1409 * testsuite/22_locale/time_put/put/char/5.cc: Same.
1410 * testsuite/22_locale/time_put/put/char/6.cc: Same.
1411 * testsuite/22_locale/time_put/put/char/7.cc: Same.
1412 * testsuite/22_locale/time_put/put/char/8.cc: Same.
1413 * testsuite/22_locale/time_put/put/wchar_t/1.cc: Same.
1414 * testsuite/22_locale/time_put/put/wchar_t/2.cc: Same.
1415 * testsuite/22_locale/time_put/put/wchar_t/3.cc: Same.
1416 * testsuite/22_locale/time_put/put/wchar_t/4.cc: Same.
1417 * testsuite/22_locale/time_put/put/wchar_t/5.cc: Same.
1418 * testsuite/22_locale/time_put/put/wchar_t/6.cc: Same.
1419 * testsuite/22_locale/time_put/put/wchar_t/7.cc: Same.
1420 * testsuite/22_locale/time_put/put/wchar_t/8.cc: Same.
1421 * testsuite/27_io/basic_filebuf/imbue/char/9322.cc: Same.
1422 * testsuite/27_io/basic_ios/copyfmt/char/2.cc: Same.
1423 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/2.cc: Same.
1424 * testsuite/27_io/basic_streambuf/imbue/char/9322.cc: Same.
1425 * testsuite/27_io/basic_stringbuf/imbue/char/9322.cc: Same.
1427 2003-04-14 Andreas Tobler <toa@pop.agri.ch>
1429 * configure.target (_cpu_incdir_fullpath): Solaris 2.9 uses
1430 solaris includes, not generic.
1432 2003-04-14 Loren J. Rittle <ljrittle@acm.org>
1434 * testsuite/26_numerics/c99_classification_macros_c.cc: Add XFAIL.
1436 * include/std/std_bitset.h (_M_do_find_next): Fix -Wall nit.
1437 * include/bits/concept_check.h: Fix multi-line comment.
1438 * testsuite/17_intro/headers.cc (dg-options): Add -Wall -Wsystem-header
1439 when target is *-*-freebsd*.
1441 2003-04-14 Nathan Myers <ncm@cantrip.org>
1442 Paolo Carlini <pcarlini@unitus.it>
1444 PR libstdc++/9701 (in_avail())
1445 * include/std/std_streambuf.h (in_avail): Simplify, in_avail
1446 doesn't care if there is anything in some putback cell.
1447 * testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Add.
1449 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Remove some
1450 unused string literals.
1452 2003-04-14 Paolo Carlini <pcarlini@unitus.it>
1454 * include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
1455 _M_out_end, _M_set_indeterminate() does it.
1457 2003-04-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1459 * os/hpux/ctype_inline.h: Replace with gnu-linux version.
1461 2003-04-12 David Edelsohn <edelsohn@gnu.org>
1463 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
1464 Change basic_streambuf instantiation to "unsigned char".
1465 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
1467 2003-04-12 Paolo Carlini <pcarlini@unitus.it>
1469 Remove _M_buf_size_opt, use directly _M_buf_size instead.
1470 * include/bits/fstream.tcc
1471 (basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
1472 references to _M_buf_size_opt.
1473 * include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
1474 * include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
1475 __bufsize to __in_avail and __size_opt to __buf_size.
1476 * include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
1477 * include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
1478 * include/std/std_streambuf.h (~basic_streambuf(),
1479 basic_streambuf()): Likewise, remove _M_buf_size_opt member.
1480 * testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
1481 * testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
1482 * testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
1483 * testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
1484 * testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
1485 * testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
1486 * testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
1487 * testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
1488 * testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
1489 * testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
1490 * testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
1491 * testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.
1493 2003-04-12 Paolo Carlini <pcarlini at unitus dot it>
1495 * include/ext/stdio_filebuf.h
1496 (stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
1497 stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
1498 _M_buf_size_opt == 0 only means "not to use an allocated buffer"
1499 since a stack-based buffer is used for small values of the size_t
1501 * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
1502 If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
1503 * testsuite/ext/stdio_filebuf_2.cc: New testfile.
1505 2003-04-12 Paolo Carlini <pcarlini@unitus.it>
1508 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
1509 * testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.
1511 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
1513 * testsuite/22_locale/locale/cons/3.cc: Split.
1514 * testsuite/22_locale/locale/cons/7222-c.cc: New.
1515 * testsuite/22_locale/locale/cons/7222-env.cc: New.
1516 Check before trying to create a locale from the environment.
1517 * testsuite/27_io/ios_base/state/1.cc (test02): Use "C" locale.
1518 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1521 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
1523 * testsuite/22_locale/ctype/is/char/3.cc (test03): Use the classic
1524 locale to construct this hybrid locale, not the global locale.
1526 2003-04-11 Benjamin Kosnik <bkoz@redhat.com>
1528 * testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc: Add
1529 instantiation for AIX.
1530 * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.
1531 * testsuite/25_algorithms/min_max.cc: Same.
1533 2003-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1535 * basic_file_stdio.cc (__basic_file<char>::close): Don't flush stream
1536 twice. Always set _M_cfile to 0 when stream was open.
1538 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
1540 Reshuffle 27_io testsuite. * testsuite/27_io/filebuf.cc,
1541 filebuf_members-1.tst, filebuf_members-1.txt, filebuf_members.cc,
1542 filebuf_virtuals-1.tst, filebuf_virtuals-1.txt,
1543 filebuf_virtuals-2.tst, filebuf_virtuals-3.tst,
1544 filebuf_virtuals.cc, fpos.cc, fstream.cc, fstream_members.cc,
1545 ifstream.cc, ifstream_members-1.tst, ifstream_members-1.txt,
1546 ifstream_members.cc, instantiations.cc, ios.cc,
1547 ios_base_callbacks.cc, ios_base_members_static-1.tst,
1548 ios_base_members_static.cc, ios_base_storage.cc,
1549 ios_base_types.cc, ios_ctor.cc, ios_init.cc,
1550 ios_manip_basefield.cc, ios_manip_fmtflags.cc, ios_members.cc,
1551 iostream.cc, iostream_members.cc, istream.cc,
1552 istream_exception.cc, istream_extractor_char.cc,
1553 istream_extractor_other-1.tst, istream_extractor_other-1.txt,
1554 istream_extractor_other-2.tst, istream_extractor_other.cc,
1555 istream_manip.cc, istream_seeks-1.tst, istream_seeks-1.txt,
1556 istream_seeks-2.tst, istream_seeks-3.tst, istream_seeks.cc,
1557 istream_sentry.cc, istream_unformatted-1.tst,
1558 istream_unformatted-1.txt, istream_unformatted.cc,
1559 istringstream.cc, istringstream_members.cc,
1560 narrow_stream_objects.cc, ofstream.cc, ofstream_members-1.tst,
1561 ofstream_members.cc, ostream.cc, ostream_exception.cc,
1562 ostream_fail.cc, ostream_inserter_arith.cc,
1563 ostream_inserter_char-1.tst, ostream_inserter_char-1.txt,
1564 ostream_inserter_char.cc, ostream_inserter_other-1.tst,
1565 ostream_inserter_other-2.tst, ostream_inserter_other.cc,
1566 ostream_manip.cc, ostream_seeks-1.tst, ostream_seeks.cc,
1567 ostream_sentry.cc, ostream_unformatted.cc, ostringstream.cc,
1568 ostringstream_members.cc, standard_manipulators.cc, streambuf.cc,
1569 streambuf_members.cc, stringbuf.cc, stringbuf_members.cc,
1570 stringbuf_virtuals.cc, stringstream.cc, stringstream_members.cc,
1571 wide_stream_objects.cc, istream_extractor_arith/01.cc,
1572 istream_extractor_arith/02.cc, istream_extractor_arith/03.cc,
1573 istream_extractor_arith/06.cc, istream_extractor_arith/07.cc,
1574 istream_extractor_arith/08.cc, istream_extractor_arith/09.cc,
1575 istream_extractor_arith/10.cc, istream_extractor_arith/11.cc,
1576 istream_extractor_arith/12.cc, istream_extractor_arith/13.cc:
1578 * 27_io/basic_filebuf/1.cc: New.
1579 * 27_io/basic_filebuf/2.cc: New.
1580 * 27_io/basic_filebuf/3.cc: New.
1581 * 27_io/basic_filebuf/4.cc: New.
1582 * 27_io/basic_filebuf/close/char/1.cc: New.
1583 * 27_io/basic_filebuf/close/char/2.cc: New.
1584 * 27_io/basic_filebuf/close/char/3.cc: New.
1585 * 27_io/basic_filebuf/close/char/4879.cc: New.
1586 * 27_io/basic_filebuf/close/char/9964.cc: New.
1587 * 27_io/basic_filebuf/imbue/char/1.cc: New.
1588 * 27_io/basic_filebuf/imbue/char/9322.cc: New.
1589 * 27_io/basic_filebuf/in_avail/char/1.cc: New.
1590 * 27_io/basic_filebuf/is_open/char/1.cc: New.
1591 * 27_io/basic_filebuf/open/char/1.cc: New.
1592 * 27_io/basic_filebuf/open/char/2.cc: New.
1593 * 27_io/basic_filebuf/open/char/3.cc: New.
1594 * 27_io/basic_filebuf/open/char/9507.cc: New.
1595 * 27_io/basic_filebuf/overflow/char/1.cc: New.
1596 * 27_io/basic_filebuf/overflow/char/3599.cc: New.
1597 * 27_io/basic_filebuf/overflow/char/9169.cc: New.
1598 * 27_io/basic_filebuf/overflow/char/9182-2.cc: New.
1599 * 27_io/basic_filebuf/overflow/char/9988.cc: New.
1600 * 27_io/basic_filebuf/sbumpc/char/1.cc: New.
1601 * 27_io/basic_filebuf/sbumpc/char/9825.cc: New.
1602 * 27_io/basic_filebuf/seekoff/char/1.cc: New.
1603 * 27_io/basic_filebuf/seekoff/char/2.cc: New.
1604 * 27_io/basic_filebuf/seekpos/char/1.cc: New.
1605 * 27_io/basic_filebuf/seekpos/char/2.cc: New.
1606 * 27_io/basic_filebuf/setbuf/char/1.cc: New.
1607 * 27_io/basic_filebuf/setbuf/char/2.cc: New.
1608 * 27_io/basic_filebuf/setbuf/char/3.cc: New.
1609 * 27_io/basic_filebuf/sgetc/char/1.cc: New.
1610 * 27_io/basic_filebuf/sgetn/char/1.cc: New.
1611 * 27_io/basic_filebuf/sgetn/char/2.cc: New.
1612 * 27_io/basic_filebuf/snextc/char/1.cc: New.
1613 * 27_io/basic_filebuf/sputbackc/char/1.cc: New.
1614 * 27_io/basic_filebuf/sputbackc/char/9425.cc: New.
1615 * 27_io/basic_filebuf/sputc/char/1.cc: New.
1616 * 27_io/basic_filebuf/sputc/char/1057.cc: New.
1617 * 27_io/basic_filebuf/sputc/char/9701-2.cc: New.
1618 * 27_io/basic_filebuf/sputn/char/1.cc: New.
1619 * 27_io/basic_filebuf/sputn/char/1057.cc: New.
1620 * 27_io/basic_filebuf/sputn/char/9701-1.cc: New.
1621 * 27_io/basic_filebuf/sungetc/char/1.cc: New.
1622 * 27_io/basic_filebuf/sync/char/1057.cc: New.
1623 * 27_io/basic_filebuf/sync/char/9182-1.cc: New.
1624 * 27_io/basic_filebuf/underflow/char/10097.cc: New.
1625 * 27_io/basic_fstream/1.cc: New.
1626 * 27_io/basic_fstream/2.cc: New.
1627 * 27_io/basic_fstream/3.cc: New.
1628 * 27_io/basic_fstream/4.cc: New.
1629 * 27_io/basic_fstream/rdbuf/char/2832.cc: New.
1630 * 27_io/basic_ifstream/1.cc: New.
1631 * 27_io/basic_ifstream/2.cc: New.
1632 * 27_io/basic_ifstream/3.cc: New.
1633 * 27_io/basic_ifstream/4.cc: New.
1634 * 27_io/basic_ifstream/cons/char/1.cc: New.
1635 * 27_io/basic_ifstream/open/char/1.cc: New.
1636 * 27_io/basic_ifstream/rdbuf/char/2832.cc: New.
1637 * 27_io/basic_ios/1.cc: New.
1638 * 27_io/basic_ios/2.cc: New.
1639 * 27_io/basic_ios/3.cc: New.
1640 * 27_io/basic_ios/4.cc: New.
1641 * 27_io/basic_ios/clear/char/1.cc: New.
1642 * 27_io/basic_ios/cons/char/1.cc: New.
1643 * 27_io/basic_ios/cons/char/2.cc: New.
1644 * 27_io/basic_ios/cons/char/3.cc: New.
1645 * 27_io/basic_ios/copyfmt/char/1.cc: New.
1646 * 27_io/basic_ios/copyfmt/char/2.cc: New.
1647 * 27_io/basic_ios/exceptions/char/1.cc: New.
1648 * 27_io/basic_ios/locales/char/1.cc: New.
1649 * 27_io/basic_iostream/1.cc: New.
1650 * 27_io/basic_iostream/2.cc: New.
1651 * 27_io/basic_iostream/3.cc: New.
1652 * 27_io/basic_iostream/4.cc: New.
1653 * 27_io/basic_istream/1.cc: New.
1654 * 27_io/basic_istream/2.cc: New.
1655 * 27_io/basic_istream/3.cc: New.
1656 * 27_io/basic_istream/4.cc: New.
1657 * 27_io/basic_istream/exceptions/char/9561.cc: New.
1658 * 27_io/basic_istream/extractors_arithmetic/char/01.cc: New.
1659 * 27_io/basic_istream/extractors_arithmetic/char/02.cc: New.
1660 * 27_io/basic_istream/extractors_arithmetic/char/03.cc: New.
1661 * 27_io/basic_istream/extractors_arithmetic/char/06.cc: New.
1662 * 27_io/basic_istream/extractors_arithmetic/char/07.cc: New.
1663 * 27_io/basic_istream/extractors_arithmetic/char/08.cc: New.
1664 * 27_io/basic_istream/extractors_arithmetic/char/09.cc: New.
1665 * 27_io/basic_istream/extractors_arithmetic/char/10.cc: New.
1666 * 27_io/basic_istream/extractors_arithmetic/char/11.cc: New.
1667 * 27_io/basic_istream/extractors_arithmetic/char/12.cc: New.
1668 * 27_io/basic_istream/extractors_arithmetic/char/13.cc: New.
1669 * 27_io/basic_istream/extractors_character/char/1.cc: New.
1670 * 27_io/basic_istream/extractors_character/char/2.cc: New.
1671 * 27_io/basic_istream/extractors_character/char/3.cc: New.
1672 * 27_io/basic_istream/extractors_character/char/9826.cc: New.
1673 * 27_io/basic_istream/extractors_other/char/1.cc: New.
1674 * 27_io/basic_istream/extractors_other/char/2.cc: New.
1675 * 27_io/basic_istream/extractors_other/char/3.cc: New.
1676 * 27_io/basic_istream/extractors_other/char/9318-in.cc: New.
1677 * 27_io/basic_istream/extractors_other/char/9424-in.cc: New.
1678 * 27_io/basic_istream/get/char/1.cc: New.
1679 * 27_io/basic_istream/get/char/2.cc: New.
1680 * 27_io/basic_istream/getline/char/1.cc: New.
1681 * 27_io/basic_istream/getline/char/2.cc: New.
1682 * 27_io/basic_istream/getline/char/3.cc: New.
1683 * 27_io/basic_istream/ignore/char/1.cc: New.
1684 * 27_io/basic_istream/ignore/char/6360.cc: New.
1685 * 27_io/basic_istream/ignore/char/7220.cc: New.
1686 * 27_io/basic_istream/peek/char/1.cc: New.
1687 * 27_io/basic_istream/peek/char/6414.cc: New.
1688 * 27_io/basic_istream/putback/char/1.cc: New.
1689 * 27_io/basic_istream/read/char/1.cc: New.
1690 * 27_io/basic_istream/read/char/2.cc: New.
1691 * 27_io/basic_istream/read/char/3.cc: New.
1692 * 27_io/basic_istream/readsome/char/6746-1.cc: New.
1693 * 27_io/basic_istream/readsome/char/6746-2.cc: New.
1694 * 27_io/basic_istream/readsome/char/8258.cc: New.
1695 * 27_io/basic_istream/seekg/char/2346-fstream.cc: New.
1696 * 27_io/basic_istream/seekg/char/2346-sstream.cc: New.
1697 * 27_io/basic_istream/seekg/char/8348-1.cc: New.
1698 * 27_io/basic_istream/seekg/char/8348-2.cc: New.
1699 * 27_io/basic_istream/seekg/char/fstream.cc: New.
1700 * 27_io/basic_istream/seekg/char/sstream.cc: New.
1701 * 27_io/basic_istream/sentry/char/1.cc: New.
1702 * 27_io/basic_istream/sentry/char/2.cc: New.
1703 * 27_io/basic_istream/sentry/char/3.cc: New.
1704 * 27_io/basic_istream/sentry/char/3983-fstream.cc: New.
1705 * 27_io/basic_istream/sentry/char/3983-sstream.cc: New.
1706 * 27_io/basic_istream/tellg/char/1.cc: New.
1707 * 27_io/basic_istream/tellg/char/8348.cc: New.
1708 * 27_io/basic_istream/tellg/char/fstream.cc: New.
1709 * 27_io/basic_istream/tellg/char/sstream.cc: New.
1710 * 27_io/basic_istream/ws/char/1.cc: New.
1711 * 27_io/basic_istringstream/1.cc: New.
1712 * 27_io/basic_istringstream/2.cc: New.
1713 * 27_io/basic_istringstream/3.cc: New.
1714 * 27_io/basic_istringstream/4.cc: New.
1715 * 27_io/basic_istringstream/rdbuf/char/2832.cc: New.
1716 * 27_io/basic_istringstream/str/char/1.cc: New.
1717 * 27_io/basic_ofstream/1.cc: New.
1718 * 27_io/basic_ofstream/2.cc: New.
1719 * 27_io/basic_ofstream/3.cc: New.
1720 * 27_io/basic_ofstream/4.cc: New.
1721 * 27_io/basic_ofstream/cons/char/2.cc: New.
1722 * 27_io/basic_ofstream/open/char/1.cc: New.
1723 * 27_io/basic_ofstream/rdbuf/char/2832.cc: New.
1724 * 27_io/basic_ostream/1.cc: New.
1725 * 27_io/basic_ostream/2.cc: New.
1726 * 27_io/basic_ostream/3.cc: New.
1727 * 27_io/basic_ostream/4.cc: New.
1728 * 27_io/basic_ostream/cons/char/9827.cc: New.
1729 * 27_io/basic_ostream/endl/char/1.cc: New.
1730 * 27_io/basic_ostream/ends/char/1.cc: New.
1731 * 27_io/basic_ostream/ends/char/2.cc: New.
1732 * 27_io/basic_ostream/exceptions/char/9561.cc: New.
1733 * 27_io/basic_ostream/flush/char/1.cc: New.
1734 * 27_io/basic_ostream/inserters_arithmetic/char/1.cc: New.
1735 * 27_io/basic_ostream/inserters_arithmetic/char/2.cc: New.
1736 * 27_io/basic_ostream/inserters_arithmetic/char/3.cc: New.
1737 * 27_io/basic_ostream/inserters_arithmetic/char/4.cc: New.
1738 * 27_io/basic_ostream/inserters_arithmetic/char/4402.cc: New.
1739 * 27_io/basic_ostream/inserters_arithmetic/char/5.cc: New.
1740 * 27_io/basic_ostream/inserters_arithmetic/char/6.cc: New.
1741 * 27_io/basic_ostream/inserters_arithmetic/wchar_t/1.cc: New.
1742 * 27_io/basic_ostream/inserters_character/char/1.cc: New.
1743 * 27_io/basic_ostream/inserters_character/char/2.cc: New.
1744 * 27_io/basic_ostream/inserters_character/char/3.cc: New.
1745 * 27_io/basic_ostream/inserters_character/char/4.cc: New.
1746 * 27_io/basic_ostream/inserters_character/char/5.cc: New.
1747 * 27_io/basic_ostream/inserters_character/char/6.cc: New.
1748 * 27_io/basic_ostream/inserters_character/char/8.cc: New.
1749 * 27_io/basic_ostream/inserters_character/wchar_t/7.cc: New.
1750 * 27_io/basic_ostream/inserters_character/wchar_t/8.cc: New.
1751 * 27_io/basic_ostream/inserters_other/char/1.cc: New.
1752 * 27_io/basic_ostream/inserters_other/char/2.cc: New.
1753 * 27_io/basic_ostream/inserters_other/char/3.cc: New.
1754 * 27_io/basic_ostream/inserters_other/char/4.cc: New.
1755 * 27_io/basic_ostream/inserters_other/char/9318-out.cc: New.
1756 * 27_io/basic_ostream/inserters_other/char/9424-out.cc: New.
1757 * 27_io/basic_ostream/sentry/char/1.cc: New.
1758 * 27_io/basic_ostream/sentry/char/2.cc: New.
1759 * 27_io/basic_ostream/sentry/char/3983-fstream.cc: New.
1760 * 27_io/basic_ostream/sentry/char/3983-sstream.cc: New.
1761 * 27_io/basic_ostream/tellp/char/1.cc: New.
1762 * 27_io/basic_ostream/tellp/char/2.cc: New.
1763 * 27_io/basic_ostringstream/1.cc: New.
1764 * 27_io/basic_ostringstream/2.cc: New.
1765 * 27_io/basic_ostringstream/3.cc: New.
1766 * 27_io/basic_ostringstream/4.cc: New.
1767 * 27_io/basic_ostringstream/cons/char/3.cc: New.
1768 * 27_io/basic_ostringstream/rdbuf/char/2832.cc: New.
1769 * 27_io/basic_ostringstream/str/char/1.cc: New.
1770 * 27_io/basic_ostringstream/str/char/2.cc: New.
1771 * 27_io/basic_streambuf/1.cc: New.
1772 * 27_io/basic_streambuf/2.cc: New.
1773 * 27_io/basic_streambuf/3.cc: New.
1774 * 27_io/basic_streambuf/cons/char/1.cc: New.
1775 * 27_io/basic_streambuf/imbue/char/1.cc: New.
1776 * 27_io/basic_streambuf/imbue/char/9322.cc: New.
1777 * 27_io/basic_streambuf/overflow/char/1.cc: New.
1778 * 27_io/basic_streambuf/overflow/char/2.cc: New.
1779 * 27_io/basic_streambuf/overflow/char/3599.cc: New.
1780 * 27_io/basic_streambuf/sgetc/char/1.cc: New.
1781 * 27_io/basic_streambuf/sgetn/char/1.cc: New.
1782 * 27_io/basic_streambuf/sputbackc/char/9538.cc: New.
1783 * 27_io/basic_streambuf/sputc/char/1057.cc: New.
1784 * 27_io/basic_streambuf/sputn/char/1.cc: New.
1785 * 27_io/basic_streambuf/sputn/char/1057.cc: New.
1786 * 27_io/basic_streambuf/sync/char/1057.cc: New.
1787 * 27_io/basic_stringbuf/1.cc: New.
1788 * 27_io/basic_stringbuf/2.cc: New.
1789 * 27_io/basic_stringbuf/3.cc: New.
1790 * 27_io/basic_stringbuf/4.cc: New.
1791 * 27_io/basic_stringbuf/5.cc: New.
1792 * 27_io/basic_stringbuf/imbue/char/1.cc: New.
1793 * 27_io/basic_stringbuf/imbue/char/9322.cc: New.
1794 * 27_io/basic_stringbuf/in_avail/char/1.cc: New.
1795 * 27_io/basic_stringbuf/overflow/char/2.cc: New.
1796 * 27_io/basic_stringbuf/overflow/char/3599.cc: New.
1797 * 27_io/basic_stringbuf/overflow/char/9988.cc: New.
1798 * 27_io/basic_stringbuf/sbumpc/char/1.cc: New.
1799 * 27_io/basic_stringbuf/sbumpc/char/9825.cc: New.
1800 * 27_io/basic_stringbuf/seekoff/char/1.cc: New.
1801 * 27_io/basic_stringbuf/seekoff/char/2.cc: New.
1802 * 27_io/basic_stringbuf/seekpos/char/1.cc: New.
1803 * 27_io/basic_stringbuf/seekpos/char/2.cc: New.
1804 * 27_io/basic_stringbuf/setbuf/char/1.cc: New.
1805 * 27_io/basic_stringbuf/setbuf/char/2.cc: New.
1806 * 27_io/basic_stringbuf/setbuf/char/3.cc: New.
1807 * 27_io/basic_stringbuf/sgetc/char/1.cc: New.
1808 * 27_io/basic_stringbuf/sgetn/char/1.cc: New.
1809 * 27_io/basic_stringbuf/snextc/char/1.cc: New.
1810 * 27_io/basic_stringbuf/sputbackc/char/1.cc: New.
1811 * 27_io/basic_stringbuf/sputbackc/char/9425.cc: New.
1812 * 27_io/basic_stringbuf/sputc/char/1.cc: New.
1813 * 27_io/basic_stringbuf/sputc/char/1057.cc: New.
1814 * 27_io/basic_stringbuf/sputc/char/9404-1.cc: New.
1815 * 27_io/basic_stringbuf/sputn/char/1.cc: New.
1816 * 27_io/basic_stringbuf/sputn/char/1057.cc: New.
1817 * 27_io/basic_stringbuf/sputn/char/9404-2.cc: New.
1818 * 27_io/basic_stringbuf/str/char/1.cc: New.
1819 * 27_io/basic_stringbuf/str/char/2.cc: New.
1820 * 27_io/basic_stringbuf/str/char/3.cc: New.
1821 * 27_io/basic_stringbuf/str/char/3955.cc: New.
1822 * 27_io/basic_stringbuf/sungetc/char/1.cc: New.
1823 * 27_io/basic_stringbuf/sync/char/1057.cc: New.
1824 * 27_io/basic_stringstream/1.cc: New.
1825 * 27_io/basic_stringstream/2.cc: New.
1826 * 27_io/basic_stringstream/3.cc: New.
1827 * 27_io/basic_stringstream/4.cc: New.
1828 * 27_io/basic_stringstream/rdbuf/char/2832.cc: New.
1829 * 27_io/basic_stringstream/str/char/1.cc: New.
1830 * 27_io/basic_stringstream/str/char/2.cc: New.
1831 * 27_io/basic_stringstream/str/char/3.cc: New.
1832 * 27_io/basic_stringstream/str/char/4.cc: New.
1833 * 27_io/fpos/1.cc: New.
1834 * 27_io/fpos/2.cc: New.
1835 * 27_io/fpos/3.cc: New.
1836 * 27_io/ios_base/callbacks/1.cc: New.
1837 * 27_io/ios_base/state/1.cc: New.
1838 * 27_io/ios_base/storage/1.cc: New.
1839 * 27_io/ios_base/storage/2.cc: New.
1840 * 27_io/ios_base/storage/3.cc: New.
1841 * 27_io/ios_base/sync_with_stdio/1.cc: New.
1842 * 27_io/ios_base/sync_with_stdio/2.cc: New.
1843 * 27_io/manipulators/adjustfield/char/1.cc: New.
1844 * 27_io/manipulators/adjustfield/char/2.cc: New.
1845 * 27_io/manipulators/basefield/char/1.cc: New.
1846 * 27_io/manipulators/standard/char/1.cc: New.
1847 * 27_io/manipulators/standard/char/2.cc: New.
1848 * 27_io/objects/char/1.cc: New.
1849 * 27_io/objects/char/2.cc: New.
1850 * 27_io/objects/char/2523-1_xin.cc: New.
1851 * 27_io/objects/char/2523-1_xin.in: New.
1852 * 27_io/objects/char/2523-2_xin.cc: New.
1853 * 27_io/objects/char/2523-2_xin.in: New.
1854 * 27_io/objects/char/3045.cc: New.
1855 * 27_io/objects/char/3647.cc: New.
1856 * 27_io/objects/char/3_xin.cc: New.
1857 * 27_io/objects/char/3_xin.in: New.
1858 * 27_io/objects/char/4_xin.cc: New.
1859 * 27_io/objects/char/4_xin.in: New.
1860 * 27_io/objects/char/5268.cc: New.
1861 * 27_io/objects/char/5280_xin.cc: New.
1862 * 27_io/objects/char/5280_xin.in: New.
1863 * 27_io/objects/char/6548_xin.cc: New.
1864 * 27_io/objects/char/6548_xin.in: New.
1865 * 27_io/objects/char/6648-1_xin.cc: New.
1866 * 27_io/objects/char/6648-1_xin.in: New.
1867 * 27_io/objects/char/6648-2_xin.cc: New.
1868 * 27_io/objects/char/6648-2_xin.in: New.
1869 * 27_io/objects/char/7744_xin.cc: New.
1870 * 27_io/objects/char/7744_xin.in: New.
1871 * 27_io/objects/wchar_t/1.cc: New.
1872 * 27_io/types/1.cc: New.
1873 * 27_io/types/2.cc: New.
1874 * data/filebuf_members-1.tst: New.
1875 * data/filebuf_members-1.txt: New.
1876 * data/filebuf_virtuals-1.tst: New.
1877 * data/filebuf_virtuals-1.txt: New.
1878 * data/filebuf_virtuals-2.tst: New.
1879 * data/filebuf_virtuals-3.tst: New.
1880 * data/ifstream_members-1.tst: New.
1881 * data/ifstream_members-1.txt: New.
1882 * data/ios_base_members_static-1.tst: New.
1883 * data/istream_extractor_other-1.tst: New.
1884 * data/istream_extractor_other-1.txt: New.
1885 * data/istream_extractor_other-2.tst: New.
1886 * data/istream_seeks-1.tst: New.
1887 * data/istream_seeks-1.txt: New.
1888 * data/istream_seeks-2.tst: New.
1889 * data/istream_seeks-3.tst: New.
1890 * data/istream_unformatted-1.tst: New.
1891 * data/istream_unformatted-1.txt: New.
1892 * data/ofstream_members-1.tst: New.
1893 * data/ostream_inserter_char-1.tst: New.
1894 * data/ostream_inserter_char-1.txt: New.
1895 * data/ostream_inserter_other-1.tst: New.
1896 * data/ostream_inserter_other-2.tst: New.
1897 * data/ostream_seeks-1.tst: New.
1899 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
1901 * include/bits/sstream.tcc (basic_stringbuf::seekpos): Remove
1902 requirement that __mode must be strict input or output.
1904 * include/std/std_streambuf.h (basic_streambuf::setp): Set
1907 * include/std/std_sstream.h (basic_strinbuf::str): Zero length
1908 output string shouldn't core.
1909 (basic_stringbuf::_M_really_sync): Add base argument. Remove rturn
1911 * include/bits/sstream.tcc: Adjust _M_really_sync bits here.
1913 * include/bits/istream.tcc (basic_istream::putback): Set gcount to
1916 2003-04-09 Benjamin Kosnik <bkoz@redhat.com>
1918 * testsuite/data: New directory.
1919 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Modify
1920 to copy files from the testsuite data directory.
1921 (libstdc++-v3-list-sourcefiles): Add another test list filter, for
1922 testfiles containing _xin, which now means this is an interactive
1923 test and should be run with the interactive dejagnu hooks.
1924 * testsuite/Makefile.am: Remove testsuite_* files.
1925 * testsuite/Makefile.in: Regenerate.
1927 2003-04-09 Zack Weinberg <zack@codesourcery.com>
1929 * docs/html/install.html: Document complete list of locales
1930 required by test suite. Document procedure for installing
1931 said locales under Debian. Solicit instructions for other
1934 2003-04-08 Alexandre Oliva <aoliva@redhat.com>
1936 * include/bits/sstream.tcc (overflow): Make sure operands of min
1937 and max have the same type.
1939 2003-04-04 Jerry Quinn <jlquinn@optonline.net>
1942 * src/ios.cc (ios_base::_M_init): Remove _M_callbacks
1945 2003-03-31 Paolo Carlini <pcarlini@unitus.it>
1947 * include/std/std_streambuf.h (_M_out_buf_size()): Remove.
1948 * include/bits/fstream.tcc (_M_allocate_internal_buffer):
1949 Don't set _M_out_end.
1950 (basic_filebuf::overflow): Replace _M_out_buf_size() with
1951 this->_M_out_cur && this->_M_out_cur < this->_M_out_end.
1952 * include/bits/sstream.tcc (basic_stringbuf::overflow):
1953 Replace _M_out_buf_size() with this->_M_out_cur < this->_M_out_end;
1954 * include/bits/streambuf.tcc (basic_streambuf::sputc):
1955 Replace _M_out_buf_size() with _M_out_cur && _M_out_cur < _M_out_end.
1956 (basic_streambuf::xsputn): Replace _M_out_buf_size() with
1957 _M_out_end - _M_out_cur.
1958 (__copy_streambufs): Likewise.
1959 * include/std/std_fstream.h (_M_set_determinate): Set
1962 2003-03-30 Paolo Carlini <pcarlini@unitus.it>
1964 * include/bits/fstream.tcc (basic_filebuf::showmanyc,
1965 _M_convert_to_external, _M_really_overflow, seekoff): Fix
1966 test for synced buffer.
1967 * include/std/std_fstream.h (sync): Likewise.
1968 * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
1969 basic_filebuf<wchar_t>::_M_underflow_common): Likewise.
1971 2003-03-28 Benjamin Kosnik <bkoz@redhat.com>
1973 * include/std/std_sstream.h (basic_istringstream): Adjust
1975 (basic_ostringstream): Same.
1976 (basic_stringstream): Same.
1977 * include/std/std_fstream.h (basic_ifstream): Adjust initialization.
1978 (basic_ofstream): Same.
1979 (basic_fstream): Same.
1980 * include/std/std_ostream.h (basic_ostrem): Add protected ctor
1981 that does not call init.
1982 * include/std/std_istream.h (basic_istream): Same.
1983 (basic_iostream): Construct istream, ostream uninitialized, use
1984 init to initialize just once. Add protected ctor that does not
1987 2003-03-28 Paolo Carlini <pcarlini@unitus.it>
1988 Nathan Myers <ncm@cantrip.org>
1991 * include/bits/fstream.tcc (basic_filebuf<>::open): Don't
1993 (basic_filebuf<>::showmanyc): Use the information provided
1994 by codecvt and __basic_file<>::showmanyc_helper to implement
1995 a non-trivial showmanyc.
1996 * config/io/basic_file_stdio.h
1997 (__basic_file<>::showmanyc_helper): New, declare.
1998 * config/io/basic_file_stdio.cc
1999 (__basic_file<>::showmanyc_helper): Define.
2000 (__basic_file<>::_M_open_mode): Don't set O_NONBLOCK.
2001 (__basic_file<char>::open): Don't call fcntl().
2002 * acinclude.m4 (GLIBCPP_CHECK_S_ISREG_OR_S_IFREG,
2003 GLIBCPP_CHECK_POLL): New macros.
2004 * configure.in: Call here.
2005 * acconfig.h: Add #undefs for the corresponding symbols.
2006 * aclocal.m4: Regenerate.
2007 * configure: Regenerate.
2008 * config.h.in: Regenerate.
2010 2003-03-24 Benjamin Kosnik <bkoz@redhat.com>
2012 * config/linker-map.gnu: Remove string export restrictions.
2014 2003-03-24 Paolo Carlini <pcarlini@unitus.it>
2016 * testsuite/21_strings/basic_string/find/char/1.cc: Remove
2017 find_first_of, find_last_of and find_last_not_of tests.
2018 * testsuite/21_strings/basic_string/find/char/2.cc: find_first_of
2019 tests here, new file.
2020 * testsuite/21_strings/basic_string/find/wchar_t/1.cc: Likewise,
2021 remove wchar_t find_first_of, find_last_of and find_last_not_of tests.
2022 * testsuite/21_strings/basic_string/find/wchar_t/2.cc: Likewise,
2023 wchar_t find_first_of tests here, new file.
2024 * testsuite/21_strings/basic_string/rfind/char/2.cc: find_last_of
2026 * testsuite/21_strings/basic_string/rfind/char/3.cc: find_last_not_of
2028 * testsuite/21_strings/basic_string/rfind/wchar_t/2.cc: likewise,
2029 wchar_t find_last_of tests here.
2030 * testsuite/21_strings/basic_string/rfind/wchar_t/3.cc: likewise,
2031 wchar_t find_last_not_of tests here.
2033 2003-03-22 Loren J. Rittle <ljrittle@acm.org>
2035 * config/os/hpux/ctype_noninline.h (ctype<char>::classic_table):
2036 Correct return value.
2038 2003-03-21 Jerry Quinn <jlquinn@optonline.net>
2041 * include/bits/c++config (_GLIBCPP_FAST_MATH): Define.
2042 * include/std/std_complex.h (norm): Use faster,
2043 less accurate computation for builtin float types under --fast-math.
2045 2003-03-21 Magnus Fromreide <gnats@magfr.user.lysator.liu.se>
2047 * testsuite/testsuite_hooks.h: Fix warning nits.
2049 2003-03-19 Alexandre Oliva <aoliva@redhat.com>
2051 * config/cpu/mips/atomicity.h (__exchange_and_add, __atomic_add):
2052 Only .set mips2 for the o32 ABI.
2054 2003-03-19 Paolo Carlini <pcarlini@unitus.it>
2056 * testsuite/21_strings/char_traits/requirements/char/1.cc:
2057 Test char not wchar_t.
2059 2003-03-18 Paolo Carlini <pcarlini@unitus.it>
2061 * testsuite/21_strings/basic_string/append/wchar_t/1.cc:
2062 Correct size, taking into account sizeof(wchar_t).
2064 2003-03-18 Paolo Carlini <pcarlini@unitus.it>
2066 Reshuffle 21_strings testsuite.
2067 * testsuite/21_strings/append.cc, c_strings.cc, invariants.cc,
2068 assign.cc, ctor_copy_dtor.cc, nonmember.cc, capacity.cc,
2069 element_access.cc, operations.cc, char_traits_requirements.cc,
2070 find.cc, replace.cc, char_traits_typedefs.cc, insert.cc, rfind.cc,
2071 compare.cc, inserters_extractors.cc, substr.cc: Split up, add
2072 wchar_t tests as follows.
2073 * 21_strings/basic_string/append/char/1.cc: New.
2074 * 21_strings/basic_string/append/wchar_t/1.cc: New.
2075 * 21_strings/basic_string/assign/char/1.cc: New.
2076 * 21_strings/basic_string/assign/char/2.cc: New.
2077 * 21_strings/basic_string/assign/char/3.cc: New.
2078 * 21_strings/basic_string/assign/wchar_t/1.cc: New.
2079 * 21_strings/basic_string/assign/wchar_t/2.cc: New.
2080 * 21_strings/basic_string/assign/wchar_t/3.cc: New.
2081 * 21_strings/basic_string/capacity/1.cc: New.
2082 * 21_strings/basic_string/capacity/char/1.cc: New.
2083 * 21_strings/basic_string/capacity/char/2.cc: New.
2084 * 21_strings/basic_string/capacity/wchar_t/1.cc: New.
2085 * 21_strings/basic_string/capacity/wchar_t/2.cc: New.
2086 * 21_strings/basic_string/compare/char/1.cc: New.
2087 * 21_strings/basic_string/compare/wchar_t/1.cc: New.
2088 * 21_strings/basic_string/cons/char/1.cc: New.
2089 * 21_strings/basic_string/cons/char/2.cc: New.
2090 * 21_strings/basic_string/cons/char/3.cc: New.
2091 * 21_strings/basic_string/cons/char/4.cc: New.
2092 * 21_strings/basic_string/cons/char/5.cc: New.
2093 * 21_strings/basic_string/cons/wchar_t/1.cc: New.
2094 * 21_strings/basic_string/cons/wchar_t/2.cc: New.
2095 * 21_strings/basic_string/cons/wchar_t/3.cc: New.
2096 * 21_strings/basic_string/cons/wchar_t/4.cc: New.
2097 * 21_strings/basic_string/cons/wchar_t/5.cc: New.
2098 * 21_strings/basic_string/element_access/char/1.cc: New.
2099 * 21_strings/basic_string/element_access/char/2.cc: New.
2100 * 21_strings/basic_string/element_access/char/3.cc: New.
2101 * 21_strings/basic_string/element_access/wchar_t/1.cc: New.
2102 * 21_strings/basic_string/element_access/wchar_t/2.cc: New.
2103 * 21_strings/basic_string/element_access/wchar_t/3.cc: New.
2104 * 21_strings/basic_string/find/char/1.cc: New.
2105 * 21_strings/basic_string/find/wchar_t/1.cc: New.
2106 * 21_strings/basic_string/insert/char/1.cc: New.
2107 * 21_strings/basic_string/insert/char/2.cc: New.
2108 * 21_strings/basic_string/insert/wchar_t/1.cc: New.
2109 * 21_strings/basic_string/insert/wchar_t/2.cc: New.
2110 * 21_strings/basic_string/inserters_extractors/char/1.cc: New.
2111 * 21_strings/basic_string/inserters_extractors/char/4.cc: New.
2112 * 21_strings/basic_string/inserters_extractors/char/5.cc: New.
2113 * 21_strings/basic_string/inserters_extractors/char/6.cc: New.
2114 * 21_strings/basic_string/inserters_extractors/char/7.cc: New.
2115 * 21_strings/basic_string/inserters_extractors/char/8.cc: New.
2116 * 21_strings/basic_string/inserters_extractors/char/9.cc: New.
2117 * 21_strings/basic_string/inserters_extractors/wchar_t/1.cc: New.
2118 * 21_strings/basic_string/inserters_extractors/wchar_t/4.cc: New.
2119 * 21_strings/basic_string/inserters_extractors/wchar_t/5.cc: New.
2120 * 21_strings/basic_string/inserters_extractors/wchar_t/6.cc: New.
2121 * 21_strings/basic_string/inserters_extractors/wchar_t/7.cc: New.
2122 * 21_strings/basic_string/inserters_extractors/wchar_t/8.cc: New.
2123 * 21_strings/basic_string/inserters_extractors/wchar_t/9.cc: New.
2124 * 21_strings/basic_string/operators/char/1.cc: New.
2125 * 21_strings/basic_string/operators/char/2.cc: New.
2126 * 21_strings/basic_string/operators/wchar_t/1.cc: New.
2127 * 21_strings/basic_string/operators/wchar_t/2.cc: New.
2128 * 21_strings/basic_string/replace/char/1.cc: New.
2129 * 21_strings/basic_string/replace/char/2.cc: New.
2130 * 21_strings/basic_string/replace/char/3.cc: New.
2131 * 21_strings/basic_string/replace/char/4.cc: New.
2132 * 21_strings/basic_string/replace/char/5.cc: New.
2133 * 21_strings/basic_string/replace/wchar_t/1.cc: New.
2134 * 21_strings/basic_string/replace/wchar_t/2.cc: New.
2135 * 21_strings/basic_string/replace/wchar_t/3.cc: New.
2136 * 21_strings/basic_string/replace/wchar_t/4.cc: New.
2137 * 21_strings/basic_string/replace/wchar_t/5.cc: New.
2138 * 21_strings/basic_string/rfind/char/1.cc: New.
2139 * 21_strings/basic_string/rfind/char/2.cc: New.
2140 * 21_strings/basic_string/rfind/char/3.cc: New.
2141 * 21_strings/basic_string/rfind/wchar_t/1.cc: New.
2142 * 21_strings/basic_string/rfind/wchar_t/2.cc: New.
2143 * 21_strings/basic_string/rfind/wchar_t/3.cc: New.
2144 * 21_strings/basic_string/substr/char/1.cc: New.
2145 * 21_strings/basic_string/substr/wchar_t/1.cc: New.
2146 * 21_strings/c_strings/char/1.cc: New.
2147 * 21_strings/c_strings/char/2.cc: New.
2148 * 21_strings/c_strings/wchar_t/1.cc: New.
2149 * 21_strings/c_strings/wchar_t/2.cc: New.
2150 * 21_strings/char_traits/requirements/char/1.cc: New.
2151 * 21_strings/char_traits/requirements/wchar_t/1.cc: New.
2152 * 21_strings/char_traits/typedefs/char/1.cc: New.
2154 2003-03-17 Paolo Carlini <pcarlini@unitus.it>
2155 Petur Runolfsson <peturr02@ru.is>
2158 * src/fstream.cc (basic_filebuf<char>::_M_underflow_common,
2159 basic_filebuf<wchar_t>::_M_underflow_common):
2160 if (gptr() < egptr()) return *gptr().
2161 * testsuite/27_io/filebuf_virtuals.cc (test16): Add.
2163 * testsuite/27_io/filebuf_members.cc (test_04): Minor
2164 changes: unlink fifo before making it, fix spelling error.
2166 2003-03-17 Benjamin Kosnik <bkoz@redhat.com>
2168 * testsuite/Makefile.am (CLEANFILES): Add tmp*.
2169 * testsuite/Makefile.in: Regenerate.
2170 * testsuite/27_io/filebuf_members.cc: Consistently name tmp files.
2173 2003-03-17 Petur Runolfsson <peturr02@ru.is>
2176 * include/bits/fstream.tcc (basic_filebuf::close):
2177 Always close file, even when write fails.
2178 * testsuite/27_io/filebuf_members.cc (test_07): New test.
2180 2003-03-17 Danny Smith <dannysmith@users.sourceforge.net>
2182 * libsupc++/Makefile.am (C_COMPILE): Remove.
2183 (LTCOMPILE): Likewise.
2184 * libsupc++/Makefile.in: Regenerate.
2186 2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
2188 * testsuite/23_containers/bitset_members.cc: Add test variable.
2189 * testsuite/23_containers/map_insert.cc: Same.
2190 * testsuite/22_locale/ctype/cons/char/1.cc: Same.
2191 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Same.
2192 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: Same.
2193 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: Same.
2194 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: Same.
2195 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Same.
2196 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: Same.
2197 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: Same.
2198 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: Same.
2199 * testsuite/27_io/istream_exception.cc: Same.
2200 * testsuite/27_io/filebuf_virtuals.cc: Same.
2201 * testsuite/27_io/stringbuf_virtuals.cc: Same.
2202 * testsuite/27_io/ostream_inserter_arith.cc: Same.
2203 * testsuite/26_numerics/valarray_operators.cc: Same.
2204 * testsuite/26_numerics/slice.cc: Same.
2205 * testsuite/26_numerics/slice_array_assignment.cc: Same.
2206 * testsuite/24_iterators/istream_iterator.cc: Same.
2207 * mkcheck.in (TESTS_FILE): Use dejagnu-generated file if possible.
2209 2003-03-14 Petur Runolfsson <peturr02@ru.is>
2213 * config/locale/generic/ctype_members.cc,
2214 * config/locale/gnu/ctype_members.cc
2215 (ctype<wchar_t>::do_widen(char)): Cast argument to
2216 unsigned char before passing to btowc.
2217 (ctype<wchar_t>::do_widen(const char*, const char*, wchar_t*)):
2218 Convert characters with btowc instead of mbsrtowcs.
2219 (ctype<wchar_t>::do_narrow(const wchar_t*, const wchar_t*,
2221 Convert characters with wctob instead of wcsrtombs.
2222 * testsuite/22_locale/ctype/narrow/wchar_t/3.cc: New test.
2223 * testsuite/22_locale/ctype/widen/wchar_t/2.cc: New test.
2224 * testsuite/22_locale/ctype/widen/wchar_t/3.cc: New test.
2226 2003-03-14 Benjamin Kosnik <bkoz@redhat.com>
2228 * include/stdc++.h: New.
2229 * libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
2230 * include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
2231 * include/Makefile.in: Regenerate.
2232 * testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
2233 (--cxxflags): Put -g -O2 here.
2234 * testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.
2236 2003-03-14 Loren J. Rittle <ljrittle@acm.org>
2238 * testsuite/testsuite_hooks.h: Suppress runtime exception thrown by
2239 missing named locale.
2241 2003-03-14 Andreas Schwab <schwab@suse.de>
2243 * configure.in: Only append to makefiles that are newly created to
2244 avoid multiple multi-do/multi-clean rules.
2245 * configure: Rebuilt.
2247 2003-03-13 Jonathan Wakely <redi@gcc.gnu.org>
2249 * docs/html/configopts.html, docs/html/documentation.html,
2250 docs/html/explanations.html, docs/html/install.html,
2251 docs/html/19_diagnostics/howto.html, docs/html/faq/index.html: Fix
2252 invalid XHTML and make page header style consistent.
2254 2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
2256 * docs/html/faq/index.html: Explain memory "leaks" due to allocators.
2257 * docs/html/faq/index.txt: Regenerate.
2258 * docs/html/debug.html: Add a bit to allocator text and fix XHTML.
2260 2003-03-12 Andreas Schwab <schwab@suse.de>
2262 * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
2263 glibcpp_toolexeclibdir.
2264 * aclocal.m4, configure: Rebuilt.
2266 2003-03-11 Jonathan Wakely <redi@gcc.gnu.org>
2268 * docs/html/faq/index.html: Update text about location of headers.
2269 * docs/html/faq/index.txt: Regenerate.
2271 2003-03-11 Carlo Wood <carlo@alinoe.com>
2273 * include/bits/demangle.h: Prepend accessors of
2274 class qualifier with 'get_' in order to fix warnings
2275 when compiling with -Wshadow.
2277 2003-03-11 Loren J. Rittle <ljrittle@acm.org>
2279 * config/os/bsd/freebsd/ctype_inline.h: Support _M_table
2281 * testsuite/22_locale/ctype/cons/char/1.cc: Fix typo.
2283 * testsuite/testsuite_hooks.h (run_tests_wrapped_env): Do not
2284 report lack of setenv().
2286 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
2288 * config/io/basic_file_stdio.cc: include <unistd.h>.
2290 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
2291 Nathan Myers <ncm@cantrip.org>
2294 * config/io/basic_file_stdio.h (__basic_file<>::xsgetn, xsputn,
2295 seekoff, seekpos): Add a boolean parameter __stdio.
2296 * config/io/basic_file_stdio.cc (__basic_file<>::xsgetn, xsputn,
2297 seekoff, seekpos): If __stdio == true, use fread (fwrite, fseek/ftell,
2298 fseek/ftell, respectively), otherwise read (write, lseek, lseek,
2300 * include/bits/fstream.tcc (basic_filebuf<>::_M_convert_to_external,
2301 _M_really_overflow, seekoff): Use the boolean parameter in the calls.
2302 * include/std/std_fstream.h (sync): Likewise.
2303 * src/fstream.cc (basic_filebuf<>::_M_underflow_common): Likewise.
2304 * src/ios.cc (ios_base::Init::_S_ios_create(bool)): Revert
2305 libstdc++/8399 commit involving isatty(0).
2306 * acinclude.m4 (GLIBCPP_CHECK_UNISTD_DECL_AND_LINKAGE_1): Remove.
2307 (GLIBCPP_CHECK_UNISTD_SUPPORT): Remove
2308 * configure.in: Remove call.
2309 * aclocal.m4: Regenerate.
2310 * config.h.in: Regenerate.
2311 * configure: Regenerate.
2312 * testsuite/27_io/narrow_stream_objects.cc (test11): Add.
2314 2003-03-09 Paolo Carlini <pcarlini@unitus.it>
2317 * include/bits/fstream.tcc (overflow): don't write EOF to file.
2318 * testsuite/27_io/filebuf_virtuals.cc (test15): Add.
2320 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
2323 * include/bits/basic_ios.h (_M_setstate): New.
2324 * include/bits/ostream.tcc (operator<<): Use it.
2325 * include/bits/istream.tcc (operator>>): Use it.
2326 * include/std/std_ostream.h (operator<<): Make friends.
2327 * include/std/std_istream.h (operator>>): Make friends.
2328 * testsuite/27_io/ostream_exception.cc,
2329 testsuite/27_io/istream_exception.cc: New tests.
2331 2003-03-08 Benjamin Kosnik <bkoz@redhat.com>
2333 * include/bits/locale_facets.tcc: Fix typo.
2335 2003-03-08 Loren J. Rittle <ljrittle@acm.org>
2337 * testsuite/26_numerics/c99_classification_macros_c.cc: Tweak test.
2339 * config/locale/generic/c_locale.cc
2340 (locale::facet::_S_create_c_locale): Throw runtime exception when
2341 unsupported language is specified.
2342 * testsuite/testsuite_hooks.h
2343 (run_test_wrapped_generic_locale_exception_catcher): New function.
2344 * testsuite/testsuite_hooks.cc (run_tests_wrapped_locale):
2345 Suppress runtime exception thrown by generic implementation.
2346 (run_tests_wrapped_env): Likewise.
2347 (run_test_wrapped_generic_locale_exception_catcher): New function.
2348 * testsuite/22_locale/collate/compare/char/1.cc: New test wrap.
2349 * testsuite/22_locale/collate/compare/char/2.cc: New test wrap.
2350 * testsuite/22_locale/collate/compare/char/3.cc: New test wrap.
2351 * testsuite/22_locale/collate/hash/char/2.cc: New test wrap.
2352 * testsuite/22_locale/collate/transform/char/2.cc: New test wrap.
2353 * testsuite/22_locale/collate/transform/char/3.cc: New test wrap.
2354 * testsuite/22_locale/collate_byname/1.cc: New test wrap.
2355 * testsuite/22_locale/ctype/is/char/2.cc: New test wrap.
2356 * testsuite/22_locale/facet/2.cc: New test wrap.
2357 * testsuite/22_locale/locale/cons/4.cc: New test wrap.
2358 * testsuite/22_locale/locale/cons/5.cc: New test wrap.
2359 * testsuite/22_locale/locale/cons/7.cc: New test wrap.
2360 * testsuite/22_locale/messages/members/char/1.cc: New test wrap.
2361 * testsuite/22_locale/messages/members/char/2.cc: New test wrap.
2362 * testsuite/22_locale/messages/members/char/3.cc: New test wrap.
2363 * testsuite/22_locale/messages_byname/1.cc: New test wrap.
2364 * testsuite/22_locale/money_get/get/char/1.cc: New test wrap.
2365 * testsuite/22_locale/money_get/get/char/2.cc: New test wrap.
2366 * testsuite/22_locale/money_get/get/char/3.cc: New test wrap.
2367 * testsuite/22_locale/money_get/get/char/4.cc: New test wrap.
2368 * testsuite/22_locale/money_put/put/char/1.cc: New test wrap.
2369 * testsuite/22_locale/money_put/put/char/2.cc: New test wrap.
2370 * testsuite/22_locale/money_put/put/char/3.cc: New test wrap.
2371 * testsuite/22_locale/moneypunct/members/char/2.cc: New test wrap.
2372 * testsuite/22_locale/moneypunct_byname/1.cc: New test wrap.
2373 * testsuite/22_locale/num_get/get/char/1.cc: New test wrap.
2374 * testsuite/22_locale/num_get/get/char/2.cc: New test wrap.
2375 * testsuite/22_locale/num_get/get/char/3.cc: New test wrap.
2376 * testsuite/22_locale/num_get/get/char/5.cc: New test wrap.
2377 * testsuite/22_locale/num_get/get/char/6.cc: New test wrap.
2378 * testsuite/22_locale/num_put/put/char/1.cc: New test wrap.
2379 * testsuite/22_locale/num_put/put/char/2.cc: New test wrap.
2380 * testsuite/22_locale/num_put/put/char/3.cc: New test wrap.
2381 * testsuite/22_locale/num_put/put/char/5.cc: New test wrap.
2382 * testsuite/22_locale/numpunct/members/char/1.cc: New test wrap.
2383 * testsuite/22_locale/numpunct/members/char/2.cc: New test wrap.
2384 * testsuite/22_locale/numpunct_byname/1.cc: New test wrap.
2385 * testsuite/22_locale/numpunct_byname/2.cc: New test wrap.
2386 * testsuite/22_locale/time_get/date_order/char/1.cc: New test wrap.
2387 * testsuite/22_locale/time_get/get_date/char/1.cc: New test wrap.
2388 * testsuite/22_locale/time_get/get_date/char/2.cc: New test wrap.
2389 * testsuite/22_locale/time_get/get_monthname/char/1.cc: New test wrap.
2390 * testsuite/22_locale/time_get/get_monthname/char/2.cc: New test wrap.
2391 * testsuite/22_locale/time_get/get_time/char/1.cc: New test wrap.
2392 * testsuite/22_locale/time_get/get_time/char/2.cc: New test wrap.
2393 * testsuite/22_locale/time_get/get_weekday/char/1.cc: New test wrap.
2394 * testsuite/22_locale/time_get/get_weekday/char/2.cc: New test wrap.
2395 * testsuite/22_locale/time_get/get_year/char/1.cc: New test wrap.
2396 * testsuite/22_locale/time_put/put/char/1.cc: New test wrap.
2397 * testsuite/22_locale/time_put/put/char/2.cc: New test wrap.
2398 * testsuite/22_locale/time_put/put/char/3.cc: New test wrap.
2399 * testsuite/22_locale/time_put/put/char/4.cc: New test wrap.
2400 * testsuite/22_locale/time_put/put/char/5.cc: New test wrap.
2401 * testsuite/22_locale/time_put/put/char/6.cc: New test wrap.
2402 * testsuite/22_locale/time_put/put/char/7.cc: New test wrap.
2403 * testsuite/22_locale/time_put/put/char/8.cc: New test wrap.
2404 * testsuite/27_io/filebuf_virtuals.cc: New test wrap.
2405 * testsuite/27_io/ios_members.cc: New test wrap.
2406 * testsuite/27_io/ostream_inserter_arith.cc (test02): Make void.
2408 * testsuite/27_io/streambuf_members.cc: New test wrap.
2409 * testsuite/27_io/stringbuf_virtuals.cc: New test wrap.
2411 2003-03-08 Paolo Carlini <pcarlini@unitus.it>
2412 Petur Runolfsson <peturr02@ru.is>
2415 * include/bits/streambuf.tcc (__copy_streambufs): Use
2416 sgetn-sputn only when sputn cannot fail, otherwise fall back
2417 to safe snextc-sputc.
2418 * testsuite/27_io/streambuf_members.cc (test11, test12): Add.
2420 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
2422 * include/bits/locale_facets.tcc (num_put::do_put(bool)): Use
2423 locale cache for truename and falsename.
2425 2003-03-08 Jerry Quinn <jlquinn@optonline.net>
2427 * src/ios.cc (ios_base::ios_base): Correct order of _M_word and
2428 _M_word_size initialization.
2430 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
2432 * include/bits/fstream.tcc (_M_convert_to_external):
2433 Set __elen to zero if codecvt::out eventually fails.
2435 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
2438 * include/bits/fstream.tcc (_M_really_overflow): Check
2439 for _M_convert_to_external possible failures.
2440 * include/std/std_fstream.h (sync): Check _M_really_overflow
2441 return value and return -1 in case of failure.
2442 * testsuite/27_io/filebuf_virtuals.cc (test13, test14): Add.
2444 2003-03-07 Paolo Carlini <pcarlini@unitus.it>
2447 * include/bits/istream.tcc (operator>>(_CharT*),
2448 operator>>(basic_string&), ws): Pass a char_type to __ctype.is.
2449 * testsuite/27_io/stringstream.cc (test02): Add.
2451 * include/bits/istream.tcc (operator>>(_CharT*)):
2452 Assign a char_type to *__s.
2454 2003-03-07 Petur Runolfsson <peturr02@ru.is>
2457 * include/bits/locale_facets.tcc
2458 (collate::do_compare, collate::do_transform):
2459 Handle nul characters in input.
2460 * testsuite/22_locale/collate/compare/char/3.cc: New test.
2461 * testsuite/22_locale/collate/compare/wchar_t/3.cc: New test.
2462 * testsuite/22_locale/collate/transform/char/3.cc: New test.
2463 * testsuite/22_locale/collate/transform/wchar_t/3.cc: New test.
2465 2003-03-07 Jerry Quinn <jlquinn@optonline.net>
2467 * include/bits/streambuf_iterator.h (_M_put): Set _M_failed if
2469 * testsuite/27_io/ostream_fail.cc: New test.
2471 2003-03-07 Matthias Klose <doko@debian.org>
2473 * Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
2474 FLAGS_TO_PASS: Set to AM_MAKEFLAGS
2475 * Makefile.in: Regenerate.
2476 * libsupc++/Makefile.am: Express glibcppinstalldir in terms
2478 AM_MAKEFLAGS: Pass gxx_include_dir.
2479 * libsupc++/Makefile.in: Regenerate.
2481 2003-03-06 Jerry Quinn <jlquinn@optonline.net>
2483 * testsuite/27_io/ios_base_storage.cc (test02): Set exception
2484 mask. Test setting small-numbered pword and iword slots. Test
2485 behavior at limit of numeric_limits::max. Check that values are
2486 still good after failures.
2488 2003-03-06 Jerry Quinn <jlquinn@optonline.net>
2490 * src/ios.cc (ios_base::_M_init): Remove _M_word_size.
2491 (ios_base::ios_base): Set _M_word, _M_word_size.
2492 (ios_base::~ios_base): Remove redundant test.
2493 * testsuite/27_io/ios_base_storage.cc (test03): New.
2495 2003-03-04 Alexandre Oliva <aoliva@redhat.com>
2497 * src/strstream.cc, include/bits/basic_string.tcc: Remove
2498 incorrect whitespace added in my previous change.
2500 2003-03-05 Carlo Wood <carlo@alinoe.com>
2502 * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
2503 _S_initialized() in order to allow debugging libraries to detect
2504 when the std streams are initialized from an overloaded operator
2507 2003-03-05 Benjamin Kosnik <bkoz@redhat.com>
2509 * libsupc++/demangle.h: Move to..
2510 * include/bits/demangle.h: ...here.
2511 * src/demangle.cc: Adjust include.
2512 * include/Makefile.am (bits_headers): Add.
2513 * include/Makefile.in: Regenerate.
2515 2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
2517 * src/globals.cc: Clarify comments, remove c_locale_imp_compat.
2519 * config/linker-map.gnu: Filter typeinfo and vtable info.
2521 2003-03-04 Jerry Quinn <jlquinn@optonline.net>
2523 * src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
2524 new failure. Throw exception if badbit and exception mask when ix
2525 >= numeric_limits<int>::max().
2527 2003-03-04 Alexandre Oliva <aoliva@redhat.com>
2529 * src/strstream.cc (strstreambuf::overflow): Make sure operands of
2530 min and max have the same type.
2531 * include/bits/basic_string.tcc (append, rfind, compare): Likewise.
2533 2003-03-04 Benjamin Kosnik <bkoz@redhat.com>
2535 * include/Makefile.am (allstamps): Remove stamp-std-precompile.
2536 * include/Makefile.in: Regenerate.
2538 2003-03-03 Benjamin Kosnik <bkoz@redhat.com>
2540 * testsuite/abi_check.cc (report_symbol_info): Add version info.
2542 * config/linker-map.gnu: Hide more stuff.
2543 * include/Makefile.am: Cleanups.
2544 * include/Makefile.in: Regenerate.
2546 2003-02-27 Jerry Quinn <jlquinn@optonline.net>
2548 * config/locale/generic/messages_members.h (messages::messages):
2549 Remove name from unused parameter.
2551 2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
2553 * src/Makefile.am (sources): Add demangle.cc.
2556 * src/Makefile.in: Regenerate.
2557 * libsupc++/Makefile.am: Remove old __cxa_demangle bits.
2558 * libsupc++/Makefile.in: Regenerate.
2560 * testsuite/testsuite_hooks.h
2561 (__gnu_cxx_test::verify_demangle): New.
2562 * testsuite/testsuite_hooks.cc: Define.
2564 2003-02-27 Carlo Wood <carlo@alinoe.com>
2566 * src/demangle.cc: New.
2567 * libsupc++/demangle.h: New.
2569 2003-02-27 Benjamin Kosnik <bkoz@redhat.com>
2570 Carlo Wood <carlo@alinoe.com>
2572 * testsuite/demangle/abi_examples/01.cc: New.
2573 * testsuite/demangle/abi_examples/02.cc: New.
2574 * testsuite/demangle/abi_examples/03.cc: New.
2575 * testsuite/demangle/abi_examples/04.cc: New.
2576 * testsuite/demangle/abi_examples/05.cc: New.
2577 * testsuite/demangle/abi_examples/06.cc: New.
2578 * testsuite/demangle/abi_examples/07.cc: New.
2579 * testsuite/demangle/abi_examples/08.cc: New.
2580 * testsuite/demangle/abi_examples/09.cc: New.
2581 * testsuite/demangle/abi_examples/10.cc: New.
2582 * testsuite/demangle/abi_examples/11.cc: New.
2583 * testsuite/demangle/abi_examples/12.cc: New.
2584 * testsuite/demangle/abi_examples/13.cc: New.
2585 * testsuite/demangle/abi_examples/14.cc: New.
2586 * testsuite/demangle/abi_examples/15.cc: New.
2587 * testsuite/demangle/abi_examples/16.cc: New.
2588 * testsuite/demangle/abi_examples/17.cc: New.
2589 * testsuite/demangle/abi_examples/18.cc: New.
2590 * testsuite/demangle/abi_examples/19.cc: New.
2591 * testsuite/demangle/abi_examples/20.cc: New.
2592 * testsuite/demangle/abi_examples/21.cc: New.
2593 * testsuite/demangle/abi_examples/22.cc: New.
2594 * testsuite/demangle/abi_examples/23.cc: New.
2595 * testsuite/demangle/abi_examples/24.cc: New.
2596 * testsuite/demangle/abi_examples/25.cc: New.
2597 * testsuite/demangle/abi_examples/26.cc: New.
2598 * testsuite/demangle/abi_text/01.cc: New.
2599 * testsuite/demangle/abi_text/02.cc: New.
2600 * testsuite/demangle/abi_text/03.cc: New.
2601 * testsuite/demangle/abi_text/04.cc: New.
2602 * testsuite/demangle/abi_text/05.cc: New.
2603 * testsuite/demangle/abi_text/06.cc: New.
2604 * testsuite/demangle/abi_text/07.cc: New.
2605 * testsuite/demangle/abi_text/08.cc: New.
2606 * testsuite/demangle/abi_text/09.cc: New.
2607 * testsuite/demangle/abi_text/10.cc: New.
2608 * testsuite/demangle/abi_text/11.cc: New.
2609 * testsuite/demangle/abi_text/12.cc: New.
2610 * testsuite/demangle/abi_text/13.cc: New.
2611 * testsuite/demangle/abi_text/14.cc: New.
2612 * testsuite/demangle/regression/3111-1.cc: New.
2613 * testsuite/demangle/regression/3111-2.cc: New.
2614 * testsuite/demangle/regression/7986-01.cc: New.
2615 * testsuite/demangle/regression/7986-02.cc: New.
2616 * testsuite/demangle/regression/7986-03.cc: New.
2617 * testsuite/demangle/regression/7986-04.cc: New.
2618 * testsuite/demangle/regression/7986-05.cc: New.
2619 * testsuite/demangle/regression/7986-06.cc: New.
2620 * testsuite/demangle/regression/7986-07.cc: New.
2621 * testsuite/demangle/regression/7986-08.cc: New.
2622 * testsuite/demangle/regression/7986-09.cc: New.
2623 * testsuite/demangle/regression/7986-10.cc: New.
2624 * testsuite/demangle/regression/7986-11.cc: New.
2625 * testsuite/demangle/regression/7986-12.cc: New.
2626 * testsuite/demangle/regression/7986.cc: New.
2627 * testsuite/demangle/regression/8897.cc: New.
2628 * testsuite/demangle/regression/cw-01.cc: New.
2629 * testsuite/demangle/regression/cw-02.cc: New.
2630 * testsuite/demangle/regression/cw-03.cc: New.
2631 * testsuite/demangle/regression/cw-04.cc: New.
2632 * testsuite/demangle/regression/cw-05.cc: New.
2633 * testsuite/demangle/regression/cw-06.cc: New.
2634 * testsuite/demangle/regression/cw-07.cc: New.
2635 * testsuite/demangle/regression/cw-08.cc: New.
2636 * testsuite/demangle/regression/cw-09.cc: New.
2637 * testsuite/demangle/regression/cw-10.cc: New.
2638 * testsuite/demangle/regression/cw-11.cc: New.
2639 * testsuite/demangle/regression/cw-12.cc: New.
2640 * testsuite/demangle/regression/cw-13.cc: New.
2641 * testsuite/demangle/regression/cw-14.cc: New.
2642 * testsuite/demangle/regression/old.cc: New.
2644 2003-02-25 Phil Edwards <pme@gcc.gnu.org>
2646 * docs/doxygen/Intro.3: Update with new (proper) names.
2647 * docs/doxygen/TODO: Update.
2648 * docs/doxygen/run_doxygen: More comments, fix up man pages.
2649 Fake entries for standard typedefs.
2650 * docs/doxygen/user.cfg.in: Turn INLINE_INHERITED_MEMB back on.
2651 * docs/html/documentation.html: Top-level man page is now called
2653 * include/std/std_limits.h: Doxygenate.
2655 2003-02-25 Scott Snyder <snyder@fnal.gov>
2658 * include/bits/stl_map.h (lower_bound, upper_bound, equal_range):
2659 Correct documentation.
2660 * include/bits/stl_multimap.h (lower_bound, upper_bound,
2661 equal_range): Likewise.
2663 2003-02-24 Paolo Carlini <pcarlini@unitus.it>
2667 (basic_filebuf<char/wchar_t>::_M_underflow_common): When
2668 __bump is true (uflow), always increment the read pointer
2669 (_M_in_cur) before returning successfully.
2670 * testsuite/27_io/filebuf_virtuals.cc (test12): Add.
2672 2003-02-24 Paolo Carlini <pcarlini@unitus.it>
2673 Nathan Myers <ncm@cantrip.org>
2675 PR libstdc++/9404, PR libstdc++/9701 (partial)
2676 (aka pptr == epptr implies overflow)
2677 * include/bits/fstream.tcc (_M_allocate_internal_buffer):
2678 Consistently, _M_out_end points to the end of the buffer just
2680 (overflow): Tweak to use _M_out_buf_size().
2681 (_M_convert_to_external): The role of the old _M_out_end is
2682 now played by _M_out_lim.
2683 (_M_really_overflow): Likewise.
2684 (seekoff): Likewise.
2685 (setbuf): _M_out_end points to the end of the external buffer.
2686 * include/bits/sstream.tcc (overflow): Rewrote, taking into
2687 account the resolution of DR 169 (TC).
2688 (seekoff): Use _M_string.capacity(); ios_base::end is now _M_out_lim.
2689 (seekpos): Use _M_string.capacity(); tweak.
2690 * include/bits/streambuf.tcc (sputc, xsputn): Remove comments.
2691 * include/std/std_fstream.h (sync): The role of the old
2692 _M_out_end is now played by _M_out_lim.
2693 (_M_set_indeterminate): Use _M_set_determinate.
2694 (_M_set_determinate): _M_out_end is now _M_out_lim.
2695 (_M_is_indeterminate): Likewise.
2696 * include/std/std_sstream.h (str()): _M_out_end is now _M_out_lim.
2697 (_M_stringbuf_init): Don't set _M_buf_size, unused for sstreams,
2698 which have the information readily available as _M_string.capacity();
2699 for ate and app modes, pass the string size to _M_really_sync.
2700 (_M_really_sync): Consistently set _M_out_end and _M_out_lim, to
2701 point to the end of the buffer (i.e., epptr) and to the string end,
2703 * include/std/std_streambuf.h: tweak comments, add _M_out_lim,
2704 which points to the right limit of the used put area.
2705 (_M_out_cur_move): The role of the old _M_out_end is now played
2707 (_M_out_buf_size): Simplify: now (when _M_out_cur) return simply
2708 _M_out_end - _M_out_cur (i.e., pptr), _very_ close to the letter
2710 (basic_streambuf()): Initialize _M_out_lim too.
2711 * testsuite/27_io/filebuf_virtuals.cc (test10): Trivial tweak.
2712 * testsuite/27_io/filebuf_virtuals.cc (test11): Add.
2713 * testsuite/27_io/stringbuf_virtuals.cc (test09): Add.
2715 2003-02-24 Benjamin Kosnik <bkoz@redhat.com>
2717 * testsuite/27_io/ios_base_storage.cc (main): Call
2720 2003-02-21 Jerry Quinn <jlquinn@optonline.net>
2722 * include/bits/locale_facets.tcc (_M_convert_float): Replace
2723 numpunct facet accesses with data from __locale_cache.
2725 2003-02-20 Phil Edwards <pme@gcc.gnu.org>
2727 * docs/html/faq/index.html (3.9): New note, wchar_t on FreeBSD.
2728 * docs/html/faq/index.txt: Regenerate.
2730 2003-02-20 Phil Edwards <pme@gcc.gnu.org>
2732 * config/linker-map.gnu: Also export locking symbols needed for the
2733 generic atomicity.h case.
2735 2003-02-20 Alexandre Oliva <aoliva@redhat.com>
2737 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
2739 * configure: Rebuilt.
2741 2003-02-19 Paolo Carlini <pcarlini@unitus.it>
2743 * include/bits/sstream.tcc (overflow): According to
2744 27.7.1.3, p5, actual output is performed by sputc(c).
2746 2003-02-19 Phil Edwards <pme@gcc.gnu.org>
2749 * include/bits/stl_alloc.h: Remove all traces of assert().
2751 2003-02-18 Paolo Carlini <pcarlini@unitus.it>
2753 * include/std/std_sstream.h (str()): the size of the
2754 current string may be different from the initial one
2755 whenever _M_out_end > _M_out_beg.
2756 * testsuite/27_io/stringbuf_members.cc (test07): Add.
2758 2003-02-18 Paolo Carlini <pcarlini@unitus.it>
2761 * include/bits/stl_alloc.h (__pool_alloc::allocate): Remove assert.
2763 2003-02-17 Benjamin Kosnik <bkoz@redhat.com>
2765 * include/bits/basic_ios.tcc (copyfmt): Copy locale data as well.
2766 * testsuite/27_io/ios_members.cc (test03): New.
2768 2003-02-17 Jerry Quinn <jlquinn@optonline.net>
2770 * include/bits/basic_ios.h (basic_ios::_M_cache_locale): Declare.
2771 (basic_ios::_M_cache_facets): Move into above.
2772 * include/bits/basic_ios.tcc (basic_ios::copyfmt): Rebuild locale
2774 (basic_ios::imbue): Force locale cache to be built.
2775 (basic_ios::_M_init): Create and initialize locale cache.
2776 * include/bits/ios_base.h (__locale_cache_base): Declare.
2777 (ios_base::_M_locale_cache): New.
2778 (ios_base::_M_cache): Define.
2779 * include/bits/locale_facets.h: (__num_base): Fix comment. Add
2781 (__locale_cache_base,__locale_cache<_CharT>): New classes.
2782 (__locale_cache<char>, __locale_cache<wchar_t>): New specializations.
2783 * include/bits/locale_facets.tcc (num_put::_M_convert_int): Use locale
2784 cache literal string, grouping flag, thousands separator.
2785 (__locale_cache<_CharT>::__locale_cache): New.
2786 (__locale_cache<_CharT>::_M_init): New.
2787 * src/ios.cc: Clear _M_locale_cache in constructor.
2788 * src/locale-inst.cc (__locale_cache<char>, __locale_cache<_char_t>):
2791 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
2793 * src/locale-inst.cc: Do not include <cassert>.
2794 * src/locale.cc: Likewise.
2796 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
2799 * include/std/std_fstream.h: Declare underflow and uflow
2800 specializations, change generic definitions to do nothing.
2801 * src/fstream.cc: Add underflow and uflow specializations.
2803 2003-02-17 Paolo Carlini <pcarlini@unitus.it>
2806 * include/bits/fstream.tcc (_M_convert_to_external):
2807 Deal correctly with noconv, as prescribed by 27.8.1.4,p8.
2808 * testsuite/27_io/filebuf_virtuals.cc (test10): Add.
2810 2003-02-13 Benjamin Kosnik <bkoz@redhat.com>
2812 * include/bits/c++config (_GLIBCPP_EXTERN_TEMPLATE): Define.
2813 * include/bits/basic_ios.tcc: Guard use of extern template.
2814 * include/std/std_iomanip.h: Same.
2815 * include/bits/streambuf.tcc: Same.
2816 * include/bits/stl_alloc.h: Same.
2817 * include/bits/locale_facets.tcc: Same.
2818 * include/bits/ostream.tcc: Same.
2819 * include/bits/istream.tcc: Same.
2820 * include/bits/fstream.tcc: Same.
2821 * include/bits/basic_string.tcc: Same.
2823 2003-02-13 Paolo Carlini <pcarlini@unitus.it>
2825 * include/bits/ostream.tcc (sentry::sentry): Improve
2826 performance-wise the fix for libstdc++/9563.
2828 2003-02-12 Phil Edwards <pme@gcc.gnu.org>
2830 * config/cpu/generic/atomicity.h (_Atomic_add_mutex): Fix declaration.
2831 (_GLIBCPP_NEED_GENERIC_MUTEX): Define for this file.
2832 (_Atomic_add_mutex_once, __gthread_atomic_add_mutex_once): Declare
2833 when we don't have static mutex initialization.
2834 (__exchange_and_add): Use _Atomic_add_mutex_once.
2835 * src/misc-inst.cc: Definitions of all the above.
2837 2003-02-12 Paolo Carlini <pcarlini@unitus.it>
2840 * include/bits/ostream.tcc (sentry::sentry): Check
2841 the state of the stream after the preparation.
2842 * testsuite/27_io/ostream_sentry.cc (test02): Add.
2844 2003-02-11 Benjamin Kosnik <bkoz@redhat.com>
2846 * include/Makefile.am (stamp-std-precompile): Add rule.
2847 * include/Makefile.in: Regenerated.
2849 2003-02-11 Jerry Quinn <jlquinn@optonline.net>
2850 Benjamin Kosnik <benjamin@redhat.com>
2852 * include/bits/locale_facets.h (__num_base): Add _S_atoms_out.
2853 Add indexes into this array.
2854 (__num_base::_S_atoms): To _S_atoms_in.
2855 (num_put::_M_insert): Rename to _M_pad.
2856 (num_put::_M_convert_int): Adjust remove __mod, __modl arguments.
2857 (num_put::_M_widen_int): Rename to _M_group_int.
2858 (num_put::_M_widen_float): Rename to _M_group_float.
2859 * include/bits/locale_facets.tcc (__int_to_char): New inline
2860 function and adapter functions.
2861 (num_put::_M_group_int): Streamline.
2862 (num_put::_M_group_float): Streamline.
2863 (num_put::_M_convert_int): Remove unused parameter names. Choose
2864 large enough buffer for text. Use __int_to_char instead of
2865 __convert_from_v. Formatted text is now at the end of the buffer.
2866 (num_put::_M_convert_float): Preliminary fixups.
2867 * src/locale-inst.cc (__convert_from_v<long long>): Add ifdef.
2868 (__int_to_char<unsigned long long>): Same.
2869 (__int_to_char<char, unsigned long>): New.
2870 (__int_to_char<char, unsigned long long>): New.
2871 (__int_to_char<wchar_t, unsigned long>): New.
2872 (__int_to_char<wchar_t, unsigned long long>): New.
2874 2003-02-11 Scott Snyder <snyder@fnal.gov>
2877 * include/bits/fstream.tcc (seekoff): Avoid operator+
2880 2003-02-11 Paolo Carlini <pcarlini@unitus.it>
2883 * include/ext/stdio_filebuf.h
2884 (stdio_filebuf(int, std::ios_base::openmode, bool, int_type),
2885 stdio_filebuf(std::__c_file*, std::ios_base::openmode, int_type)):
2886 Change to take a __size parameter of type size_t, not
2887 of type (template parameter dependent) int_type.
2888 * src/ios.cc (ios_base::Init::_S_ios_create): Change type of
2889 size vars to size_t.
2890 * testsuite/ext/stdio_filebuf.cc: Add.
2892 2003-02-11 Paolo Carlini <pcarlini@unitus.it>
2893 Petur Runolfsson <peturr02@ru.is>
2896 * include/bits/streambuf.tcc (__copy_streambufs):
2897 Don't conditionalize the copy to __testput.
2898 * testsuite/27_io/streambuf_members.cc (test09, test10): Add.
2900 2002-02-11 DJ Delorie <dj@redhat.com>
2902 * acinclude.m4: Check for native targets that can't link at
2903 this point in the build.
2904 * aclocal.m4: Regenerate.
2905 * configure: Regenerate.
2907 2003-02-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2909 * hppa/atomicity.h (__Atomicity_lock<__inst>::_S_atomicity_lock):
2911 (__exchange_and_add, __atomic_add): Use PA 2.0 ordered store to reset
2914 2003-02-07 Paolo Carlini <pcarlini@unitus.it>
2916 * testsuite/27_io/filebuf_virtuals.cc (test08): Fix for
2917 unsigned char platforms.
2919 2003-02-06 Paolo Carlini <pcarlini@unitus.it>
2922 * include/std/std_istream.h
2923 (basic_istream::sentry::operator bool()): Make const.
2924 * include/std/std_ostream.h
2925 (basic_ostream::sentry::operator bool()): Likewise.
2926 * testsuite/27_io/istream_sentry.cc (test03): Add.
2927 * testsuite/27_io/ostream_sentry.cc: Add.
2929 2003-02-06 Paolo Carlini <pcarlini@unitus.it>
2932 Implement resolution of DR 231 (Ready)
2933 * include/bits/locale_facets.h (__num_base::_S_format_float):
2934 Change declaration: return void, remove __prec parameter.
2935 * src/locale.cc (__num_base::_S_format_float): Implement
2936 resolution of DR 231.
2937 * include/bits/locale_facets.tcc (num_put::_M_convert_float):
2938 Tweak uses. Check for negative precision.
2939 * testsuite/22_locale/num_put/put/char/6.cc: Add
2940 * testsuite/22_locale/num_put/put/wchar_t/6.cc: Likewise.
2942 2003-02-06 Peter Soetens <peter.soetens@mech.kuleuven.ac.be>
2944 * config/io/basic_file_libio.h: Fixups.
2945 * config/io/c_io_libio.h: Same.
2946 * libio/Makefile.am: Same.
2947 * libio/Makefile.in: Regenerated.
2949 2003-02-06 Benjamin Kosnik <bkoz@redhat.com>
2951 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc (test01):
2952 Explicitly use the "C" locale.
2953 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc (test01): Same.
2955 2003-02-06 Petur Runolfsson <peturr02@ru.is>
2959 PR libstdc++/9028 (partial)
2965 (codecvt<wchar_t, char, mbstate_t>::do_encoding,
2966 codecvt<wchar_t, char, mbstate_t>::do_length,
2967 codecvt<wchar_t, char, mbstate_t>::do_max_length):
2969 * config/locale/generic/codecvt_members.cc: ...here.
2970 * config/locale/gnu/codecvt_members.cc: ...and here.
2972 * config/locale/generic/codecvt_members.cc,
2973 * config/locale/gnu/codecvt_members.cc
2974 (codecvt<wchar_t, char, mbstate_t>::do_encoding
2975 codecvt<wchar_t, char, mbstate_t>::do_in,
2976 codecvt<wchar_t, char, mbstate_t>::do_length,
2977 codecvt<wchar_t, char, mbstate_t>::do_max_length,
2978 codecvt<wchar_t, char, mbstate_t>::do_out):
2979 New implementation that handles stateless encodings,
2982 * config/locale/generic/codecvt_members.cc,
2983 * config/locale/gnu/codecvt_members.cc,
2984 * config/locale/ieee_1003.1-2001/codecvt_specializations.h,
2985 * include/bits/codecvt.h,
2987 (codecvt::length, codecvt::do_length):
2988 Change type of first argument of length and do_length from
2989 'const state_type&' to 'state_type&' according to DR 75.
2991 * testsuite/22_locale/codecvt/always_noconv/wchar_t/1.cc: Cleanup.
2992 * testsuite/22_locale/codecvt/always_noconv/wchar_t/2.cc: New test.
2993 * testsuite/22_locale/codecvt/always_noconv/wchar_t/3.cc: New test.
2994 * testsuite/22_locale/codecvt/always_noconv/wchar_t/4.cc: New test.
2995 * testsuite/22_locale/codecvt/encoding/wchar_t/1.cc:
2996 Cleanup and check for correct return value from encoding
2998 * testsuite/22_locale/codecvt/encoding/wchar_t/2.cc: New test.
2999 * testsuite/22_locale/codecvt/encoding/wchar_t/3.cc: New test.
3000 * testsuite/22_locale/codecvt/encoding/wchar_t/4.cc: New test.
3001 * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Cleanup.
3002 * testsuite/22_locale/codecvt/in/wchar_t/2.cc: New test.
3003 * testsuite/22_locale/codecvt/in/wchar_t/3.cc: New test.
3004 * testsuite/22_locale/codecvt/in/wchar_t/4.cc: New test.
3005 * testsuite/22_locale/codecvt/in/wchar_t/5.cc: New test.
3006 * testsuite/22_locale/codecvt/in/wchar_t/6.cc: New test.
3007 * testsuite/22_locale/codecvt/in/wchar_t/7.cc: New test.
3008 * testsuite/22_locale/codecvt/in/wchar_t/8.cc: New test.
3009 * testsuite/22_locale/codecvt/in/wchar_t/9.cc: New test.
3010 * testsuite/22_locale/codecvt/length/char/1.cc: Cleanup.
3011 * testsuite/22_locale/codecvt/length/char/2.cc: New test.
3012 * testsuite/22_locale/codecvt/length/wchar_t/1.cc: Cleanup.
3013 * testsuite/22_locale/codecvt/length/wchar_t/2.cc: New test.
3014 * testsuite/22_locale/codecvt/length/wchar_t/3.cc: New test.
3015 * testsuite/22_locale/codecvt/length/wchar_t/4.cc: New test.
3016 * testsuite/22_locale/codecvt/length/wchar_t/5.cc: New test.
3017 * testsuite/22_locale/codecvt/length/wchar_t/6.cc: New test.
3018 * testsuite/22_locale/codecvt/length/wchar_t/7.cc: New test.
3019 * testsuite/22_locale/codecvt/max_length/wchar_t/1.cc: Cleanup.
3020 * testsuite/22_locale/codecvt/max_length/wchar_t/2.cc: New test.
3021 * testsuite/22_locale/codecvt/max_length/wchar_t/3.cc: New test.
3022 * testsuite/22_locale/codecvt/max_length/wchar_t/4.cc: New test.
3023 * testsuite/22_locale/codecvt/out/wchar_t/1.cc: Cleanup.
3024 * testsuite/22_locale/codecvt/out/wchar_t/2.cc: New test.
3025 * testsuite/22_locale/codecvt/out/wchar_t/3.cc: New test.
3026 * testsuite/22_locale/codecvt/out/wchar_t/4.cc: New test.
3027 * testsuite/22_locale/codecvt/out/wchar_t/5.cc: New test.
3028 * testsuite/22_locale/codecvt/out/wchar_t/6.cc: New test.
3029 * testsuite/22_locale/codecvt/out/wchar_t/7.cc: New test.
3030 * testsuite/22_locale/codecvt/unicode/1.cc: New test.
3031 * testsuite/22_locale/codecvt/unshift/wchar_t/1.cc: Cleanup.
3032 * testsuite/22_locale/codecvt/unshift/wchar_t/2.cc: New test.
3033 * testsuite/22_locale/codecvt/unshift/wchar_t/3.cc: New test.
3034 * testsuite/22_locale/codecvt/unshfit/wchar_t/4.cc: New test.
3036 2003-02-05 Benjamin Kosnik <bkoz@redhat.com>
3038 * include/bits/locale_facets.tcc (time_put::do_put): Use __write.
3039 (money_put::do_put): Same.
3041 2003-02-05 Jerry Quinn <jlquinn@optonline.net>
3043 * include/bits/ios_base.h (ios_base): Document reserved storage.
3045 * include/bits/locale_facets.h: (struct __pad): Comment on
3047 (__verify_grouping): Same.
3048 (__add_grouping): Same.
3049 * include/bits/locale_facets.tcc (__verify_grouping): Move
3050 comments to declaration.
3051 (__add_grouping): Same.
3053 * include/bits/locale_facets.tcc:
3054 (__write<_CharT, _OutIter>): New function.
3055 (__write<_CharT>): New function specialization.
3056 (num_put::_M_insert): Remove explicit loop over iterator. Use
3058 (num_put::_M_widen_float): Remove __basefield.
3059 (num_put::_M_widen_int): Move __basefield to within grouping block.
3061 * include/bits/streambuf_iterator.h: Include <streambuf>.
3062 (ostreambuf_iterator::_M_put): Add.
3064 2003-02-05 Paolo Carlini <pcarlini@unitus.it>
3066 * testsuite/26_numerics/valarray_name_lookup.cc: Fix typo.
3068 2003-02-04 Nathan Myers <ncm@cantrip.org>
3070 * testsuite/25_algorithms/min_max.cc (test02): Add.
3072 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
3074 PR libstdc++/9439, PR libstdc++/9425
3075 * config/io/basic_file_stdio.cc
3076 (__basic_file<char>::seekoff, seekpos): Return -1L if
3078 * include/bits/fstream.tcc (basic_filebuf::seekoff):
3079 Check _M_file.seekoff return value; always return
3080 pos_type(off_type(-1)) in case of failure.
3081 (basic_filebuf::pbackfail): Check this->seekoff return
3082 value and return traits_type::eof() in case of failure.
3083 * testsuite/27_io/filebuf_virtuals.cc (test09): Add.
3085 2003-02-04 Jerry Quinn <jlquinn@optonline.net>
3087 * include/std/std_ostream.h (ostream::_M_write): Declare.
3088 * ostream.tcc (ostream::_M_write): Define.
3089 (basic_ostream::write): Use it.
3090 (operator<<(basic_ostream, _CharT)): Ditto.
3091 (operator<<(basic_ostream, char)): Ditto.
3092 (operator<<(basic_ostream, _CharT*)): Ditto.
3093 (operator<<(basic_ostream, char*)): Ditto.
3094 (operator<<(basic_ostream, basic_string)): Ditto.
3096 2003-02-04 Benjamin Kosnik <bkoz@redhat.com>
3098 * testsuite/26_numerics/valarray_name_lookup.cc: Fix.
3100 2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
3102 * docs/html/27_io/howto.html: Link to Dietmar Kuehl's IOStream page,
3103 add HTML comment about updating links if numbering changes.
3105 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
3108 * include/bits/streambuf.tcc (sputbackc): Access
3109 this->gptr()[-1] only if _M_in_beg < _M_in_cur.
3110 * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
3112 2003-02-04 Paolo Carlini <pcarlini@unitus.it>
3115 * include/bits/fstream.tcc (open): If the 'ate' repositioning
3116 operation fails, calls close _and_ returns a null pointer
3117 to indicate failure (27.8.1.3,4).
3118 * testsuite/27_io/filebuf_members.cc (test_06): Add.
3120 2003-02-04 Petur Runolfsson <peturr02@ru.is>
3122 * testsuite/27_io/filebuf_members.cc (test_04): Remove exit(0).
3124 2002-02-04 Jonathan Wakely <redi@gcc.gnu.org>
3126 * docs/html/27_io/howto.html: New section on stdio_filebuf.
3127 * docs/html/ext/howto.html: Move stdio_filebuf notes to 27_io.
3128 * docs/html/documentation.html: Regenerate.
3130 2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
3132 * docs/html/17_intro/porting.texi: Update to GFDL 1.2.
3133 * docs/html/17_intro/porting.html: Regenerate.
3135 2003-02-03 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
3136 Phil Edwards <pme@gcc.gnu.org>
3138 * include/std/std_bitset.h: Replace CHAR_BIT with __CHAR_BIT__, use
3139 numeric_limits for bits-per-word values.
3140 (_Base_bitset::_M_do_count, _Base_bitset<1>::_M_do_count):
3141 Use __builtin_popcountl instead.
3142 (_Base_bitset::_M_do_find_first, _Base_bitset::_M_do_find_next,
3143 _Base_bitset<1>::_M_do_find_first, _Base_bitset<1>::_M_do_find_next):
3144 Use __builtin_ctzl instead.
3145 (_S_bit_count, _S_first_one): Remove.
3146 * config/linker-map.gnu (GLIBCPP_3.4): Remove std::_S_bit_count.
3147 * src/Makefile.am (sources): Remove bitset.cc.
3148 * src/bitset.cc: Delete file.
3149 * src/Makefile.in: Regenerate.
3151 2003-02-03 Phil Edwards <pme@gcc.gnu.org>
3153 PR libstdc++/9527, PR libstdc++/8713
3154 * docs/html/install.html: Mention glibc version requirement.
3155 * docs/html/faq/index.html (3.8): New note, glibc 2.2.5+ is needed
3156 with 3.2.1+ (formatting bugfixes).
3157 * docs/html/faq/index.txt: Regenerate.
3159 2003-02-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
3162 * include/bits/valarray_before.h (_UnBase::operator[]): Apply unary
3165 * include/bits/valarray_before.h (__not_equal_to): Use != instead
3168 * testsuite/26_numerics/valarray_operators.cc: New test.
3170 2003-02-01 Phil Edwards <pme@gcc.gnu.org>
3172 * docs/html/faq/index.html: Correct link to libg++ information.
3173 * docs/html/faq/index.txt: Regenerated.
3175 2003-02-01 Paolo Carlini <pcarlini@unitus.it>
3176 Benjamin Kosnik <bkoz@redhat.com>
3178 Const correctness issue:
3179 http://gcc.gnu.org/ml/libstdc++/2003-01/msg00370.html
3180 * include/bits/locale_classes.h
3181 (locale::_Impl::_M_facets): Change type to const facet**.
3182 (locale::_Impl::_M_install_facet): Change declaration to
3184 (locale::facet::_M_references): Make mutable.
3185 (locale::facet::_M_add_reference): Declare const.
3186 (locale::facet::_M_remove_reference): Likewise.
3187 * include/bits/locale_facets.tcc
3188 (use_facet(const locale&)): Tweak for const facet** _M_facets.
3189 (has_facet(const locale&)): Likewise.
3191 (locale::facet::_M_add_reference): Adjust definition.
3192 (locale::facet::_M_remove_reference): Likewise.
3194 (locale::_Impl::_Impl(const _Impl&, size_t)): Tweak for
3195 const facet** _M_facets.
3196 (locale::_Impl::_Impl(const char*, size_t)): Likewise.
3197 (locale::_Impl::_Impl(facet**, size_t, bool)): Likewise.
3198 (locale::_Impl::_M_install_facet): Adjust definition to take
3199 const facet* and for const facet** _M_facets.
3200 * testsuite/22_locale/locale/cons/8.cc: Add.
3202 2003-01-29 Mark Mitchell <mark@codesourcery.com>
3204 * include/std/std_limits.h (numeric_limits<float>::has_infinity):
3205 Use __FLT_HAS_INIFINITY__ to initialize.
3206 (numeric_limits<float>::has_quiet_NaN): Likewise.
3207 (numeric_limits<double>::has_infinity): Use __DBL_HAS_INIFINITY__
3209 (numeric_limits<double>::has_quiet_NaN): Likewise.
3210 (numeric_limits<long double>::has_infinity): Use
3211 __LDBL_HAS_INIFINITY__ to initialize.
3212 (numeric_limits<long_double>::has_quiet_NaN): Likewise.
3214 2003-01-28 Nathan Sidwell <nathan@codesourcery.com>
3217 * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
3218 with bases which are very ambiguous.
3220 2003-01-28 Danny Smith <dannysmith@users.sourceforge.net>
3222 * src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
3223 @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
3224 * libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
3225 * src/Makefile.in: Regenerate.
3226 * libsupc++/Makefile.in: Regenerate.
3228 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
3230 * acinclude.m4 (glibcpp_toolexeclibdir): Instead of
3231 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
3232 version_specific_libs is enabled.
3233 * aclocal.m4, configure: Rebuilt.
3235 2003-01-24 Nathan Sidwell <nathan@codesourcery.com>
3237 * include/bits/valarray_meta.h: Remove, split into ...
3238 * include/bits/valarray_before.h: ... this, and ...
3239 * include/bits/valarray_after.h: ... this.
3240 * include/std/std_valarray.h: Adjust.
3241 * include/Makefile.am (bits_headers): Adjust.
3242 * include/Makefile.in: Regenerate.
3244 2003-01-24 Andreas Schwab <schwab@suse.de>
3246 * config/linker-map.gnu: Fix for size_t variance.
3248 2003-01-23 Petur Runolfsson <peturr02@ru.is>
3251 * include/std/std_streambuf.h
3252 (basic_streambuf::basic_streambuf,
3253 basic_streambuf::~basic_streambuf,
3254 basic_streambuf::getloc, basic_streambuf::imbue):
3255 Remove _M_buf_locale_init
3256 * include/bits/fstream.tcc (basic_filebuf::imbue): Likewise
3257 * testsuite/27_io/filebuf_virtuals.cc (test08): Add.
3258 * testsuite/27_io/streambuf_members.cc (test08): Add.
3259 * testsuite/27_io/stringbuf_virtuals.cc (test08): Add.
3261 2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
3263 Revert include ordering.
3264 * config/locale/generic/c_locale.h: Add include guards.
3265 * config/locale/gnu/c_locale.h: Same.
3266 * include/bits/locale_classes.h: Remove cctype include.
3267 * include/std/std_iosfwd.h: Add c++locale.h, cctype includes.
3268 * include/std/std_fstream.h: Remove streambuf include.
3269 * include/std/std_sstream.h: Remove streambuf include.
3271 2003-01-23 Benjamin Kosnik <bkoz@redhat.com>
3273 * configure.in (libtool_VERSION): To 6:0:0.
3274 * configure: Regenerated.
3275 * config/linker-map.gnu: Clean.
3277 * src/misc-inst.cc: Remove instantiations.
3279 * include/bits/stl_alloc.h (__malloc_alloc_template):
3281 (__default_alloc_template): To __pool_alloc.
3282 * src/stl-inst.cc: Same.
3283 * include/backward/alloc.h: Update.
3284 * testsuite/ext/allocators.cc: Update.
3286 * src/globals.cc (__gnu_cxx): Remove _GLIBCPP_ASM_SYMVER. Should
3287 really try to remove these if possible.
3288 * src/locale.cc (std): Same.
3290 * testsuite/abi_check.cc (check_version): Add.
3292 2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
3293 Sysoltsev Slawa <Vyatcheslav.Sysoltsev@intel.com>
3294 Mark Mitchell <mark@codesourcery.com>
3297 * include/std/std_fstream.h (basic_filebuf::uflow): Declare.
3298 (basic_filebuf::underflow): Declare.
3301 2003-01-22 Benjamin Kosnik <bkoz@redhat.com>
3303 * include/bits/locale_facets.h: Move non-facet classes requiring
3305 * include/bits/locale_classes.h: New.
3306 * include/bits/Makefile.am (bits_headers_src): Add locale_classes.h.
3307 * include/bits/Makefile.in: Regenerate.
3309 * include/bits/locale_facets.tcc (__convert_from_v): Move to...
3310 * config/locale/gnu/c_locale.h: ...here.
3311 * config/locale/generic/c_locale.h: Same.
3313 * include/bits/locale_facets.tcc: Move declarations to...
3314 * include/bits/locale_facets.h: ...here.
3315 * include/bits/basic_ios.h: Tweak includes accordingly.
3316 * include/std/std_sstream.h: Add streambuf include.
3317 * include/std/std_fstream.h: Ditto.
3318 * include/std/std_locale.h: Add locale_classes.h include.
3319 * include/std/std_iosfwd.h: Tweak.
3320 * src/concept-inst.cc: Add iterator include.
3322 * config/linker-map.gnu: Specify __cxa functions, mark __cxa_dyn_*
3323 bits as unexported in the future.
3325 2003-01-21 Benjamin Kosnik <bkoz@redhat.com>
3327 Reshuffle 22_locale testsuite.
3328 * 22_locale/(codecvt.cc money_get.cc
3329 codecvt_members_char_char.cc money_get_members_char.cc
3330 codecvt_members_unicode_char.cc money_get_members_wchar_t.cc
3331 codecvt_members_unicode_wchar_t.cc moneypunct_byname.cc
3332 codecvt_members_wchar_t_char.cc moneypunct.cc collate_byname.cc
3333 moneypunct_members_char.cc collate.cc moneypunct_members_wchar_t.cc
3334 collate_members_char.cc money_put.cc collate_members_wchar_t.cc
3335 money_put_members_char.cc ctor_copy_dtor.cc
3336 money_put_members_wchar_t.cc ctype.cc num_get.cc ctype_is_char.cc
3337 num_get_members_char.cc ctype_is_wchar_t.cc num_get_members_wchar_t.cc
3338 ctype_members_char.cc numpunct_byname.cc ctype_members_wchar_t.cc
3339 numpunct.cc ctype_narrow_char.cc numpunct_members_char.cc
3340 ctype_narrow_wchar_t.cc numpunct_members_wchar_t.cc ctype_scan_char.cc
3341 num_put.cc ctype_scan_wchar_t.cc num_put_members_char.cc
3342 ctype_to_char.cc num_put_members_wchar_t.cc ctype_to_wchar_t.cc
3343 operators.cc ctype_widen_char.cc static_members.cc
3344 ctype_widen_wchar_t.cc time_get.cc facet.cc time_get_members_char.cc
3345 global_templates.cc time_get_members_wchar_t.cc, members.cc,
3346 time_put.cc, messages_byname.cc, time_put_members_char.cc,
3347 messages.cc, time_put_members_wchar_t.cc, messages_members_char.cc):
3348 Split up into individual test cases...
3349 * 22_locale/codecvt/1.cc: New.
3350 * 22_locale/codecvt/2.cc: New.
3351 * 22_locale/codecvt/always_noconv/char/1.cc: New.
3352 * 22_locale/codecvt/always_noconv/char/wrapped_env.cc: New.
3353 * 22_locale/codecvt/always_noconv/char/wrapped_locale.cc: New.
3354 * 22_locale/codecvt/always_noconv/wchar_t/1.cc: New.
3355 * 22_locale/codecvt/always_noconv/wchar_t/wrapped_env.cc: New.
3356 * 22_locale/codecvt/always_noconv/wchar_t/wrapped_locale.cc: New.
3357 * 22_locale/codecvt/encoding/char/1.cc: New.
3358 * 22_locale/codecvt/encoding/char/wrapped_env.cc: New.
3359 * 22_locale/codecvt/encoding/char/wrapped_locale.cc: New.
3360 * 22_locale/codecvt/encoding/wchar_t/1.cc: New.
3361 * 22_locale/codecvt/encoding/wchar_t/wrapped_env.cc: New.
3362 * 22_locale/codecvt/encoding/wchar_t/wrapped_locale.cc: New.
3363 * 22_locale/codecvt/in/char/1.cc: New.
3364 * 22_locale/codecvt/in/char/wrapped_env.cc: New.
3365 * 22_locale/codecvt/in/char/wrapped_locale.cc: New.
3366 * 22_locale/codecvt/in/wchar_t/1.cc: New.
3367 * 22_locale/codecvt/in/wchar_t/wrapped_env.cc: New.
3368 * 22_locale/codecvt/in/wchar_t/wrapped_locale.cc: New.
3369 * 22_locale/codecvt/length/char/1.cc: New.
3370 * 22_locale/codecvt/length/char/wrapped_env.cc: New.
3371 * 22_locale/codecvt/length/char/wrapped_locale.cc: New.
3372 * 22_locale/codecvt/length/wchar_t/1.cc: New.
3373 * 22_locale/codecvt/length/wchar_t/wrapped_env.cc: New.
3374 * 22_locale/codecvt/length/wchar_t/wrapped_locale.cc: New.
3375 * 22_locale/codecvt/max_length/char/1.cc: New.
3376 * 22_locale/codecvt/max_length/char/wrapped_env.cc: New.
3377 * 22_locale/codecvt/max_length/char/wrapped_locale.cc: New.
3378 * 22_locale/codecvt/max_length/wchar_t/1.cc: New.
3379 * 22_locale/codecvt/max_length/wchar_t/wrapped_env.cc: New.
3380 * 22_locale/codecvt/max_length/wchar_t/wrapped_locale.cc: New.
3381 * 22_locale/codecvt/out/char/1.cc: New.
3382 * 22_locale/codecvt/out/char/wrapped_env.cc: New.
3383 * 22_locale/codecvt/out/char/wrapped_locale.cc: New.
3384 * 22_locale/codecvt/out/wchar_t/1.cc: New.
3385 * 22_locale/codecvt/out/wchar_t/wrapped_env.cc: New.
3386 * 22_locale/codecvt/out/wchar_t/wrapped_locale.cc: New.
3387 * 22_locale/codecvt/unicode/char.cc: New.
3388 * 22_locale/codecvt/unicode/wchar_t.cc: New.
3389 * 22_locale/codecvt/unshift/char/1.cc: New.
3390 * 22_locale/codecvt/unshift/char/wrapped_env.cc: New.
3391 * 22_locale/codecvt/unshift/char/wrapped_locale.cc: New.
3392 * 22_locale/codecvt/unshift/wchar_t/1.cc: New.
3393 * 22_locale/codecvt/unshift/wchar_t/wrapped_env.cc: New.
3394 * 22_locale/codecvt/unshift/wchar_t/wrapped_locale.cc: New.
3395 * 22_locale/collate/1.cc: New.
3396 * 22_locale/collate/2.cc: New.
3397 * 22_locale/collate/compare/char/1.cc: New.
3398 * 22_locale/collate/compare/char/2.cc: New.
3399 * 22_locale/collate/compare/char/wrapped_env.cc: New.
3400 * 22_locale/collate/compare/char/wrapped_locale.cc: New.
3401 * 22_locale/collate/compare/wchar_t/1.cc: New.
3402 * 22_locale/collate/compare/wchar_t/2.cc: New.
3403 * 22_locale/collate/compare/wchar_t/wrapped_env.cc: New.
3404 * 22_locale/collate/compare/wchar_t/wrapped_locale.cc: New.
3405 * 22_locale/collate/hash/char/1.cc: New.
3406 * 22_locale/collate/hash/char/2.cc: New.
3407 * 22_locale/collate/hash/char/wrapped_env.cc: New.
3408 * 22_locale/collate/hash/char/wrapped_locale.cc: New.
3409 * 22_locale/collate/hash/wchar_t/1.cc: New.
3410 * 22_locale/collate/hash/wchar_t/2.cc: New.
3411 * 22_locale/collate/hash/wchar_t/wrapped_env.cc: New.
3412 * 22_locale/collate/hash/wchar_t/wrapped_locale.cc: New.
3413 * 22_locale/collate/transform/char/2.cc: New.
3414 * 22_locale/collate/transform/char/wrapped_env.cc: New.
3415 * 22_locale/collate/transform/char/wrapped_locale.cc: New.
3416 * 22_locale/collate/transform/wchar_t/2.cc: New.
3417 * 22_locale/collate/transform/wchar_t/wrapped_env.cc: New.
3418 * 22_locale/collate/transform/wchar_t/wrapped_locale.cc: New.
3419 * 22_locale/collate_byname/1.cc: New.
3420 * 22_locale/ctype/1.cc: New.
3421 * 22_locale/ctype/2.cc: New.
3422 * 22_locale/ctype/cons/char/1.cc: New.
3423 * 22_locale/ctype/cons/char/wrapped_env.cc: New.
3424 * 22_locale/ctype/cons/char/wrapped_locale.cc: New.
3425 * 22_locale/ctype/is/char/1.cc: New.
3426 * 22_locale/ctype/is/char/2.cc: New.
3427 * 22_locale/ctype/is/char/3.cc: New.
3428 * 22_locale/ctype/is/char/wrapped_env.cc: New.
3429 * 22_locale/ctype/is/char/wrapped_locale.cc: New.
3430 * 22_locale/ctype/is/wchar_t/1.cc: New.
3431 * 22_locale/ctype/is/wchar_t/2.cc: New.
3432 * 22_locale/ctype/is/wchar_t/wrapped_env.cc: New.
3433 * 22_locale/ctype/is/wchar_t/wrapped_locale.cc: New.
3434 * 22_locale/ctype/narrow/char/1.cc: New.
3435 * 22_locale/ctype/narrow/char/2.cc: New.
3436 * 22_locale/ctype/narrow/char/wrapped_env.cc: New.
3437 * 22_locale/ctype/narrow/char/wrapped_locale.cc: New.
3438 * 22_locale/ctype/narrow/wchar_t/1.cc: New.
3439 * 22_locale/ctype/narrow/wchar_t/2.cc: New.
3440 * 22_locale/ctype/narrow/wchar_t/wrapped_env.cc: New.
3441 * 22_locale/ctype/narrow/wchar_t/wrapped_locale.cc: New.
3442 * 22_locale/ctype/scan/char/1.cc: New.
3443 * 22_locale/ctype/scan/char/wrapped_env.cc: New.
3444 * 22_locale/ctype/scan/char/wrapped_locale.cc: New.
3445 * 22_locale/ctype/scan/wchar_t/1.cc: New.
3446 * 22_locale/ctype/scan/wchar_t/wrapped_env.cc: New.
3447 * 22_locale/ctype/scan/wchar_t/wrapped_locale.cc: New.
3448 * 22_locale/ctype/to/char/1.cc: New.
3449 * 22_locale/ctype/to/char/wrapped_env.cc: New.
3450 * 22_locale/ctype/to/char/wrapped_locale.cc: New.
3451 * 22_locale/ctype/to/wchar_t/1.cc: New.
3452 * 22_locale/ctype/to/wchar_t/wrapped_env.cc: New.
3453 * 22_locale/ctype/to/wchar_t/wrapped_locale.cc: New.
3454 * 22_locale/ctype/widen/char/1.cc: New.
3455 * 22_locale/ctype/widen/char/wrapped_env.cc: New.
3456 * 22_locale/ctype/widen/char/wrapped_locale.cc: New.
3457 * 22_locale/ctype/widen/wchar_t/1.cc: New.
3458 * 22_locale/ctype/widen/wchar_t/wrapped_env.cc: New.
3459 * 22_locale/ctype/widen/wchar_t/wrapped_locale.cc: New.
3460 * 22_locale/facet/1.cc: New.
3461 * 22_locale/facet/2.cc: New.
3462 * 22_locale/global_templates/1.cc: New.
3463 * 22_locale/locale/cons/1.cc: New.
3464 * 22_locale/locale/cons/2.cc: New.
3465 * 22_locale/locale/cons/3.cc: New.
3466 * 22_locale/locale/cons/4.cc: New.
3467 * 22_locale/locale/cons/5.cc: New.
3468 * 22_locale/locale/cons/6.cc: New.
3469 * 22_locale/locale/cons/7.cc: New.
3470 * 22_locale/locale/global_locale_objects/1.cc: New.
3471 * 22_locale/locale/global_locale_objects/2.cc: New.
3472 * 22_locale/locale/global_locale_objects/3.cc: New.
3473 * 22_locale/locale/operations/1.cc: New.
3474 * 22_locale/locale/operations/2.cc: New.
3475 * 22_locale/messages/1.cc: New.
3476 * 22_locale/messages/2.cc: New.
3477 * 22_locale/messages/members/char/1.cc: New.
3478 * 22_locale/messages/members/char/2.cc: New.
3479 * 22_locale/messages/members/char/3.cc: New.
3480 * 22_locale/messages/members/char/wrapped_env.cc: New.
3481 * 22_locale/messages/members/char/wrapped_locale.cc: New.
3482 * 22_locale/messages_byname/1.cc: New.
3483 * 22_locale/money_get/1.cc: New.
3484 * 22_locale/money_get/2.cc: New.
3485 * 22_locale/money_get/get/char/1.cc: New.
3486 * 22_locale/money_get/get/char/2.cc: New.
3487 * 22_locale/money_get/get/char/3.cc: New.
3488 * 22_locale/money_get/get/char/4.cc: New.
3489 * 22_locale/money_get/get/char/5.cc: New.
3490 * 22_locale/money_get/get/char/6.cc: New.
3491 * 22_locale/money_get/get/char/7.cc: New.
3492 * 22_locale/money_get/get/char/8.cc: New.
3493 * 22_locale/money_get/get/char/wrapped_env.cc: New.
3494 * 22_locale/money_get/get/char/wrapped_locale.cc: New.
3495 * 22_locale/money_get/get/wchar_t/1.cc: New.
3496 * 22_locale/money_get/get/wchar_t/2.cc: New.
3497 * 22_locale/money_get/get/wchar_t/3.cc: New.
3498 * 22_locale/money_get/get/wchar_t/4.cc: New.
3499 * 22_locale/money_get/get/wchar_t/5.cc: New.
3500 * 22_locale/money_get/get/wchar_t/6.cc: New.
3501 * 22_locale/money_get/get/wchar_t/7.cc: New.
3502 * 22_locale/money_get/get/wchar_t/8.cc: New.
3503 * 22_locale/money_get/get/wchar_t/wrapped_env.cc: New.
3504 * 22_locale/money_get/get/wchar_t/wrapped_locale.cc: New.
3505 * 22_locale/money_put/1.cc: New.
3506 * 22_locale/money_put/2.cc: New.
3507 * 22_locale/money_put/put/char/1.cc: New.
3508 * 22_locale/money_put/put/char/2.cc: New.
3509 * 22_locale/money_put/put/char/3.cc: New.
3510 * 22_locale/money_put/put/char/4.cc: New.
3511 * 22_locale/money_put/put/char/5.cc: New.
3512 * 22_locale/money_put/put/char/6.cc: New.
3513 * 22_locale/money_put/put/char/wrapped_env.cc: New.
3514 * 22_locale/money_put/put/char/wrapped_locale.cc: New.
3515 * 22_locale/money_put/put/wchar_t/1.cc: New.
3516 * 22_locale/money_put/put/wchar_t/2.cc: New.
3517 * 22_locale/money_put/put/wchar_t/3.cc: New.
3518 * 22_locale/money_put/put/wchar_t/4.cc: New.
3519 * 22_locale/money_put/put/wchar_t/5.cc: New.
3520 * 22_locale/money_put/put/wchar_t/6.cc: New.
3521 * 22_locale/money_put/put/wchar_t/wrapped_env.cc: New.
3522 * 22_locale/money_put/put/wchar_t/wrapped_locale.cc: New.
3523 * 22_locale/moneypunct/1.cc: New.
3524 * 22_locale/moneypunct/2.cc: New.
3525 * 22_locale/moneypunct/3.cc: New.
3526 * 22_locale/moneypunct/members/char/1.cc: New.
3527 * 22_locale/moneypunct/members/char/2.cc: New.
3528 * 22_locale/moneypunct/members/char/wrapped_env.cc: New.
3529 * 22_locale/moneypunct/members/char/wrapped_locale.cc: New.
3530 * 22_locale/moneypunct/members/wchar_t/1.cc: New.
3531 * 22_locale/moneypunct/members/wchar_t/2.cc: New.
3532 * 22_locale/moneypunct/members/wchar_t/wrapped_env.cc: New.
3533 * 22_locale/moneypunct/members/wchar_t/wrapped_locale.cc: New.
3534 * 22_locale/moneypunct_byname/1.cc: New.
3535 * 22_locale/num_get/1.cc: New.
3536 * 22_locale/num_get/2.cc: New.
3537 * 22_locale/num_get/get/char/1.cc: New.
3538 * 22_locale/num_get/get/char/2.cc: New.
3539 * 22_locale/num_get/get/char/3.cc: New.
3540 * 22_locale/num_get/get/char/4.cc: New.
3541 * 22_locale/num_get/get/char/5.cc: New.
3542 * 22_locale/num_get/get/char/6.cc: New.
3543 * 22_locale/num_get/get/char/wrapped_env.cc: New.
3544 * 22_locale/num_get/get/char/wrapped_locale.cc: New.
3545 * 22_locale/num_get/get/wchar_t/1.cc: New.
3546 * 22_locale/num_get/get/wchar_t/2.cc: New.
3547 * 22_locale/num_get/get/wchar_t/3.cc: New.
3548 * 22_locale/num_get/get/wchar_t/4.cc: New.
3549 * 22_locale/num_get/get/wchar_t/5.cc: New.
3550 * 22_locale/num_get/get/wchar_t/6.cc: New.
3551 * 22_locale/num_get/get/wchar_t/wrapped_env.cc: New.
3552 * 22_locale/num_get/get/wchar_t/wrapped_locale.cc: New.
3553 * 22_locale/num_put/1.cc: New.
3554 * 22_locale/num_put/2.cc: New.
3555 * 22_locale/num_put/put/char/1.cc: New.
3556 * 22_locale/num_put/put/char/2.cc: New.
3557 * 22_locale/num_put/put/char/3.cc: New.
3558 * 22_locale/num_put/put/char/4.cc: New.
3559 * 22_locale/num_put/put/char/5.cc: New.
3560 * 22_locale/num_put/put/char/wrapped_env.cc: New.
3561 * 22_locale/num_put/put/char/wrapped_locale.cc: New.
3562 * 22_locale/num_put/put/wchar_t/1.cc: New.
3563 * 22_locale/num_put/put/wchar_t/2.cc: New.
3564 * 22_locale/num_put/put/wchar_t/3.cc: New.
3565 * 22_locale/num_put/put/wchar_t/4.cc: New.
3566 * 22_locale/num_put/put/wchar_t/5.cc: New.
3567 * 22_locale/num_put/put/wchar_t/wrapped_env.cc: New.
3568 * 22_locale/num_put/put/wchar_t/wrapped_locale.cc: New.
3569 * 22_locale/numpunct/1.cc: New.
3570 * 22_locale/numpunct/2.cc: New.
3571 * 22_locale/numpunct/members/char/1.cc: New.
3572 * 22_locale/numpunct/members/char/2.cc: New.
3573 * 22_locale/numpunct/members/char/wrapped_env.cc: New.
3574 * 22_locale/numpunct/members/char/wrapped_locale.cc: New.
3575 * 22_locale/numpunct/members/wchar_t/1.cc: New.
3576 * 22_locale/numpunct/members/wchar_t/2.cc: New.
3577 * 22_locale/numpunct/members/wchar_t/wrapped_env.cc: New.
3578 * 22_locale/numpunct/members/wchar_t/wrapped_locale.cc: New.
3579 * 22_locale/numpunct_byname/1.cc: New.
3580 * 22_locale/numpunct_byname/2.cc: New.
3581 * 22_locale/time_get/1.cc: New.
3582 * 22_locale/time_get/2.cc: New.
3583 * 22_locale/time_get/date_order/char/1.cc: New.
3584 * 22_locale/time_get/date_order/char/wrapped_env.cc: New.
3585 * 22_locale/time_get/date_order/char/wrapped_locale.cc: New.
3586 * 22_locale/time_get/date_order/wchar_t/1.cc: New.
3587 * 22_locale/time_get/date_order/wchar_t/wrapped_env.cc: New.
3588 * 22_locale/time_get/date_order/wchar_t/wrapped_locale.cc: New.
3589 * 22_locale/time_get/get_date/char/1.cc: New.
3590 * 22_locale/time_get/get_date/char/2.cc: New.
3591 * 22_locale/time_get/get_date/char/3.cc: New.
3592 * 22_locale/time_get/get_date/char/wrapped_env.cc: New.
3593 * 22_locale/time_get/get_date/char/wrapped_locale.cc: New.
3594 * 22_locale/time_get/get_date/wchar_t/1.cc: New.
3595 * 22_locale/time_get/get_date/wchar_t/2.cc: New.
3596 * 22_locale/time_get/get_date/wchar_t/3.cc: New.
3597 * 22_locale/time_get/get_date/wchar_t/wrapped_env.cc: New.
3598 * 22_locale/time_get/get_date/wchar_t/wrapped_locale.cc: New.
3599 * 22_locale/time_get/get_monthname/char/1.cc: New.
3600 * 22_locale/time_get/get_monthname/char/2.cc: New.
3601 * 22_locale/time_get/get_monthname/char/3.cc: New.
3602 * 22_locale/time_get/get_monthname/char/wrapped_env.cc: New.
3603 * 22_locale/time_get/get_monthname/char/wrapped_locale.cc: New.
3604 * 22_locale/time_get/get_monthname/wchar_t/1.cc: New.
3605 * 22_locale/time_get/get_monthname/wchar_t/2.cc: New.
3606 * 22_locale/time_get/get_monthname/wchar_t/3.cc: New.
3607 * 22_locale/time_get/get_monthname/wchar_t/wrapped_env.cc: New.
3608 * 22_locale/time_get/get_monthname/wchar_t/wrapped_locale.cc: New.
3609 * 22_locale/time_get/get_time/char/1.cc: New.
3610 * 22_locale/time_get/get_time/char/2.cc: New.
3611 * 22_locale/time_get/get_time/char/3.cc: New.
3612 * 22_locale/time_get/get_time/char/wrapped_env.cc: New.
3613 * 22_locale/time_get/get_time/char/wrapped_locale.cc: New.
3614 * 22_locale/time_get/get_time/wchar_t/1.cc: New.
3615 * 22_locale/time_get/get_time/wchar_t/2.cc: New.
3616 * 22_locale/time_get/get_time/wchar_t/3.cc: New.
3617 * 22_locale/time_get/get_time/wchar_t/wrapped_env.cc: New.
3618 * 22_locale/time_get/get_time/wchar_t/wrapped_locale.cc: New.
3619 * 22_locale/time_get/get_weekday/char/1.cc: New.
3620 * 22_locale/time_get/get_weekday/char/2.cc: New.
3621 * 22_locale/time_get/get_weekday/char/3.cc: New.
3622 * 22_locale/time_get/get_weekday/char/wrapped_env.cc: New.
3623 * 22_locale/time_get/get_weekday/char/wrapped_locale.cc: New.
3624 * 22_locale/time_get/get_weekday/wchar_t/1.cc: New.
3625 * 22_locale/time_get/get_weekday/wchar_t/2.cc: New.
3626 * 22_locale/time_get/get_weekday/wchar_t/3.cc: New.
3627 * 22_locale/time_get/get_weekday/wchar_t/wrapped_env.cc: New.
3628 * 22_locale/time_get/get_weekday/wchar_t/wrapped_locale.cc: New.
3629 * 22_locale/time_get/get_year/char/1.cc: New.
3630 * 22_locale/time_get/get_year/char/3.cc: New.
3631 * 22_locale/time_get/get_year/char/wrapped_env.cc: New.
3632 * 22_locale/time_get/get_year/char/wrapped_locale.cc: New.
3633 * 22_locale/time_get/get_year/wchar_t/1.cc: New.
3634 * 22_locale/time_get/get_year/wchar_t/3.cc: New.
3635 * 22_locale/time_get/get_year/wchar_t/wrapped_env.cc: New.
3636 * 22_locale/time_get/get_year/wchar_t/wrapped_locale.cc: New.
3637 * 22_locale/time_put/1.cc: New.
3638 * 22_locale/time_put/2.cc: New.
3639 * 22_locale/time_put/put/char/1.cc: New.
3640 * 22_locale/time_put/put/char/10.cc: New.
3641 * 22_locale/time_put/put/char/2.cc: New.
3642 * 22_locale/time_put/put/char/3.cc: New.
3643 * 22_locale/time_put/put/char/4.cc: New.
3644 * 22_locale/time_put/put/char/5.cc: New.
3645 * 22_locale/time_put/put/char/6.cc: New.
3646 * 22_locale/time_put/put/char/7.cc: New.
3647 * 22_locale/time_put/put/char/8.cc: New.
3648 * 22_locale/time_put/put/char/9.cc: New.
3649 * 22_locale/time_put/put/char/wrapped_env.cc: New.
3650 * 22_locale/time_put/put/char/wrapped_locale.cc: New.
3651 * 22_locale/time_put/put/wchar_t/1.cc: New.
3652 * 22_locale/time_put/put/wchar_t/10.cc: New.
3653 * 22_locale/time_put/put/wchar_t/2.cc: New.
3654 * 22_locale/time_put/put/wchar_t/3.cc: New.
3655 * 22_locale/time_put/put/wchar_t/4.cc: New.
3656 * 22_locale/time_put/put/wchar_t/5.cc: New.
3657 * 22_locale/time_put/put/wchar_t/6.cc: New.
3658 * 22_locale/time_put/put/wchar_t/7.cc: New.
3659 * 22_locale/time_put/put/wchar_t/8.cc: New.
3660 * 22_locale/time_put/put/wchar_t/9.cc: New.
3661 * 22_locale/time_put/put/wchar_t/wrapped_env.cc: New.
3662 * 22_locale/time_put/put/wchar_t/wrapped_locale.cc: New.
3664 2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com>
3666 * config/locale/generic/messages_members.h
3667 (messages_byname<_CharT>::messages_byname): Use this-> to refer to
3668 unqualified members of base clasess.
3670 2003-01-16 Mark Mitchell <mark@codesourcery.com>
3671 Jeffrey Oldham <oldham@codesourcery.com>
3673 * config/locale/gnu/messages_members.h: Use this-> to refer to
3674 unqualified members of base clasess.
3675 * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise.
3676 * include/bits/codecvt.h: Likewise.
3677 * include/bits/deque.tcc: Likewise.
3678 * include/bits/fstream.tcc: Likewise.
3679 * include/bits/istream.tcc: Likewise.
3680 * include/bits/list.tcc: Likewise.
3681 * include/bits/locale_facets.h: Likewise.
3682 * include/bits/ostream.tcc: Likewise.
3683 * include/bits/sstream.tcc: Likewise.
3684 * include/bits/stl_bvector.h: Likewise.
3685 * include/bits/stl_deque.h: Likewise.
3686 * include/bits/stl_list.h: Likewise.
3687 * include/bits/stl_tree.h: Likewise.
3688 * include/bits/stl_vector.h: Likewise.
3689 * include/bits/vector.tcc: Likewise.
3690 * include/ext/ropeimpl.h: Likewise.
3691 * include/ext/stdio_filebuf.h: Likewise.
3692 * include/ext/stl_rope.h: Likewise.
3693 * include/std/std_fstream.h: Likewise.
3694 * include/std/std_sstream.h: Likewise.
3696 2003-01-15 Phil Edwards <pme@gcc.gnu.org>
3698 * include/bits/basic_string.tcc (_S_string_copy): Unused, remove.
3700 2003-01-15 Benjamin Kosnik <bkoz@redhat.com>
3702 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Substitute
3703 GLIBCPP_TEST_WCHAR_T if building wchar_t bits in the library.
3704 * aclocal.m4: Regenerate.
3705 * configure: Regenerate.
3706 * testsuite/Makefile.am (all-local): Add conditional rule to
3707 generate testsuite_wchar_t.
3708 * testsuite/Makefile.in: Regenerate.
3709 * testsuite/lib/libstdc++-v3-dg.exp
3710 (libstdc++-v3-list-sourcefiles): Remove wchar_t files if
3711 testsuite_wchar_t is not present in the build directory.
3712 * testsuite/libstdc++-v3.dg/dg.exp: Add -g -O2 to DEFAULT_CXXFLAGS.
3713 Remove setulimit bits.
3714 * testsuite/26_numerics/complex_value.cc: Set to noopts.
3715 * testsuite/Makefile.am (CLEANFILES): Add.
3716 * testsuite/Makefile.in: Regenerate.
3718 2003-01-15 John David Anglin <dave@hiauly1.hia.nrc.ca>
3720 * config/os/hpux/os_defines.h (_GLIBCPP_GTHREAD_USE_WEAK): Define for
3723 2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com>
3725 Further conform g++'s __vmi_class_type_info to the C++ ABI
3727 * libsupc++/cxxabi.h
3728 (__vmi_class_type_info::__flags_masks): Remove enumerations not
3729 required by the specification.
3731 2003-01-12 Benjamin Kosnik <bkoz@redhat.com>
3733 Renames, namespaces for testsuite utilities.
3734 * testsuite/testsuite_hooks.h: Put into namespace __gnu_cxx_test.
3735 (gnu_allocator_tracker): Rename to allocation_tracker.
3736 (gnu_new_allocator): Rename to tracker_alloc.
3737 (__set_testsuite_memlimit): Rename to set_memory_limits.
3738 (gnu_assignment_operator): Rename to assignment_operator.
3739 (gnu_destructor): Rename to destructor.
3740 (gnu_copy_tracker): Rename to copy_tracker.
3741 (gnu_char, gnu_int, gnu_long): Rename to pod_char, pod_int, pod_long.
3742 (run_tests_wrapped_locale): New.
3743 (run_tests_wrapped_env): New.
3744 * testsuite/testsuite_hooks.cc: Same.
3745 (class locale_data): Add.
3746 (class enviornment_variable): Add.
3747 (class not_found): Add.
3748 * testsuite/testsuite_allocator.h: Same.
3749 * testsuite/testsuite_allocator.cc: Same.
3750 * testsuite/23_containers/deque_ctor.cc
3751 (test_copy_ctor_exception_safety): Change gnu_allocator_tracker to
3753 Change gnu_new_allocator to tracker_alloc.
3754 Change gnu_counting_struct to counter.
3755 Change gnu_copy_tracker to copy_tracker.
3756 Change gnu_copy_constructor to copy_constructor.
3757 Change gnu_assignment_operator to assignment_operator.
3759 * testsuite/23_containers/vector_capacity.cc: Same.
3760 * testsuite/23_containers/vector_ctor.cc (test01): Same.
3761 * testsuite/23_containers/list_modifiers.cc: Change
3762 gnu_copy_tracker to copy_tracker.
3763 * testsuite/21_strings/ctor_copy_dtor.cc (main): Change
3764 __set_testsuite_memlimit to set_memory_limits.
3765 * testsuite/21_strings/insert.cc (main): Same.
3766 * testsuite/27_io/filebuf.cc: Change gnu_char to pod_char.
3767 * testsuite/27_io/stringstream.cc: Same.
3768 * testsuite/27_io/stringbuf.cc: Same.
3769 * testsuite/27_io/streambuf.cc: Same.
3770 * testsuite/27_io/ostream.cc: Same.
3771 * testsuite/27_io/istream.cc: Same.
3772 * testsuite/27_io/fstream.cc: Same.
3773 * testsuite/lib/libstdc++-v3-dg.exp
3774 (libstdc++-v3-list-sourcefiles): Additionally handle files two and
3775 three levels deeper in glob patterns.
3777 2003-01-11 Phil Edwards <pme@gcc.gnu.org>
3779 * docs/doxygen/tables.html: Finished now.
3780 * docs/doxygen/user.cfg.in: Update to latest version of Doxygen.
3781 * include/bits/basic_ios.h (basic_ios::rdbuf): Add example to
3784 * include/bits/deque.tcc, include/bits/stl_alloc.h,
3785 include/bits/stl_deque.h, include/bits/stl_list.h,
3786 include/bits/stl_vector.h: Remove _GLIBCPP_DEPRECATED bits scheduled
3789 2003-01-09 Benjamin Kosnik <bkoz@redhat.com>
3791 * configure.in: Revert.
3792 * configure: Regenerate.
3794 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
3796 * include/Makefile.am (install-data-local): Prepend
3797 $(DESTDIR) to destination paths in all (un)installation
3798 commands. Use ${c_base_builddir} and ${std_builddir}
3799 as destination subdirectories to achieve consistency with
3800 preceding mkinstalldirs commands. No effect because both
3801 variables contain "." only.
3802 * include/Makefile.in: Regenerate.
3804 2003-01-08 Benjamin Kosnik <bkoz@redhat.com>
3806 * include/Makefile.am (stamp-*): Add checks for existing stamps.
3807 * include/Makefile.in: Regenerate.
3809 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Correct comment.
3810 * aclocal.m4: Regenerate.
3812 * configure.in: Don't add new multi-do rules every time the
3813 directory is reconfigured.
3814 * configure: Regenerate.
3816 2003-01-08 Brad Spencer <spencer@infointeractive.com>
3817 Nathan Myers <ncm@cantrip.org>
3819 * src/Makefile.am (stamp-debug): Clean.
3820 * src/Makefile.in: Regenerate.
3822 2003-01-07 Benjamin Kosnik <bkoz@redhat.com>
3825 * Makefile.am (distclean-multi): Fix.
3826 * Makefile.in: Regenerate.
3828 2003-01-06 Benjamin Kosnik <bkoz@redhat.com>
3830 * include/bits/locale_facets.h (messages): Move ctor, dtor
3832 (__timepunct): Same.
3833 * config/locale/gnu/messages_members.h (messages): Add dtor, ctor
3834 definitions. Conditionalize for GNU systems.
3835 * config/locale/generic/messages_members.h (messages): Add dtor, ctor
3837 * config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
3838 definitions. Conditionalize for GNU systems.
3839 * config/locale/generic/time_members.h (messages): New. Add dtor, ctor
3841 * include/bits/localefwd.h (locale::facet::_S_c_name): Add.
3842 * src/locale.cc: Define.
3843 * src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
3845 * config/locale/gnu/time_members.h: Use it.
3846 * config/locale/gnu/messages_members.h: Use it.
3847 * config/linker-map.gnu: Add locale::facets details.
3848 * include/Makefile.am (target_headers_extra): Add time_members.h.
3849 * include/Makefile.in: Regenerate.
3850 * acinclude.m4: Export CTIME_H.
3851 * aclocal.m4: Regenerate.
3852 * configure: Regnerate.
3854 2003-01-06 Paolo Carlini <pcarlini@unitus.it>
3857 (codecvt<char, char, mbstate_t>::do_in, do_out):
3858 Tweak parameters to avoid unused parameter warnings.
3860 2003-01-06 Paolo Carlini <pcarlini@unitus.it>
3863 * include/bits/locale_facets.cc (num_put::_M_convert_float):
3864 Limit __prec to digits10 + 2, not digits10 + 1, taking into
3865 account the possibility of %{g,G} conversion specifiers
3866 inside _S_format_float.
3867 * testsuite/27_io/ostream_inserter_arith.cc (test06): Add.
3869 2003-01-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3871 * testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init,
3872 libstdc++-v3-list-sourcefiles): Additionally handle files one
3873 level deeper in glob patterns.
3875 * testsuite/27_io/istream_extractor_arith.cc: Delete, split...
3876 * testsuite/27_io/istream_extractor_arith/01.cc,
3877 testsuite/27_io/istream_extractor_arith/02.cc,
3878 testsuite/27_io/istream_extractor_arith/03.cc,
3879 testsuite/27_io/istream_extractor_arith/06.cc,
3880 testsuite/27_io/istream_extractor_arith/07.cc,
3881 testsuite/27_io/istream_extractor_arith/08.cc,
3882 testsuite/27_io/istream_extractor_arith/09.cc,
3883 testsuite/27_io/istream_extractor_arith/10.cc,
3884 testsuite/27_io/istream_extractor_arith/11.cc,
3885 testsuite/27_io/istream_extractor_arith/12.cc,
3886 testsuite/27_io/istream_extractor_arith/13.cc: ... to new files.
3887 * testsuite/27_io/istream_extractor_arith/12.cc: Add XFAIL for
3890 2003-01-05 Paolo Carlini <pcarlini@unitus.it>
3894 (codecvt<char, char, mbstate_t>::do_in, do_out):
3895 Implement the resolution of DR19 (TC).
3896 * testsuite/22_locale/codecvt_members_char_char.cc
3899 2003-01-02 Jason Merrill <jason@redhat.com>
3901 * config/cpu/i486/atomicity.h (__exchange_and_add, __atomic_add):
3902 *__mem is also an output.
3903 * config/cpu/m68k/atomicity.h (__exchange_and_add): Likewise.