1 2000-11-18 Mark Mitchell <mark@codesourcery.com>
3 * libsupc++/exception_support.h: New header file.
4 * libsupc++/vec.cc: Include it.
5 (__cxa_vec_new2): Recatch exceptions before rethrows.
6 (__cxa_vec_new3): Likewise.
7 (__cxa_vec_ctor): Likewise.
8 (__cxa_vec_cctor): Likewise.
9 (__cxa_vec_dtor): Likewise.
10 (__cxa_vec_delete2): Likewise.
11 (__cxa_vec_delete3): Likewise.
13 2000-11-17 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
15 * include/bits/stl_tree.h: Overload operators == and != to be able
16 to handle the case (const_iterator,iterator) and
17 (iterator,const_iterator), thus fixing libstdc++/737 and the like.
18 * testsuite/23_containers/map_operators.cc (test02): New tests.
20 2000-11-17 Loren J. Rittle <ljrittle@acm.org>
22 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Correct last patch
23 to ``make --enable-cstdio=stdio the default''.
24 * libstdc++-v3/aclocal.m4: Rebuilt.
25 * libstdc++-v3/configure: Rebuilt.
27 2000-11-17 Phil Edwards <pme@sources.redhat.com>
29 * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Move switch statement
31 * configure.target: ...here. Enable generic atomic ops, and warn.
32 * aclocal.m4: Regenerated.
35 * libio/Makefile.in: Ditto.
36 * libmath/Makefile.in: Ditto.
37 * libsupc++/Makefile.in: Ditto.
38 * src/Makefile.in: Ditto.
40 2000-11-16 Loren J. Rittle <ljrittle@acm.org>
42 * include/bits/locale_facets.tcc (num_get<_CharT,
43 _InIter>::do_get(...)): Add missing typename keyword.
45 2000-11-16 Mark Mitchell <mark@codesourcery.com>
47 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make
48 --enable-cstdio=stdio the default. Disable wide character support
50 * configure.in: Move GLIBCPP_ENABLE_C_MBCHAR after
51 (GLIBCPP_ENABLE_CSTDIO).
52 * config/c_io_stdio.h: Don't include <libio.h>, don't define
54 * aclocal.m4: Regenerated.
55 * configure: Likewise.
56 * Makefile.in: Likewise.
57 * libio/Makefile.in: Likewise.
58 * libmath/Makefile.in: Likewise.
59 * libsupc++/Makefile.in: Likewise.
60 * src/Makefile.in: Likewise.
62 2000-11-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
64 * config/c_io_stdio.h: Include stddef.h.
66 2000-11-16 Mark Mitchell <mark@codesourcery.com>
68 * config/c_io_stdio.h (streamsize): Make it a typedef for
70 (wstreamsize): Likewise.
72 * config/c_io_stdio.h: Include libio.h.
74 2000-11-15 Mark P Mitchell <mark@codesourcery.com>
76 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
77 * src/Makefile.am (libstdc___la_LIBADD): Use it.
78 * aclocal.m4: Regenerated.
79 * configure: Likewise.
80 * Makefile.in: Likewise.
81 * libio/Makefile.in: Likewise.
82 * libmath/Makefile.in: Likewise.
83 * libsupc++/Makefile.in: Likewise.
84 * src/Makfile.in: Likewise.
86 2000-11-15 Mark Mitchell <mark@codesourcery.com>
88 * mkcheckin.in: Move check for bash version 2 later in the file.
90 * include/bits/basic_string.h (basic_string::_Rep::_S_max_size):
92 (basic_string::_Rep::_S_terminal): Likewise.
93 * include/bits/string.tcc (basic_string::_Rep::_S_max_size):
95 (basic_string::_Rep::_S_terminal): Likewise.
97 2000-11-15 David Billinghurst <David.Billinghurst@riotinto.com>
99 * mkcheck.in: Add function size_command() for irix.
101 2000-11-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
103 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to
105 (GLIBCPP_EXPORT_INCLUDES): Only export TOPLEVEL_INCLUDES if
106 building a canadian cross. This should fix the remaining java
108 * aclocal.m4: Regenerate.
109 * configure: Regenerate.
111 * include/bits/c++config (__GLIBCPP__): Set release version for 2.91.
113 2000-11-14 Phil Edwards <pme@sources.redhat.com>
115 * mkcheck.in: On a platform where we don't know how to extract
116 section sizes, just set them to zero. Use old method of reading
119 2000-11-13 Loren J. Rittle <ljrittle@acm.org>
121 * config/c_io_stdio.h: Don't define __c_wfile_type
122 when _GLIBCPP_USE_WCHAR_T is not defined.
124 2000-11-13 Phil Edwards <pme@sources.redhat.com>
126 * acinclude.m4 (GLIBCPP_CHECK_TARGET): New macro, replacing
127 GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
128 (GLIBCPP_CONFIGURE): Call new macro here.
129 * configure.host: Cleanup.
130 * configure.in: Remove those two macros.
131 * configure.target: New file.
132 * aclocal.m4: Regenerated.
134 * Makefile.in: Ditto.
135 * libio/Makefile.in: Ditto.
136 * libmath/Makefile.in: Ditto.
137 * libsupc++/Makefile.in: Ditto.
138 * src/Makefile.in: Ditto.
140 * mkcheck.in: Use libtool. Split things out into functions.
142 2000-11-12 Alexandre Petit-Bianco <apbianco@cygnus.com>
144 * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
145 * Makefile.in: Regenerate.
147 2000-11-12 David Edelsohn <edelsohn@gnu.org>
149 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add test for
150 libiconv.a providing wchar_t support functions.
151 * aclocal.m4: Regenerate.
153 2000-11-12 Loren J. Rittle <ljrittle@acm.org>
155 * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle FreeBSD.
156 * aclocal.m4, configure: Rebuilt.
158 2000-11-12 Brent Verner <brent@rcfile.org>
160 * include/c_std/bits/wrap_langinfo.h: New file.
161 * include/c_std/langinfo.h: New file.
162 * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
163 CODESET from _C_legacy::CODESET if using shadow headers.
164 * src/Makefile.am: Add new files.
165 * src/Makefile.in: Regenerate.
167 2000-11-12 Mark Mitchell <mark@codesourcery.com>
169 * include/c/bits/std_cmath.h (abs): Change extern "C" declaration
170 of `abs (double)' to ...
173 * config/os/solaris/solaris2.7/bits/os_defines.h: Define
176 2000-11-11 Mark P Mitchell <mark@codesourcery.com>
178 * include/bits/basic_file.h (__basic_file): Don't use __c_wfile_type
179 when _GLIBCPP_USE_WCHAR_T is not defined.
181 2000-11-10 Phil Edwards <pme@sources.redhat.com>
183 * include/bits/codecvt.h (__iconv_adaptor): New adaptor function,
184 courtesy of Alexandre Oliva, to handle const/non-const signatures.
185 (codecvt::do_out): Use.
186 (codecvt::do_in): And here.
188 2000-11-10 Gabriel Dos Reis <gdr@codesourcery.com>
190 * include/bits/cpp_type_traits.h: Fix typos. Adjust formatting.
192 2000-11-10 Gabriel Dos Reis <gdr@codesourcery.com>
194 * include/bits/localefwd.h (_Count_ones<>::_S_halfcount,
195 _Count_ones<>::_S_count): Turn into enumerators.
197 2000-11-08 Mark Mitchell <mark@codesourcery.com>
199 * include/bits/codecvt.h (codecvt::do_out): Make it const-correct.
200 (codecvt::do_in): Likewise.
202 2000-11-08 David Edelsohn <edelsohn@gnu.org>
204 * src/locale-inst.cc: Add explicit instantiations of
205 _M_fill_insert and fill_n<..., unsigned long,...> .
207 2000-11-06 Gabriel Dos Reis <gdr@codesourcery.com>
209 * include/bits/std_complex.h (conj): Undo double removal.
211 2000-11-06 Alexandre Oliva <aoliva@redhat.com>
213 * acinclude.m4 (LIB_AC_PROG_CXX): Remove CXX from the list of
214 alternatives for CXX_libstdcxx, now that it is useless.
215 * aclocal.m4, configure: Rebuilt.
217 2000-11-04 Mark Mitchell <mark@codesourcery.com>
219 * acinclude.m4 (LIB_AC_PROG_CXX): Set CXX_libstdcxx from CXX.
220 * aclocal.m4: Regenerated.
221 * configure: Likewise.
223 * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix punctuation in
225 * aclocal.m4: Regenerated.
226 * configure: Likewise.
228 2000-11-04 Alexandre Oliva <aoliva@redhat.com>
230 * acinclude.m4 (CXX): Prevent it from being cached.
231 * aclocal.m4, configure, */Makefile.in: Rebuilt.
233 2000-11-03 David Edelsohn <dje@watson.ibm.com>
235 * acinclude.m4 (GLIBCPP_CHECK_OS): Add AIX target selecting threads
236 flag based on multilib definition of $CXX.
237 * mknumeric_limits (LDFLAGS): Add AIX target linking with pthreads
238 based on multilib definition of $CXX.
239 * config/os/aix/bits/os_defines.h (_G_USING_THUNKS): Define as 0.
241 2000-11-03 Phil Edwards <pme@sources.redhat.com>
243 * acinclude.m4: Cleanups.
244 * aclocal.m4: Regenerated.
246 * Makefile.in: Ditto.
247 * libio/Makefile.in: Ditto.
248 * libmath/Makefile.in: Ditto.
249 * libsupc++/Makefile.in: Ditto.
250 * src/Makefile.in: Ditto.
252 * docs/install.html: Removal of EGCS.
253 * docs/23_containers/wrappers_h.txt: Likewise.
254 * docs/faq/index.html: Likewise.
255 * docs/faq/index.txt: Regenerated.
256 * docs/thanks.html: More people.
258 2000-11-03 David Edelsohn <edelsohn@gnu.org>
260 * include/c/bits/std_cwchar.h: Undefine macro that conflicts
261 with function name defined in this file.
263 Thu Nov 2 23:19:20 2000 Mark P Mitchell <mark@codesourcery.com>
265 * include/c/bits/std_cctype.h: Undefine macros that conflict
266 with function names defined in this file.
267 * include/c/bits/std_cstdio.h: Likewise.
269 2000-11-02 Mark Mitchell <mark@codesourcery.com>
271 * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
273 Thu Nov 2 10:11:45 2000 Mark P Mitchell <mark@codesourcery.com>
275 * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
276 * aclocal.m4: Regenerated.
277 * Makefile.in: Regenerated.
278 * libio/Makefile.in: Likewise.
279 * libmath/Makefile.in: Likewise.
280 * libsupc++/Makefile.in: Likewise.
281 * src/Makefile.in: Likewise.
282 * configure: Likewise.
283 * config/os/irix/bits/ctype_base.h: Revise.
284 * config/os/irix/bits/ctype_inline.h: Likewise.
285 * config/os/irix/bits/ctype_noninline.h: Likewise.
287 * testsuite/22_locale/codecvt_unicode_char.cc: Don't run it
288 if not _GLIBCPP_USE_WCHAR_T.
289 * testsuite/22_locale/codecvt_unicode_wchar_t.cc: Likewise.
290 * testsuite/22_locale/ctor_copy_dtor.cc: Likewise.
291 * testsuite/22_locale/ctype_wchar_t_members.cc: Likewise.
293 * mkcheck.in: Fix echoing of -rpath option.
295 * config/os/irix/bits/atomicity.h (_Atomic_word): Make it a
297 (__exchange_aand_add): Adjust accordingly.
298 (__atomic_add): Likewise.
300 2000-11-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
302 * src/locale.cc: Match orderings for static members.
303 * include/bits/fstream.tcc: Fixes for cin.
305 2000-11-02 Gabriel Dos Reis <gdr@codesourcery.com>
307 * include/bits/std_complex.h (complex<>): Remove (cos<>, cosh<>,
308 exp<>, log<>, log<>, sin, sinh<>) friend declarations.
309 (cos, cosh, sin, sinh): Define primary templates.
311 * src/complex.cc (cos<>, cosh<>, sin<>, sinh<>): Comment out
314 2000-11-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
316 * bits/basic_file.h (_M_open_mode): Change signature, move
318 * config/c_io_libio.cc: ...here.
319 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add sdtio option, remove wince.
320 * aclocal.m4: Regenerate.
321 * configure: Regenerate.
322 * config/c_io_stdio.h: New file.
323 * config/c_io_stdio.cc: New file.
324 * docs/configopts.html: Modify documentation.
326 2000-10-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
328 * include/c/bits/std_cwctype.h: Add more undefs.
330 2000-10-31 Gabriel Dos Reis <gdr@codesourcery.com>
332 * include/bits/std_complex.h (norm): Forward declare.
333 (complex<>): Comment out friend declaration of conj<>.
334 (conj<>): Comment out specialization.
335 (exp, log, log10): Define primary templates.
337 * src/complex.cc (exp<>, log<>, log10<>): Comment out
340 2000-10-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
342 * include/bits/std_complex.h: Remove duplicate definition of conj.
343 * include/c/bits/std_cwctype.h: Consistent placement of undefs.
345 2000-10-31 Gabriel Dos Reis <gdr@codesourcery.com>
347 * src/complex.cc (arg, polar): Comment out specializations.
349 * include/bits/std_complex.h (complex<>): Remove arg<> friend
351 (arg): Define primary template.
355 2000-10-31 Gabriel Dos Reis <gdr@codesourcery.com>
357 * include/c/bits/std_cwctype.h: #undef possible function-like
358 macro definitions of iswxxx functions, which might be brought in
359 by <wctype.h>. Those macro definitions prevent build on some
362 * include/bits/std_complex.h (complex<>): Comment out friend
363 declarations of abs<> specializations.
364 (abs): Define primary template.
366 * src/complex.cc (abs): Comment out specialization definition.
368 2000-10-30 Phil Edwards <pme@sources.redhat.com>
370 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Raise debugging level from
371 the default of 2 to 3.
372 * configure.in: Fix minor typos. SUBST the values of enable_shared
373 and enable_static so that mkcheck will be aware of them. Put the
374 test for gconv.h in with all the other header tests.
375 * aclocal.m4: Regenerate.
377 * Makefile.in: Ditto.
378 * libio/Makefile.in: Ditto.
379 * libmath/Makefile.in: Ditto.
380 * libsupc++/Makefile.in: Ditto.
381 * src/Makefile.in: Ditto.
383 * config/os/solaris/solaris2.7/bits/os_defines.h: Define
384 _G_USING_THUNKS to 0.
386 2000-10-30 Benjamin Kosnik <bkoz@redhat.com>
388 * src/complex_io.cc : Remove ancient defines.
389 * config/os/gnu-linux/bits/os_defines.h: Add defines.
390 * libsupc++/tinfo2.cc: Change to cstddef.
392 * include/bits/codecvt.h: Add include of c++config.h, so that
393 __USE_GNU gets defined. (Important for alpha.)
395 * include/c/bits/std_cwctype.h: Same.
396 * include/c/bits/std_ctime.h: And here.
397 * include/c/bits/std_cstdarg.h: Same.
398 * include/c/bits/std_csignal.h: Same.
399 * include/c/bits/std_csetjmp.h: Same.
400 * include/c/bits/std_clocale.h: Same.
401 * include/c/bits/std_climits.h: Touch.
402 * include/c/bits/std_cfloat.h: Same.
403 * include/c/bits/std_cerrno.h: Same.
404 * include/c/bits/std_cwchar.h: Same.
405 * include/c/bits/std_cassert.h: Same.
406 * include/c/bits/std_cctype.h: Same.
407 * include/c/bits/std_cstddef.h: And here.
408 * include/c/bits/std_cstdlib.h: And here.
409 * include/c/bits/std_cstdio.h: Same.
410 * include/c/bits/std_cstring.h: Add names to namespace std::.
412 * include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
414 (_ISOC99_SOURCE): And this one....
415 * config/os/gnu-linux/bits/os_defines.h: ...to here.
417 * include/bits/codecvt.h (codecvt<_InternT, _ExternT,
418 __enc_traits>::do_in): Don't cast to const, this is a bug in glibc
420 (codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
421 * include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.
423 2000-10-30 Steven King <sxking@uswest.net>
425 * include/bits/codecvt.h: Add cast.
426 * include/c_std/stdio.h: Re-add printf using declaration.
427 * include/c_std/bits/std_cstdio.h: Same
428 * testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
429 * testsuite/22_locale/ctor_copy_dtor.cc: Same.
430 * testsuite/22_locale/facet.cc: Same.
431 * testsuite/22_locale/global_templates.cc: Same.
432 * testsuite/22_locale/operators.cc: Same.
433 * testsuite/22_locale/static_members.cc: Same.
434 * testsuite/26_numerics/c_math.cc: Same.
435 * testsuite/26_numerics/complex_inserters_extractors.cc: Same.
436 * testsuite/27_io/fpos.cc: Same.
437 * testsuite/27_io/istream_extractor_arith.cc: Same.
438 * testsuite/27_io/istream_unformatted.cc: Same.
439 * testsuite/27_io/ostream_inserter_arith.cc: Same.
440 * testsuite/27_io/streambuf.cc: Same.
442 2000-10-30 Mark Mitchell <mark@codesourcery.com>
444 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT): Check
445 for cabs, cabsf, and cabsl, too.
446 * aclocal.m4: Regenerated.
447 * config.h.in: Likewise.
448 * configure: Likewise.
449 * libmath/Makefile.am (libmath_la_SOURCES): Remove cabs.c and
451 * libmath/Makefile.in: Regenerated.
452 * libmath/complex-stub.h (cabs): Don't declare if the system
453 already provides this function.
456 * src/complex.cc (abs): Directly use `hypot' since we can't call
459 2000-10-30 Joseph S. Myers <jsm28@cam.ac.uk>
461 * acinclude.m4: Update URL on egcs.cygnus.com to point to
463 * aclocal.m4, configure: Regenerate.
464 * src/gen-num-limits.cc, include/bits/c++config,
465 include/bits/stl_config.h: Remove EGCS references.
467 2000-10-29 Mark Mitchell <mark@codesourcery.com>
469 * mkcheck.in (test_file): Use -rpath, rather than --rpath, when
470 building shared executables.
472 2000-10-29 Mark Harig <mharig@landmark.com>
474 * src/Makefile.am: Change logic for include dir options.
475 * src/Makefile.in: Regenerate.
476 * libsupc++/Makefile.am: Ditto.
477 * libsupc++/Makefile.in: Regenerate.
479 2000-10-29 Benjamin Kosnik <bkoz@redhat.com>
481 * configure.in: Simplify use of AC_CACHE_SAVE. Put linked files
482 in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
483 with libgcj build issues and improve consistency with the source
484 directory's include directory setup.
485 * configure: Regenerate.
486 * acinclude.m4: Same here.
487 * aclocal.m4: Regenerate.
488 * mknumeric_limits (OUT_H): Also change paths here.
489 * mkcheck.in (C_DIR): And here.
490 * mkc++config (OUT_H): And here.
491 * libmath/Makefile.am (INCLUDES): And here.
492 * src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
493 * libio/Makefile.am: Ditto.
494 * libsupc++/Makefile.am (INCLUDES): Ditto.
496 2000-10-29 Mark Mitchell <mark@codesourcery.com>
498 * config/c_io_libio.cc (basic_file<char>::__basic_file):
499 Don't pass a NULL _IO_wide_data to _IO_no_init when
500 _GLIBCPP_USE_WCHAR_T is not defined.
501 * config/c_io_libio.h (_IO_codecvt): Don't declare when
502 _GLIBCPP_USE_WCHAR_T is not defined.
503 * config/c_io_libio_codecvt.c: Don't compile it
504 when _GLIBCPP_USE_WCHAR_T is not defined.
505 * include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
506 Don't define this specialization when _GLIBCPP_USE_WCHAR_T
508 * include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
509 include it when _GLIBCPP_USE_WCHAR_T is not defined.
510 * src/codecvt.cc (__enc_traits::_S_max_size): Don't define
511 when _GLIBCPP_USE_WCHAR_T is not defined.
512 * src/localename.cc (locale::_Impl::_M_construct_collate):
513 Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is
515 (locale::_Impl::_M_construct_ctype): Likewise.
516 (locale::_Impl::_M_construct_monetary): Likewise.
517 (locale::_Impl::_M_construct_numeric): Likewise.
518 (locale::_Impl::_M_construct_time): Likewise.
519 (locale::_Impl::_M_construct_messages): Likewise.
521 * acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Handle IRIX.
522 * aclocal.m4: Regenerated.
523 * configure: Likewise.
524 * config/os/irix/bits/atomicity.h: New file.
525 * config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
527 (__off64_t): Likewise.
528 (__ssize_t): Likewise.
529 (_G_USING_THUNKS): Define to zero.
531 2000-10-28 Mark Mitchell <mark@codesourcery.com>
533 * src/string-inst.cc (basic_string<C>::npos): Explicitly
536 2000-10-26 Benjamin Kosnik <bkoz@redhat.com>
538 * include/c/bits/std_cmath.h: Fix double declarations in namespace std.
540 Clean up naming, consistency in "C" library autoconf testing.
541 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): For consistency, change to
542 GLIBCPP_CHECK_CTYPE_SUPPORT.
543 (GLIBCPP_CHECK_STDLIB_SUPPORT): Add.
544 * aclocal.m4: Regenerate.
545 * configure.in: And here.
546 Add call to GLIBCPP_CHECK_STDLIB_SUPPORT.
547 * configure: Regenerate.
549 2000-10-26 David Edelsohn <edelsohn@gnu.org>
551 * acinclude.m4 (GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2): New macro.
552 (GLIBCPP_CHECK_MATH_SUPPORT): Use it to test for strtold.
554 2000-10-26 Phil Edwards <pme@sources.redhat.com>
555 David Edelsohn <dje@watson.ibm.com>
557 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
558 --gc-sections stuff entirely to avoid misleading people.
559 (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
560 * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
562 * libio/libio.h: Simplify, make fewer assumptions. Define those
563 macros which must be defined.
564 * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
567 2000-10-26 Mark Mitchell <mark@codesourcery.com>
569 * include/backward/streambuf.h: New file.
571 2000-10-26 David Edelsohn <dje@watson.ibm.com>
573 * config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
574 * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
575 * config/os/aix/bits/os_defines.h: Add AIX defines.
577 2000-10-26 Benjamin Kosnik <bkoz@redhat.com>
579 * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
580 * aclocal.m4: Regenerate.
581 * configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
582 * configure: Regenerate.
583 * docs/configopts.html: Remove.
584 * src/complexl.cc: Revert.
585 * config.h.in: Remove.
586 * include/c_std/bits/std_cmath.h: Remove guards based on
587 _GLIBCPP_USE_LONG_DOUBLE.
588 * include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
589 with respect to long double signatures.
591 * config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
593 * config/os/newlib/bits/ctype_noninline.h (ctype): And here.
594 * config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
595 * config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
596 * config/os/generic/bits/ctype_noninline.h (ctype): Same.
597 * config/os/bsd/bits/ctype_noninline.h (ctype): Same.
599 2000-10-26 Gabriel Dos Reis <gdr@codesourcery.com>
601 * include/bits/std_valarray.h (valarray::valarray): Fix thinko.
602 Use __valarray_copy_construct only where appropriate.
604 2000-10-25 Mark Mitchell <mark@codesourcery.com>
606 * Makefile.in (check): Don't make mkcheck executable.
607 (check-install): Likewise.
608 * configure.in (AC_OUTPUT): Make mkcheck executable.
609 * mkcheck.in (top_srcdir): New variable.
610 (INC_PATH): Set the path to the backward and ext directories
613 2000-10-25 Phil Edwards <pme@sources.redhat.com>
615 * configure.in: Check for gconv.h.
616 * libio/wfileops.c: Wrap gconv.h in HAVE_GCONV_H.
618 * config/c_io_libio_codecvt.c: Change __mbstate_t to __c_mbstate_t.
619 * libio/_G_config.h: And here.
620 * libio/iofwide.c: And here.
621 * libio/libio.h: And here.
623 * config/os/solaris/solaris2.7/bits/ctype_noninline.h: Remove
624 exception specification to match declaration.
625 * include/bits/locale_facets.tcc: Include bits/std_clocale.h.
627 2000-10-24 Mark Harig <mharig@landmark.com>
629 * docs/configopts.html: Added documentation for the
630 "--enable-version-specific-runtime-libs" and
631 "--with-gxx-include-dir" configuration switches.
633 2000-10-24 Benjamin Kosnik <bkoz@redhat.com>
635 * include/bits/stl_pair.h (make_pair): Add LWG solution.
637 * testsuite/21_strings/compare.cc (test01): Inject namespace std
640 * mkcheck.in (MAX_MEM_USAGE): Bump up to 3072. Strangely enough,
643 2000-10-24 Levente Farkas <lfarkas@mindmaker.hu>
645 * include/bits/std_bitset.h (_M_do_find_next): Fix typo.
647 2000-10-24 Phil Edwards <pme@sources.redhat.com>
649 * acconfig.h: List _GLIBCPP_USE_THREADS.
650 * acinclude.m4: General formatting cleanup (tabs/spaces), typo
651 correction, etc. Add comments about following *real* changes
653 (GLIBCPP_ENABLE_C_MBCHAR): New test...
654 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): ...results used here.
655 (GLIBCPP_ENABLE_CSTDIO): Define need_wlibio iff wide characters
657 (GLIBCPP_ENABLE_THREADS): If threads are used, define new
658 macro _GLIBCPP_USE_THREADS in c++config.h.
659 (GLIBCPP_ENABLE_SHADOW): For C_INCLUDE_DIR, change () to {} as
660 this is used in both makefiles and shell scripts (mkcheck).
661 * configure.in: Call GLIBCPP_ENABLE_C_MBCHAR.
663 * libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
664 * config/c_io_libio.h: In nonthreaded case, typedef __c_lock to
665 something harmless, like int.
667 * config/os/aix/bits/os_defines.h: Guard with _GLIBCPP_OS_DEFINES,
668 add comment/instructions.
669 * config/os/bsd/bits/os_defines.h: Ditto.
670 * config/os/generic/bits/os_defines.h: Ditto.
671 * config/os/gnu-linux/bits/os_defines.h: Ditto.
672 * config/os/irix/bits/os_defines.h: Ditto.
673 * config/os/newlib/bits/os_defines.h: Ditto.
674 * config/os/solaris/solaris2.5/bits/os_defines.h: Ditto.
675 * config/os/solaris/solaris2.6/bits/os_defines.h: Ditto.
677 * mkcheck.in: Limit the available heap size for testsuite
678 binaries, initially at 2MB.
680 2000-10-23 Benjamin Kosnik <bkoz@redhat.com>
682 * testsuite/21_strings/compare.cc (test01): Add using declarations.
684 * include/c_std/bits/std_cerrno.h: And here.
685 * include/c_std/bits/std_cassert.h: Tweaks.
687 * mkcheck.in: Simplify.
689 * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
690 (GLIBCPP_ENABLE_LONG_LONG): Same.
691 * aclocal.m4: Regenerate.
693 * src/Makefile.am (c_shadow_headers): Add features.h,
694 bits/wrap_features.h.
695 * src/Makefile.in: Regenerate.
696 * include/c_std/features.h: New file.
697 * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
698 file. Need to have c++config.h included before this file so
699 _ISOC99_SOURCE around.
701 * include/c_std/sys/cdefs.h: Hack.
702 * include/c_std/stdlib.h: Same, use c++config.h.
703 * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
705 * include/c_std/bits/std_cassert.h: Fix.
706 * include/c_std/bits/std_cerrno.h: Make consistent.
708 * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
709 declaration from ::_C_legacy to _C_legacy.
711 * include/c_std/bits/std_cstdio.h: same with printf.
712 * include/c_std/stdio.h: And here.
714 * include/c_std/bits/std_cstdlib.h: abort, exit comment.
715 * include/c_std/stdlib.h: Same here.
717 2000-10-23 Benjamin Kosnik <bkoz@redhat.com>
719 * testsuite/21_strings/compare.cc (test01): Add using declarations.
721 * include/c_std/bits/std_cerrno.h: And here.
722 * include/c_std/bits/std_cassert.h: Tweaks.
724 * mkcheck.in: Simplify.
726 * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Simplify.
727 (GLIBCPP_ENABLE_LONG_LONG): Same.
728 * aclocal.m4: Regenerate.
730 * src/Makefile.am (c_shadow_headers): Add features.h,
731 bits/wrap_features.h.
732 * src/Makefile.in: Regenerate.
733 * include/c_std/features.h: New file.
734 * include/c_std/bits/wrap_features.h (_CPP_WRAP_FEATURES_H): New
735 file. Need to have c++config.h included before this file so
736 _ISOC99_SOURCE around.
738 * include/c_std/sys/cdefs.h: Hack.
739 * include/c_std/stdlib.h: Same, use c++config.h.
740 * include/c_std/bits/std_cstdlib.h: Use _GLIBCPP_HAVE_STRTOLD.
742 * include/c_std/bits/std_cassert.h: Fix.
743 * include/c_std/bits/std_cerrno.h: Make consistent.
745 * include/c_std/bits/std_csetjmp.h (setjmp): Unscope global
746 declaration from ::_C_legacy to _C_legacy.
748 * include/c_std/bits/std_cstdio.h: same with printf.
749 * include/c_std/stdio.h: And here.
751 * include/c_std/bits/std_cstdlib.h: abort, exit comment.
752 * include/c_std/stdlib.h: Same here.
754 2000-10-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
756 * acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): New macro.
757 * aclocal.m4: Regenerate.
758 * configure.in: Use it.
759 * configure: Regenerate.
760 * src/complexl.cc: Fixup.
761 * include/c_std/bits/std_cmath.h: Fixup.
762 * include/c/bits/std_cmath.h: Fixup.
763 * docs/configopts.html: Add docs.
765 * docs/links.html: Add links to defects list, standards FAQ.
767 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests
768 with string creation that allocate huge ammounts of memory.
770 * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in
773 2000-10-21 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
775 * libsupc++/exception.cc: Use namespace std.
776 * libsupc++/new: DITTO.
777 * libsupc++/new_op.cc: DITTO.
778 * libsupc++/new_opnt.cc: DITTO.
779 * libsupc++/new_opv.cc: DITTO.
780 * libsupc++/new_opvnt.cc: DITTO.
781 * libsupc++/tinfo.cc: DITTO.
782 * libsupc++/tinfo.h: DITTO.
783 * libsupc++/vec.cc: DITTO.
784 * libsupc++/Makefile.am: Blank lines removal.
786 2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk>
788 * docs/configopts.html, docs/install.html, docs/17_intro/BADNAMES,
789 docs/17_intro/howto.html, docs/18_support/howto.html,
790 docs/19_diagnostics/howto.html, docs/20_util/howto.html,
791 docs/21_strings/howto.html, docs/22_locale/howto.html,
792 docs/23_containers/howto.html, docs/24_iterators/howto.html,
793 docs/25_algorithms/howto.html, docs/26_numerics/howto.html,
794 docs/27_io/howto.html, docs/ext/howto.html, docs/faq/index.html:
795 Remove many EGCS references; use current absolute URLs on
796 gcc.gnu.org or sources.redhat.com for messages in list archives.
797 * docs/faq/index.txt: Regenerate.
799 2000-10-19 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
801 * testsuite/22_locale/codecvt_unicode_char.cc (test01): Adjust
802 creation of state_type for unicode_codecvt to take into account
803 the byte order markings. Add distinct tests for UCS-2BE and UCS-2LE.
804 * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Same.
805 * include/bits/codecvt.h (__enc_traits): Add support for encodings
806 that need a byte order marker. Needed for correct unicode support.
808 * src/locale.cc: Remove explicit qualification std::.
809 (locale::locale(const char* __name)): Revert, as named locale
810 support not finished.
811 * src/localename.cc (locale::_Impl:: _Impl(size_t __numfacets,
812 size_t __refs, bool __has_name = false, string __name): Move
814 * include/bits/localefwd.h: Here.
816 2000-10-18 Chip Salzenberg <chip@valinux.com>
818 * libio/libio.h (_IO_USER_LOCK): Define.
820 2000-10-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
822 * libsupc++/Makefile.am (exception): Change exception.cc to
823 exception_support.cc.
824 (CXXLINK): Remove bogus --tag CC.
825 * libsupc++/Makefile.in: Regenerate.
826 * libsupc++/exception.cc: Move to...
827 * libsupc++/exception_support.cc: ...here.
829 * src/Makefile.am: Remove bogus --tag CC.
830 * src/Makefile.in: Regenerate.
832 * include/bits/locale_facets.tcc (use_facet): Simplify.
833 * include/bits/locale_facets.h (use_facet<ctype<char> >): Correct
834 use_facet declaration. Replace 'const ctype<T>' with ctype<T>.
835 (use_facet<ctype<wchar_t> >): Same.
836 * src/locale-inst.cc: Remove explicit instantiation.
837 * src/locale.cc: Correct signature here too.
838 (_Bad_use_facet::what()): Correct error string.
839 * include/bits/localefwd.h: Correct comment.
841 * mkcheck.in (C_DIR): Change libsupc++/include to libsupc++.
843 2000-10-17 Martin Buchholz <martin@xemacs.org>
845 * testsuite/27_io/istream_seeks.cc: Fix spelling typo.
846 * testsuite/27_io/ostream_seeks.cc: Similarly.
848 2000-10-17 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
850 via Alexandre Oliva <aoliva@redhat.com>
851 * libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
852 * libsupc++/Makefile.in: Regenerate.
853 * src/Makefile.am: Duplicate code.
854 * src/Makefile.in: Regenerate.
856 * acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
857 * aclocal.m4: Regenerate.
858 * configure.in: And here.
859 * configure: Regenerate.
861 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
862 test for SECTION_LDFLAGS.
864 2000-10-16 Benjamin Kosnik <bkoz@gnu.org>
866 Shadow headers would work if libsupc++ was strict about namespaces.
867 This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
868 * include/c_std/assert.h: Add guards.
869 * include/c_std/bits/std_climits.h: Correct typo.
870 * include/c_std/ctype.h: Remove #error.
872 * libio/libioP.h: Break up extern "C" bits around includes.
873 * libio/libio.h: Only include C headers, or else _C_legacy namespaces
875 * libio/libioP.h: Same here.
877 2000-10-15 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
879 * include/c_std/unistd.h: Define some types only when defined in
880 the original unistd.h.
881 * include/c_std/bits/std_cstddef.h: Explicitly ask for the
882 definition of size_t, ptrdiff_t and NULL.
883 * include/c_std/bits/wrap_unistd.h: Blank lines removal.
885 2000-10-15 Phil Edwards <pme@sources.redhat.com>
887 * docs/configopts.html: Remove libgcc-rebuild; HTML formatting.
889 2000-10-13 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
890 Mark Harig <markh@landmark.com>
892 * src/Makefile.am (toolexeclibdir): Add support fo
893 VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
894 * src/Makefile.in: Regenerate.
895 * libsupc++/Makefile.am: Same.
896 (glibcppinstalldir): Adjust.
897 * libsupc++/Makefile.in: Regenerate.
898 * Makefile.am: Remove gxx_include_dir. Remove INCLUDE.
899 * Makefile.in: Regenerate.
900 * docs/configopts.html: Add descriptions of flags.
902 2000-10-11 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
904 * libsupc++/Makefile.am: Use it.
905 * libio/Makefile.am: Use it.
906 * libmath/Makefile.am: Use it.
907 * src/Makefile.am: Use it.
908 * Makefile.am (AM_MAKEFLAGS): Remove includes.
910 * acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
911 (GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
912 * configure.in: Use it.
914 * mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.
916 * src/Makefile.am (CXXCOMPILE): Remove.
917 * src/Makefile.in: Regenerate.
918 * libsupc++/Makefile.am (CXXCOMPILE): Same here.
919 * libsupc++/Makefile.in: Regenerate.
921 * include/c_std/*: Merge with shadow.
922 * include/c_std/bits/*: Same.
924 * shadow: Remove directory.
925 * shadow/*: De-populate.
927 2000-10-11 Phil Edwards <pme@sources.redhat.com>
929 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
930 exception-throwing code for linker test.
931 * aclocal.m4: Regenerate.
932 * configure: Regenerate.
934 2000-10-10 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
936 * Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
937 * libsupc++/include: Remove
938 * libsupc++/include/*: Move to ...
940 * libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
941 (glibcppinstalldir): New.
943 * src/Makefile.am (c_base_headers): New.
944 (c_shadow_headers): New
946 (myinstallheaders): Correct install issues.
947 * src/Makefile.in: Regenerate.
949 * Makefile.am (CSHADOW_INCLUDES): Simplify.
950 * Makefile.in: Regenerate.
951 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
952 * aclocal.m4: Regenerate.
953 * mkcheck.in (SRC_DIR): Use it.
955 * include/bits/std_stdexcept.h: And here.
956 * include/bits/std_ios.h: Change std_exception.h to exception.
957 * src/locale.cc: And here.
958 * src/locale-inst.cc: And here.
960 * include/bits/valarray_array.h: And here.
961 * include/bits/stl_alloc.h: And here.
962 * include/bits/stl_algobase.h: And here.
963 * include/bits/pthread_allocimpl.h: And here.
964 * include/bits/stl_construct.h: Change to std_new.h to new.
966 * include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.
968 * src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
969 (headers): Remove duplicated headers.
970 (std_headers): And here.
971 * src/Makefile.in: Regenerate.
972 * libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
973 * libsupc++/Makefile.in: Regenerate.
974 * Makefile.am (LIBSUPCXX_INCLUDES): Add here.
975 (AM_MAKEFLAGS): And here.
976 * Makefile.in: Regenerate.
977 * include/bits/std_typeinfo.h: Remove.
978 * include/bits/std_new.h: Remove
979 * include/bits/std_exception.h: Remove.
981 * std/typeinfo: Remove.
982 * std/exception: Remove.
984 * libio/_G_config.h (__need_ptrdiff_t): Add.
986 * libsupc++/include/new: Change stddef.h to cstddef.
987 * libsupc++/tinfo.h: Change limits.h to climits.
988 * libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
989 renders the file uncompilable. Add copyright.
991 * include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
992 namespace, as it is a fundamental type.
994 2000-10-09 Richard Henderson <rth@cygnus.com>
996 * libsupc++/pure.cc: New file.
997 * libsupc++/Makefile.am (INCLUDES): Add top_builddir.
998 (sources): Add pure.cc.
999 * libsupc++/Makefile.in: Regenerate.
1001 2000-10-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1003 * docs/configopts.html: Edit.
1005 * libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
1006 * libio/Makefile.in: Regenerate.
1007 * libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
1008 * libmath/Makefile.in: Regenerate.
1009 * libsupc++/Makefile.am (INCLUDES): Remove duplicate.
1010 * libsupc++/Makefile.in: Regenerate.
1012 * Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
1013 TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
1014 CSHADOW_INCLUDES up here.
1015 * Makefile.in: Regenerate.
1016 * src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
1018 (myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
1019 Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
1020 LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
1021 * src/Makefile.in: Regenerate.
1023 * include/c: New directory.
1024 * include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
1025 std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
1026 std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
1027 std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
1028 std_cwchar.h, std_cwctype.h): Add, moving from...
1029 * include/bits: ...here.
1030 * include/c_std: New directory.
1031 * include/c_std/bits/*: Populate from...
1032 * shadow: ...here. Remove directory.
1034 2000-10-08 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1036 * libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
1037 (INCLUDES): Add glibcpp_includedir.
1038 * libsupc++/Makefile.in: Regenerate.
1040 * acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
1041 * aclocal.m4: Regenerate.
1042 * config/os/*/bits/os_defintes: Adjust copyright dates.
1044 2000-10-08 Phil Edwards <pme@sources.redhat.com>
1046 * include/bits/c++config: Include <bits/os_defines.h>
1047 * config/os/aix/bits/os_defines.h: New file.
1048 * config/os/bsd/bits/os_defines.h: Ditto.
1049 * config/os/generic/bits/os_defines.h: Ditto.
1050 * config/os/gnu-linux/bits/os_defines.h: Ditto.
1051 * config/os/irix/bits/os_defines.h: Ditto.
1052 * config/os/newlib/bits/os_defines.h: Ditto.
1053 * config/os/solaris/solaris2.5/bits/os_defines.h: Ditto.
1054 * config/os/solaris/solaris2.6/bits/os_defines.h: Ditto.
1055 * config/os/solaris/solaris2.7/bits/os_defines.h: Ditto.
1057 2000-10-07 David Edelsohn <dje@watson.ibm.com>
1059 * config/os/aix/bits/atomicity.h: New file.
1061 2000-10-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1063 * acinclude.m4: Remove CPU_FLAGS
1064 * libio/Makefile.am: Here too.
1065 * Makefile.am: Here too.
1067 * src/Makefile.am (CONFIG_INCLUDES): Remove.
1068 (INCLUDES): Remove CONFIG_INCLUDES.
1069 (cpu_headers): Remove.
1070 (myinstallheaders): Remove cpu_headers.
1071 (generated_headers): Rename to build_headers.
1072 (build_headers): Add atomicity.h, ctype_base.h,
1073 ctype_specializations.h.
1075 * config/os: New directory.
1076 * config/aix: Move to...
1077 * config/bsd: Move to...
1078 * config/generic: Move to...
1079 * config/gnu-linux: Move to...
1080 * config/irix: Move to...
1081 * config/newlib: Move to...
1082 * config/solaris: Move to...
1083 * config/os/*: Here.
1085 2000-10-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1087 * acinclude.m4: Remove CPU_FLAGS
1088 * libio/Makefile.am: Here too.
1089 * Makefile.am: Here too.
1091 * src/Makefile.am (CONFIG_INCLUDES): Remove.
1092 (INCLUDES): Remove CONFIG_INCLUDES.
1093 (cpu_headers): Remove.
1094 (myinstallheaders): Remove cpu_headers.
1095 (generated_headers): Rename to build_headers.
1096 (build_headers): Add atomicity.h, ctype_base.h,
1097 ctype_specializations.h.
1099 * config/os: New directory.
1100 * config/aix: Move to...
1101 * config/bsd: Move to...
1102 * config/generic: Move to...
1103 * config/gnu-linux: Move to...
1104 * config/irix: Move to...
1105 * config/newlib: Move to...
1106 * config/solaris: Move to...
1107 * config/os/*: Here.
1109 2000-10-06 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1111 * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
1112 CONFIG_CXXFLAGS from here, and move to...
1113 * src/Makefile.in: Regenerate.
1114 * Makefile.am: ... here. Clean.
1115 (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
1116 (WARN_CXXFLAGS): Same.
1117 (CONFIG_CXXFLAGS): Same.
1118 * Makefile.in: Regenerate.
1119 * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
1120 WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
1121 * libsupc++/Makefile.in: Regenerate.
1123 Change math to libmath.
1124 * math: Move to libmath, delete.
1125 * libmath: New directory.
1126 * libmath/*: Populate.
1127 * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
1128 (libstdc___la_LIBADD): Same.
1129 * src/Makefile.in: Regenerate.
1130 * configure.in: Add AC_OUTPUT for libmath/Makefile.
1131 * configure: Regenerate.
1132 * Makefile.am (SUBDIRS): Add libmath.
1133 * Makefile.in: Regenerate.
1134 * README (file): Change name.
1136 2000-10-06 Benjamin Kosnik <bkoz@cygnus.com>
1137 Richard Henderson <rth@cygnus.com>
1138 Alexandre Oliva <aoliva@redhat.com>
1140 * libsupc++: New directory.
1141 * libsupc++/*: Populate.
1142 * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
1143 eh-common.h, gansidecl.h.
1144 * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
1145 * configure: Regenerate.
1146 * Makefile.am (SUBDIRS): Add libsupc++.
1147 * Makefile.in: Regenerate.
1148 * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
1149 * src/Makefile.in: Regenerate.
1150 * libio/Makefile.am: Remove extraneous, confusing bits.
1151 * libio/Makefile.in: Regenerate.
1153 2000-10-05 Brent Verner <brent@rcfile.org>
1155 * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
1156 test for _M_gcount < in_avail(), as in_avail() only reports info
1157 for current buffer, causing method to return at end of buffer.
1158 * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
1159 * testsuite/27_io/istream_unformatted-3.txt: New file.
1160 * testsuite/27_io/istream_unformatted-3.tst: New file.
1162 2000-10-05 Benjamin Kosnik <bkoz@fillmore.constant.com>
1164 * README (file): Adjust directory structures.
1165 * mkcheck.in (INC_PATH): Adjust for header changes.
1167 2000-10-05 Phil Edwards <pme@sources.redhat.com>
1169 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Tweaks to message texts
1170 for public relations purposes.
1171 * aclocal.m4: Regenerated.
1172 * configure: Regenerated.
1174 * docs/ext/howto.html: Additional explanation about hashing.
1176 2000-10-05 Benjamin Kosnik <bkoz@cygnus.com>
1178 * include: New directory.
1179 * include/backward: New directory.
1180 * include/bits: New directory.
1181 * include/ext: New directory.
1182 * include/std: New directory.
1183 * include/*/*: Populate.
1185 * backwards: Move to include/backwards, delete.
1186 * bits: Move to include/bits, delete.
1187 * ext: Move to include/ext, delete.
1188 * std: Move to include/std, delete.
1190 * src/complex.cc: Adjust include of mathconf.
1192 * mkc++config (BASE_H): Add include.
1194 * src/Makefile.am: Support for topleve sources include directory.
1195 (INCLUDES): Add LIBMATH_INCLUDE.
1196 * src/Makefile.in: Regenerate.
1197 * math/Makefile.am (INCLUDES): Append /include.
1198 * math/Makefile.in: Regenerate.
1199 * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
1200 * libio/Makefile.in: Regenerate.
1202 2000-10-04 Benjamin Kosnik <bkoz@gnu.org>
1204 * libio/_G_config.h : Re-guard the __mbstate_t declaration.
1206 2000-10-03 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1208 * docs/22_locale/howto.html: Add link to proto-documentation on
1210 * docs/documentation.html: Rename links for clarity.
1212 * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
1213 fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h.
1214 * src/Makefile.in: Regenerate.
1216 2000-10-02 Steven King <sxking@uswest.net>
1218 * mkcshadow: Fixed script to output proper include guard.
1219 * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
1220 * libio/_G_config.h: Hacked to make work with shadow heraders.
1221 * shadow/*: Hacked to make shadow headers work.
1223 2000-10-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1225 Self-compile with shadow headers.
1226 * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
1227 like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
1228 it becomes the default way the library is built.
1229 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
1230 * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
1231 * config/gnu-linux/ctype.cc (ctype): Use it.
1233 * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
1235 * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
1236 memset. This should not be necessary, but an ambiguous overload
1239 * shadow/bits/std_cwchar.h: Fix.
1240 * shadow/wchar.h: Fix.
1242 * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
1243 enums into namespace std:: for ctype_base enum. Other OS types
1244 will have to do this as well.
1245 * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
1246 namespace std, in particular __ctype_toupper, __ctype_tolower,
1249 * shadow/iolibio.h: New file.
1250 * shadow/bits/wrap_iolibio.h: New file.
1251 * shadow/libioP.h: New file.
1252 * shadow/bits/wrap_libioP.h: New file.
1253 * shadow/bits/wrap_fcntl.h: New file.
1254 * shadow/fcntl.h: New file.
1255 * shadow/iconv.h: New file. Inject iconv names into the global
1256 namespace, unmangled for the moment.
1257 * shadow/bits/wrap_iconv.h: New file.
1258 * shadow/unistd.h: Remove. Useless.
1259 * shadow/bits/wrap_unistd.h: Remove.
1261 * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
1262 * src/Makefile.in: Regenerate.
1264 * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
1266 * shadow/libio.h: Fix.
1267 * shadow/bits/wrap_libio.h: Fix.
1269 * shadow/bits/std_clocale.h: Remove typedef struct construct,
1270 which will not compile.
1271 * shadow/bits/std_ctime.h: Same.
1273 * shadow/pthread.h: New file. Put pthreads types and functions
1274 into global scope, which is probably not the correct long-term
1275 solution but has to be done at the moment before libio wrappers
1276 can even be started.
1277 * shadow/bits/wrap_pthread.h: New file.
1279 * bits/std_ios.h: Formatting tweak.
1280 * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
1282 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
1283 tests for compiler features.
1284 * aclocal.m4: Regenerate.
1285 * configure: Regenerate.
1287 * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
1289 * libio/libioP.h: Comment out fcntl.h include.
1291 * shadow/math.h: Add in float and long declarations, as per ISO C9X.
1293 * bits/c++config: Define _ISOC99_SOURCE.
1295 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
1296 CSHADOWFLAGS, as well as _ISOC99_SOURCE.
1297 * aclocal.m4: Regenerate.
1298 * configure: Regenerate.
1299 * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
1300 (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
1301 (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
1302 std or shadow directories.
1303 (LTCXXCOMPILE): Same.
1304 (INCLUDES): Add $(top_builddir) before $(top_srcdir).
1305 (AC_CXXFLAGS): Add CSHADOWFLAGS.
1306 * src/Makefile.in: Regenerate.
1308 * src/complex.cc (FCT): Change ::name to name.
1309 * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
1310 * src/complexf.cc (FCT): Same.
1312 * src/complexf.cc: Remove FCT define, as things are properly
1313 overloaded in the std namespace with the shadow headers.
1314 * src/complexl.cc: Same.
1315 * src/complex.cc: Same.
1317 2000-09-25 Phil Edwards <pme@sources.redhat.com>
1319 * docs/documentation.html: Add link to...
1320 * docs/ext/howto.html: ...this. New dir/file, describing library
1321 extensions (both ours and SGI's).
1322 * docs/faq/index.html: Small updates.
1323 * docs/faq/index.txt: Regenerate.
1325 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
1327 * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
1329 2000-09-25 Levente Farkas <lfarkas@mindmaker.hu>
1331 * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
1333 2000-09-19 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1335 * src/localename.cc (locale::_Imp) : Remove typedefs.
1336 * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
1337 __f): Consistency check, call _Imp ctor with reference argument
1339 * bits/localefwd.h: Change _S_num_categories to
1340 _S_categories_num. Add new data member, _S_facets_num, which is
1341 the number of standard facets.
1343 2000-09-19 Phil Edwards <pme@sources.redhat.com>
1345 * docs/21_strings/howto.html: Fix editor lossage from last commit.
1347 2000-09-19 Phil Edwards <pme@sources.redhat.com>
1349 * docs/thanks.html: More thanks.
1350 * docs/18_support/howto.html: Fix thinko.
1351 * docs/21_strings/howto.html: Minor tweaks and updates to URLs.
1352 Redo the string transformation notes and link to...
1353 * docs/22_locale/howto.html: ...here.
1355 2000-09-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1357 * src/locale-inst.cc: Add time_put_byname and
1358 time_get_byname instantiations.
1359 * bits/locale_facets.h: Correct default, private derivation to
1360 public derivation in _byname declarations.
1361 * src/locale.cc (locale::classic()): Simplify.
1362 * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
1363 const string& __name, category __cat, size_t __refs): Re-work for
1365 (_M_normalize_category_names): Remove.
1367 * testsuite/22_locale/global_templates.cc (test01): Tweaks.
1368 * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
1370 2000-09-18 Yuri V. Baskakov <yuribsk@lab.sun.mcst.ru>
1372 * bits/std_bitset.h (operator>>): Change to char_type.
1374 2000-09-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1376 * src/locale.cc (locale::locale(const char* __name)): Consolidate
1377 name setting. Add checks for NULL __name pointers. Remove calls to
1378 _S_initialize() as initial locale initialization can either be
1379 assumed, or needs to be made consistent throughout locale
1381 (locale::locale(const locale& __other, const char* __name,
1382 category __cat): Add checks for NULL name. Add checks for
1384 * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
1385 const string& __name, category __cat, size_t __refs)): Set correct
1386 name, has_name values.
1387 * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
1388 * docs/22_locale/locale.html: New file, more unfinished docs...
1390 2000-09-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1392 * src/locale.cc (locale::name()): Implement.
1393 (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
1394 string __name = "*")): Change signature.
1395 (locale::classic): Initialize the "C" locale as a named locale.
1396 * bits/localefwd.h (locale): Change _M_num_references to
1397 _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
1399 * bits/localefwd.h: Tweaks.
1400 * src/localename.cc: Tweaks.
1401 * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
1404 * bits/basic_string.h: Consistency check, change _M_state ->
1407 2000-09-14 Brendan Kehoe <brendan@zen.org>
1409 * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
1412 * src/Makefile.an (headers): Also install backward/fstream.h.
1413 * src/Makefile.in: Regenerate.
1415 * bits/char_traits.h (char_traits<_CharT>::get_state,
1416 char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
1417 argument in by reference, not by value. Uglify to _S_get_state.
1418 (char_traits<*>::__eos): Uglify to _S_eos.
1419 * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
1420 Change __eos to _S_eos.
1422 2000-09-13 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1424 * testsuite/22_locale/static_members.cc: New file.
1425 * testsuite/22_locale/ctor_copy_dtor.cc: New file.
1426 * src/locale.cc: Minor formatting tweaks.
1428 2000-09-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1430 * testsuite/22_locale/global_templates.cc (test01): Add negative
1431 tests for use_facet.
1433 * bits/localefwd.h (locale::operator()): Minor tweaks.
1434 * bits/locale_facets.tcc (locale::operator()): Same.
1435 * testsuite/22_locale/operators.cc: New file.
1437 * testsuite/22_locale/facet.cc (output_iterator): Remove
1438 gnu_input_iterator, gnu_output_iterator.
1440 2000-09-11 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1442 * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
1443 * aclocal.m4: Regenerate.
1444 * configure: Regenerate.
1446 * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
1447 snapshot release soon.
1448 (_GNU_SOURCE): Define this in the header files, as ISO C99 support
1449 is pretty much assumed.
1451 * testsuite/22_locale/global_templates.cc: New file. Add tests for
1452 use_facet and has_facet.
1454 * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
1455 Modify/correct iconv signatures for glibc2.2.
1457 2000-09-10 Branko Cibej <branko.cibej@hermes.si>
1459 * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
1462 2000-09-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1464 * bits/localefwd.h (locale::_Impl): Scope out types to public.
1465 (locale): Make _Impl declaration public.
1467 2000-09-08 Felix Natter <fnatter@gmx.net>
1469 * docs/17_intro/porting-howto.html: New version.
1471 2000-09-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1473 * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
1475 * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
1476 * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
1478 2000-09-07 Phil Edwards <pme@sources.redhat.com>
1480 Add bits for --enable-maintainer-mode:
1481 - turns on enable_debug
1482 (doing "--enable-maint --disable-debug" will DTRT)
1483 - turns on -Werror, now off by default
1484 * acinclude.m4: Add bits.
1485 * aclocal.m4: Regenerate.
1486 * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
1487 * configure: Regenerate.
1489 2000-09-07 Benjamin Kosnik <bkoz@cygnus.com>
1491 * bits/std_cwctype.h: Remove yesterday's hacks.
1493 2000-09-07 Brad Garcia <bgarcia@laurelnetworks.com>
1495 * bits/stl_tree.h: Make operators !=, == type safe for map, set.
1496 * testsuite/23_containers/set_operators.cc: New file. Should not
1498 * testsuite/23_containers/map_operators.cc: New file. Ditto.
1500 2000-09-06 Richard Henderson <rth@cygnus.com>
1501 Benjamin Kosnik <bkoz@cygnus.com>
1503 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
1504 * aclocal.m4: Regenerate.
1505 * configure: Regenerate.
1506 * config/cpu/ia64: New directory.
1507 * config/cpu/ia64/bits: New directory.
1508 * config/cpu/ia64/bits/atomicity.h: New file.
1510 2000-09-06 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1512 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
1513 to no, so that libstdc++-v3's libio will be built on glibc-2.2
1515 * aclocal.m4: Regenerate.
1516 * configure: Regenerate.
1517 * */Makefile.in: Regenerate.
1519 * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
1520 glibc 2.1.x unsigned errors. Or disable -Werror by default...
1522 * testsuite/23_containers/vector_element_access.cc: New file.
1523 * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
1525 2000-09-06 Levente Farkas <lfarkas@mindmaker.hu>
1527 * bits/string.tcc: Fix up more parameter names.
1529 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
1531 * configure: Rebuilt with new libtool.m4.
1533 2000-09-01 Benjamin Kosnik <bkoz@cygnus.com>
1535 * src/locale-inst.cc: Remove pre-instantiation of unicode
1536 codecvt types. Now unnecessary, as locale header now correct.
1538 2000-08-31 Benjamin Kosnik <bkoz@cygnus.com>
1540 * bits/locale_facets.tcc (_S_build_float_format): Move ...
1541 * src/locale.cc: Here.
1542 * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
1543 definition. Move specialization to ...
1544 * src/locale.cc: Here.
1545 * bits/locale_facets.tcc: Move _Format_cache specializations to ...
1546 * src/locale.cc: Here.
1547 * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
1548 * src/locale.cc: Here.
1550 * bits/std_locale.h: Note that locale_facets.tcc should be
1551 included here, for standards conformance. It may increase
1552 compile times though. For the time being, enable.
1553 * testsuite/22_locale/facet.cc: New file, some parts commented out
1556 * mkcheck.in: Append total time to test summary file.
1558 * bits/sbuf_iter.h : Formatting tweaks.
1560 Clean up static const data member definitions.
1561 * src/locale.cc: Add definitions for all missing locale,
1562 locale::_Imp, and locale::id static data members.
1563 (ctype<char>): Add table_size define.
1564 (money_base): Add _S_default_pattern, uglify.
1565 * bits/localefwd.h: Add definitions for static members of _Count_ones.
1566 * bits/locale_facets.h: Tweaks.
1567 * bits/locale_facets.tcc: Tweaks.
1568 * bits/string.tcc: Add definition for npos.
1569 * bits/ios_base.h: Tweaks.
1570 * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
1572 * src/ios.cc: And here. Add _S_local_words definition.
1573 Add definitions for __ios_flags const static data.
1574 * src/codecvt.cc: Same for __enc_traits.
1575 * src/locale-inst.cc: Remove money_base data member definition
1578 2000-08-30 Benjamin Kosnik <bkoz@redhat.com>
1580 * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
1582 * docs/22_locale/codecvt.html: Re-number.
1583 * docs/22_locale/howto.html: Add entry for ctype
1584 documentation. Add entry for Nathan's introduction to locales
1586 * docs/22_locale/ctype.html: New file. In progress...
1588 * docs/22_locale/codecvt.html: Formatting cleanups.
1589 * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
1591 2000-08-30 Phil Edwards <pme@sources.redhat.com>
1593 * docs/22_locale/codecvt.html: Behind-the-scenes ASCII->HTML
1594 tweaks for certain browsers.
1596 2000-08-29 Benjamin Kosnik <bkoz@redhat.com>
1598 * bits/locale_facets.h (ctype<char>): Remove __table_type.
1599 Add include for bits/std_cwctype.h, for wctype_t.
1600 * src/locale.cc (ctype<wchar_t>): Implement.
1601 * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
1602 typedef, instead name enum.
1603 * config/gnu-linux/bits/ctype_specializations.h: Tweak.
1604 * config/gnu-linux/ctype.cc: Tweak.
1605 * testsuite/22_locale/ctype.cc: Tweak.
1607 * bits/codecvt.h (__enc_traits): Uglify names.
1609 2000-08-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1611 * docs/22_locale/codecvt.html: Add more bits, format.
1612 * bits/codecvt.h: Add copy ctor, rename types.
1613 * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
1615 * libio/iofwide.c: Tweak.
1617 2000-08-28 Phil Edwards <pme@sources.redhat.com>
1619 * docs/configopts.html: Mention new options.
1620 * docs/install.html: Formatting changes for platform-specific
1621 pre-reqs, previously only Cygwin.
1622 * docs/mail.html: Fix new link.
1623 * docs/thanks.html: A couple more people.
1624 * docs/26_numerics/howto.html: Fix typo.
1626 2000-08-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1628 * docs/22_locale/howto.html: Add notes on codecvt implementation.
1629 * docs/22_locale/codecvt.html: New file. In progress.
1631 2000-08-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1633 * acconfig.h: Revert.
1634 * acinclude.m4: Revert.
1635 * libio/_G_config.h: Revert.
1636 * libio/libio.h: Revert.
1638 2000-08-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1640 * bits/codecvt.h: Tweaks.
1641 * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
1642 initial string literals for UCS4.
1644 2000-08-23 Phil Edwards <pme@sourceware.cygnus.com>
1646 * acconfig.h: _GLIBCPP_USING_THREADS and some workaround types added.
1647 * acinclude.m4: New macro, GLIBCPP_ENABLE_WCHAR. Set the threads
1648 definition as well, and some minor spelling/spacing fixes. If
1649 building libio, check for certain typedefs.
1650 * libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
1651 Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
1652 will never be there.
1653 * libio/libio.h: In the null case, _IO_lock_t can't just be void.
1654 * src/string-inst.cc: Use _GLIBCPP_USE_WCHAR_T.
1656 * configure.in: Update the cache a bit more often.
1658 * mkcheck.in: For check-install, also need to -I the testsuite dir.
1660 2000-08-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1662 * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
1663 __enc_traits> instantiations for has_facet and use_facet.
1664 * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
1665 testing two-byte unicode encodings converted to four-byte UCS4
1668 * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
1669 * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
1670 correct state/encoding information.
1672 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
1673 mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
1675 Add checks for langinfo.h, nl_langinfo function call.
1676 * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
1678 2000-08-22 Richard B. Kreckel <Richard.Kreckel@Uni-Mainz.DE>
1680 * config/cpu/alpha/bits/atomicity.h: Change __attribute__
1681 ((unused)) to __attribute__ ((__unused__)).
1682 * config/cpu/arm/bits/atomicity.h: Same.
1683 * config/cpu/generic/bits/atomicity.h: Same.
1684 * config/cpu/i386/bits/atomicity.h: Same.
1685 * config/cpu/i486/bits/atomicity.h: Same.
1686 * config/cpu/powerpc/bits/atomicity.h: Same.
1687 * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
1688 * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
1690 2000-08-22 Levente Farkas <lfarkas@mindmaker.hu>
1692 * bits/basic_string.h: Fix up parameter names.
1694 2000-08-22 Brent Verner <brent@rcfile.org>
1696 * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
1698 * src/Makefile.in: Regenerate.
1700 2000-08-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1702 * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
1703 up __enc_traits template so as to be marginally useful.
1704 * src/codecvt.cc: And here.
1705 * bits/char_traits: Tweak.
1706 * bits/locale_facets.h: Tweak.
1707 * bits/locale_facets.tcc: Tweak.
1708 * bits/localefwd.h: Tweak.
1709 * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
1710 * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
1711 * testsuite/22_locale/codecvt_char_char.cc: New file.
1712 * testsuite/22_locale/codecvt_unicode_char.cc: New file.
1714 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
1716 * bits/std_cmath.h (std::abs): Overload for int and long.
1718 2000-08-20 Benjamin Kosnik <bkoz@gnu.org>
1720 * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
1722 2000-08-19 Gabriel Dos Reis <gdr@codesourcery.com>
1724 * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
1725 thinko. Diagnostic messages really need to be improved for
1726 template argument deduction.
1728 2000-08-18 Benjamin Kosnik <bkoz@gnu.org>
1730 * bits/valarray_meta.h: Fix typos...
1732 2000-08-18 Gabriel Dos Reis <gdr@codesourcery.com>
1734 * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
1735 _Expr<>::apply): Implement.
1737 2000-08-18 Gabriel Dos Reis <gdr@codesourcery.com>
1739 * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
1741 * bits/valarray_array.h (__valarray_min, __valarray_max): New
1744 2000-08-17 Mark Mitchell <mark@codesourcery.com>
1746 * bits/localefwd.h (std::locale): Use explicit `class' specified
1747 when declaring friends.
1748 * bits/std_fstream.h (std::basic_filebuf): Likewise.
1750 2000-08-16 Alexandre Oliva <aoliva@redhat.com>
1752 * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
1753 * src/Makefile.in: Regenerate.
1755 2000-08-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1757 * bits/codecvt.h: New file.
1758 * src/codecvt.cc: New file.
1759 * bits/std_locale.h: Add include here.
1760 * src/Makefile.am (headers): Add codecvt.h
1761 (sources): Add codecvt.cc.
1762 * src/Makefile.in: Regenerate.
1763 * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
1764 __codecvt_abstract_base in an attempt to point some light this way...
1765 Move __enc_traits and codecvt bits to codecvt.h.
1766 * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
1767 explicit instantiation. Separate out codecvt instantations, simplify.
1768 * src/locale.cc: Move codecvt bits to codecvt.cc
1770 2000-08-15 Alexandre Oliva <aoliva@redhat.com>
1772 * src/Makefile.am (INCLUDES): New target file, with all -I flags.
1773 * src/Makefile.in: Regenerate.
1775 2000-08-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1777 C/C++ io merge/sync.
1788 * config/c_io_libio.cc (__basic_file): Add hacky casts to
1789 ((struct _IO_FILE_plus *) in ctors.
1790 (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
1791 * libio/Makefile.am: Fix copyright. Remove cleanup.c.
1792 * libio/cleanup.c: Remove.
1793 * libio/filedoalloc.c (_IO_file_doallocate): Don't call
1794 _IO_cleanup_registration_needed, even if not libc.
1796 * testsuite/27_io/stringstream.cc (test02): Fix.
1798 2000-08-14 Brent Verner <brent@rcfile.org>
1800 * testsuite/debug_assert.h: new file
1801 * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
1802 changed conditional #include <c?assert.?h?> to
1803 unconditional #include <debug_assert.h>
1804 * mkcheck.in: added $SRC_DIR/testsuite to include search path
1805 for testsuite compile command.
1807 2000-08-14 Levente Farkas <lfarkas@mindmaker.hu>
1809 * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
1810 wofstream, filebuf, wfilebuf, fstream, wfstream.
1811 * bits/std_streambuf.h: Same for streambuf, wstreambuf.
1812 * bits/std_sstream.h: Same for stringstream and wstringstream.
1813 Same for stringbuf, wstringbuf, istringstream, wistringstream,
1814 ostringstream, wostringstream.
1816 * testsuite/26_numerics/valarray.cc: Add test.
1818 2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
1820 * configure: Regenerate after change to ../libtool.m4.
1822 2000-08-10 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1824 * bits/locale_facets.tcc: Formatting tweaks.
1825 * bits/locale_facets.h (__enc_traits): Start integrating this
1826 into codecvt, ctype. Formatting tweaks.
1828 2000-08-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1830 Preliminary wchar_t implementation, with trivial encodings.
1831 * docs/configopts.html: Add bits about canonical configure option
1834 * testsuite/27_io/iostream_objects.cc: Replace this file (which
1835 has newly-declared-illegal mixing of wide/narrow stdstreams) with...
1836 * testsuite/27_io/narrow_stream_objects.cc: New file.
1837 * testsuite/27_io/wide_stream_objects.cc: New file.
1839 * bits/fstream.tcc (underflow): Temporarily hack a solution
1840 together that writes from the external file to the internal
1841 buffers. This removes codecvt from the loop, and is incorrect.
1842 (_M_really_overflow): Same here.
1844 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
1846 2000-08-08 Benjamin Kosnik <bkoz@cygnus.com>
1847 Ulrich Drepper <drepper@cygnus.com>
1849 * config/c_io_libio.h: Tweak.
1850 * config/c_io_libio_codecvt.c: New file.
1851 * libio/Makefile.am: Add c_codecvt.c.
1852 * libio/Makefile.in: Regenerate.
1853 * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
1854 stream is not orientated.
1856 * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
1857 encoding gets fleshed out.
1859 * bits/basic_file.h: Add specialization declarations.
1860 * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
1862 * config/c_io_libio.h: Add __c_wfile_type.
1863 * bits/basic_file.h: Add _M_wfile.
1865 * config/c_io_libio.cc (__basic_file<char>): Initialize the
1866 streams without setting the orientation of the underlying FILE to
1867 either wide or narrow.
1868 (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
1870 2000-08-07 Felix Natter <fnatter@gmx.net>
1872 * docs/17_intro/porting-howto.html: New version.
1874 2000-08-03 Mark Mitchell <mark@codesourcery.com>
1876 * bits/locale_facets.h (ctype::ctype): Don't name unused
1879 2000-08-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1881 * docs/install.html: Edit bits about requiring a special version
1884 2000-07-31 Benjamin Kosnik <bkoz@cygnus.com>
1886 * libio/fileops.cc: Update to current glibc sources.
1887 * libio/genops.c: Same.
1888 * libio/iofwide.c: Same.
1889 * libio/libio.h: Same.
1890 * libio/libioP.h: Same.
1891 * libio/wfiledoalloc.c: Same.
1892 * libio/wgenops.c: Same.
1894 2000-07-28 Alexandre Oliva <aoliva@redhat.com>
1896 * acinclude.m4: Include ../libtool.m4.
1897 * aclocal.m4, configure: Rebuilt.
1899 2000-07-26 Phil Edwards <pme@sourceware.cygnus.com>
1901 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Test for GNU ld
1902 before trying to use any of its options.
1903 (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*): Cache tests.
1904 * aclocal.m4: Regenerate.
1905 * configure.in: Having found GNU make, name it.
1906 * configure: Regenerate.
1907 * docs/install.html: Mention possible problems with caching.
1908 * src/Makefile.am (CXXLINK): Use new OPT_LDFLAGS.
1909 * src/Makefile.in: Regenerate.
1910 * libio/Makefile.in: Regenerate.
1911 * math/Makefile.in: Regenerate.
1912 * Makefile.in: Regenerate.
1914 2000-07-26 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1916 * src/misc-inst.cc (std): Remove instantiations.
1918 * acinclude.m4: Add forward-looking bits for autoconf.
1919 * aclocal.m4: Regenerate.
1921 * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
1923 2000-07-25 Benjamin Kosnik <bkoz@gnu.org>
1925 * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
1926 it back for current versions of maintainer-tools...
1927 * acinclude.m4: Some cleanups...
1928 * aclocal: Regenerated.
1929 * configure: Regenerated.
1931 * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
1932 optimizing/adapting the hash table using GNU ld.
1933 * src/Makefile.in: Regenerate.
1935 2000-07-24 H.J. Lu <hjl@gnu.org>
1937 * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
1938 even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
1939 files don't include private libio header files needed by
1941 * src/Makefile.in: Rebuild.
1943 2000-07-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1945 * bits/std_fstream.h: Parameterize __basic_file.
1946 * config/c_io_libio.cc: Add wchar_t methods for parameterization.
1947 * bits/basic_file.h: Same here.
1949 * bits/istream.tcc (getline): Tweaks.
1951 * bits/fstream.tcc: Shorten __retval to __ret.
1952 * bits/ostream.tcc: Same.
1953 * bits/sbuf_iter.h: Same.
1954 * bits/sstream.tcc: Same.
1955 * bits/streambuf.tcc: Same.
1956 * bits/std_fstream.h: Same.
1957 * src/string-inst.cc: Same.
1959 * config/c_io_libio.cc: Same.
1960 * bits/string.tcc: Same.
1961 * bits/std_streambuf.h: Same.
1963 2000-07-23 Brent Verner <brent@rcfile.org>
1965 * bits/istream.tcc: istream::getline(char_type*, streamsize,
1966 char_type) make compliant
1967 * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
1969 2000-07-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1971 * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
1972 and srcdir used to define CSHADOW_INCLUDES..
1974 * configure.in: For consistency, change .sanity_warned to
1975 stamp-sanity-warned.
1977 * acinclude.m4: Tweak formatting.
1978 * Makefile.am (check): Call mkcheck with full pathname for build
1980 (check-install): And here.
1981 * Makefile.in: Regenerate.
1983 2000-07-22 Gabriel Dos Reis <gdr@codesourcery.com>
1985 Line up with libstdc++-v2 version of valarray.
1986 * bits/valarray_array.h (__valarray_product): Make inline.
1987 * src/valarray-inst.cc (__valarray_product): Remove explicit
1990 2000-07-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1992 * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
1995 * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
1996 Change return type to void.
1997 * testsuite/25_algorithms/lower_bound.cc: Add return values.
1998 * testsuite/17_intro/header_ciso646.cc: Modify.
1999 * bits/locale_facets.h: Add return values for the generic cases.
2001 2000-07-21 H.J. Lu (hjl@gnu.org)
2003 * acinclude.m4: Include <features.h> for glibc testing.
2004 * aclocal.m4: Likewise.
2006 * configure: Rebuild.
2008 2000-07-20 H.J. Lu (hjl@gnu.org)
2010 * acinclude.m4: Change "#pragma system_header" to
2011 "#pragma GCC system_header".
2012 * aclocal.m4: Likewise.
2013 * bits/std_cmath.h: Likewise.
2014 * bits/std_cassert.h: Likewise.
2015 * bits/std_cctype.h: Likewise.
2016 * bits/std_cerrno.h: Likewise.
2017 * bits/std_cfloat.h: Likewise.
2018 * bits/std_climits.h: Likewise.
2019 * bits/std_clocale.h: Likewise.
2020 * bits/std_cwchar.h: Likewise.
2021 * bits/std_csetjmp.h: Likewise.
2022 * bits/std_csignal.h: Likewise.
2023 * bits/std_cstdarg.h: Likewise.
2024 * bits/std_cstddef.h: Likewise.
2025 * bits/std_cstdio.h: Likewise.
2026 * bits/std_cstdlib.h: Likewise.
2027 * bits/std_cstring.h: Likewise.
2028 * bits/std_ctime.h: Likewise.
2029 * bits/std_cwctype.h: Likewise.
2030 * bits/std_exception.h: Likewise.
2031 * bits/std_new.h: Likewise.
2032 * bits/std_typeinfo.h: Likewise.
2033 * shadow/bits/std_cassert.h: Likewise.
2034 * shadow/bits/std_cctype.h: Likewise.
2035 * shadow/bits/std_cerrno.h: Likewise.
2036 * shadow/bits/std_cfloat.h: Likewise.
2037 * shadow/bits/std_climits.h: Likewise.
2038 * shadow/bits/std_clocale.h: Likewise.
2039 * shadow/bits/std_cmath.h: Likewise.
2040 * shadow/bits/std_csetjmp.h: Likewise.
2041 * shadow/bits/std_csignal.h: Likewise.
2042 * shadow/bits/std_cstdarg.h: Likewise.
2043 * shadow/bits/std_cstddef.h: Likewise.
2044 * shadow/bits/std_cstdio.h: Likewise.
2045 * shadow/bits/std_cstdlib.h: Likewise.
2046 * shadow/bits/std_cstring.h: Likewise.
2047 * shadow/bits/std_ctime.h: Likewise.
2048 * shadow/bits/std_cwchar.h: Likewise.
2049 * shadow/bits/std_cwctype.h: Likewise.
2050 * shadow/bits/wrap_libio.h: Likewise.
2051 * shadow/bits/wrap_unistd.h: Likewise.
2052 * shadow/sys/cdefs.h: Likewise.
2054 * configure: Rebuild.
2056 2000-07-20 Jakub Jelinek <jakub@redhat.com>
2058 * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
2059 Use extended word instructions to match 64bit _Atomic_word.
2060 (__atomic_add): Likewise.
2061 * math/clog10l.c (clog10l): Use M_PIl if defined.
2062 * math/c_logl.c (c_logl): Likewise.
2063 * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
2064 * math/mathconf.h (ieee_quad_double_shape_type): New type.
2065 (GET_LDOUBLE_MSW64): New define.
2067 2000-07-20 Benjamin Kosnik <bkoz@cygnus.com>
2069 * bits/std_streambuf.h: Add bits for pback buffers here, so that
2070 in_avail, etc can use them.
2071 * bits/std_fstream.h: Ditto.
2072 * bits/fstream.tcc: Ditto.
2073 * testsuite/27_io/filebuf.cc: Tweaks.
2074 * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
2076 2000-07-19 Benjamin Kosnik <bkoz@cygnus.com>
2078 * src/localename.cc: Same.
2079 * src/locale.cc: Same.
2080 * bits/localefwd.h: _M_init_facet to _M_facet_init.
2082 * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
2084 * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
2086 * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
2087 * bits/std_fstream.h: Same.
2089 * bits/basic_string.h: Tweaks.
2091 2000-07-19 Phil Edwards <pme@sourceware.cygnus.com>
2093 * docs/18_support/howto.html: Update.
2095 2000-07-19 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
2097 Internal consistency checks.....
2098 * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
2101 * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
2102 * bits/basic_ios.tcc: Same.
2104 * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
2105 Change _M_fctype_buf to _M_buf_fctype.
2106 * bits/fstream.tcc: Same.
2108 * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
2109 Change _M_locale_set to _M_buf_locale_init.
2110 * bits/streambuf.tcc: Same.
2111 * bits/sstream.tcc: Same.
2112 * bits/fstream.tcc: Same.
2114 * bits/std_streambuf.h: Make typedefs consistent.
2115 (_M_buf_bump): Be more careful with input sequence.
2117 * bits/std_sstream.h: Same.
2118 * bits/std_fstream.h: Same.
2120 2000-07-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2122 * acinclude.m4: Tweaks.
2123 * config/c_io_libio.cc: Tweaks.
2124 * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
2125 * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
2126 * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
2127 * libio/iofclose.c iofopen.c, stdio.c: New files.
2128 * libio/Makefile.am: Add files, add flags, etc.
2129 * src/Makefile.am (sources): Add filebuf.cc.
2130 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
2131 (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
2133 2000-07-17 Phil Edwards <pme@sourceware.cygnus.com>
2135 * acinclude.m4: Import CHECK_GNU_MAKE from autoconf macro archive.
2136 * configure.in: Use it. Also print reminders one time.
2137 * aclocal.m4: Regenerate.
2138 * configure: Regenerate.
2140 2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
2142 * bits/valarray_array.h (__valarray_get_storage): New function.
2143 (_Array<>::Array): Use it.
2144 * bits/std_valarray.h (valarray<>::valarray): Likewise.
2145 (valarray<>::resize): Likewise. Tweak.
2146 * src/valarray-inst.cc (__valarray_product): Tweak.
2148 2000-07-11 Phil Edwards <pme@sourceware.cygnus.com>
2150 * docs: Update sourceware->sources in every HTML file. Minor updates.
2152 2000-07-07 Benjamin Kosnik <bkoz@soma.redhat.com>
2154 Clean up configure/build longstanding issues.
2155 * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
2156 (CXXLINK): Add here, instead.
2158 * Makefile.am (check-install): Make sure mkcheck has execute privs.
2160 * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
2162 * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
2163 c_io_libio.cc instead of copying.
2164 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
2166 * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
2167 c++threads.h instead of copying.
2168 * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
2171 * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
2172 * bits/basic_file.h: Declare.
2174 * mkcheck.in (TESTS_FILE): Use -v instead of --version.
2176 2000-07-07 brent verner <brent@rcfile.org>
2178 * testsuite/27_io/istream_unformatted.cc (test05): New test.
2180 2000-07-07 Benjamin Kosnik <bkoz@gnu.org>
2182 * bits/istream.tcc (istream::getline): Minor tweaks.
2184 2000-07-07 Phil Edwards <pme@sourceware.cygnus.com>
2186 * docs/download.html: Mention gcc_update.
2187 * docs/configopts.html: Minor updates.
2188 * docs/gccrebuild.html: Ditto.
2189 * docs/18_support/howto.html: More tips, explanations, and reminders.
2190 * docs/19_diagnostics/howto.html: Ditto.
2191 * docs/21_strings/howto.html: Ditto.
2192 * docs/24_iterators/howto.html: Ditto.
2193 * docs/25_algorithms/howto.html: Ditto.
2194 * docs/26_numerics/howto.html: Ditto.
2196 2000-07-05 brent verner <brent@rcfile.org>
2198 * testsuite/27_io/ifstream_members.cc (test01): Add tests.
2199 * testsuite/27_io/ofstream_members.cc (test01): Add tests.
2200 * config/c_io_libio.cc (__basic_file::open): Unset
2201 ~_IO_DELETE_DONT_CLOSE.
2203 2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
2205 * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
2206 bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
2207 Do not paste anything after 'operator' keyword.
2209 2000-07-03 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2211 * bits/std_memory.h: Revert.
2213 2000-07-03 Brendan Kehoe <brendan@zen.org>
2215 * bits/std_complex.h: Fix parens. Format.
2217 2000-07-03 scott snyder <snyder@fnal.gov>
2219 * bits/locale_facets.tcc (_M_extract): Only figure out the base
2220 from the input if base == 0.
2221 * testsuite/27_io/istream_extractor_arith.cc: Test reading a
2222 number with a leading `0' in hex mode.
2224 * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
2226 * mkinclosure: Change `==' to `=' in test.
2228 2000-07-03 Chip Salzenberg <chip@valinux.com>
2230 * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
2232 * src/Makefile.in: Regenerate.
2234 2000-07-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2235 Ulrich Drepper <drepper@purist.soma.redhat.com>
2237 Sync libio to glibc-2.2 current CVS.
2238 * libio/_G_config.h: New file.
2239 * libio/wfileops.c: New file.
2240 * libio/wfiledoalloc.c: New file.
2241 * libio/wgenops.c: New file.
2242 * libio/iofwide.c: New file.
2243 * libio/Makefile.am: Tweaks.
2244 * libio/Makefile.in: Regenerate.
2245 * libio/gen-params: Remove. Generic replacement for this yet undone.
2246 * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
2247 libioP.h, stdfiles.c]: Update.
2248 * config/c_io_libio.cc: Tweaks.
2249 * acinclude.m4: Complete hacks to test wide io.
2250 * aclocal.m4: Regenerate.
2251 * configure: Regenerate.
2252 * src/Makefile.am: Update.
2253 * src/Makefile.in: Regenerate.
2255 * math/cargl.c: Remove underscores.
2257 * bits/locale_facets.h: Tweaks. Start adding iconv details
2259 * bits/locale_facets.tcc: Tweaks.
2260 * bits/std_cwchar.h: Tweaks.
2262 2000-06-29 scott snyder <snyder@fnal.gov>
2264 * bits/concept_checks.h
2265 (__less_then_comparable_requirement_violation): Only check for <.
2266 * testsuite/25_algorithms/lower_bound.cc: New file.
2268 2000-06-29 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2270 * testsuite/27_io/ostream_manip.cc (test02): Add tests.
2271 * bits/ostream.tcc: Tweak.
2272 * bits/std_fstream.h (basic_filebuf::setbuf): Reset
2273 _M_buf_size_opt too.
2274 * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
2275 out _M_buf_size_opt.
2276 * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
2277 _M_buf_size_opt out here.
2278 * bits/char_traits.h (char_traits::eos): Non standard member
2279 function, uglify to __eos. Return char_type().
2280 * bits/std_ostream.h: Change.
2282 * testsuite/27_io/ostream_seeks.cc: New file.
2283 * testsuite/27_io/ostream_seeks-1.tst: New file.
2284 * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
2286 * testsuite/27_io/istream_seeks.cc: New file.
2288 2000-06-29 Branko Cibej <branko.cibej@hermes.si>
2290 * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
2291 _GLIBCPP_RESOLVE_LIB_DEFECTS.
2292 (auto_ptr): _M_ptr changed to void*.
2293 (suto_ptr::get): Cast _M_ptr to element type.
2294 (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
2295 (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
2296 (auto_ptr::operator*): Likewise.
2297 (auto_ptr::operator->): Likewise.
2298 (auto_ptr::release): Likewise.
2299 (auto_ptr::reset): Likewise.
2300 (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
2301 (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
2302 Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
2303 Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
2305 2000-06-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2307 * testsuite/27_io/filebuf.cc: Tweak.
2308 * testsuite/27_io/filebuf_members.cc (test_01): Fix.
2309 * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
2311 (__basic_file::basic_file): Clean, add calls similar to
2313 (__basic_file::open): Clean.
2314 (__basic_file::sys_open): Clean.
2316 * bits/std_fstream.h: Revert.
2317 * bits/fstream.tcc (filebuf::close()): Revert.
2318 (filebuf::basic_filebuf()): Revert.
2320 2000-06-27 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2322 Update to SGI STL 3.3
2323 * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
2324 ext/stl_rope.h, ext/ropeimpl.h: Update.
2325 * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
2326 bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
2327 bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
2328 bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
2329 bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
2330 bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
2331 bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
2332 bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
2333 bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
2335 * src/Makefile.am (headers): Add new files.
2336 * src/Makefile.in: Regenerate.
2337 * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
2338 * bits/concept_checks.h: New file.
2339 * bits/container_concepts.h: New file.
2340 * bits/sequence_concepts.h: New file.
2342 2000-06-27 H.J. Lu <hjl@gnu.org>
2343 Loren J. Rittle <ljrittle@acm.org>
2345 * mkcheck.in: Add support to print standard flags needed to
2346 test g++ in build tree. Enhance command line error checking.
2348 2000-06-27 Phil Edwards <pme@sourceware.cygnus.com>
2350 * docs/install.html: Fix minor typo as reported.
2352 2000-06-26 Brent Verner <brent@rcfile.org>
2354 * bits/string.tcc (string::rfind): Fix.
2355 * testsuite/21_strings/rfind.cc: New file.
2357 2000-06-26 Anthony Williams <anthony@anthonyw.cjb.net>
2359 * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
2361 2000-06-26 Branko Cibej <branko.cibej@hermes.si>
2363 * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
2365 * mkcheck.in: Make the *.txt and *.tst files writable after
2366 copying them to $TEST_DIR.
2368 * testsuite/27_io/ostream_inserter_arith.cc: Renamed
2369 __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE. Define
2370 TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
2372 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2374 * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
2375 (basic_filebuf::close): Use it.
2376 * bits/std_fstream.h (basic_filebuf): Remove default arguments for
2378 (basic_filebuf): Add _M_fileno_based data member.
2379 As reported by brent verner <brent@rcfile.org>
2380 * testsuite/27_io/filebuf_members.cc: New file.
2381 * testsuite/27_io/filebuf_members-1.tst: New file.
2383 * bits/std_fstream.h: Formatting tweaks.
2384 * testsuite/27_io/ofstream_members.cc: New file.
2385 * testsuite/27_io/ofstream_members-1.tst: New file.
2386 * testsuite/27_io/ifstream_members.cc: New file.
2387 * testsuite/27_io/ifstream_members-1.tst: New file.
2389 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2390 Ulrich Drepper <drepper@cygnus.com>
2392 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
2393 that all the freaky stuff like sincos will be around...
2395 2000-06-22 Branko Cibej <branko.cibej@hermes.si>
2397 * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
2399 2000-06-22 Steven King <sxking@uswest.net>
2401 * acinclude.m4: Check for sinl, _sinl using 1 parameter.
2403 2000-06-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2405 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
2406 same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
2407 link against libm and don't use -fno-builtins...
2408 * math/mathconf.h: Change up builtin macros to new schema.
2409 * bits/std_cmath.h: And here. Wheee!
2410 * shadow/bits/std_cmath.h: And here.
2411 * acconfig.h: Change up builtin macros here.
2412 * math/cosf.c: Remove.
2413 * math/fabsf.c: Likewise.
2414 * math/sinf.c: Likewise.
2415 * math/sqrtf.c: Likewise.
2416 * math/Makefile.am (EXTRA_DIST): Remove those four files.
2417 * math/Makefile.in: Regenerate.
2419 2000-06-22 Anthony Williams <anthony@anthonyw.cjb.net>
2421 * testsuite/21_strings/find.cc: Patch.
2423 2000-06-22 Benjamin Kosnik <bkoz@soma.redhat.com>
2425 * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
2426 an easy way to get at g++ without having to link in libstdc++.
2428 2000-06-21 Benjamin Kosnik <bkoz@soma.redhat.com>
2430 Fix alpha, powerpc build failures.
2431 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
2432 re-write. Need to check for both proper declaration when using a
2433 c++ compiler, and "C" linkage when linking. Do both, and if both
2434 exist, then define the HAVE_* bits in config.h.
2435 (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
2436 (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
2439 2000-06-20 Anthony Williams <anthony@anthonyw.cjb.net>
2441 * bits/string.tcc: Fix find.
2442 * testsuite/21_strings/find.cc: Patch.
2444 2000-06-20 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2446 * docs/install.html: Update where to get automake, where to get
2448 * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
2451 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
2453 * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
2454 Add -Werror-implicit-function-declaration instead.
2456 Regenerate with fixed maintainer-tools.
2457 * aclocal.m4: Regenerate.
2458 * configure: Regenerate.
2459 * libio/Makefile.in: Regenerate.
2460 * src/Makefile.in: Regenerate.
2462 2000-06-19 Russell Davidson <russell@ehess.cnrs-mrs.fr>
2464 * testsuite/27_io/istream_extractor_arith.cc: Patch.
2465 * bits/locale_factets.tcc: Tweak.
2467 2000-06-19 Raja R Harinath <harinath@cs.umn.edu>
2469 * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
2470 be overridden on the command line for individual files.
2472 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
2474 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
2475 AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
2476 building. Use -x c++ instead, which does not attempt to link
2479 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
2480 not coring when we hit a try/throw block, which was the problem
2481 with the linker support...
2483 * docs/17_intro/contribute.html: Add bits about getting to the LWG
2485 * docs/documentation.html: Rename link to make more accurate and scary.
2486 * docs/gccrebuild.html: Edit for clarity as these are no longer
2488 * docs/install.html: Add bits about binutils for
2489 -ffunction-sections, -fdata-sections, -Wl,--gc-sections
2491 * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
2492 * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
2493 USE_COMPLEX_LONG_DOUBLE.
2494 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
2495 GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
2496 Works around irregularies in powerpc "C" compiler, but a good idea
2499 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
2500 New. Merge both old compiler bug checks for complex into this.
2502 2000-06-19 Anthony Williams <anthony@anthonyw.cjb.net>
2504 * testsuite/21_strings/find.cc: Empty strings can be found at all
2505 positions. Modified.
2507 2000-06-19 Branko Cibej <branko.cibej@hermes.si>
2509 * testsuite/20_utilities: New directory.
2510 * testsuite/20_utilities/auto_ptr.cc: New file.
2512 2000-06-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2514 * src/Makefile.am (string_sources): Simplify, assuming that with
2515 -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
2516 hacking is not necessary.
2517 (wstring_sources): Same.
2518 (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
2520 * src/string-inst.cc: Remove macro blocks.
2521 * mkcheck.in (CXX_FLAG): Add bits here.
2523 * src/string-inst.cc: Remove iostream-related string instantiations.
2524 * src/misc-inst.cc: Add here.
2526 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
2528 * aclocal.m4: Regenerate.
2529 * configure.in: Change up.
2530 * configure: Regenerate.
2532 2000-06-13 Steven King <sxking@uswest.net>
2534 * acinclude.m4: Fixup some of the builtin math tests and add tests for
2535 __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
2536 * acconfig.h: Add entries for fmod*.
2538 2000-06-13 Branko Cibej <branko.cibej@hermes.si>
2540 * bits/std_cmath.h: Fix typos in tests (*_FMODFF -> *_FMODF).
2541 Test *_MODFF not *_MODF for modf(float, float*).
2542 (modf(float, float*)): Remove reference to _C_legacy.
2544 2000-06-13 Benjamin Kosnik <bkoz@redhat.com>
2546 * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
2547 _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
2548 superset, and already defined at top level.
2549 * aclocal.m4: Regenerate.
2550 * configure: Regenerate.
2552 * docs/17_intro/contribute.html: Plead with people to use -cp.
2554 2000-06-13 Anthony Williams <anthony@anthonyw.cjb.net>
2556 * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
2558 * testsuite/27_io/filebuf.cc: Changed calls to
2559 fpos<>._M_position() to implicit calls to operator streamoff().
2560 * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
2561 as not needed. Revert, as part of standard.
2562 * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
2563 call to numpunct<>._M_init() with overrides of the appropriate
2566 * testsuite/27_io/stringstream.cc: Removed unnecessary char *
2567 pointers from test01, so no need to call base(), which isn't
2568 guaranteed to be implemented as iterators may themselves be pointers
2569 * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
2570 _M_position() - use implicit conversion to streamoff instead
2572 2000-06-13 Thomas Holenstein <thomas@hex.ch>
2574 * bits/stl_iterator.h: Added inline to operators == to >=.
2576 2000-06-13 Brent Verner <brent@rcfile.org>
2578 * bits/streambuf.tcc: repaired _S_copy_streambufs()
2579 * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
2581 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2583 * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
2585 * src/locale.cc: Add cwchar include here. Remove incorrect
2586 definitions, and stub them out.
2587 * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
2588 * config/solaris/solaris2.7/ctype.cc (ctype): Same.
2589 * config/solaris/solaris2.5/ctype.cc (ctype): Same.
2590 * config/newlib/ctype.cc: Same.
2591 * config/gnu-linux/ctype.cc: Same.
2592 * config/bsd/ctype.cc: Same.
2593 * config/aix/ctype.cc: Same.
2595 2000-06-12 Branko Cibej <branko.cibej@hermes.si>
2597 * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
2598 towupper and towlower to convert wide characters.
2600 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2602 * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
2604 2000-06-08 Branko Cibej <branko.cibej@hermes.si>
2606 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Check for
2607 sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
2608 * aclocal.m4: Regenerate.
2609 * configure: Regenerate.
2610 * math/cosf.c: New file.
2611 * math/fabsf.c: Likewise.
2612 * math/sinf.c: Likewise.
2613 * math/sqrtf.c: Likewise.
2614 * math/Makefile.am (EXTRA_DIST): Add those four files.
2615 * math/Makefile.in: Regenerate.
2617 2000-06-08 Phil Edwards <pme@sourceware.cygnus.com>
2619 * testsuite/26_numerics/complex_inserters_extractors.cc: Need cmath.
2621 2000-06-06 Steven King <sxking@uswest.net>
2623 * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
2624 double and long double. Added defines for HAVE libm math functs for
2625 float and long double.
2626 * aclocal.m4: Added configure checks for builtin math funcs and libm
2627 support for float and long double versions of the math functions.
2628 * config.h.in: Added undefs for math functs.
2629 * configure: Regenerate.
2630 * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
2631 _GLIBCPP_HAVE_BUILTIN_*.
2632 * bits/std_cmath.h: Added long double support. Use builtins for
2633 float, double and long if available, otherwise, use libm versions if
2634 availible, otherwise, punt.
2635 * shadow/bits/std_cmath.h: ditto
2637 2000-06-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2639 * bits/locale_facets.h: Tweak.
2640 * src/locale.cc (codecvt<wchar_t>): Tweak.
2642 * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x.
2643 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
2645 * bits/basic_string.h: Move data member up.
2646 * src/string-inst.cc: Fix instantiations.
2647 * bits/string.tcc: Fix types.
2649 2000-06-02 Anthony Williams <anthony@anthonyw.cjb.net>
2651 * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
2653 2000-06-01 Benjamin Kosnik <bkoz@gnu.org>
2655 * bits/std_cwctype.h: Clean.
2656 * bits/std_cwchar.h: Clean, remove cruft.
2658 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
2659 for beginning iconv support.
2660 Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
2662 * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
2663 * bits/limits_generic.h: Remove.
2664 * src/gen-num-limits.cc: Same.
2666 * src/locale.cc: Tweaks.
2668 * bits/char_traits.h: Tweaks.
2670 2000-05-31 Russell Davidson <russell@ehess.cnrs-mrs.fr>
2672 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
2673 exponent, scientific formatting issues.
2674 * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
2676 2000-05-31 Branko Cibej <branko.cibej@hermes.si>
2678 * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
2679 and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
2681 2000-05-31 Nathan Myers <ncm@cantrip.org>
2683 * docs/thanks.html: edit own credits
2685 2000-05-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2687 * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
2689 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
2691 * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
2693 2000-05-31 Steven King <sxking@uswest.net>
2695 * shadow/time.h: fix typo
2696 * shadow/wchar.h: ifdef __USE_GNU for wcsdup
2697 * shadow/bits/std_cwchar.h: ditto
2698 * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
2701 2000-05-26 Phil Edwards <pme@sourceware.cygnus.com>
2703 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't
2704 available, force --disable. Need to flesh this out; make smarter.
2705 * aclocal.m4: Regenerate.
2706 * configure: Regenerate.
2708 * mkcheck.in: Minor tweaks.
2709 * docs/download.html: Fix typo.
2711 2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
2713 * inclosure: Change to...
2714 * mkinclosure: This.
2716 * mkcshadow: Fix paths to bash.
2718 * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
2719 * src/Makefile.in: Regnerate.
2720 * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
2721 (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
2722 * aclocal.m4: Regenerate.
2723 * mkcheck.in (INC_PATH): Tweak.
2725 * configure.in: Enable long long by default.
2726 * configure: Regenerate.
2728 * mkcheck.in (LIB_PATH): Revert.
2730 2000-05-24 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
2732 * config/cpu/i486: New directory.
2733 * config/cpu/i486/bits: New directory.
2734 * config/cpu/i486/bits/atomicity.h: New file.
2735 * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
2737 * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
2739 2000-05-24 Loren J. Rittle <ljrittle@acm.org>
2741 * backward/alloc.h (__default_alloc_template): Only expose
2742 implementation-specific symbol, if it exists in the
2744 * backward/iostream.h (ends): Expose symbol.
2745 * backward/strstream.h: New file.
2746 * backward/stream.h: New file.
2747 * backward/ostream.h: New file.
2748 * backward/istream.h: New file.
2749 * backward/fstream.h: New file.
2750 * backward/complex.h: New file.
2751 * backward/iomanip.h: New file.
2753 * mkcheck.in (LIB_PATH): Add -R bits.
2755 * math/carg.c (carg): Replace __atan2 with atan2.
2757 2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2759 * Makefile.am (TAGS): Construct.
2760 * Makefile.in: Rengerate.
2761 * src/Makefile.am: Tweak.
2762 * src/Makefile.in: Tweak.
2763 * configure.in: Tweak.
2765 * bits/c++config.h: Rename to ...
2766 * bits/c++config: This.
2767 * mkc++config: Adjust.
2770 * m4/lc_message.m4: Merge into acinclude.m4.
2771 * m4/mathfcts.m4: Same.
2772 * m4/stringfcts.m4: Same.
2773 * acinclude.m4: Add here.
2774 * configure: Regnerate.
2776 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
2777 OPTLEVEL. Add FMTFLAGS.
2778 * aclocal.m4: Regenerate.
2779 * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
2780 been disabled due to higher-level Makefiles running amuck over
2781 this bit, and add in FMTFLAGS so that formatting is clear.
2782 * src/Makefile.in: Regenerate.
2783 * configure: Regenerate.
2785 * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
2788 * docs/download.html: Remove references to Cygwin-specific bits,
2789 as this can now be built natively.
2790 Update with current information.
2792 2000-05-24 Phil Edwards <pme@sourceware.cygnus.com>
2794 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): If we can use
2795 -fdiagnostics-show-location=once, do so. Expand AC_LANG_* to
2796 enclose other tests in this macro, including future ones.
2797 * aclocal.m4: Regenerate.
2798 * configure: Regenerate.
2800 * docs/faq/index.html: Update location of libg++ FAQ.
2801 * docs/faq/index.txt: Regenerate.
2803 2000-05-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
2805 * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
2807 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
2809 * mkcheck.in: Tweak for Solaris 8. Additional minor output comment.
2811 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
2813 * acinclude.m4: If the new pragma isn't supported, don't kill -Werror;
2814 keep -Werror and add -Wno-unknown-pragma. -Werror Is Good.
2815 * aclocal.m4: Regenerate.
2816 * configure: Regenerate.
2818 2000-05-19 Nathan C. Myers <ncm@cantrip.org>
2820 * bits/generic_shadow.h: s/swamp/legacy/
2822 2000-05-19 Phil Edwards <pme@sourceware.cygnus.com>
2824 * acinclude.m4: Clean up comments on newer checks.
2825 (GLIBCPP_CHECK_COMPILER_VERSION): Check for system_header
2826 pragma support. Remove WERRORSUPPRESS variable, add WERROR.
2827 * aclocal.m4: Regenerate.
2828 * configure: Regenerate.
2829 * Makefile.in: Regenerate.
2830 * libio/Makefile.in: Regenerate.
2831 * math/Makefile.in: Regenerate.
2832 * src/Makefile.am: Tell make's WERROR to depend on configure's WERROR.
2833 * src/Makefile.in: Regenerate.
2834 * docs/configopts.html: Document changes to --enable names.
2836 2000-05-18 Chip Salzenberg <chip@valinux.com>
2838 * bits/ostream.tcc (_S_pad_char): Function template should not be
2840 * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
2841 * src/string-inst.cc (__destroy_aux): Instantiate for string*.
2843 2000-05-18 Nathan C. Myers <ncm@cantrip.org>
2845 * mkcshadow: Change C_Swamp to C_legacy.
2847 * shadow/bits/*: Same.
2848 s/C_Swamp/C_legacy/g
2852 2000-05-18 Anthony Williams <anthony@anthonyw.cjb.net>
2854 * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
2856 * src/string-inst.cc (string::_S_find): Same.
2858 2000-05-18 Benjamin Kosnik <bkoz@gnu.org>
2860 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
2861 --enable-cshadow-headers. Add output messages.
2862 (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
2863 underscores (like the rest of the enable options.) Add output messages.
2864 * aclocal.m4: Regenerate.
2865 * configure: Regenerate.
2866 * configure.in: Touch.
2868 2000-05-17 Benjamin Kosnik <bkoz@cygnus.com>
2870 * mkcheck.in: Enable shared library testing.
2872 2000-05-17 Nathan C. Myers <ncm@cantrip.org>
2874 * bits/std_cmath.h: fix sqrt(float)
2876 2000-05-16 Loren J. Rittle <ljrittle@acm.org>
2878 * bits/std_cassert.h: Use system_header pragma.
2879 * bits/std_cctype.h: Likewise.
2880 * bits/std_cerrno.h: Likewise.
2881 * bits/std_cfloat.h: Likewise.
2882 * bits/std_climits.h: Likewise.
2883 * bits/std_clocale.h: Likewise.
2884 * bits/std_cmath.h: Likewise.
2885 * bits/std_csetjmp.h: Likewise.
2886 * bits/std_csignal.h: Likewise.
2887 * bits/std_cstdarg.h: Likewise.
2888 * bits/std_cstddef.h: Likewise.
2889 * bits/std_cstdio.h: Likewise.
2890 * bits/std_cstdlib.h: Likewise.
2891 * bits/std_cstring.h: Likewise.
2892 * bits/std_ctime.h: Likewise.
2893 * bits/std_cwchar.h: Likewise.
2894 * bits/std_cwctype.h: Likewise.
2895 * bits/std_exception.h: Likewise.
2896 * bits/std_new.h: Likewise.
2897 * bits/std_typeinfo.h: Likewise.
2898 * shadow/bits/std_cassert.h: Likewise.
2899 * shadow/bits/std_cctype.h: Likewise.
2900 * shadow/bits/std_cerrno.h: Likewise.
2901 * shadow/bits/std_cfloat.h: Likewise.
2902 * shadow/bits/std_climits.h: Likewise.
2903 * shadow/bits/std_clocale.h: Likewise.
2904 * shadow/bits/std_cmath.h: Likewise.
2905 * shadow/bits/std_csetjmp.h: Likewise.
2906 * shadow/bits/std_csignal.h: Likewise.
2907 * shadow/bits/std_cstdarg.h: Likewise.
2908 * shadow/bits/std_cstddef.h: Likewise.
2909 * shadow/bits/std_cstdio.h: Likewise.
2910 * shadow/bits/std_cstdlib.h: Likewise.
2911 * shadow/bits/std_cstring.h: Likewise.
2912 * shadow/bits/std_ctime.h: Likewise.
2913 * shadow/bits/std_cwchar.h: Likewise.
2914 * shadow/bits/std_cwctype.h: Likewise.
2915 * shadow/bits/wrap_libio.h: Likewise.
2916 * shadow/bits/wrap_unistd.h: Likewise.
2917 * shadow/sys/cdefs.h: Likewise.
2919 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
2921 It appears that gcc-2.96 supports the keyword "and" now.
2922 * bits/std_ciso646.h: remove.
2924 * testsuite/17_intro/header_ciso646.c: enable testing.
2925 * src/Makefile.am, src/Makefile.in: remove mention of
2928 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
2930 * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
2932 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
2934 * acinclude.m4: Fix typo, switch to decaf...
2935 * aclocal.m4: Regenerate.
2936 * configure: Regenerate.
2938 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
2940 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro, stub.
2941 * aclocal.m4: Regenerate.
2942 * configure.in: Call.
2943 * configure: Regenerate.
2944 * docs/configopts.html: Stub documentation.
2946 2000-05-14 Nathan Myers <ncm@cantrip.org>
2948 * mkcshadow: build in more-correct directory, create cshadow/
2949 directory if needed, report progress.
2951 2000-05-14 LLeweLLyn Reese <llewelly@dbritsch.dsl.xmission.com>
2953 * src/Makefile.am: Fix tr commands.
2954 * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
2955 * src/string-inst.cc: Remove extra instantiation of
2956 S::basic_string(S::size_type, C, S::allocator_type const&);
2957 * src/string-inst.cc: Remove extra template keyword.
2959 2000-05-14 Loren J. Rittle <ljrittle@acm.org>
2961 * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
2962 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
2963 * aclocal.m4: Regenerate.
2964 * configure: Regenerate.
2965 * */Makefile.in: Regenerate.
2967 2000-05-11 Phil Edwards <pme@sourceware.cygnus.com>
2969 * acinclude.m4: Fix minor typo with ctypes, add more sanity to
2970 enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
2971 * aclocal.m4: Regenerate.
2972 * configure.in: Non-blank arguments break fewer Linuxes.
2973 * configure: Regenerate.
2974 * src/Makefile.am: Re-order AC_CXXFLAGS components.
2975 * src/Makefile.in: Regenerate.
2977 2000-05-10 Benjamin Kosnik <bkoz@redhat.com>
2979 * bits/std_cmath.h: Tweaks.
2980 * math/mathconf.h: Tweaks and fixes for HP-UX 11.
2981 (sqrtf): Define away iff !builtin and !in <math.h>.
2985 At some point this directory should be converted to c++, the
2986 autoconf tests should be run by the c++ compiler (not c), and
2987 <cmath> should be used instead of math.h.
2988 Move declaration of nan() here.
2989 * math/complex-stub.h (cabsl): Remove nan() declaration.
2991 Finish up FreeBSD4.0 support.
2992 * config/bsd/ctype.cc: Scope out toupper, tolower calls.
2993 * config/generic/ctype.cc: And here.
2994 * testsuite/21_strings/char_traits.cc (test02): Guard with
2995 _GLIBCPP_USE_WCHAR_T.
2997 via Phil Edwards <pme@sourceware.cygnus.com>
2998 * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
2999 * acconfig.h: And here.
3000 * acinclude.m4: Same.
3001 * testsuite/27_io/istream.cc: And here.
3002 * testsuite/27_io/ostream.cc: And here.
3004 2000-05-09 Benjamin Kosnik <bkoz@gnu.org>
3006 * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
3008 * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
3010 * config/generic/bits/ctype_specializations.h (ctype<char>::is):
3013 * config/bsd: New directory.
3014 * config/bsd/ctype.cc: New.
3015 * config/bsd/bits/ctype_base.h (ctype_base): New.
3016 * config/bsd/bits/ctype_specializations.h: New.
3017 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
3019 2000-05-09 Phil Edwards <pme@sourceware.cygnus.com>
3021 * acinclude.m4: New macro, GLIBCPP_ENABLE_CXX_FLAGS.
3022 * configure.in: Call.
3023 * src/Makefile.am: Append results of macro to AC_CXXFLAGS.
3024 * aclocal.m4: Regenerate.
3026 * src/Makefile.in: Ditto.
3027 * docs/configopts.html: Document.
3028 * docs/download.html: Fix typo (close quote).
3029 * docs/footer.html: Update.
3031 2000-05-09 Loren J. Rittle <ljrittle@acm.org>
3033 * backward/iostream.h: Expose endl. Guard wide types.
3034 * src/Makefile.am (headers): Update list to match files.
3035 * src/Makefile.in: Regenerate.
3037 2000-05-09 Vadim Egorov <egorovv@mailandnews.com>
3038 Benjamin Kosnik <bkoz@gnu.org>
3039 Nathan Myers <ncm@cantrip.org>
3040 Dietmar Kuehl <dietmar_kuehl@yahoo.com>
3042 * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
3043 (basic_streambuf::xsputn): Make consistent.
3044 * testsuite/27_io/filebuf.cc: Add tests.
3046 2000-05-08 Steven King <sxking@uswest.net>
3048 * bits/char_traits.h: Use wchar_t utility functions for
3049 char_traits<wchar_t> methods.
3050 * testsuite/21_string/char_traits.cc: New (test02): test
3051 char_traits<wchar_t>
3053 2000-05-08 Benjamin Kosnik <bkoz@cygnus.com>
3055 * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
3057 * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
3058 _M_buf_size based on macro, instead use _M_buf_size_opt.
3059 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
3060 (basic_streambuf()): Set _M_buf_size_opt.
3061 * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
3062 instead of _M_buf_size.
3064 2000-05-04 Branko Cibej <branko.cibej@hermes.si>
3066 * src/complex_io.cc: Don't instantiate inserters and extractors
3067 for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
3069 2000-05-03 Phil Edwards <pme@sourceware.cygnus.com>
3070 Felix Natter <fnatter@gmx.net>
3072 * docs/footer.html: Update to see if it takes effect.
3073 * docs/thanks.html: More people.
3074 * docs/17_intro/headers_cc.txt: Copy from testsuite, since that can't
3075 be seen from the web pages. Rename for browser-friendliness...
3076 * docs/17_intro/howto.html: ...and update here.
3077 * docs/17_intro/porting-howto.html: Changes from Felix.
3078 * docs/gccrebuild.html: Mention v3->egcs move.
3079 * docs/faq/index.html: Ditto. Also misc tweaks and URL updates.
3080 * docs/faq/index.txt: Regenerate.
3082 2000-05-01 Benjamin Kosnik <bkoz@redhat.com>
3084 * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
3087 2000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
3089 * bits/char_traits.h: Fix parameter types.
3090 * bits/string.tcc: Avoid traits_type::move.
3092 2000-05-01 Benjamin Kosnik <bkoz@haight.constant.com>
3094 * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
3095 * src/Makefile.in: Regenerate.
3096 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
3098 2000-04-30 Steven King <sxking@uswest.net>
3100 * bits/locale_facets.h: Fix syntax error.
3101 * bits/std_fstream.h: ditto
3103 2000-04-30 Benjamin Kosnik <bkoz@gnu.org>
3105 * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
3107 * mknumeric_limits (trait_name): Fix copyright notice.
3108 * src/gen-num-limits.cc: Explicitly instantiate epsilon and
3109 round_error data members of struct value. This works around
3110 weak-linking issues on AIX, HPUX.
3112 2000-04-29 Phil Edwards <pme@sourceware.cygnus.com>
3114 * docs/download.html: Add link to list of mirror sites.
3116 2000-04-28 Loren J. Rittle <ljrittle@acm.org>
3118 * mkcheck.in: Rely on exit status instead of the presence of a
3119 core file. Added comments on how/where to save core and exe
3120 files. Move shell wildcards outside quotes and fix core path.
3122 2000-04-27 scott snyder <snyder@fnal.gov>
3124 * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
3127 2000-04-26 Nathan C. Myers <ncm@cantrip.org>
3129 * bits/basic_string.h: include <bits/atomicity.h> instead
3130 of <atomicity.h>, and use the uglified names.
3131 * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
3132 uglify names, eliminate dependence on <inttypes.h>.
3133 * src/Makefile.in, src/Makefile.am: refer to correct place
3134 for atomicity.h header.
3136 2000-04-25 Steven King <sxking@uswest.net>
3138 * bits/basic_string.h: Fix syntax error.
3140 2000-04-25 Benjamin Kosnik <bkoz@redhat.com>
3142 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
3144 (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
3145 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
3146 versions to this as copysignl is needed anyway for these targets.
3147 * math/Makefile.in: Regenerate.
3149 * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
3150 * bits/fstream.tcc (underflow): Cast to libio types.
3151 * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
3152 * config/c_io_libio.cc (seekoff): And here.
3154 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
3156 * mkcheck.in: Report compiler version used for test. Find
3157 the built _G_config.h instead of any old installed version.
3159 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
3161 * config/generic/ctype.cc (do_toupper): Remove dependence on
3162 non-portable/non-existent lookup table.
3165 2000-04-24 Nathan Myers <ncm@cantrip.org>
3167 * src/string-inst.cc: More fixing.
3169 2000-04-24 Benjamin Kosnik <bkoz@gnu.org>
3171 * bits/stl_iterator.h: Pedantic fixing.
3172 * bits/std_sstream.h: And here.
3173 * bits/string.tcc: And here.
3175 2000-04-24 Felix Natter <fnatter@gmx.net>
3177 * docs/17_intro/howto.html: Add bits.
3178 * docs/17_intro/porting-howto.html: New file.
3180 2000-04-24 Branko Cibej <branko.cibej@hermes.si>
3182 * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
3183 @libinst_wstring_la@ to libinst-wstring.la when specializing for
3184 wchar_t, to empty string otherwise.
3185 * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
3186 (sources): Remove $(string_sources) and $(wstring_sources).
3187 (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
3188 (libstdc___la_DEPENDENCIES): New.
3189 (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
3191 2000-04-20 Benjamin Kosnik <bkoz@redhat.com>
3193 * bits/std_sstream.h: Tweak formatting.
3194 * bits/std_fstream.h: Make types public.
3196 * testsuite/27_io/streambuf.cc: Fix for alpha.
3198 Brad Garcia <bgarcia@laurelnetworks.com>
3199 * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
3201 * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
3204 2000-04-19 Nathan Myers <ncm@cantrip.org>
3206 * src/string-inst: consolidate _S_create,
3207 destroy, leak, clone members into stringMAIN and stringMUTATE
3209 * src/Makefile.am: Above, and eliminate dependence on
3211 * src/wstring-inst.cc: Remove.
3213 2000-04-18 Benjamin Kosnik <bkoz@redhat.com>
3215 * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
3216 Add flags for specialized rules dealing with instantiations.
3218 * src/string-inst.cc: Add instantiations missing from shared
3219 libraries--see stringEQ, stringCONSC.
3220 * src/Makefile.am (wstring_sources): Add.
3221 (string_sources): Same.
3222 * src/Makefile.in: Regenerate.
3224 * stl/*: Integrate contents of this directory into top-level
3226 * ext/bvector hash_map hash_set rope ropeimpl.h slist
3227 stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
3228 * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
3229 std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
3230 std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
3231 std_stdexcept.h std_strstream.h std_utility.h std_vector.h
3232 stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
3233 stl_deque.h stl_function.h stl_heap.h stl_iterator.h
3234 stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
3235 stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
3236 stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
3237 stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
3238 stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
3239 * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
3240 function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
3241 list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
3242 stack.h tempbuf.h tree.h vector.h: Add.
3243 * README (file): Update.
3244 * docs/documentation.html: README not being found.
3245 * src/Makefile.am (sources): Take out stl directory.
3246 * mkcheck.in (SRC_DIR): And here.
3247 * src/Makefile.in: Regenerate.
3249 2000-04-18 Levente Farkas <lfarkas@mindmaker.hu>
3251 * stl/bits/stl_function.h: Add bits so that const and non-const
3254 2000-04-18 scott snyder <snyder@fnal.gov>
3256 * stl/bits/stl_map.h (class map): Fix default for _Alloc template
3257 parameter. Get rid of use of __STL_DEFAULT_ALLOCATOR and
3258 __STL_LIMITED_DEFAULT_TEMPLATES macros.
3259 * stl/bits/stl_multimap.h (class multimap): Likewise. Get rid of
3260 use of __STL_DEPENDENT_DEFAULT_TMPL macro.
3262 2000-04-18 scott snyder <snyder@fnal.gov>
3264 * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
3267 * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
3268 of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
3269 * stl/ext/hash_set (class hash_set, class hash_multiset):
3271 * stl/bits/stl_function.h (struct constant_unary_fun, struct
3272 constant_binary_fun): Likewise.
3273 * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
3274 * stl/bits/stl_stack.h (class stack): Likewise.
3275 * stl/bits/stl_set.h (class set): Likewise.
3276 * stl/bits/stl_multiset.h (class multiset): Likewise.
3278 * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
3279 class reverse_iterator): Get rid of use of
3280 __STL_LIMITED_DEFAULT_TEMPLATES macro.
3282 * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
3285 * stl/bits/stl_deque.h (class deque): Get rid of use of
3286 __STL_DEFAULT_ALLOCATOR macro.
3287 * stl/bits/stl_list.h (class list): Likewise.
3288 * stl/bits/stl_multiset.h (class multiset): Likewise.
3289 * stl/bits/stl_set.h (class set): Likewise.
3290 * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
3291 * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
3292 * stl/bits/stl_vector.h (class vector): Likewise.
3293 * stl/ext/ropeimpl.h (rotate): Likewise.
3294 * stl/ext/hash_map (class hash_map, class hash_multimap):
3296 * stl/ext/hash_set (class hash_set, class hash_multiset):
3298 * stl/ext/slist (class slist): Likewise.
3299 * stl/ext/stl_bvector.h (class bit_vector): Likewise.
3300 * stl/ext/stl_rope.h (class rope): Likewise.
3301 * src/locale.cc (_Impl): Likewise.
3302 * src/localename.cc (_Impl): Likewise.
3303 * bits/localefwd.h (_Impl): Likewise.
3305 2000-04-18 Phil Edwards <pme@sourceware.cygnus.com>
3307 * docs/install.html: Cleanup, minor changes.
3308 * docs/17_intro/howto.html: Ditto.
3310 2000-04-18 Nathan Myers <ncm@cantrip.org>
3312 * bits/basic_string.h: Remove "inline" from member _S_find.
3314 * src/string-inst.cc: Rewrite to reflect non-inline template
3315 instantiations in string.tcc.
3317 * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
3318 stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
3319 stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
3320 stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
3321 stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
3322 stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
3323 stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
3324 stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
3325 stringNESS.cc, stringSCOPY.cc: Remove.
3326 * src/wstringADDCS.cc, etc: Remove.
3328 Benjamin Kosnik <bkoz@haight.constant.com>
3329 * src/Makefile.am: Modify to reflect above.
3330 * src/Makefile.in: Regenerate.
3332 2000-04-17 Benjamin Kosnik <bkoz@cygnus.com>
3334 * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
3336 2000-04-13 Benjamin Kosnik <bkoz@haight.cygnus.com>
3338 * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
3339 io interface here instead of the libio particulars.
3341 * config/threads-posix.h: Consistency with stl_config.h.
3343 * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
3345 2000-04-13 Loren J. Rittle <ljrittle@acm.org>
3347 * mknumeric_limits: Rename generic type template parameter name
3349 * stl/bits/type_traits.h: Ditto.
3351 2000-04-06 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3353 * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
3354 it is more useful for --enable-libstdcxx-v3. Use the built
3355 compilers with v3, instead of compilers in PATH, and don't
3356 re-include include directories for checking the install.
3358 2000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
3360 * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
3361 by default when using --enable-libstdcxx-v3.
3362 * src/Makefile.in: Regenerate.
3363 * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
3364 GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
3365 * configure: Regenerate.
3366 * mkcheck.in: Deal with NAMESPACES.
3368 2000-04-05 Petter Urkedal <petter@matfys.lth.se>
3370 * src/cmath.cc: New file...
3371 (pow(*, int)): Define functions...
3372 * src/Makefile.am (sources): ...register file.
3373 * src/Makefile.in: Regenerate.
3374 * bits/std_cmath.h (pow): ...declare functions here, and remove
3377 2000-04-04 Benjamin Kosnik <bkoz@redhat.com>
3379 * acinclude.m4 (GCC_OBJDIR): Tweaks
3381 2000-04-03 Benjamin Kosnik <bkoz@redhat.com>
3383 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
3384 * config/cpu/arm: New directory.
3386 Jesper Skov <jskov@redhat.com>
3387 * config/cpu/arm/atomicity.h: New file.
3389 2000-03-31 Benjamin Kosnik <bkoz@redhat.com>
3391 * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
3392 Remove unused bits. Clean.
3394 2000-03-29 Benjamin Kosnik <bkoz@cygnus.com>
3396 * testsuite/25_algorithms: New directory.
3397 * testsuite/25_algorithms/min_max.cc: New file.
3399 2000-03-29 scott snyder <snyder@fnal.gov>
3401 * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
3402 precision beyond that which we get from numeric_limits::digits10.
3404 * stl/bits/stl_algobase.h (max, min): Don't use comparison
3407 * testsuite/23_containers/bitset_shift.cc: Fix.
3409 * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
3410 temporary to imbue().
3412 * bits/std_fstream.h (sync): Resync libio's idea of the current
3413 file position with the external file.
3415 2000-03-28 Benjamin Kosnik <bkoz@cygnus.com>
3417 * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
3420 * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
3421 attempting calls to it.
3422 * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
3423 ctors. Instead, call _M_init_filebuf ...
3424 (open): Here, as suggested by 27.8.1.3.
3425 * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
3426 properly when initializing cout/cin/cerr.
3428 2000-03-27 Russell Davidson <russell@ehess.cnrs-mrs.fr>
3430 * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
3431 * testsuite/22_locale/ctype_char_members.cc: And here.
3432 * testsuite/27_io/streambuf.cc (streambuf): And here.
3433 * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
3434 * testsuite/27_io/istream_unformatted.cc (test05): And here.
3435 * testsuite/27_io/istream_extractor_arith.cc: And here.
3436 * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
3437 * testsuite/27_io/ios_base_members_static.cc: And here.
3438 * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
3440 2000-03-27 Chris Faylor <cgf@cygnus.com>
3442 * configure.in: Remove setting of CXX if canadian cross.
3443 * configure: Regenerate.
3445 2000-03-27 Nathan Myers <ncm@zembu.com>
3447 * bits/sstream.tcc: Optimize.
3448 * bits/basic_string.h(string::append): Don't inline.
3449 * bits/string.tcc: Move out-of-line.
3451 2000-03-27 Phil Edwards <pme@sourceware.cygnus.com>
3453 * acinclude.m4: (GLIBCPP_CHECK_COMPILER_VERSION) When using <2.96,
3454 define WERRORSUPPRESS so that the inlining warnings won't kill us.
3455 * aclocal.m4: Regenerate.
3456 * configure: Regenerate.
3457 * src/Makefile.am: Use WERRORSUPPRESS for the files that need it.
3458 * src/Makefile.in: Regenerate.
3460 * docs/install.html: Almost complete rewrite.
3462 2000-03-25 Phil Edwards <pme@sourceware.cygnus.com>
3464 * docs/install.html: Explain -Werror problem at "#Werror" mark.
3465 * docs/faq/index.html: Testsuite will die horribly if new libgcc.a
3467 * docs/faq/index.txt: Regenerate.
3469 2000-03-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3471 * src/Makefile.am (libio_headers_install): Fix.
3472 * src/Makefile.in: Regenerate.
3474 2000-03-24 Benjamin Kosnik <bkoz@cygnus.com>
3476 * docs/17_intro/RELEASE-NOTES: Fix typos.
3477 * docs/index.html: Update.
3478 * docs/17_intro/BUGS: Update.
3479 * docs/status.html: Update for 2.90.8 release.
3481 2000-03-23 Phil Edwards <pme@sourceware.cygnus.com>
3483 * Makefile.am: Better error message when missing libgcc2.ready.
3484 * Makefile.in: Regenerate.
3485 * acinclude.m4: Fastidious nitpicking reformatting.
3486 * aclocal.m4: Regenerate.
3487 * configure: Regenerate.
3488 * mkcheck.in: Must use same namespace settings as the library being
3489 tested. Also log ST_FLAG, since it's being passed.
3490 * docs/install.html: Add brief chunk on configuration.
3491 * docs/17_intro/RELEASE-NOTES: Fix minor Cygwin typo.
3492 * docs/23_containers/howto.html: Mention MT-safe string.
3493 * docs/faq/index.html: Minor updates.
3494 * docs/faq/index.txt: Regerarate.
3496 2000-03-22 Benjamin Kosnik <bkoz@cygnus.com>
3498 * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
3500 * bits/fstream.tcc (seekoff): Sync.
3502 * testsuite/27_io/ostream_unformatted.cc: New file.
3503 * testsuite/27_io/stringbuf.cc: Fix.
3504 * testsuite/27_io/istream_unformatted.cc (test04): Fix.
3506 * config/newlib/bits/ctype_base.h (ctype_base): Fix.
3507 * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
3509 * src/complex_io.cc (operator>>complex): Tweak.
3511 * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
3512 <inttypes.h> does not exist.
3513 * config/cpu/sparc/sparc64/atomicity.h: Same.
3514 * config/cpu/sparc/sparc32/atomicity.h: Same.
3515 * config/cpu/powerpc/atomicity.h: Same.
3516 * config/cpu/i386/atomicity.h: Same.
3517 * config/cpu/generic/atomicity.h: Same.
3518 * configure.in: Check for inttypes.h.
3519 * configure: Regnerate.
3521 2000-03-21 Benjamin Kosnik <bkoz@cygnus.com>
3523 * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
3525 * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
3527 * docs/17_intro/RELEASE-NOTES (New): Add bits.
3529 * configure.in: Move AC_CHECK_HEADERS to a point where we know we
3530 are compiling natively.
3532 * libio/*: Update to CVS libio from egcs.
3534 2000-03-21 Phil Edwards <pme@sourceware.cygnus.com>
3536 * docs/download.html: Document use of -z9 for CVS.
3537 * docs/index.html: Add target date (no link) for future snapshot.
3539 2000-03-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3541 * bits/slice_array.h: Rename generic type template parameter name
3543 * bits/mask_array.h: Ditto
3545 2000-03-20 Benjamin Kosnik <bkoz@cygnus.com>
3547 * *: Change copyright holder from "Cygnus Solutions" to "Free
3548 Software Foundation, Inc."
3550 * docs/configopts.html: Explain what "hella versions" means.
3551 * docs/install.html: Some tweaks--nice job on this Phil.
3552 * docs/documentation.html: Add a direct link to configuration options.
3554 * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
3555 * docs/17_intro/RELEASE-NOTES (New): Add.
3556 * bits/c++config.h (__GLIBCPP__): Bump version.
3558 * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
3559 type to match prototype.
3561 2000-03-20 Phil Edwards <pme@sourceware.cygnus.com>
3563 * docs/install.html: Update for new funky build procedure. Move
3564 description of 'configure' options to...
3565 * docs/configopts.html: ...here. New file.
3566 * docs/17_intro/howto.html: Updates for new snapshot.
3567 * docs/20_util/howto.html: Ditto.
3568 * docs/21_strings/howto.html: Ditto.
3569 * docs/21_strings/stringtok_std_h.txt: Fix example typos.
3570 * docs/22_locale/howto.html: Ditto.
3571 * docs/23_containers/howto.html: Ditto.
3572 * docs/faq/index.html: Ditto.
3574 2000-03-18 Petter Urkedal <petter@matfys.lth.se>
3575 Benjamin Kosnik <bkoz@gnu.org>
3577 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
3579 * aclocal.m4: Regenerate.
3580 * configure: Regenerate.
3582 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
3583 scott snyder <sss@karma.fnal.gov>
3585 * config/c_io_libio.h: Add __c_lock.
3586 * config/threads-no.h: Same here.
3587 * config/threads-posix.h: Add __mutext_type typedef.
3588 * config/c_io_libio.cc: basic_file ctor takes lock arg.
3589 * bits/basic_file.h: Ctor takes lock arg.
3590 * bits/std_fstream.h: Add _M_lock.
3591 * bits/fstream.tcc: Supply it to basic_file ctor.
3593 * mkcheck.in (resultstext): Change [[ to [.
3595 * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
3597 * bits/locale_facets.h: Tweak.
3599 * stl/bits/stl_config.h: Fix defines.
3601 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
3603 * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
3605 * configure: Regenerate.
3606 * aclocal.m4: Regnerate.
3608 2000-03-16 Nathan Myers <ncm@zembu.com>
3610 * bits/string.tcc: Add MT support.
3611 * bits/basic_string.h: Same.
3613 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
3615 * configure.in: Make --enable-namespaces and -libgcc-rebuild=../..
3617 * configure: Regenerate.
3619 * config/solaris/solaris2.7/ctype.cc: Fix unsigned/signed comparison.
3621 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
3623 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): If Sol2.5 ctype is found, keep
3624 checking for 2.[67]. (GLIBCPP_ENABLE_RELIBGCC): No longer ignore
3625 any defaults passed in.
3626 * aclocal.m4: Regenerate.
3628 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
3630 * mkcheck.in: Report total successes and failures.
3632 2000-03-15 Benjamin Kosnik <bkoz@cygnus.com>
3634 * config/cpu: New directory, intended to be used to provide
3635 cpu-specific configuration files. In particular, assembly language
3636 primitives for thread safety.
3637 * config/cpu/alpha: Populate.
3638 * config/cpu/alpha/atomicity.h: New file.
3639 * config/cpu/arm: Populate.
3640 * config/cpu/generic: Populate.
3641 * config/cpu/generic/atomicity.h: New file.
3642 * config/cpu/hppa: Populate.
3643 * config/cpu/i386: Populate.
3644 * config/cpu/i386/atomicity.h: New file, take from i486.
3645 * config/cpu/m68k: Populate.
3646 * config/cpu/mips: Populate.
3647 * config/cpu/powerpc: Populate.
3648 * config/cpu/powerpc/atomicity.h: New file.
3649 * config/cpu/sparc: Populate.
3650 * config/cpu/sparc/sparc32: Populate.
3651 * config/cpu/sparc/sparc64: Populate.
3652 * config/cpu/sparc/sparc32/atomicity.h: New file.
3653 * config/cpu/sparc/sparc64/atomicity.h: New file.
3655 * src/Makefile.am (myinstallheaders): Add install routines.
3656 * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
3658 * configure.in: Add.
3660 * config/default: Adopt glibc naming conventions, and so move to
3661 * config/generic: Here.
3662 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
3664 2000-03-15 Bill Thompson <billt@toast.net>
3666 * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
3668 2000-03-14 Phil Edwards <pme@sourceware.cygnus.com>
3670 * docs/17_intro/howto.html: Add missing "TOC" entry, and new section.
3672 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
3673 * aclocal.m4: Regenerate.
3674 * configure: Regenerate.
3676 2000-03-13 scott snyder <snyder@fnal.gov>
3677 Jason Merrill <jason@cygnus.com>
3679 * bits/locale_facets.h (class ctype, class ctype<char>, class
3680 ctype<wchar_t>): More mask fixes.
3681 * testsuite/22_locale/ctype.cc: Test for the problem.
3683 2000-03-13 Benjamin Kosnik <bkoz@cygnus.com>
3685 * acconfig.h: Add bits.
3686 * configure.in: Move AM_PROG_LIBTOOL up in file.
3687 Tweak cross compiling info.
3688 * configure: Regenerate.
3690 * mknumeric_limits (XCOMPILE): Echo compilation line for
3693 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
3694 * aclocal.m4: Regenerate.
3695 * configure: Regenerate.
3696 * config/aix/ctype.cc (ctype): Tweak.
3697 * config/aix/bits/ctype_base.h (ctype_base): Tweak.
3698 * config/aix/bits/ctype_specializations.h: New file.
3700 2000-03-10 scott snyder <snyder@fnal.gov>
3702 * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator
3704 * testsuite/23_containers/vector_modifiers.cc (test01): Add a
3705 regression test for the problem.
3707 2000-03-09 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3709 * testsuite/27_io/streambuf.cc (class testbuf): Same here.
3710 * bits/fpos.h: And here.
3711 * bits/std_ostream.h: Same here.
3712 * bits/std_istream.h: Same here.
3713 * bits/basic_ios.h: Same here.
3714 * bits/std_fstream.h: Same here.
3715 * bits/sbuf_iter.h (std): Here too.
3716 * bits/std_sstream.h: Make types public.
3718 * src/misc-inst.cc: Use size_t instead of unsigned int.
3719 * bits/locale_facets.tcc (_S_format): For now, cast to char. I
3720 suppose this should be ctype::narrow... all the ctype<wchar_t>
3721 stuff needs to be cleaned up.
3723 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
3725 * docs/gentop: Remove entire directory, finally.
3727 2000-03-09 scott snyder <snyder@fnal.gov>
3729 * bits/std_cmath.h (modf): Fix pointer overrun.
3730 * testsuite/26_numerics/c_math.cc (test04, main): Add a regression
3731 test for the problem.
3733 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
3735 Looks like changes to the #include'd files must be followed by a
3736 change to the #include'ing files to take effect. Caveat emptor.
3737 * docs/header.html: New file, for server-side include.
3738 * docs/footer.html: New file, for server-side include.
3739 * docs/documentation.html: Change to use SSI.
3740 * docs/download.html: Ditto.
3741 * docs/index.html: Ditto.
3742 * docs/mail.html: Ditto.
3743 * docs/status.html: Ditto.
3744 * docs/thanks.html: Ditto, plus minor updates.
3745 * docs/how.html: Remove.
3747 2000-03-09 Benjamin Kosnik <bkoz@gnu.org>
3749 Preliminary alpha-linux support.
3750 * src/locale.cc (ctype<wchar_t>): Use correct types...
3751 * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
3752 (ctype<wchar_t>): Same.
3753 * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
3754 types match for table_size (size_t).
3756 * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
3757 as per char specialization.
3758 * config/*/ctype.cc: Same.
3760 2000-03-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3762 * bits/locale_facets.h (_Ctype<>::mask): Import from base class
3763 _Ctype_nois<>. Template base classes are never examinated in
3764 first-phase name-lookup.
3766 2000-03-08 Benjamin Kosnik <bkoz@gnu.org>
3768 Add Solaris 2.5.1 support.
3769 * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
3770 * config/solaris/solaris2.5/ctype.cc: Fixup.
3771 * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
3772 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
3773 * aclocal.m4: Regenerate.
3774 * configure: Regenerate.
3776 * config/default/ctype.cc (ctype): Fixup.
3778 2000-03-07 Benjamin Kosnik <bkoz@blues.cygnus.com>
3780 * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
3781 * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
3784 2000-03-07 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3786 * bits/cpp_type_traits.h: Expand on this file purpose.
3788 2000-03-06 Benjamin Kosnik <bkoz@gnu.org>
3790 * bits/locale_facets.h (ctype<char>): Remove static members, and
3791 re-work initialization code.
3792 (ctype<wchar_t>): Same.
3793 Move _S_touppper to _M_toupper and initialize in ctor.
3794 Move _S_tolower to _M_tolower and initialize in ctor.
3795 Move _S_table to _M_ctable and intialize in ctor.
3796 * bits/locale_facets.h (std): And here.
3797 * src/locale.cc (std): Tweak.
3798 * config/gnu-linux/ctype.cc: Change initialization here.
3799 * config/newlib/ctype.cc: And here.
3800 * config/solaris/solaris2.7/ctype.cc: And here.
3801 * config/solaris/solaris2.6/ctype.cc: And here.
3803 * bits/localefwd.h: Tweak.
3804 * bits/std_streambuf.h: Tweak formatting.
3806 * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
3808 2000-03-05 Chip Salzenberg <chip@valinux.com>
3810 * src/misc-inst.cc (basic_iostream<>): Instantiate.
3812 2000-03-02 Phil Edwards <pme@sourceware.cygnus.com>
3813 Kevin Atkinson <kevinatk@home.com>
3815 Initial grab of SGI's strstream implementation with minor
3817 * src/strstream.cc: New file.
3818 * std/strstream: New file.
3819 * stl/bits/std_strstream.h: New file.
3820 * bits/std_streambuf.h: Add public access.
3821 * src/Makefile.am: Add strstream sources to list of dependancies.
3822 * src/Makefile.in: Regenerate.
3824 2000-03-03 2000 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3826 * bits/valarray_meta.h: Fix typo.
3828 2000-03-02 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3829 Chip Salzenberg <chip@valinux.com>
3830 Petter Urkedal <petter@matfys.lth.se>
3832 * src/Makefile.am (myinstallheaders): Hack to avoid
3834 * src/Makefile.in: Regenerate.
3836 2000-03-02 Chip Salzenberg <chip@valinux.com>
3838 * libio/Makefile.an, math/Makefile.an, src/Makefile.am
3839 (LINK): Put quotes around "$(CC)" for libtool link mode,
3840 so libtool will use "-B" options during GCC bootstrap.
3841 * */Makefile.in: Regenerate.
3843 2000-03-02 Petter Urkedal <petter@matfys.lth.se>
3845 * config/c_io_libio.h: Enclose it all in ::std.
3846 * bits/basic_string.h (basic_string<>): Make types and
3848 * mkc++config: Truncate output file before writing.
3850 2000-03-01 Benjamin Kosnik <bkoz@gnu.org>
3852 * math/cabsf.c (__mycabsf): Rename to cabsf.
3853 * math/cabs.c (__mycabs): Rename to cabs.
3855 2000-02-29 LLeweLLyn Reese <llewelly@198.dsl.xmission.com>
3857 * bits/basic_string.h: Move declarations of __out_of_range(),
3858 __length_error() and accompanying macros ...
3859 * bits/exception_support.h: here. (Newly created file).
3860 * bits/basic_string.h: #include <bits/exception_support.h>
3861 * stl/bits/stl_vector.h: #include <bits/exception_support.h>
3862 * src/Makefile.am (headers): Add.
3863 * src/Makefile.in: Regenerate.
3865 2000-02-29 Benjamin Kosnik <bkoz@cygnus.com>
3867 * bits/cpp_type_traits.h: Rename structs so they don't clash with
3869 * bits/valarray_array.h: Synch. Fix typos.
3871 * libio/Makefile.am: Change to only compile source files that
3872 config/c_io_libio.cc actually needs.
3873 * libio/Makefile.in: Regnerate.
3874 * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
3875 floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
3876 ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
3877 iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
3878 iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
3879 iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
3880 ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
3881 iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
3882 ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
3883 istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
3884 pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
3885 strops.c strstream.h: Delete.
3887 * bits/basic_file.h: Stub out or delete unused bits in this
3889 (filepos_beg): Remove.
3890 (filepos_cur): Remove.
3891 (filepos_valid): Remove.
3892 * config/c_io_libio.cc: Resynch with the changes to basic_file.
3894 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3896 * bits/cpp_type_traits.h: Correct typo.
3898 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3900 * bits/cpp_type_traits.h: New file.
3902 * bits/valarray_array.h: Tweak. #include <bits/cpp_type_traits.h>
3903 Improve array construction.
3904 (_Array_default_ctor): New dispatcher class.
3905 (__valarray_default_construct): New function.
3906 (_Array_copy_ctor): New dispatcher class.
3907 (__valarray_copy_construct): New function.
3908 (_Array<>::free_data): Remove.
3910 * src/Makefile.am (headers): Add cpp_type_traits.h
3911 * src/Makefile.in: Regenerate.
3913 2000-02-28 Benjamin Kosnik <bkoz@cygnus.com>
3915 Prune libio directory to match files in libio/Makefile.
3916 * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
3917 stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
3918 streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
3919 strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
3920 stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
3921 stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
3922 stdstreams.cc: Remove.
3923 * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
3924 * libio/iofflush_u.c: Remove.
3926 * libio/dbz: Remove.
3927 * libio/include: Remove.
3928 * libio/stdio: Remove.
3929 * libio/tests: Remove.
3930 * libio/testsuite: Remove.
3932 * config/c_io_libio.cc: Add fcntl.h include for Solaris.
3934 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
3935 * configure.in: Replace 'grep -e' with 'grep' for Solaris.
3936 * configure: Regenerate.
3938 2000-02-25 Benjamin Kosnik <bkoz@gnu.org>
3940 Abstract out the underlying "C" io bits.
3941 * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
3942 * stl/bits/stl_string_fwd.h: Remove <stddef> include.
3943 * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
3945 * stl/bits/stl_config.h: Don't include _G_config.h.
3947 * bits/basic_file.h: Allow for non-inheritance based __basic_files.
3948 * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
3949 * config/c_io_libio.cc: Tweak.
3951 * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
3952 * src/Makefile.in: Regenerate.
3953 * Makefile.am (AM_MAKEFLAGS): Define includedir so that
3954 prefix/include files will be picked up.
3955 * Makefile.in: Regenerate.
3956 * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
3957 * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
3959 * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
3960 * bits/fpos.h: And here.
3961 * bits/basic_file.h (get_fileno): Move definition from ...
3962 * src/basic_file.cc (std): To here.
3963 * bits/fpos.h: Move types for streamoff, streampos to..
3964 * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
3965 * config/c_io_libio.h: ...here.
3966 (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
3967 SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
3968 UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
3969 FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
3970 abstract out bits in ios_base.
3971 * bits/ios_base.h: Re-macrofy.
3972 * src/basic_file.cc : Rename, move to
3973 * config/c_io_libio.cc: Here.
3974 * config/c_io_libio.h: New file. Include libio.
3975 * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
3976 * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
3977 * configure: Regenerate.
3978 * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
3979 (generated_headers): Add c++io.h
3980 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
3981 underlying "C" io library.
3982 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
3983 GLIBCPP_ENABLE_CSTDIO.
3985 * configure.in: Add configure bits for cross compiling non-newlib
3987 GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
3988 target, as we assume g++ support is not the limiting factor.
3989 GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.
3990 * configure: Regenerate.
3992 2000-02-22 Benjamin Kosnik <bkoz@cygnus.com>
3994 * Makefile.am (INTERFACE): Define.
3995 * Makefile.in: Regenerate.
3996 * libio/ChangeLog: Add entry.
3998 2000-02-21 Benjamin Kosnik <bkoz@cygnus.com>
4000 * docs/install.html: Update install directions.
4002 * docs/status.html: Fix sidebar to be consistent.
4003 * docs/thanks.html: Same.
4004 * docs/links.html: Same.
4005 * docs/mail.html: Same.
4006 * docs/download.html: Same.
4008 * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
4009 kill the macro BUFSIZ. I think the solaris fails lie elsewhere
4010 however, in the ctype_char_members.cc fail (for instance.)
4011 * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
4012 that do not have wchar_t enabled.
4013 * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
4015 * testsuite/27_io/iostream_objects.cc: And here.
4017 * libio/gen-params (CONFIG_NM): Specifically add in nm as the
4020 2000-02-18 Benjamin Kosnik <bkoz@haight.constant.com>
4021 Tom Tromey <tromey@cygnus.com>
4023 * configure.in: Manually add MULTISUBDIR.
4024 * configure: Regenerate.
4025 * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
4026 "Eww" hacks to get multilib installs working correctly.
4027 ($(headers): Test for MULTISUBDIR before installing.
4028 * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
4029 have configure hack it in.
4030 * Makefile.in: Regenerate.
4031 * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording.
4032 Add enabling bits for native Cygwin ctypes, and other newlib-based
4035 2000-02-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4037 * mkc++config (OUT_H): Remove EOF in cygwin.
4038 * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
4040 Tom Tromey <tromey@cygnus.com>
4041 * src/Makefile.am: Tweaks for installing multilibs.
4043 2000-02-17 Benjamin Kosnik <bkoz@cygnus.com>
4046 (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
4047 Add USE_LIBDIR bits here, not...
4048 * src/Makefile.in: Regenerate.
4049 * Makefile.am: ...here.
4050 * Makefile.in: Regenerate.
4052 2000-02-17 Benjamin Kosnik <bkoz@gnu.org>
4054 * acinclude.m4 (LIBS): Fix typos.
4055 * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
4056 _GLIBCPP_BUGGY_COMPLEX for crosses.
4057 * src/Makefile.am (std_headers): Add libio.h as install include,
4059 * src/Makefile.in: Regenerate.
4061 * mkcheck.in: Add bits to set CXX to cross compiler.
4063 * src/complex_io.cc: Tweak.
4064 * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
4065 * configure: Regenerate.
4067 * config/newlib/ctype.cc: Tweaks.
4068 * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
4070 * src/complex_io.cc (operator>>(istream, complex): Define out if
4073 2000-02-16 Benjamin Kosnik <bkoz@cygnus.com>
4075 * config/newlib/bits/ctype_base.h: Correct _S_table.
4077 Reconfigure ctype support for "C" libraries that don't use arrays.
4078 * testsuite/22_locale/ctype_char_members.cc: New file. Test for
4079 basic ctype<char> functionality.
4080 * src/locale.cc: Move host-specific ctype functions that are not
4081 inlines to config/*/ctype.cc files.
4082 (ctype<char>::do_tolower): For instance.
4083 (ctype<char>::do_toupper): For instance.
4084 (ctype<wchar_t>::do_tolower): For instance.
4085 (ctype<wchar_t>::do_toupper): For instance.
4086 * config/gnu-linux/ctype.cc: Modify.
4087 * config/default/ctype.cc: Modify.
4088 * config/newlib/ctype.cc: Modify.
4089 * config/solaris/solaris2.6/ctype.cc: Modify.
4090 * config/solaris/solaris2.7/ctype.cc: Modify.
4092 * bits/locale_facets.h (ctype<char>::is): Mark inline, move
4094 (ctype<char>::scan_is): Here too.
4095 (ctype<char>::scan_not): Here too.
4096 Move out of line defs to config/*/bits/ctype_specializations.h.
4097 * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
4098 * config/default/bits/ctype_specializations.h: ...here. New file.
4099 * config/newlib/bits/ctype_specializations.h: ...here. New file.
4100 * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
4101 * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
4102 * src/Makefile.am (headers): Add ctype_specializations.h.
4103 * src/Makefile.in: Regenerate.
4105 Aaron Weiss <weiss@clearway.com>
4106 * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
4107 CONFIG_NM for Solaris builds.
4108 * Makefile.in: Regenerate.
4110 * src/locale.cc: Tweak formatting.
4112 2000-02-15 Benjamin Kosnik <bkoz@cygnus.com>
4114 Jim Parsons <parsons@clearway.com>
4115 * testsuite/27_io/istream_unformatted.cc (test06): Add test.
4116 * bits/istream.tcc (read): Set failbit if !good(). Don't increment
4120 Michel Decima <michel.decima@cnet.francetelecom.fr>
4121 * testsuite/27_io/streambuf.cc: Add test.
4122 * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
4125 * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
4126 OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
4127 will work correctly, for instance.
4128 * src/Makefile.in: Regenerate.
4130 * bits/locale_facets.h: Fix merge error.
4131 (num_put::put(unsigned long long): And here.
4132 * mknumeric_limits (trait_name): Same.
4134 2000-02-15 Chip Salzenberg <chip@valinux.com>
4136 Support 'configure --enable-long-long'.
4137 * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
4138 * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
4139 * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add. Default to undef.
4140 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
4141 * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
4143 * aclocal.m4: Regenerate.
4144 * config.h.in: Regenerate.
4145 * configure: Regenerate.
4147 2000-02-15 Chip Salzenberg <chip@valinux.com>
4149 Improve (complete?) 'long long' support.
4150 * mknumeric_limits: Call $CXX with $CPPFLAGS. Define statics
4151 for {,unsigned} long long if the limits header declares them.
4152 * src/gen-num-limits.cc: Include <bits/c++config.h> early.
4153 (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
4154 (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
4155 * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
4156 (num_put<>::put(..., long long)): Likewise.
4157 (num_put<>::put(..., unsigned long long)): Likewise.
4158 * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
4159 Templatize last parameter to support 'long long'.
4160 (num_put<>::put(...)): Call _S_format with new name.
4161 (num_put<>::put(..., long long)): Define.
4162 (num_put<>::put(..., unsigned long long)): Likewise.
4163 * src/locale-inst.cc (_S_format): Instantiate under new name.
4165 2000-02-15 Petter Urkedal <petter@matfys.lth.se>
4167 * src/complex.cc (operator<<, operator>>): Moved from here...
4168 * src/complex_io.cc: ...to new file.
4169 (operator>>): Stub replaced by the real thing.
4170 * src/Makefile.am (sources): Inserted complex_io.cc.
4171 * src/Makefile.in: Regenerate.
4172 * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
4174 2000-02-14 Benjamin Kosnik <bkoz@gnu.org>
4176 Add in ctype information for newlib "C" libraries.
4177 * config/newlib: New directory
4178 * config/newlib/bits/ctype_base.h: New file.
4179 * config/newlib/ctype.cc: New file.
4181 * ctype/config/linux/*: Rename, move to...
4182 * ctype/config/gnu-linux/*: Here.
4184 Finish off multilib work.
4185 * configure.in: Don't set CXX if not Canadian cross.
4186 * configure: Regenerate.
4187 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
4188 * aclocal.m4: Regenerate.
4189 * config.h.in: Regenerate.
4191 * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
4192 the top-level gcc directory now.
4193 * mkinstalldirs: Remove.
4196 * ltmain.sh: Remove.
4197 * config.guess: Remove.
4198 * config.sub: Remove.
4200 2000-02-13 Benjamin Kosnik <bkoz@cygnus.com>
4202 * configure.in (glibcpp_basedir): Add glibcpp_basedir.
4203 * Makefile.am: Move mutlilib stuff to src/Makefile.am.
4204 * Makefile.in: Regenerate.
4205 * src/Makefile.am: Add multilib bits.
4206 * src/Makefile.in: Regenerate.
4208 2000-02-12 Benjamin Kosnik <bkoz@cygnus.com>
4210 * configure.in: Clean, add some multilib support.
4211 * configure: Regenerate.
4212 * configure.host: New file.
4214 * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and
4215 roll a new function, checks for presence of libio.
4216 GLIBCPP_CHECK_COMPILER_VERSION: Same.
4217 GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
4218 GLIBCPP_CHECK_MATH_SUPPORT: Same.
4219 GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
4220 GLIBCPP_CHECK_LIBIO: Same.
4221 GLIBCPP_CHECK_CTYPE: Same.
4222 * aclocal.m4: Regenerate.
4223 * config.h.in: Regenerate.
4225 * Makefile.am: Tweaks.
4226 * Makefile.in: Regenerate.
4228 2000-02-11 Benjamin Kosnik <bkoz@cygnus.com>
4230 * configure.in: Make outputing the libio/Makefile
4231 conditional. Haha, yeah right. Anyway, we instead do this thing
4232 where if libio is found, then we build a null library, as there is
4233 no point in duplicating the found libio.
4234 * Makefile.am: Tweak.
4235 * Makefile: Regenerate.
4236 * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
4237 are happy happy happy.
4238 * libio/Makefile.am: Regenerate.
4239 * libio/gen-params: New file.
4240 * src/Makefile.am: Make libio.la non-conditional, as it is now a
4241 null library if it's not needed. At least we are being consistent,
4242 if not as elegant as we could be.
4243 * src/Makefile: Regenerate.
4245 2000-02-10 Benjamin Kosnik <bkoz@gnu.org>
4247 * Makefile.am (SUBDIRS): Add libio again.
4248 * Makefile.in: Regenerate.
4249 * configure.in (BUILD_LIBIO_INCLUDE): And here.
4250 (AC_OUTPUT): Generate libio/Makefile again.
4251 * configure: Regnerate.
4252 * src/Makefile.am (libstdc___la_LIBADD): Change path so that
4253 libio.la is referring back to the libio subdir again.
4254 (LIBIO_INCLUDES): And here.
4255 * src/Makefile.in: Regenerate.
4257 2000-02-09 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4259 * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
4261 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4263 * bits/valarray_array.h (<bits/std_new.h>): #include.
4264 (__valarray_get_memory): New function.
4265 (__valarray_release_memory): Likewise.
4266 (__valarray_default_construct): New functions.
4267 (__valarray_fill_construct): New function.
4268 (__valarray_copy_construct): New funstions.
4269 (__valarray_destroy_elements): New function.
4271 * bits/valarray_array.tcc (__valarray_copy_construct): New
4274 * bits/std_valarray.h (valarray<>::valarray): Use
4275 __valarray_get_memory and __valarray_fill_construct,
4276 __valarray_copy_construct, __valarray_default_construct to
4277 properly construct valarrays.
4278 (valarray<>::~valarray): Use __valarray_destroy_elements to
4279 destroy elements and __valarray_release_memory to return memory.
4280 (valarray<>::shift): Tweak.
4281 (valarray<>::cshift): Likewise.
4282 (valarray<>::resize): Robustify.
4284 2000-02-09 Benjamin Kosnik <bkoz@cygnus.com>
4286 * mknumeric_limits (XCOMPILE): Add support for cross compiling.
4287 * bits/limits_generic.h: New file, defaults.
4288 * src/limits_generic.cc: New file, defaults.
4289 * configure.in (LIBS): Run mknumeric_limits at configure time.
4290 * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
4291 HAVE_LC_MESSAGES, tidy, clean, etc.
4292 * src/Makefile.am (geberated_sources): Remove.
4294 * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
4295 (_IO_off_t, _IO_ssize_t)
4297 * src/complex.cc: Use glibc's <complex.h> if
4298 possible. . . apparently this was not being done before. Include
4300 (abs): Enable cabs if it's around, instead of mycabs.
4301 * src/complexf.cc (FCT): Add global scope to match complex.cc.
4302 * src/complexl.cc (FCT): Same.
4303 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
4304 (libmath_la_SOURCES): And here.
4305 * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
4306 * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
4307 * math/complex-stub.h: Move c_log declarations into. . .
4308 * math/mathconf.h: Here. This is because glibc's <complex.h>
4309 declares cclog, not c_log. The case of the dueling standards. . .
4310 * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
4311 * math/Makefile.am: Change.
4312 * math/nan.c (nan): Change signature.
4313 * math/mathconf.h (NAN): Same.
4314 * math/complex-stub.h (nan): And here.
4316 * Makefile.am (rebuild-stamp): Remove libio and libio
4317 dependancies. Plan to take out libio subdir and just merge with
4318 libio in top level gcc directory. Of course, this assumes there is
4319 a libio in the top level directory (ie ../src_dir). This will
4320 probably change the way this library is configured by default.
4323 2000-02-09 Chip Salzenberg <chip@valinux.com>
4325 * localefwd.h (locale): Make public: facet, id, category.
4327 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4329 * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
4331 * acinclude.m4: Patch only once!
4333 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4335 * testsuite/26_numerics/buggy_complex.cc: New file.
4337 2000-02-05 Petter Urkedal <petter@matfys.lth.se>
4339 * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
4340 on the 1999-11-21 entries by Mumit Khan.
4341 * configure.in: Use.
4342 * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
4343 * bits/std_complex.h: Use.
4345 2000-02-04 Philip Martin <pm@corris.dircon.co.uk>
4347 * stl/bits/stl_algobase.h: Add traits based dispatch for
4348 __normal_iterator in the copy_backward()algorithm
4349 * stl/bits/stl_vector.h: Reduce use of __normal_iterator
4352 2000-02-04 Mumit Khan <khan@xraylith.wisc.edu>
4354 * src/gen-num-limits.cc (signal_handler): Work around signal
4355 handling problem on Cygwin.
4356 Thanks to Chris Faylor <cgf@cygnus.com>.
4358 2000-02-03 Benjamin Kosnik <bkoz@cygnus.com>
4360 * configure.in: Add (preliminary) support for cross compiles and
4362 Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
4363 compilation freaks on this.
4364 * configure: Regenerate.
4365 * src/Makefile.am: Add support for cross compiles.
4366 * src/Makefile: Regenerate.
4367 * Makefile.am: Add support for cross compiles.
4368 * Makefile.in: Regenerate.
4370 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
4372 * configure.in (LIBS): Remove unused subdirs.
4373 * configure: Regenerate.
4374 * Makefile.am (SUBDIRS): And here.
4375 * Makefile.in: Regenerate.
4376 * src/Makefile.am (sources): And here.
4377 * src/Makefile.in: Regenerate.
4380 * generic/*: Remove.
4382 * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
4384 * libtool: Update to libtool-1.3.4.
4388 * config.guess: Same.
4390 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
4391 Alexandre Petit-Bianco <apbianco@cygnus.com>
4393 * mkc++config: New file. Put autoconf macros into _GLIBCPP_
4394 namespace instead of polluting global namespace with duplicate
4396 * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
4398 (AC_OUTPUT_COMMANDS): Make it here.
4399 * configure: Regenerate.
4400 * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
4401 endif, as now we will add it manually.
4402 Move to this file. . .
4403 * bits/c++config.h: New file. Same as old c++config.h.in except
4404 the ending macro guard is now appended manually.
4406 * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
4407 * bits/std_cmath.h: Same here.
4408 * bits/std_cwchar.h: And here.
4409 * src/locale.cc: And here.
4410 * src/complexl.cc: And here.
4411 * math/mathconf.h: Change to include "config.h" instead of
4414 2000-02-01 Benjamin Kosnik <bkoz@gnu.org>
4416 * configure.in: Add support for threads. Try a model closer to
4417 libjava, as hopefully if the thread bits are added carefully
4418 enough, the source code will not have gross hacks. Besides, the
4419 libstdc++-v2 model could be easily emulated without the necessity
4420 of linking files in (as currently done)--all that needs to be done
4421 is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
4422 new. . . and see if we arrive at a more elegant solution.
4423 * configure: Regenerated.
4424 * config/threads-no.h: New file.
4425 * config/threads-posix.h: New file.
4426 * src/Makefile.am (myinstallheaders): Install c++threads.h.
4427 * src/Makefile.in: Regenerated.
4429 2000-01-31 Benjamin Kosnik <bkoz@gnu.org>
4431 META-QUESTION: Can we just make a "header.html" file and a
4432 "footer.html" and just include them in all the doc sub-pages. The
4433 duplication of the header info is kind of gross, and weak
4434 considering that if you change order or layout then all this stuff
4435 has to be changed in all the sub-files.
4437 * docs/17_intro/contribute.html: Take out duplicate file info.
4438 * README: Should just contain a link to the docs/index.html
4439 page. Duplicate information removed.
4440 * docs/faq/index.html: Remove indexes into HOWTOS.
4441 * docs/17_intro/howto.html: Make intro and docs part more
4442 centralized. Move intro stuff to documentation.html.
4443 * docs/how.html: Tweak. Does this file need to exist? What calls it?
4444 * docs/README.html: Move documentation files to
4445 documentation.html. Should this file be renamed
4446 "config_and_install.html" as that is what is apparently covered
4448 * docs/install.html: Yes. New file, moved and renamed README.html.
4449 * docs/documentation.html: New file. This is the index file for
4451 * docs/index.html: Edit sidebar order. Insert new link to new
4452 documentation spine, documentation.html.
4454 2000-01-31 Scott Snyder <snyder@fnal.gov>
4456 * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if
4457 we don't extract any characters.
4458 * testsuite/21_strings/inserters_extractors.cc (main): New tests.
4460 2000-01-31 Anders Widell <awl@hem.passagen.se>
4462 * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
4463 step is a multiple of the word size.
4464 (_M_do_right_shift): Same.
4465 * testsuite/23_containers/bitset_shift.cc: New file.
4467 2000-01-31 Nathan Myers <ncm@zembu.com>
4469 * README (Documentation): Add path info, fix typos.
4471 2000-01-26 Benjamin Kosnik <bkoz@redhat.com>
4473 * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
4474 crazy group checking for numpunct, for real this time. At some
4475 point, the local variable __grp should probably get replaced a
4476 char array, or something a bit more lightweight.
4477 (num_get::do_get(bool)): Simplify. Don't set bool reference to
4478 parsed value unless err isn't failbit.
4479 (num_get::do_get(*)): Same, make consistent.
4481 Nathan Myers <ncm@zembu.com>
4482 Jim Parsons <parsons@clearway.com>
4483 * testsuite/27_io/istream_extractor_arith.cc (test08): Add
4484 more grouping tests, tweak, scold, wine.
4486 2000-01-24 Benjamin Kosnik <bkoz@gnu.org>
4488 * testsuite/27_io/istream_extractor_arith.cc (test07): Add
4490 * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
4491 grouping bugs. Only allow thousands_sep if _M_use_groupings is
4494 via <llewelly@198.dsl.xmission.com>
4495 * stl/bits/stl_vector.h (vector::_M_range_check): Throw
4496 out_of_range instead of range_error.
4498 2000-01-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4500 * bits/std_iomanip.h (setw): Fix typo.
4502 2000-01-14 Benjamin Kosnik <bkoz@gnu.org>
4504 * testsuite/27_io/istream_extractor_arith.cc: Fix.
4505 * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
4506 * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
4508 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
4510 * docs/README.html: Reformat, more installation instructions.
4511 * docs/gccrebuild.html: New file.
4512 * docs/faq/index.html: Update for new testsuite output filenames.
4513 * docs/faq/index.txt: Regenerate.
4515 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
4517 * Makefile.am (rebuild-stamp, all-local): New targets.
4518 * Makefile.in: Regenerated.
4519 * acinclude.m4: New macro, GLIBCPP_ENABLE_RELIBGCC.
4520 * aclocal.m4: Regenerated.
4521 * configure.in: Call new macro. Also do some sanity checks
4522 for combinations of --enable's that may not make sense.
4523 * configure: Regenerated.
4525 2000-01-13 Benjamin Kosnik <bkoz@cygnus.com>
4527 * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
4528 * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
4529 correctly for hex-formatted input.
4531 * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
4532 eofbit instead of eofbit | failbit.
4533 * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
4534 ifstreams now are opened or'd with ios_base::in (as is correct).
4535 * bits/fstream.tcc (filebuf::seekoff): Simplify.
4536 * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
4538 2000-01-12 Benjamin Kosnik <bkoz@gnu.org>
4540 * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
4541 * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
4543 (__basic_file::filepos_valid): Same.
4544 (__basic_file::filepos_beg): Same.
4545 (__baseic_file::get_fileno): New function.
4546 * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
4547 feedback from LWG 49.
4548 * src/ios.cc: Move definition here.
4549 * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
4551 * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
4552 output part of internal buffer based on string size, so that
4553 _M_out_end is set consistently with filebufs. Correct comments.
4554 * bits/sstream.tcc (stringbuf::overflow): Update here too.
4555 * testsuite/27_io/stringbuf.cc: Changes.
4557 2000-01-11 Benjamin Kosnik <bkoz@gnu.org>
4559 * bits/sstream.tcc (seekoff): Set based on end of written buffer,
4561 * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
4563 * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
4564 (ofstream::open): Add ios_base::out to openmode.
4566 * bits/locale_facets.tcc (_M_extract): Have consistency between
4567 istream::sentry and extractors, where failbit | eofbit is
4568 set. Don't change this, but instead change. . (do some formatting
4570 * bits/istream.tcc (istream::sentry): Only set eofbit.
4572 2000-01-10 Benjamin Kosnik <bkoz@gnu.org>
4574 * testsuite/27_io/istringstream_members.cc: New file.
4576 2000-01-09 Benjamin Kosnik <bkoz@gnu.org>
4578 * bits/istream.tcc (istream::sentry): Flush.
4580 * configure.in (AC_OUTPUT_COMMANDS): Simplify.
4581 * configure: Regenerate.
4582 * src/Makefile.am (generated_headers): Remove bits/c++config.h so
4583 that make clean will not delete it.
4584 * src/Makefile: Regenerate.
4586 2000-01-07 Phil Edwards <pme@sourceware.cygnus.com>
4588 * mkcheck.in: Use host-specific invocation of size(1);
4589 GNU binutils isn't necessarily there (more's the pity).
4591 2000-01-06 Benjamin Kosnik <bkoz@cygnus.com>
4593 * configure.in (LIBS): Better tests for solaris2.6.
4594 * configure: Regenerate.
4596 <vakatov@ncbi.nlm.nih.gov>
4597 * bits/std_sstream.h: As per libstdc++20.
4599 2000-01-06 Benjamin Kosnik <bkoz@gnu.org>
4601 Break out configuration on solaris.
4602 * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
4603 * config/solaris/ctype.cc: Delete and move to proper version.
4604 * config/solaris/bits: Same.
4605 * config/solaris/solaris2.5: Add this directory, with subdir bits
4606 and file ctype.cc. Probably doesn't work.
4607 * config/solaris/solaris2.6: Same.
4608 * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
4610 * Makefile.am: Change paths to mkcheck.
4611 * Makefile: Regenerate.
4612 * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
4613 * configure: Regenerate.
4614 * src/Makefile.am (generated_headers): Add bits/c++config.h.
4616 * mkcheck: Now autogenerated by configure and renamed. . .
4617 * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.
4618 Have longer-style dates.
4619 Raja R Harinath <harinath@cs.umn.edu>
4620 * mkcheck: Change path to #!/usr/clocal/bin/bash.
4622 * docs/README.html: Correct links, maybe. FAQ, install notes, and
4623 general documentation need to be organized around each other, not
4624 fight against each other. . .
4626 2000-01-04 Phil Edwards <pme@sourceware.cygnus.com>
4627 Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
4629 * README: Add a note referring to README.html.
4630 * docs/README.html: New file from Nicolai.
4631 * docs/faq/index.html: Move "how to get a copy" to here.
4632 * docs/gentop/footchunk.html: Update.
4633 * docs/gentop/headchunk.html: New links according to
4634 bkoz's idea for "How to..." stuff.
4635 * docs/gentop/thanks: Actually put people here.
4636 * docs/download.html: Regenerated.
4637 * docs/index.html, docs/links.html, docs/mail.html,
4638 docs/status.html, docs/thanks.html, docs/faq/index.txt: Ditto.
4639 * docs/how.html: Ditto. (This file should go away soon.)
4641 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
4643 * docs/gentop/status: Add snapshot version column, update
4645 * docs/status.html: Regenerated.
4647 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
4649 * docs/faq/index.html: Turn README and RELEASE-NOTES into links
4650 from installation FAQ, and specify location of text files.
4651 * docs/faq/index.txt: Regenerated.
4653 1999-12-23 Phil Edwards <pme@sourceware.cygnus.com>
4655 * docs/gentop/download: Add links to prebuilds for Cygwin/Mingw32.
4656 * docs/download.html: Regenerated.
4658 1999-12-22 Phil Edwards <pme@sourceware.cygnus.com>
4660 * docs/faq/index.html: Update 'what works' for .7 snapshot,
4661 clean up various links.
4662 * docs/faq/index.txt: Regenerated.
4663 * docs/gentop/gentop: Smarter regeneration script.
4664 * docs/gentop/{head,foot}chunk.html: Updated with new
4665 contributors link and mod date.
4666 * docs/gentop/index: Snapshot relase date.
4667 * docs/gentop/thanks: New contributors page added.
4668 * docs/{download,how,index,links,mail,status,thanks}.html:
4669 Regenerated from gentop; thanks.html created.
4671 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4673 * bits/c++config.h.in (__GLIBCPP__): 19991221.
4674 * docs/index.html: Add correct information.
4676 * config/irix: New directory.
4677 * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
4678 * config/irix/bits/ctype_base.h: And here.
4680 * config/aix: New directory.
4681 * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
4682 * config/aix/bits/ctype_base.h: And here.
4684 1999-12-21 Philip Martin <pm@corris.dircon.co.uk>
4686 * bits/basic_string.h: Add special case handling for integral
4688 * bits/std_string.h: include type_traits.h
4689 * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
4691 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4693 * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
4695 * bits/std_fstream.h (sync): And here.
4696 * testsuite/27_io/filebuf.cc: Revisions.
4697 * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
4698 at the end of the file.
4699 * testsuite/27_io/filebuf-3.tst: Correct.
4701 1999-12-21 Phil Edwards <pedwards@jaj.com>
4703 * docs/gentop/index: Hold off on .7 announcement date.
4704 * docs/index.html: Regenerate.
4706 1999-12-21 Benjamin Kosnik <bkoz@kcygnus.com>
4708 * bits/std_fstream.h (sync): Move _M_file->sync() to
4709 _M_really_overflow().
4710 * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
4711 as to get the _M_file->sync action, which forces the external
4712 buffer to update itself.
4713 (underflow): Same here.
4715 1999-12-21 Phil Edwards <pedwards@jaj.com>
4717 * bits/c++config.h.in: Uncomment _GLIBCPP_USE_NAMESPACES and move...
4718 * acconfig.h: ...to here.
4719 * config.h.in: Regenerate from aclocal.
4720 * acinclude.m4: Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
4721 * aclocal.m4: Regenerate from acinclude.
4722 * configure.in: Use ENABLE macros here.
4723 * configure: Regenerate.
4724 * src/Makefile.am: Use results from ENABLE macros.
4725 * src/Makefile.in: Regenerate.
4727 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
4729 * mkcheck (SRC_DIR): Now have to include config/* dir if "make
4730 check" and not "make check-install." Temporarily hack in linux
4733 * bits/std_streambuf.h: Tweaks.
4734 * bits/streambuf.tcc (xsgetn): Tweaks.
4735 * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
4736 * bits/fstream.tcc (filebuf::underflow): Simplify.
4737 * bits/std_sstream.h (streambuf::underflow): Minor change to make
4738 checks for read position precisely implement the standard.
4739 * bits/basic_file.h (filepos_cur): Base this on _offset.
4740 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
4741 * testsuite/27_io/filebuf.cc: Tweak.
4743 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
4745 * docs/17_intro/RELEASE-NOTES: Fix typos.
4747 * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
4748 out platform-specific bits.
4749 * config/default/ctype.cc: And here.
4750 * config/defaults/bits/ctype_base.h: And here.
4751 * config/linux/ctype.cc: And here.
4752 * config/linux/bits/ctype_base.h (ctype_base): And here.
4753 * config/solaris/bits/ctype_base.h (ctype_base): Add
4754 __to_type. Comment, as it looks like this is for solaris2.6 and
4755 above: solaris2.5.1 doesn't seem to have the same definitions.
4756 * config/solaris/ctype.cc: And here.
4758 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
4759 Ulrich Drepper <drepper@cygnus.com>
4761 * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
4763 * src/locale.cc: Take out platform-specific hacks.
4764 * config/linux/ctype.cc: Put here.
4765 * config/solaris/ctype.cc: Put here.
4766 * config/default/ctype.cc: Put here.
4768 * bits/locale_facets.h: Take out platform-specific hacks.
4769 * config/linux/bits/ctype_base.h: Put here.
4770 * config/solaris/bits/ctype_base.h: Put here.
4771 * config/default/bits/ctype_base.h: Put here.
4773 * configure.in: Bump version.
4774 Add tests for top-level config directory.
4775 * configure: Regenerated.
4776 * src/Makefile.am (INCLUDES): Add platform-specific dir.
4777 * src/Makefile: Regenerate.
4779 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
4780 Ulrich Drepper <drepper@cygnus.com>
4782 * bits/locale_facets.h: Hack in solaris support.
4783 * src/locale.cc: Here too.
4785 1999-12-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4787 * docs/17_intro/TODO: Update
4788 * docs/17_intro/RELEASE-NOTES (New): Update.
4790 1999-12-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
4792 * bits/c++config.h.in (__GLIBCPP__): Bump.
4793 * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
4794 * docs/17_intro/TODO: Update.
4796 * bits/locale_facets.h: Touch this too.
4797 * bits/localefwd.h: Add typedefs for loooooong vector names.
4798 * bits/locale_facets.tcc (locale::operator()): Need parens.
4799 (has_facet): Simplify.
4800 * src/locale-inst.cc: Add instantiations.
4801 * src/locale.cc: Tweaks.
4803 * bits/std_streambuf.h: Move indeterminates into. .
4804 * bits/std_fstream.h: Here.
4805 * bits/fstream.tcc (underflow): Rewind just for ios_base::out
4807 * bits/sstream.tcc: Very minor formatting tweaks.
4808 * bits/std_streambuf.h (_M_set_determinate): If exclusively an
4809 input buffer, set _M_buf to offset.
4810 * bits/istream.tcc (std): Tweaks.
4811 * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
4813 * testsuite/27_io/filebuf.cc: Tweaks.
4815 1999-12-17 Phil Edwards <pedwards@jaj.com>
4817 * configure.in: Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
4818 * configure: Regenerate.
4819 * src/Makefile.am: Use OPTLEVEL in CXXFLAGS.
4820 * src/Makefile.in: Regenerate. Also picks up OTHER_CXXFLAGS rename
4821 to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
4823 1999-12-17 Phil Edwards <pedwards@jaj.com>
4825 * docs/21_strings/stringtok_std_h.txt: New algorithm
4826 suggested by Chris King.
4827 * docs/21_strings/howto.html: Link to new version.
4829 1999-12-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4831 * bits/valarray_array.h (__valarray_sum): Use operator+=, not
4833 * docs/17_intro/TODO: Update.
4835 1999-12-15 Phil Edwards <pme@sourceware.cygnus.com>
4837 * docs/gentop/footchunk.html: Updated, fixed CRLFs.
4838 * docs/gentop/gentop: Ditto.
4839 * docs/gentop/headchunk.html: Ditto.
4840 * docs/*.html: Regenerated from gentop.
4841 * docs/*/howto.html: Updated as test.
4842 * docs/faq/index.html: Updated, fixed CRLFs.
4843 * docs/faq/index.txt: Regenerated.
4845 1999-12-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4847 * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
4849 * bits/std_complex.h
4850 (complex<float>::complex(const complex<double>&),
4851 complex<float>::complex(const complex<long double>&)): Define.
4853 * docs/17_intro/TODO: Update.
4855 1999-12-13 Benjamin Kosnik <bkoz@cygnus.com>
4857 * bits/istream.tcc (seekg): Don't set _M_gcount.
4859 * bits/fstream.tcc (filebuf::underflow): Re-sync
4860 external byte sequence's input buffer only. . .
4861 * testsuite/27_io/istream_unformatted.cc (test04): New tests for
4862 tellg, seekg and filebufs.
4863 (test05): Same for stringbufs.
4864 * testsuite/27_io/istream_unformatted-2.tst: New file.
4865 * testsuite/27_io/istream_unformatted-1.tst: New file.
4866 * testsuite/27_io/istream_unformatted-1.txt: New file.
4867 * testsuite/21_strings/inserters_extractors.cc (test05): Change
4870 1999-12-13 Phil Edwards <pedwards@jaj.com>
4872 * docs/gentop/*: New directory, containing bits for the homepages.
4873 * docs/*.html: Regenerated from gentop.
4874 * docs/*/*.html: Entries added and regenerated.
4876 1999-12-13 Benjamin Kosnik <bkoz@gnu.org>
4878 Efforts to get -O2 to work with -Winline -Werrors.
4879 * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
4880 _Tp&): Remove inline declaration, as cannot be inlined and
4881 -Winline -Werror complains. An interesting question is why this
4882 cannot be inlined, as I can see no real reason to disqualify it.
4883 (__valarray_product(const _Tp*, const _Tp*)): Same here.
4884 * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
4886 * docs/17_intro/TODO: Update.
4888 1999-12-12 Benjamin Kosnik <bkoz@gnu.org>
4890 * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
4892 * bits/basic_file.h (filepos_cur()): Make pointers themselves be
4893 the resultant position.
4894 * bits/fstream.tcc (seekoff): Explicitly set return value to
4895 resultant external byte sequence position, not value returned from
4896 _M_file->seekoff. Need to make
4897 (seekpos): New definition.
4899 * bits/istream.tcc (seekg): As per Library Issues List 136, set to
4900 just istream. Necessary, or else tellg will give an invalid stream
4901 position, but seekg will return a valid stream position, which is
4902 not groovy: see testcase addition.
4903 * bits/ostream.tcc (seekp): Same.
4905 * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
4906 * bits/sstream.tcc: Tweaks.
4907 * bits/locale_facets.tcc: Tweaks.
4908 (num_put::do_put(iter_type, ios_base, char_type, const void*)):
4909 Re-write in a way that is easier for the inliner to work with.
4910 * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
4912 1999-12-10 Benjamin Kosnik <bkoz@cygnus.com>
4914 * bits/locale_facets.tcc: Tweaks.
4915 * bits/locale_facets.h (use_facet): Can't inline, remove inline
4917 * bits/localefwd.h: And here.
4918 * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
4919 * bits/ostream.tcc: Put here.
4921 Frank Ch. Eigler <fche@cygnus.com>
4922 * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS.
4924 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
4926 * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
4927 in and out buffers update independantly.
4929 * bits/basic_ios.h: Minor formatting.
4930 * bits/fstream.tcc (std): Fix indentation.
4932 1999-12-08 Chip Salzenberg <chip@valinux.com>
4934 * bits/char_traits.h (char_traits<>): Move not_eof() functions
4935 after corresponding eof() functions, so they're easier for the
4937 * bits/locale_facets.h (money_base::__default_pattern): Move
4938 static variable out of inline functions.
4939 (_Moneypunct<>::do_{pos,neg}_format): Use it.
4940 * src/locale-inst.cc (money_base::__default_pattern): Define it.
4942 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
4944 * bits/std_fstream.h (filebuf::open): Tweak.
4945 * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
4946 * bits/std_ios.h: Minor tweaks for headers.
4948 1999-12-06 Benjamin Kosnik <bkoz@gnu.org>
4950 * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
4951 * src/string-inst.cc: Add guards . . .
4952 * src/misc-inst.cc: And here.
4953 * bits/std_sstream.h: And here.
4954 * bits/std_fstream.h: And here.
4955 * bits/std_streambuf.h: And here.
4956 * bits/std_istream.h: And here.
4957 * bits/std_ostream.h: And here.
4959 1999-12-06 Scott Snyder <snyder@fnal.gov>
4961 * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
4963 (basic_istream::readsome): And here as well.
4964 * testsuite/27_io/istream_unformatted.cc: Test a zero-length
4967 1999-12-06 Mumit Khan <khan@xraylith.wisc.edu>
4969 * bits/istream.tcc (basic_istream::ignore): streamsize is not
4970 necessarily an `int'.
4972 1999-12-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4974 * mknumeric_limits: Don't use $CXXFLAGS when building
4975 gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
4976 generally instructs the compiler not to emit template
4977 instantiations and we end up with undefined symbols. Sigh.
4979 1999-12-05 Benjamin Kosnik <bkoz@gnu.org>
4981 * bits/locale_facets.tcc: Tweak.
4982 (_S_format_long): Adjust showpos formatting for hex and oct.
4983 * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
4984 and oct by formatting as unsigned.
4985 (operator<<(int)): Same here.
4986 * bits/ostream.tcc (operator<<(long)): Same.
4987 (operator<<(long long)): Same.
4988 (_S_pad_char): Actually treat ios_base::internal as something
4989 worth doing correctly. Remove const designation on ios argument.
4990 * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
4991 * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
4993 1999-12-04 Benjamin Kosnik <bkoz@gnu.org>
4995 * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
4997 1999-12-03 Benjamin Kosnik <bkoz@gnu.org>
4999 * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
5001 * bits/sstream.tcc (streambuf::seekoff): Add parens.
5002 * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
5003 (operator>>(istream, _CharT*)): Change streamsize to int_type.
5004 (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
5005 * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
5007 (ostream::operator<<(_CharT)): Fix.
5009 * bits/std_sstream.h: Temporarily disable including sstream.tcc to
5010 see if this will increase compile speed.
5011 * bits/std_ostream.h: Likewise. . .
5012 * bits/std_istream.h: And here.
5013 * bits/std_fstream.h: And here.
5014 * src/misc-inst.cc: Add relevant header file includes for
5015 instantiation purposes.
5016 * src/string-inst.cc: And here.
5017 * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
5019 1999-12-02 Benjamin Kosnik <bkoz@gnu.org>
5021 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5022 * bits/istream.tcc (get(streambuf)): More fixes.
5023 (istream::ignore): Get specific about numeric_limits<int>::max()
5026 * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
5027 (filebuf::close): Same.
5028 * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
5030 1999-12-01 Phil Edwards <pedwards@jaj.com>
5032 * mkcheck: Support for compilation/execution timing.
5033 * testsuite/printnow.c: New file.
5035 1999-12-01 Phil Edwards <pedwards@jaj.com>
5037 * bits/std_cwchar.h: Test for _GLIBCPP_USE_WCHAR_T.
5038 * configure.in: Test for presence of wchar.h before testing
5039 for any of its features.
5040 * configure: Regenerate.
5042 1999-11-30 Benjamin Kosnik <bkoz@gnu.org>
5044 Preliminary istream validations complete.
5045 * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
5046 formatting more consistent. Removal of if-statements inside of for
5051 * bits/std_istream.h: Same.
5052 * bits/sstream.tcc (stringbuf::pbackfail): Fix.
5053 * testsuite/27_io/stringbuf.cc: Tweak.
5054 * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.
5056 * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
5057 failbit on failure, as per 27.6.2.5.2.
5059 * stl/bits/std_vector.h: Allow bool specializations. Should move
5060 ext/std_bvector to bits, not ext, maybe.
5062 1999-11-30 Mumit Khan <khan@xraylith.wisc.edu>
5064 * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
5065 * configure: Regenerate.
5067 999-11-29 Benjamin Kosnik <bkoz@gnu.org>
5069 * bits/istream.tcc (get(streambuf, char)): Fix.
5070 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5072 1999-11-29 Scott Snyder <snyder@fnal.gov>
5074 * bits/basic_string.h (append(const _Char*, size_type)): The
5075 length of the appended string is given exactly by the second arg,
5076 regardless of the data in the character array.
5077 * bits/string.tcc (basic_string(const _CharT*, size_type, const
5078 _Alloc&)): Likewise.
5079 * testsuite/21_strings/append.cc (test01): Remove erroneous test
5080 of basic_string::append.
5082 1999-11-29 Chip Salzenberg <chip@valinux.com>
5084 * Makefile.in: Tweaks for CXXFLAGS.
5085 * */Makefile.in: Same.
5087 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
5089 * conficd bgure.in: Check for wide character support.
5090 * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
5091 * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
5092 * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
5094 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
5096 * acinclude.m4: Fix typo.
5097 * src/complex.cc: Fix macro line continuation.
5099 1999-11-29 Petter Urkedal <petter@matfys.lth.se>
5101 * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
5102 string literals in format, as used in locale-facets.tcc.
5104 1999-11-28 Benjamin Kosnik <bkoz@gnu.org>
5106 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
5107 * bits/istream.tcc (istream::get): Extract to argument minus one.
5108 Various tweaks and fixes.
5110 1999-11-22 Mumit Khan <khan@xraylith.wisc.edu>
5112 * bits/locale_facets.tcc: Workaround for compiler crash on
5115 1999-11-21 Mumit Khan <khan@xraylith.wisc.edu>
5117 * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
5118 * configure.in: Use.
5119 * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
5120 * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
5121 * bits/std_complex.h: Use.
5122 * src/complex.cc: Use.
5124 1999-11-19 Mumit Khan <khan@xraylith.wisc.edu>
5126 * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
5127 * testsuite/21_strings/inserters_extractors.cc: Likewise.
5128 * testsuite/22_locale/ctype.cc: Likewise.
5129 * testsuite/23_containers/multiset.cc: Likewise.
5130 * testsuite/23_containers/vector_ctor.cc: Likewise.
5131 * testsuite/26_numerics/binary_closure.cc: Likewise.
5132 * testsuite/27_io/fpos.cc: Likewise.
5133 * testsuite/27_io/ios_base_callbacks.cc: Likewise.
5134 * testsuite/27_io/istream_extractor_arith.cc: Likewise.
5135 * testsuite/27_io/istream_extractor_char.cc: Likewise.
5136 * testsuite/27_io/istream_extractor_other.cc: Likewise.
5137 * testsuite/27_io/istream_sentry.cc: Likewise.
5138 * testsuite/27_io/ostream_inserter_char.cc: Likewise.
5139 * testsuite/27_io/ostream_inserter_other.cc: Likewise.
5140 * testsuite/27_io/streambuf.cc: Likewise.
5141 * testsuite/27_io/stringstream.cc: Likewise.
5143 1999-11-19 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5145 * bits/valarray_meta.h: Don't forget to define tanh
5147 1999-11-18 Philip Martin <pm@corris.dircon.co.uk>
5149 * src/stl-inst.cc: Use typedef to refer to iterator
5150 * stl/bits/stl_algobase.h: Add traits based dispatch for
5151 __normal_iterator in the copy()algorithm
5152 * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
5154 1999-11-18 Kevin Ediger <kediger@licor.com>
5156 * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
5157 constructors for locale::_Impl exception safe.
5159 1999-11-18 Scott Snyder <snyder@fnal.gov>
5161 * stl/bits/stl_queue.h: The C++ standard gives the default for the
5162 _Sequence template argument of priority_queue<> as vector<>, not
5165 1999-11-18 Benjamin Kosnik <bkoz@gnu.org>
5167 * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
5169 * bits/sstream.tcc: Adjust here too.
5171 1999-11-17 Benjamin Kosnik <bkoz@gnu.org>
5173 * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
5174 * bits/istream.tcc (operator>>): Replace iostate(0) with
5175 iostate(ios_base::goodbit), which is the same thing, but hopefully
5177 * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
5178 libraries issue list 17.
5179 (do_gets): Don't set goodbit explicitly, instead only set on
5180 failures as good bit is the default setting.
5181 * bits/ios_base.h (setf): Set correctly.
5182 * bits/fstream.tcc: Tweak.
5183 * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
5184 in|out bufs that are empty. . .
5185 * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
5187 1999-11-16 Benjamin Kosnik <bkoz@gnu.org>
5189 * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
5190 * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
5191 Add comments "all about _M_buf."
5192 (setg): Set _M_mode.
5194 1999-11-16 Kevin Ediger <kediger@licor.com>
5196 * bits/locale_facets.tcc (_S_build_float_format): New function.
5197 (_S_output_float): New function.
5198 (num_put::do_put(double)): Use 'em.
5199 (num_put::do_put(long double)): Use 'em.
5200 * testsuite/27_io/ostream_inserter_arith.cc: New file.
5202 1999-11-15 Scott Snyder <snyder@fnal.gov>
5204 * bits/basic_file.h: Type of __off parm should be __c_streampos, to
5205 match how libio is calling us.
5206 * src/basic_file.cc (sys_seek): Likewise.
5207 * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
5209 1999-11-15 Benjamin Kosnik <bkoz@gnu.org>
5211 * docs/17_intro/contribute.html: Add link to assignment form.
5212 * docs/17_intro/libstdc++-assign.txt: New file.
5214 * mkcheck (TESTS_FILE): Move a copy of test files as well as
5217 * bits/std_streambuf.h (_M_buf_bump): New function.
5218 * bits/streambuf.tcc: Mods to support _M_buf_bump.
5219 (xsputn): Here. Also add checks for output valid.
5220 (xsgetn): Add checks for input valid.
5222 (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
5223 * bits/std_sstream.h (_M_really_sync): Set _M_buf.
5224 Set _M_out_end to variable-length-end.
5225 * bits/sstream.tcc (overflow): Use _M_buf_bump.
5228 * bits/fstream.tcc (std): Tweak formatting.
5229 (filebuf::overflow): Simplify.
5230 (filebuf::showmanyc): Same.
5231 (filebuf::underflow): Same.
5232 * testsuite/27_io/filebuf.cc: Fix.
5233 * testsuite/27_io/ostream_inserter_other.cc: Fix.
5234 * testsuite/27_io/ostream_inserter_other-2.tst: New file.
5235 * testsuite/27_io/stringbuf.cc: Tweak.
5236 * testsuite/27_io/streambuf.cc: Tweak.
5237 * testsuite/27_io/istream_extractor_other.cc: Fix.
5239 1999-11-11 Matthias Klose <doko@cs.tu-berlin.de>
5241 * stl_deque.h: Use static_casts<size_type>(signed_type).
5243 1999-11-11 Benjamin Kosnik <bkoz@gnu.org>
5245 Cleanups for callbacks, more regression hunting. Remaining
5246 failures (1) due to last unresolved stringstream issues, not
5248 * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
5249 killing 27_io/filebuf.cc tests. . . need another solution.
5251 * bits/streambuf.tcc (_S_copy_streambufs): Fix.
5252 * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
5254 * bits/basic_ios.h: Add cached facets here. UGH. The standard
5255 foils all attempts at a graceful, minimal implementation.
5256 * bits/basic_ios.tcc: Tweaks.
5257 * bits/istream.tcc: Fix.
5258 * bits/ostream.tcc: Fix.
5259 * bits/std_istream.h: Fix.
5260 * bits/std_ostream.h: Fix.
5261 * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
5263 * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
5264 (_S_pad_numeric): Make comprehensible.
5266 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
5268 * bits/std_ostream.h: Add callbacks for _M_fnumput.
5269 (_S_ostream_fcache): New function.
5270 Move functions out-of-line.
5271 * bits/ostream.tcc: Put here.
5273 * bits/std_istream.h: Add callbacks for _M_fnumget.
5274 (_S_istream_fcache): New function.
5275 Move functions out-of-line.
5276 * bits/istream.tcc: Put here.
5278 * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
5279 _M_call_callbacks(), as ios_base::imbue does this already.
5280 * src/ios.cc (register_callback): Clean.
5281 (_M_call_callbacks): Same.
5282 * bits/ios_base.h: Callback work.
5283 * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
5285 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
5286 Matthias Klose <doko@cs.tu-berlin.de>
5288 * stl/ext/stl_rope.h: Fix initialization order.
5290 1999-11-09 Scott Snyder <snyder@fnal.gov>
5292 * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
5293 _M_file->sync() so that redirection works correctly.
5295 1999-11-09 Benjamin Kosnik <bkoz@gnu.org>
5297 * bits/istream.tcc: Re-order.
5298 * bits/std_istream.h: Fix getline problems.
5299 * testsuite/27_io/istream_unformatted.cc: New tests.
5301 Clean up regressions.
5302 * bits/std_sstream.h: Set initial stringbufs correctly.
5304 1999-11-09 Scott Snyder <snyder@fnal.gov>
5306 * stl_vector.h (_M_range_insert): Fix mixing pointers and
5308 * testsuite/23_containers/vector_modifiers.cc (test01): New file,
5311 1999-11-09 Benjamin Kosnik <bkoz@cygnus.com>
5313 * src/Makefile.am (CXXFLAGS): Add -Winline.
5314 * src/Makefile.in: Regenerate.
5316 1999-11-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5318 * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
5319 building meta-expressions don't forget to take the contained
5322 1999-11-02 Benjamin Kosnik <benjamin@cygnus.com>
5324 * configure: Regenerate.
5326 1999-11-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5328 * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
5330 * bits/valarray_meta.h (min): Likewise.
5331 * bits/valarray_meta.h (max): Likewise.
5333 1999-11-01 Benjamin Kosnik <bkoz@cygnus.com>
5335 * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
5336 * bits/std_streambuf.h (_S_copy_streambufs): New function.
5337 * bits/streambuf.tcc: Define.
5338 * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
5339 * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
5340 * testsuite/27_io/ostream_inserter_other.cc: Add tests.
5341 * testsuite/27_io/ostream_inserter_other-1.tst: New file.
5343 * bits/basic_string.h: Explicitly cast npos to unsigned type,
5344 reported by Richard Atterer.
5345 * bits/char_traits.h: For consistency's sake, here too.
5347 * configure.in: Bump version to 2.90.7.
5349 1999-10-31 Benjamin Kosnik <bkoz@cygnus.com>
5351 * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
5352 * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
5353 * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
5355 * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
5356 writing into buffer.
5359 1999-10-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5361 * bits/valarray_array.h (__valarray_sum): New function.
5362 * bits/valarray_array.h (__valarray_product): Same.
5364 * bits/std_valarray.h (valarray<T>::product): Comment out.
5365 * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
5366 instead of accumulate.
5368 * src/valarray-inst.cc: Remove explicit intantiation of
5369 class multiplies<size_t>, accumulate, valarray<size_t>::product.
5370 * src/valarray-inst.cc (__valarray_product): Instantiate
5372 * src/valarray-inst.cc (__valarray_product(const
5373 valarray<size_t>&)): New function.
5374 * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
5375 valarray<size_t>::product. Use __valarray_product instead.
5378 1999-10-25 Benjamin Kosnik <bkoz@cygnus.com>
5380 * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
5381 (_S_pad_char): New function. Not done: ios_base::internal.
5382 * bits/ostream.tcc: Clean for above.
5383 * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
5384 specialization that was commented out, as ostreams now have to
5385 correctly deal with padding.
5386 * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
5388 * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
5389 from mailing list. This is a bug, and should be fixed.
5390 * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
5392 1999-10-22 Petter Urkedal <petter@matfys.lth.se>
5394 * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
5395 to avoid conflict with gcc name mangling.
5396 * stl/bits/stl_algo.h (__transform): Same.
5398 1999-10-21 Benjamin Kosnik <bkoz@cygnus.com>
5400 * bits/ios_base.h: Change argument names.
5401 * docs/17_intro/BADNAMES: Add __opr.
5403 1999-10-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5405 Work on compilation slowdowns from 10-5 to 10-12, which are
5406 related to the _Callback_list inlining/merge-ifcation, which is
5407 still a pending issue, but this stuff is necessary cleanup anyway.
5409 * src/ios.cc: Re-arrange.
5410 * bits/ios_base.h: Tweak.
5411 * bits/basic_ios.tcc: Move out of line definitions here, move
5412 small out-of-line definitions inline.
5413 * bits/basic_ios.h: From here.
5415 * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
5416 * bits/std_streambuf.h: From here.
5418 1999-10-19 Benjamin Kosnik <bkoz@cygnus.com>
5420 * testsuite/27_io/istream_extractor_char.cc: Add tests.
5421 * bits/std_istream.h: Tweaks--set eofbit on eof condition.
5422 * bits/istream.tcc (operator>>(istream&, string&): Remove
5423 vestigial issspace hacks and use ctype::is instead.
5424 (getline): Remove unnecessary loops, fortify and pasteurize.
5427 1999-10-18 Benjamin Kosnik <bkoz@cygnus.com>
5429 * bits/istream.tcc (operator>>): Tweak.
5430 * bits/std_istream.h: Fix according to library issues list 68.
5433 * bits/locale_facets.h: Fix table_size to be non-zero.
5435 1999-10-18 Vadim Egorov <egorovv@HotPOP.com>
5437 * src/basic_file.cc: ifdef instead of comment for binary mode
5439 1999-10-18 Russell Davidson <russell@qed.econ.queensu.ca>
5441 * bits/std_sstream.h: Stringbuf initialization based on actual,
5442 not allocated, size.
5443 * testsuite/21_strings/inserters_extractors.cc (test06): Add test
5446 1999-10-17 Benjamin Kosnik <bkoz@cygnus.com>
5448 * testsuite/26_numerics/c_math.cc (test03): Tweak.
5449 * testsuite/27_io/istream_manip.cc (test01): Corrections due to
5451 * testsuite/21_strings/inserters_extractors.cc (test01): Same.
5453 1999-10-14 Benjamin Kosnik <bkoz@cygnus.com>
5455 * bits/std_istream.h: Tweaks.
5456 * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
5457 as per issues list addition--set failbit, eof on empty buffers.
5458 * testsuite/27_io/istream_sentry.cc: New file.
5460 1999-10-12 Chris Prince <prince@wcug.wwu.edu>
5462 * bits/std_cstdio.h: Remove Solaris hacks.
5464 1999-10-12 Phil Edwards <philip.edwards@sn.wpafb.af.mil>
5466 * docs/index.html: Fix minor typos and tweaks.
5467 * docs/17_intro/contribute.html: Ditto.
5468 * docs/*/howto.html: Ditto. More "EGCS"->"GCC" conversion, notes on
5469 thread safety and binary I/O, links to external sites.
5470 * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
5473 1999-10-12 Petter Urkedal <petter@matfys.lth.se>
5475 * bits/std_cmath.h (abs(float)): When ::absf is not present, call
5476 ::fabs(double) rather than ::abs(int).
5478 1999-10-11 Benjamin Kosnik <bkoz@milou.cygnus.com>
5480 * bits/std_streambuf.h: Fix minor blip--should explicitly return
5481 *gptr(), not the result of underflow.
5482 (pbackfail): Conform to default behavior.
5484 * bits/streambuf.tcc: Add out-of-line streambuf members.
5487 * testsuite/27_io/streambuf.cc: New file.
5488 * testsuite/27_io/filebuf.cc: Correct test.
5490 1999-10-08 Benjamin Kosnik <bkoz@haight.constant.com>
5492 * bits/std_cmath.h: Correctly cast int to double.
5493 * testsuite/26_numerics/c_math.cc: Add test.
5495 * mknumeric_limits (OUT_C): Tweaks.
5496 * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
5497 trying to instantiate type_traits<wchar_t>.
5498 * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
5499 * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
5500 * configure: Regenerate.
5502 1999-10-06 Benjamin Kosnik <bkoz@milou.cygnus.com>
5504 * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
5505 (streambuf::xsputn): Put in break.
5506 Aiming for parity between these two (mostly) similar functions.
5507 Need to re-write tests.
5509 * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
5510 Make data members protected, not private.
5511 * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
5512 ios_base.h. As called only once, collapse into . . .
5513 * bits/basic_ios.h (basic_ios::copyfmt): Fix.
5514 (basic_ios::clear): Throw ios_base::failure on occasion.
5515 (basic_ios::exceptions): Fix.
5516 * testsuite/27_io/ios_members.cc (test02): Add tests.
5518 * bits/fpos.h: Default initialize.
5519 * testsuite/27_io/fpos.cc (test03): Add test.
5521 1999-10-04 Russell Davidson <russell@qed.econ.queensu.ca>
5523 * src/basic_file.cc: Fix open modes.
5525 1999-10-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5527 * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
5529 1999-09-23 Benjamin Kosnik <bkoz@milou.cygnus.com>
5531 * bits/streambuf.tcc: Yea. Fix this for real.
5532 * testsuite/27_io/ostream_inserter_other.cc: Add file.
5533 * src/Makefile.*: Regenerate.
5535 1999-09-22 Benjamin Kosnik <bkoz@milou.cygnus.com>
5537 * bits/std_cstdlib.h: Add more linux-specif hacks to the header
5538 files so that stdtof and strtold will be declared. Some hacks
5539 already exits in bits/std_cctype.h -- these should all be removed
5541 * bits/locale_facets.tcc: Add cstring.h include.
5542 _S_format_long: Use long, not int.
5543 Add std_limits.h include, for numeric_limits.
5544 * testsuite/27_io/istream.cc: Make instantiations work when using
5546 * testsuite/27_io/ostream.cc: Same.
5548 1999-09-21 Benjamin Kosnik <bkoz@milou.cygnus.com>
5550 * bits/fpos.h (fpos::operator streamoff): Make const, don't return
5551 a reference. Same for operators == and !=.
5552 * testsuite/27_io/fpos.cc: Add tests.
5554 1999-09-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5556 * bits/valarray_array.h: Fix typo.
5558 * mknumeric_limits: Make sure we are regenerating things from
5559 scratch. Otherwise things get redefined. Not good.
5561 1999-09-20 Benjamin Kosnik <bkoz@milou.cygnus.com>
5563 * bits/std_ostream.h: Fix typo.
5564 * bits/std_istream.h: Same.
5565 * bits/std_iomanip.h: Same.
5567 * bits/istream.tcc (sentry::sentry()): Remove optional tie with
5568 ostream, as happens with underflow anyway.
5569 * testsuite/27_io/istream.cc (main): New file.
5570 * testsuite/27_io/ostream.cc (main): New file.
5571 * testsuite/27_io/istream_unformatted.cc: Add tests.
5573 * src/Makefile.am (headers): Add new file.
5574 * src/Makefile.in (headers): Regenerated.
5576 * bits/basic_ios.h: Remove local-related files.
5577 * bits/basic_ios.tcc: New file, add locale-related items.
5578 * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
5579 * testsuite/27_io/ios_members_static.cc: Change to
5580 * testsuite/27_io/ios_base_members_static.cc: This.
5581 * testsuite/27_io/ios_members.cc: New file.
5582 * testsuite/27_io/stdios_basefield_manip: Change to
5583 * testsuite/27_io/ios_manip_basefield.cc: This.
5584 * testsuite/27_io/stdios_fmtflags_manip: Change to
5585 * testsuite/27_io/ios_manip_fmtflags.cc: This.
5587 * bits/fpos.h: Fix discarding qualifiers on this when
5588 using _M_position with a const fpos.
5589 * bits/std_iosfwd.h: Tweak.
5590 * testsuite/27_io/fpos.cc: New file.
5592 1999-09-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
5594 * bits/streambuf.tcc (streambuf::xsputn): Tweak.
5595 * bits/ostream.tcc: Tweak.
5596 * testsuite/21_strings/inserters_extractors.cc (test04, test05):
5597 Add new regressions.
5599 1999-09-16 Benjamin Kosnik <bkoz@milou.cygnus.com>
5601 * bits/basic_ios.h: Inline, tweak.
5602 * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
5603 pass back accurate return value to basic_filebuf::overflow.
5604 * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
5605 This fixes sstream problems reported in libstdc++/9, but screws up
5606 filebufs. That solution is pending.
5608 1999-09-15 Vadim Egorov <egorovv@1c.ru>
5610 * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for
5612 * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
5614 1999-09-08 Benjamin Kosnik <bkoz@milou.cygnus.com>
5616 * bits/c++config.h.in: Add emacs hints.
5618 * stl/bits/stl_range_errors.h: Don't define here, for now define
5619 in stdexcept.cc along with string inlines __length_error, etc.
5620 * src/stdexcept.cc: Define here.
5621 * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
5622 at(size_t) will be declared/defined.
5623 (__STL_THREADS): Fix mess surrounding use of this, enable.
5625 1999-08-31 Benjamin Kosnik <bkoz@milou.cygnus.com>
5627 * testsuite/27_io/istream_extractor_arith.cc: Fix.
5628 * src/localename.cc: Tweak formatting, fix assignment to
5629 const compiler errors.
5631 1999-08-25 Benjamin Kosnik <bkoz@cygnus.com>
5633 * acconfig.h: Add absf, cosf.
5634 * configure.in (use_builtin_sinf): Same.
5635 * configure: Regenerate.
5636 * bits/std_cmath.h: Add mess of defines.
5637 * testsuite/26_numerics/modf_float.cc: Change to
5638 * testsuite/26_numerics/c_math.cc: This.
5640 * src/locale.cc: Change.
5641 * bits/locale_facets.h: Fix.
5642 * testsuite/22_locale/ctype.cc: Add temporary tests.
5644 1999-08-24 Benjamin Kosnik <bkoz@cygnus.com>
5646 * bits/fpos.h: Test.
5648 * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
5649 Fix database name for "libstdc++".
5651 1999-08-23 Benjamin Kosnik <bkoz@cygnus.com>
5653 * mknumeric_limits (numeric_limits): Add default definitions to
5655 * testsuite/18_support/numeric_limits.cc: New file.
5657 1999-08-18 Benjamin Kosnik <bkoz@cygnus.com>
5659 * bits/std_istream.h: Correct initialization.
5660 * bits/std_ostream.h: Likewise.
5661 * bits/std_sstream.h: Likewise.
5662 * bits/std_fstream.h: Likewise.
5663 * testsuite/27_io/stringstream.cc: Add test case.
5665 * bits/std_sstream.h: Replace ____string_type with __string_type.
5666 * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
5667 * bits/std_ostream.h: Tweak dtor.
5669 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5671 * src/Makefile.am (CXXFLAGS): Add -O2.
5672 * src/Makefile.in: Likewise.
5674 * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
5676 * mknumeric_limits (numeric_limits): Uglify.
5678 * bits/std_istream.h: Fix warnings.
5679 * bits/locale_facets.tcc: Collateral damage from
5680 char_traits<char>::int_type change.
5682 * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
5684 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5686 * docs/index.html: Add mailing list form.
5687 * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
5689 1999-08-16 Benjamin Kosnik <bkoz@cygnus.com>
5691 * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
5692 if overflow successfully allocates more space.
5693 * bits/std_sstream.h: Adjust comments.
5694 * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
5695 before overflow forces a resize.
5696 * testsuite/27_io/ostream_inserter_char.cc: New file.
5698 * bits/std_fstream.h: Remove declaration.
5699 * bits/fstream.tcc: Move uflow.
5700 * bits/std_streambuf.h: To here.
5701 * bits/streambuf.tcc: Make consistent.
5703 * src/Makefile.am (WERROR): Enable.
5704 * src/Makefile.in: Regenerate.
5705 * bits/sbuf_iter.h: Tweak.
5706 * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
5707 Use unsigned int as char_traits<char>::int_type.
5709 * bits/ostream.tcc (ostream::putc(char)): Tweak.
5710 * testsuite/27_io/iostream_objects.cc: Terminate string.
5711 Move cin::operator>>(char*) test to extractor_char.cc.
5712 * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
5713 * bits/std_istream.h (basic_iostream): Make explicit definition
5715 * bits/std_sstream.h: Fix typos.
5716 * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
5717 basic_filebuf ctor with fileno open arguments. Thus, filebufs are
5718 initialized in a consistent manner, no matter if the underlying
5719 FILE/bit bucket is a tty or a text file or some other imaginary
5720 construct. This and setting _M_buf_size to 1 for cin allows
5721 istream::get(char) to work in a manner consistent with what others
5724 * docs/index.html: Link Stroustrup's C++ page.
5726 1999-08-12 Michael Cook <cook@sightpath.com>
5728 * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
5729 * bits/istream.tcc: ditto.
5730 * bits/sbuf_iter.h: ditto.
5731 * bits/std_istream.h: ditto.
5732 * src/Makefile.am: Add -Wall to CXXFLAGS.
5733 * src/Makefile.in: ditto.
5735 1999-08-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5736 Russell Davidson <russell@ehess.cnrs-mrs.fr>
5738 * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
5739 * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
5741 1999-08-11 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5743 * testsuite/27_io/istream_unformatted.cc: New file.
5745 * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
5746 elaborate tests for int types with noskipws.
5748 * testsuite/27_io/istream_extractor_other-1.txt: New file.
5749 * testsuite/27_io/istream_extractor_other-1.tst: New file.
5750 * testsuite/27_io/istream_extractor_other-2.tst: New file.
5751 * testsuite/27_io/istream_extractor_other.cc: Add tests.
5752 * bits/istream.tcc: Fix operator>>(streambuf*).
5754 * testsuite/23_containers/vector_ctor.cc (test01): Add.
5756 * docs/index.html: Remove references to egcs.
5757 * docs/17_intro/DESIGN: Same.
5758 * docs/17_intro/contribute.html: Same.
5759 * docs/17_intro/RELEASE-NOTES: Ditto.
5760 * docs/17_intro/howto.html: Same here.
5762 Russell Davidson <russell@ehess.cnrs-mrs.fr>
5763 * stl/bits/stl_vector.h (_M_insert_aux):
5764 * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
5765 decimal/floating point support.
5766 * bits/locale_facets.h: Change _M_extract prototype.
5767 * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
5768 * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
5770 1999-08-10 Michael Cook <cook@sightpath.com>
5772 * bits/fstream.tcc: Fix for unused variable warning (-Wall).
5773 * bits/ios_base.h: ditto.
5774 * bits/istream.tcc: ditto.
5775 * bits/locale_facets.h: ditto.
5776 * bits/locale_facets.tcc: ditto.
5777 * bits/std_streambuf.h: ditto.
5778 * src/basic_file.cc: ditto.
5779 * src/locale.cc: ditto.
5780 * src/localename.cc: ditto.
5782 1999-08-10 Kirat Singh <singhki@jany.gs.com>
5784 * bits/std_iomanip.h: Inline.
5786 1999-08-10 Alfred Minarik <a8601248@unet.univie.ac.at>
5788 * bits/std_streambuf.h: Correct member initialization order.
5789 * src/ios.cc: Add definitions for ios_base data members.
5791 1999-08-06 Phil Edwards <pedwards@ball.com>
5793 * docs/index.html: Seventh snapshot updates. Minor tweaks.
5794 * docs/faq/index.html: Ditto. Removed bugs sections that have
5795 been fixed for a long time... Lots of "egcs" references still
5797 * docs/faq/index.txt: Regenerated.
5799 1999-08-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5800 Andreas Amann <amann@physik.tu-berlin.de>
5802 * testsuite/26_numerics/binary_closure.cc (main): new test.
5804 1999-07-29 Andreas Amann <amann@physik.tu-berlin.de>
5806 * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
5809 1999-08-04 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5811 * docs/index.html (host): Put in testing status.
5813 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
5815 * docs/index.html: Update for libstdc++-2.90.6 release.
5816 * docs/17_intro/RELEASE-NOTES (New): Update.
5817 * docs/17_intro/BUGS: Update.
5818 * bits/c++config.h.in (__GLIBCPP__): Bump version number.
5819 * README (file): Update.
5821 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
5823 * src/Makefile.am (generated_headers): Remove bits/c++config.h as
5825 ($(generated_headers)): Same.
5826 * src/gen-c++config.cc: Remove, rename to
5827 * bits/c++config.h.in: New file. Bump version number.
5828 * configure.in: Generate bits/c++config.h at configure time.
5829 * math/mathconf.h: include bits/c++config.h, not config.h.
5831 * bits/std_cmath.h: Fix remaining link error for solaris shared
5832 builds. _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
5833 being, as on Solaris this silently calls sinf, which does not
5836 * src/complex.cc: More tweaks.
5838 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
5840 * src/complex.cc: Same.
5841 * math/complex-stub.h: Change.
5842 * math/c_log10*.c: Change back to clog10*.c.
5844 * configure.in (NEED_C_LOG10): Delete.
5845 * configure: Regenerate.
5846 * math/Makefile.am: Change.
5848 1999-07-30 Benjamin Kosnik <bkoz@cygnus.com>
5850 * math/Makefile.am: Fix, for real.
5851 * configure.in (use_builtin_sinf): Ok, make autoconf solution.
5852 * math/clog.c: Move to c_log.c.
5853 * math/clog*: Ditto.
5854 * math/c_log10l.c (c_log10l): Change function name.
5855 * math/c_log10f.c (c_log10f): Change function name.
5856 * math/c_log10.c (c_log10): Change function name.
5858 * math/complex-stub.h: Change to c_log* variants.
5859 * src/complex.cc: And here.
5861 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
5863 * testsuite/27_io/istream_extractor_other.cc: Correct last test.
5864 * bits/sstream.tcc (stringbuf::overflow): Don't update the input
5865 sequence, just the output sequence.
5866 * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
5867 the original string, all others use complicated heuristic.
5869 * src/complex.cc: Assume c_log10.
5870 * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
5871 symbols in shared libraries by making c_log/c_log10 part of the
5872 "must cmpile" sources. This may not work on solaris, must check.
5874 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
5876 * bits/istream.tcc (operator>>(streambuf*)): Re-do.
5877 * bits/std_istream.h: Fix char extractors.
5878 * testsuite/27_io/istream_extractor_char.cc: Change.
5879 * testsuite/27_io/istream_extractor_other.cc: Add tests.
5881 1999-07-28 Benjamin Kosnik <bkoz@cygnus.com>
5883 * bits/std_cctype.h: Fix for solaris2.6 builds.
5885 * bits/istream.tcc: Fix, thanks Alfred.
5886 * bits/std_istream.h: Formatting changes.
5888 * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
5889 _IO_cleanup will not be undefined.
5890 * libio/*: Regenerate.
5892 * bits/basic_string.h: More namespace-safety stuff.
5893 * testsuite/27_io/istream_extractor_char.cc: Fix.
5894 * testsuite/27_io/istream_extractor_arith.cc: Fix.
5895 * testsuite/27_io/iostream_objects.cc: Fix.
5896 * testsuite/27_io/ios_ctor.cc: Fix.
5897 * testsuite/27_io/istream_manip.cc: Make namespace safe.
5898 * testsuite/27_io/istream_extractor_other.cc: New file.
5900 * mkcheck (TESTS_FILE): Tweaks.
5902 1999-07-27 Benjamin Kosnik <bkoz@cygnus.com>
5904 * src/gen-c++config.cc: Note here, change version.
5905 * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
5906 * src/locale.cc: Used here.
5907 * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
5909 * aclocal.m4: Regenerate by running `aclocal -I m4.`
5911 * bits/istream.tcc: Fix.
5912 * bits/std_istream.h: More changes to extractors.
5914 * testsuite/27_io/istream_extractor_char.cc: More.
5915 * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
5916 error in testsuite construction.
5918 * bits/std_istream.h: Partially revert.
5919 * bits/std_ostream.h: Same.
5920 * bits/std_sstream.h: Revert.
5922 1999-07-26 Benjamin Kosnik <bkoz@cygnus.com>
5924 * bits/std_sstream.h: Change initialization.
5925 * bits/std_ostream.h: Make default ctor/assign/operator= private.
5926 * bits/std_istream.h: Same, also correct sentry args.
5927 * bits/istream.tcc: Add correct sentry args.
5929 * testsuite/27_io/istream_extractor_char.cc: New file.
5930 * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
5931 name changes making me dizzy.
5933 1999-07-26 Ulrich Drepper <drepper@happy.cygnus.com>
5934 Benjamin Kosnik <bkoz@cygnus.com>
5936 * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
5939 1999-07-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5941 * bits/std_complex.h: Tweak. Make the primary template class
5942 complex work with user-defined numerical types. Provide member
5943 definitions. Restructure.
5944 (class complex<float>): Uglify. Remove __value(). Rename __val
5945 to _M_value. Rename __complex_value_type to _ComplexT. Make it
5946 private. Remove dependency on __value(). Fix various explicit
5947 specialization syntax. Declare a some functions friend. Now the
5948 implementation is nearly comforming.
5949 (class complex<double>): Likewise.
5950 (class complex<long double>): Likewise.
5952 * src/complex.cc: Tweak. Remove dependency on complex::__value().
5953 (sin, sinh, tan, than): Fix call to corresponding C9x function
5956 1999-07-24 Benjamin Kosnik <bkoz@fidel.cygnus.com>
5958 * bits/istream.tcc (ws): Fix error with failbit being set.
5960 Disabled due to egcs/gcc-2_95 internal compiler errors.
5961 * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
5962 -fnew-exceptions. Compiling with namespaces enabled will now be
5964 * mkcheck (CXX_FLAG): Same.
5965 * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
5966 * bits/std_cctype.h: Not enough to just define in namespace std if
5967 ctype-isms are macros. Need to also define in namespace std:: if
5968 the C functions are just plain functions.
5970 * src/gen-num-limits.cc: Fix spelling inconsistencies.
5972 1999-07-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5974 * docs/18_support/howto.html: Start documentation. Need to keep
5975 track of the ongoing discussion in th LWG reflector.
5977 * src/gen-num-limits.cc: Tweak.
5978 (class predicate): New class.
5979 (class value): Likewise.
5980 Make the whole machinery more flexible. Add comments.
5982 1999-07-23 Benjamin Kosnik <bkoz@fidel.cygnus.com>
5984 * bits/ios_base.h: Move state/exception functions into basic_ios.
5985 * bits/basic_ios.h: Same.
5986 * src/ios.cc: And here. Callbacks don't attempt to reset
5989 * bits/std_streambuf.h: Separate ios and streambuf locale data
5990 members and cached facets. Using this convention: _M_locale_buf for
5991 the streambuf-related classes, and _M_locale_ios for the ios
5993 * bits/fstream.tcc: And here.
5994 * bits/basic_ios.h: And here. Also, add cached ctype.
5995 * src/ios.cc: Ditto.
5996 * bits/ios_base.h: Ditto.
5997 * bits/std_istream.h: Use cached ctype facet.
5998 * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
6001 * testsuite/27_io/ios_ctor.cc: New file.
6002 * src/ios.cc: Move _M_state init to basic_ios::init().
6003 * bits/basic_ios.h: To here.
6005 Attempt for some consistency in naming for testsuite/27_io/*.cc.
6006 * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
6007 * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
6008 * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
6009 * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
6011 1999-07-22 Benjamin Kosnik <bkoz@fidel.cygnus.com>
6013 * src/ios.cc: Tweak initializations of standard iostream
6014 objects to closely match the standard. Tie cin/wcin, set flags on
6016 * bits/char_traits.h: Change from size_t to int_type, as per
6017 standard. As per wide streams.
6018 * bits/basic_ios.h: Infect with __ctype_type, as a preparation
6019 for caching a bunch of ctype info. For instance, ctype_base::space
6020 info needs to be stored somewhere, somehow.
6021 * bits/std_istream.h: Also here.
6022 * bits/std_ostream.h: Ditto.
6023 * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
6024 * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
6027 * bits/istream.tcc (ws): Fix.
6028 * testsuite/27_io/istream_manip.cc: New file, test ws.
6029 * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
6031 * bits/basic_string.h: Provide a specialized member function for
6032 _S_find<char> using strchr.
6033 * src/string-inst.cc: Put specializations here.
6034 * bits/string.tcc: Small fix for find, remove typo.
6035 * testsuite/21_strings/find.cc (test01): Add tests to catch this
6038 1999-07-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
6040 * bits/basic_ios.h: Put into basic_ios namespace.
6043 1999-07-19 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
6045 * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
6046 adjust _M_*_cur pointers inside the function, so callee doesn't
6048 * bits/sstream.tcc (stringbuf::overflow): Tweak.
6050 * mkcheck: Tweak. Add execution time field, even though it is not
6051 implemented yet. Simplify pass/fail status notation.
6053 1999-07-18 Mumit Khan <khan@xraylith.wisc.edu>
6055 * configure.in: Check for float.h and underscored version of
6057 * acconfig.h: Add @BOTTOM@ section for handling underscored
6059 * configure: Regenerate.
6060 * config.h.in: Regenerate.
6061 * math/mathconf.h (float.h): Include conditionally.
6062 (M_PI): Define conditionally.
6063 (INFINITE_P): Define for Mingw.
6064 * bits/locale_facets.tcc: Workaround for compiler crash on
6066 * bits/std_cwchar.h (bits/std_cstddef.h): Include.
6067 * src/locale.cc (bits/std_istream.h): Include.
6068 (bits/std_ostream.h): Likewise.
6070 1999-07-18 Phil Edwards <pedwards@ball.com>
6072 * docs/faq/index.html: Updated __black_count notes, fixed typos.
6073 * docs/faq/index.txt: Regenerated.
6075 1999-07-15 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
6077 * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
6079 * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
6080 newly-allocated buffer.
6081 * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
6082 overflow condition bits.
6084 1999-07-14 Benjamin Kosnik <bkoz@cygnus.com>
6086 * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
6087 _M_buf_size to initial _M_string.size(), even though for
6088 ostringstreams it is pretty pointless. It's necessary for
6090 (stringbuf::str()): Adjust.
6091 (stringbuf::str()): Adjust, call _M_init_stringbuf.
6092 * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
6093 overflow's possible success.
6094 (streambuf::xsputn): Adjust.
6096 * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
6098 * testsuite/27_io/stringbuf.cc: Tweak.
6099 * testsuite/21_strings/inserters_extractors.cc (test01): Remove
6101 * testsuite/23_containers/vector_cons.cc: Rename to be consistent
6102 with other constructor tests to. . .
6103 * testsuite/23_containers/vector_ctor.cc: New file.
6105 1999-07-14 Alfred Minarik <a8601248@unet.univie.ac.at>
6107 * testsuite/*: Changes to make the testsuit compilable with
6108 -fhonor-std. Contains direct qualification of library names with
6111 1999-07-13 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
6113 * bits/streambuf.tcc: Tweaks.
6114 (streambuf::xsputn): Optimize, fix for sstreams.
6115 (streambuf::xsgetn): Same.
6116 * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
6117 correctly, handle overflow/reallocate conditions correctly.
6118 * bits/std_sstream.h: Fix typo.
6119 _M_init_stringbuf(): Fix _M_buf_size initialization.
6120 (stringbuf::str()): Construct return string if output has occurred.
6122 * bits/basic_string.h: Fix typo from yesterday's patch.
6124 1999-07-12 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6126 * bits/string.tcc: _M_mutate - clear _M_state again.
6127 * bits/basic_string.h: In the three functions that return
6128 an iterator set _M_state to -1 before return.
6129 Also optimized two cases of operator+.
6131 1999-07-12 Phil Edwards <pedwards@ball.com>
6133 * docs/index.html: Expand egcs-1.1.2 notes/links.
6134 * docs/faq/index.html: And here. Add links to LWG issues-list.
6135 * docs/faq/index.txt: Regenerate. (lynx rocks)
6136 * docs/21_strings/howto.html: Fix notes on case conversion.
6137 * docs/21_strings/stringtok_h.txt: Goodly spelling...
6138 * docs/23_containers/howto.html: Stub for bitmasks.
6139 * docs/27_io/howto.html: Add section on buffering, stub binary.
6141 1999-07-12 Nathan Myers <ncm@cantrip.org>
6143 * stl/bits/stl_tree.h (__black_count): Optimize.
6145 1999-07-09 Vadim Egorov <egorovv@1c.ru>
6147 * src/basic_file.cc: Cleanup in __basic_file destructor.
6149 1999-07-08 Benjamin Kosnik <bkoz@cygnus.com>
6151 * bits/std_streambuf.h: Changes. . .
6152 * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
6153 basic_streambuf, to be used for both filebufs and streambufs.
6154 * bits/std_fstream.h (_M_init_filebuf): New function.
6155 Take out specialized xsputn, put into basic_streambuf.
6156 * bits/fstream.tcc: Define, call from both ctors.
6157 * bits/std_sstream.h (_M_init_stringbuf): New function.
6158 * bits/sstream.tcc: Tweak.
6160 * docs/27_io/iostreams_heirarchy.pdf: New file.
6162 * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
6163 acceptance. Wooo-hoo!
6165 * bits/char_traits.h: Change int_type for char_traits general
6166 template, so that 21_strings/capacity.cc will compile.
6167 * testsuite/21_strings/capacity.cc: Add operators.
6169 * bits/string.tcc (string::compare): Clean up, re-implement.
6170 * testsuite/21_strings/compare.cc: Tweak.
6172 * bits/string.tcc (string:_M_mutate): Keep leaked value in
6173 _M_state, which means that whenever begin() or end() has been
6174 called, the string is unshareable, period. By doing this, insert
6175 and erase member functions that return iterators can remain
6176 footloose and fancy free.
6177 * testsuite/21_strings/invariants.cc: Update.
6179 * bits/basic_string.h (string::append): Fix self-referential
6180 problems, ie when "this" is also an argument to a member function.
6181 * bits/string.tcc: Tweak, same.
6182 * testsuite/21_strings/append.cc: New file.
6184 1999-07-07 Benjamin Kosnik <bkoz@cygnus.com>
6186 * bits/char_traits.h: Tweaks.
6187 * bits/basic_string.h: Tweak.
6188 * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
6190 1999-07-06 Benjamin Kosnik <bkoz@cygnus.com>
6192 * bits/std_streambuf.h: Absorb/acquire data members previously
6193 working in basic_filebuf.
6194 * bits/streambuf.tcc: Tweaks.
6195 * bits/fstream.tcc: Adjust.
6196 * bits/std_fstream.h: Move and rename the following functions:
6197 _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
6198 now declared and defined in the base class, basic_streambuf. Oh
6199 fuck it, move data members _M_buf, and _M_buf_size into
6200 basic_streambuf as well.
6202 * bits/ostream.tcc: Tweak.
6203 * bits/locale_facets.tcc: Fix typo in comments.
6205 * testsuite/21_strings/inserters_extractors.cc (test01): Change
6206 state from good to not good, as eof() is set.
6208 1999-07-05 Benjamin Kosnik <bkoz@cygnus.com>
6210 * bits/char_traits.h (char_traits::compare). Fix.
6212 * config.guess, config.sub: Update.
6214 1999-07-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6216 * bits/string.tcc: Check the __res_arg for a length error.
6218 1999-07-01 Benjamin Kosnik <bkoz@nabi.net>
6220 * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
6221 and related functions into basic_streambuf, from basic_filebuf to
6222 take care of ostringstreams and empty strings. So that's groovy,
6224 * bits/std_istream.h: Tweaks.
6225 * bits/istream.tcc: Implement ws, getline, operator>> for string.
6226 * bits/std_ostream.h: And here.
6227 * bits/ostream.tcc: Same.
6228 * src/misc-inst.cc: Add instantiations for ws.
6230 * src/string-inst.cc: Add instantiations for inserters and
6231 extractors (operators << and >>, getline).
6233 * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
6234 a testcase for getline and operators << and >>. Ostream tests are
6235 failing right now, but istream tests should work. . .
6237 * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
6238 * bits/std_sstream.h: Revert.
6240 * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
6241 istream, ostream, streambuf, fstream, sstream].cc: New files.
6243 1999-06-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6245 * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
6248 * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
6249 specializations for _CharT*, iterator and const_iterator.
6250 * src/string-inst.cc: Remove explicit instantiation, as
6251 now explicitly specialized.
6253 * bits/basic_string.h: Add a size_type parameter to _M_clone with
6254 a default value set to 0.
6255 * bits/string.tcc: In _M_clone by the call of _S_create add the
6256 value of the new parameter to _M_length. In reserve check
6257 _M_state and use _M_clone instead of _M_mutate.
6259 1999-06-30 Benjamin Kosnik <bkoz@happy.cygnus.com>
6261 * bits/basic_string.h: Fix _S_max_size.
6262 * bits/string.tcc: Add def here.
6263 * testsuite/21_strings/insert.cc: Fix.
6265 * bits/sbuf_iter.h: Remove detritus.
6266 * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
6268 * src/locale-inst.cc: Elaborate iterator/locale instantiations
6269 to resolve alpha-osf4 build problems.
6271 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
6273 * bits/string.tcc: Fix signed/unsigned issues in compares.
6274 * stl/bits/stl_deque.h: And here.
6275 * stl/bits/stl_string_fwd.h: Remove __get_c_string.
6277 1999-06-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6279 * bits/string.tcc: New implementation and interface of _M_mutate.
6280 Adapt the change in all functions that call _M_mutate.
6281 * bits/basic_string.h: And here.
6283 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
6285 * testsuite/21_strings/capacity.cc (test01): Fix.
6287 1999-06-29 Phil Edwards <pedwards@ball.com>
6289 * mknumeric_limits: Exit script if gen-num-limits isn't built.
6291 1999-06-29 Andreas Gruenbacher <agruenba@pent224.infosys.tuwien.ac.at>
6293 * stl/bits/stl_vector.h: Fix.
6294 * testsuite/23_containers/vector_cons.cc: Add.
6296 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6298 * mknumeric_limits (LDFLAGS): fix.
6300 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6302 * mknumeric_limits (LDFLAGS): set it according to the system.
6304 * math/mathconf.h (NAN): Check whether host is running under
6305 Cygwin and make the appropriate definition.
6306 * math/complex-stub.h (nan): protect declaration.
6308 1999-06-28 Benjamin Kosnik <bkoz@haight.constant.com>
6310 * bits/sbuf_iter.h: Rename internal data structure to prevent
6311 confusion between basic_ios and istreambuf_iterators internal
6312 basic_streambuf data member.
6313 * testsuite/24_iterators/istreambuf_iterator.cc: New file.
6315 * bits/basic_string.h: Remove conditionals, add input_iterator
6316 version of S_construct again.
6317 * bits/string.tcc: Same.
6318 * src/string-inst.cc: And add explicit instantiation here.
6320 * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
6321 and __USE_GNU macro defines, as single __USE_GNU use leading to
6322 confusion on glibc2.1 systems (ie, RedHat 6.0).
6324 * src/Makefile.am (headers): Add std_utility to installed headers.
6326 1999-06-25 John Potter <jpotter@eagle.lhup.edu>
6328 * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
6330 1999-06-25 Gilles Zunino <Gilles.Zunino@hei.fr>
6332 * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
6334 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6336 * src/gen-c++config.cc (_GLIBCPP_*): Change all
6337 macros to include _GLIBCPP as a distinct namespace.
6341 * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
6342 * bits/basic_string.h: Remove __get_c_string.
6343 * src/stdexcept.cc: Define ctor here.
6344 * bits/ios_base.h: And fix ios_base::failure as well.
6345 * src/ios.cc: Define here.
6347 * bits/std_streambuf.h: Add a private copy ctor and assignment
6348 operator wrapped in _G_RESOLVE_LIB_DEFECTS.
6349 * bits/ios_base.h: And here too.
6351 * bits/basic_string.h: Tweak.
6352 * testsuite/21_strings/nonmember.cc: Add operator+ tests.
6354 * src/valarray.cc: Rename to. . .
6355 * src/valarray-inst.cc: This.
6356 * src/Makefile.am (sources): Change here.
6357 * src/Makefile.in: Regenerated.
6359 1999-06-24 Vadim Egorov <egorovv@1c.ru>
6361 * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
6364 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6365 Tom Tromey <tromey@cygnus.com>
6367 * configure.in (use_glibc2): Eek, correct for non-glibc systems.
6368 Use AM_CONDITIONAL to get us out of this jam. .
6369 * libio/Makefile.am: Same.
6370 * */Makefile: Regenerated.
6372 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6373 John Potter <jpotter@eagle.lhup.edu>
6375 * stl/bits/stl_tree.h (insert_equal): Fix.
6376 * testsuite/23_containers/multiset.cc: New file.
6378 1999-06-23 Benjamin Kosnik <bkoz@cygnus.com>
6380 * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
6381 this works correctly on glibc-2 systems. This should allow
6382 simplified linking on these systems, and successful linking on Red
6384 * configure, Makefile: Regenerate.
6386 * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name.
6388 * testsuite/ext: New directory.
6389 * testsuite/ext/headers.cc: New file.
6391 1999-06-23 Vadim Egorov <egorovv@1c.ru>
6393 * stl/ext/hash_set: include missing headers
6394 * stl/ext/hash_map: Same
6395 * stl/ext/slist: Same
6397 1999-06-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6399 * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
6401 1999-06-15 Benjamin Kosnik <bkoz@cygnus.com>
6403 * src/Makefile.am (sources): Regenerate.
6404 * mkcheck: Add TESTS_FILE as a way of controlling what testcases
6407 1999-06-14 Benjamin Kosnik <bkoz@cygnus.com>
6409 * src/string-inst.cc: Change _S_construct signature, to
6410 track requested allocation size versus valid input iterator range.
6411 * bits/basic_string.h: Here too.
6412 * bits/string.tcc: And here.
6414 1999-06-12 Benjamin Kosnik <bkoz@cygnus.com>
6416 * mkcheck (LOG_FILE): Correctly append errors.
6418 * stl/bits/stl_iterator.h: Revert previous, delirious, change.
6420 * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
6421 to clarify differences between basic_string::_M_data() calls and
6422 _Rep::_M_data() calls.
6423 * bits/std_string.h: Fix.
6424 Put in check for out_of_range in substr.
6425 * bits/string.tcc: Fix for _S_find.
6427 * testsuite/21_strings/compare.cc: Add tests.
6428 * testsuite/21_strings/find.cc: New file.
6429 * testsuite/21_strings/substr: New file.
6430 * testsuite/21_strings/replace.cc: New file.
6432 1999-06-11 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6434 * bits/valarray_array.h: __restrict__ify pointers.
6436 * bits/std_valarray.h: Tweak.
6437 (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
6439 * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
6441 * bits/gslice.h: Tweak.
6442 (class gslice::_Indexer): new class.
6443 (gslice::gslice(const gslice&)): implement copy-ctor to support
6445 (gslice::operator=(const gslice&)): support ref-counted index.
6446 (gslice::_M_convert_to_index): delete.
6448 * src/valarray.cc: New file.
6449 (__gslice_to_index): turn a gslice into a valarray<size_t>
6450 (ctor gslice::_Indexer::_Indexer): implement.
6452 * src/Makefile.am (sources): add valarray.cc
6453 * src/Makefile.in: regenerate.
6455 1999-06-08 Benjamin Kosnik <bkoz@cygnus.com>
6457 * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
6458 ctor): Put in a const_cast.
6460 * testsuite/21_strings/invariants.cc: New file.
6462 * testsuite/21_strings/insert.cc: Add exception handling bits.
6463 * testsuite/21_strings/ctor_copy_dtor.cc: Same.
6465 * src/wstring-inst.cc: Add c++config.h include.
6467 * bits/basic_string.h: Fix const operator[] for size == pos.
6468 Add _M_leak for rbegin, non-const.
6469 Add _M_leak for rend, non-const.
6470 Make member function at standards conformant.
6471 Add _S_terminal to _Rep for operator[] const, add this into
6473 * bits/string.tcc: Add static member definition here,
6476 * testsuite/21_strings/element_access.cc: Add tests.
6478 1999-06-08 Vadim Egorov <egorovv@1c.ru>
6480 * bits/fstream.tcc (_M_really_overflow): Fixed size of
6483 1999-06-08 Phil Edwards <pedwards@ball.com>
6485 * bits/fstream.tcc (basic_filebuf::xsputn): Fix off-by-one count
6486 caused when __testinit is true.
6487 * bits/ostream.tcc (basic_ostream::op<<(streambuf*)): Write buffer
6488 using rdbuf()->sputn rather than _M_fnumput->put.
6490 1999-06-08 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6492 * testsuite/23_containers/bitset_ctor.cc: New file.
6493 * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
6495 1999-06-08 Phil Edwards <pedwards@ball.com>
6497 * bits/fstream.tcc (basic_filebuf::underflow): Fix, rename local vars.
6499 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6501 * testsuite/21_strings/element_access.cc: Finish off these tests.
6502 * testsuite/21_strings/insert.cc (test01): Uncomment.
6503 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
6504 * bits/basic_string.h: Tweak, okay, fix for real this time.
6505 * bits/string.tcc: Same.
6506 * bits/char_traits.h: Tweak.
6508 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6510 * bits/std_cmath.h: Example of how to use the generated macro.
6511 * acconfig.h: Add macro for sinf here.
6512 * configure.in (LIBS): Add test for builtin math function sinf.
6513 * configure: Regenerated.
6515 * bits/basic_string.h: Fix _S_max_size.
6517 1999-06-06 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6519 * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
6520 Remove _S_construct signature for forward_iterator_tag and
6523 * src/string-inst.cc: Same, tweaks.
6524 * bits/string.tcc: Same, tweaks.
6526 * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
6527 * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
6528 * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
6531 * src/locale.cc: Final separation for char/wchar_t bits.
6533 1999-06-05 Phil Edwards <pedwards@ball.com>
6535 * docs/index.html: Added link to book upon request'n'agreement.
6536 * docs/23_containers/wrappers_h.txt: Added.
6537 * docs/{23_containers,27_io}/howto.html: Added sections.
6539 * bits/std_fstream.h: Tweak.
6541 1999-06-05 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6543 * src/ios.cc: Same here.
6544 * bits/std_iosfwd.h: More wchar_t defines.
6546 * bits/basic_string.h: Tweaks.
6547 * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
6548 when doing error checking, as per LWG defect #83.
6550 * src/gen-c++config.cc: Fix comment.
6552 * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
6554 * testsuite/21_strings/element_access.cc: New file, checks for
6555 operator[], at(...).
6556 * testsuite/21_strings/insert.cc: New file, tests string::insert.
6557 * testsuite/21_strings/char_traits.cc: New file, tests
6558 for char_traits<char>.
6560 * bits/utility.h: Remove, again.
6561 * src/Makefile.am (std_headers): Remove utility.h.
6562 * src/Makefile.in (std_headers): Regenerate.
6564 Alfred Minarik <a8601248@unet.univie.ac.at>
6565 * bits/basic_string.h: Move __out_of_range and __length_error into
6568 1999-06-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6570 * testsuite/26_numerics/modf_float.cc: New file.
6572 * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
6573 typo: use ::modff, not ::modf.
6575 1999-06-03 Vadim Egorov <egorovv@1c.ru>
6577 * bits/string.tcc (basic_string::_M_mutate): Fixed memory
6579 * testsuite/21_strings/capacity.cc (test01): Test.
6581 1999-06-03 Phil Edwards <pedwards@ball.com>
6583 * bits/fstream.tcc: Re-order inits to stop warnings. Comment/move
6584 unused variables to within #if 0 blocks to do the same.
6585 * bits/std_fstream.h: Fix typos (one prevents compilation).
6587 1999-06-03 Benjamin Kosnik <bkoz@pacifica.cygnus.com>
6589 * src/wstring-inst.cc: Fix.
6591 1999-06-02 Benjamin Kosnik <bkoz@madcow.cygnus.com>
6593 * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
6594 * stl/bits/stl_string_fwd.h: Same.
6595 * bits/locale_facets.h: Same.
6596 * bits/locale_facets.tcc: Same.
6597 * src/wstring-inst.cc: And here.
6599 * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
6600 problems on HPUX 10.20.
6601 * your-build-directory-here/bits/c++config.h: Just kidding, do it
6602 here as a temporary hack till the compiler/host problems get
6605 * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
6606 HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
6607 converting "long double" to struct long_double. Probably should be
6608 done with one macro (HAVE_STRTOLD) at configure time.
6610 * bits/std_cmath.h: Comment out pow(double, int) defintion as
6611 gives re-declaration under hpux10.20. Revert previous change, as
6612 kills linux/x86, solaris 2.7, hpux builds. These should be done
6613 using autoconf, see std_cctype.h and the solutions started in
6614 configure.in (see config.h for the generated file.)
6616 * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
6617 -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
6620 * docs/index.html: Add some useful links.
6621 * docs/17_intro/contribute.html: Fix broken links.
6623 1999-06-02 Benjamin Kosnik <bkoz@rhino.cygnus.com>
6625 * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
6626 paths. The rest of the world should be able to run this script
6629 * src/Makefile.am ($(generated_headers)): Remove comment.
6630 * Makefile*: Regenerate.
6632 * bits/std_locale.h: Remove detritus.
6633 * bits/localefwd.h: Add <cctype> include to undefine the isspace
6636 1999-06-01 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6638 * src/gen-c++config.cc: New file. Making c++config.h at configure
6639 time by catting this file (nee bits/config.h) with the build
6640 directories config.h. This is not a complete or perfect solution
6641 but is better than what was in place previously.
6642 * bits/c++config.h: Rename/move to above.
6643 * src/Makefile.am (headers): Remove c++config.h.
6644 (myinstallheaders). Add.
6645 * Makefile*: Regenerated.
6647 * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
6648 definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
6649 declared only if not present in the host's wchar.h.
6651 * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
6653 * bits/std_cmath.h: Define out, for the moment. Linux has no
6654 __buitin_fsqrtl? Probably need some kind of configure trickery
6657 * src/Makefile.*: Regenerate.
6658 * bits/c++config.h: Add config.h include.
6660 * bits/std_cwchar.h: Remove remaining #error guard.
6662 * acconfig.h: Add bits for HAVE_LC_MESSAGES.
6664 * configure.in (LIBS): Replace previous effort for mbstate_t and
6665 strtold/strtof with this implementation.
6667 1999 06-01 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6669 * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
6672 1999-05-28 Benjamin Kosnik <bkoz@cygnus.com>
6674 * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
6675 for determining mbstate_t differences across various hosts not
6678 1999-05-26 Benjamin Kosnik <bkoz@nabi.net>
6680 * bits/locale_facets.tcc: Change to ifdef.
6682 * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
6683 * bits/std_fstream.h (filebuf::setbuf): Same.
6685 * bits/std_istream.h: Add ws declaration.
6686 * bits/istream.tcc: Stub out definition.
6688 * docs/index.html: Fix broken link for design.txt.
6690 * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
6691 then set _G_NEED_MBSTATE_T.
6692 * configure: Regenerate.
6693 * bits/c++config.h: Move mbstate_t define.
6694 * bits/std_cwchar.h: To here.
6696 1999-05-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6698 * bits/std_sstream.h:
6699 basic_stringbuf<>::basic_stringbuf: fix.
6700 basic_stringbuf<>::setbuf:
6701 remove the temporary __string_type object,
6702 remove the unnecessary dynymic_cast in the return value,
6703 change the type of the returned value from __streambuf_type*
6704 to basic_stringbuf<_CharT, _Traits, _Alloc>*.
6706 1999-05-25 Phil Edwards <pedwards@ball.com>
6708 * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*.
6710 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6712 * bits/std_cmath.h: Tweak. Add float versions of the math functions
6713 in <math.h>. <cmath> still incomplete and incorrekt.
6715 1999-05-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6717 * mknumeric_limits (LDFLAGS): set appropriate link flags.
6719 1999-05-23 Phil Edwards <pedwards@ball.com>
6721 * docs/17_intro/howto.html: Added links to text docs,
6723 * docs/21_strings/howto.html: Updated sections and links.
6724 * docs/21_strings/{gotw29a.txt,stringtok_h.txt}: Added.
6725 * docs/faq/index.html: Updated what-works for sixth
6726 snapshot. Also a number of "internal" links have been
6727 fixed, now that the web pages are the docs directory...
6728 * docs/faq/index.txt: Regenerated.
6730 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6732 * bits/basic_string.h: Add Nathan's documentation on the string class.
6734 * testsuite/27_io/ios_members_static.cc: New file, for testing
6735 ios_base::sync_with_stdio.
6737 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6739 * bits/std_locale.h: Simplify includes.
6740 * bits/loccore.h: Delete.
6741 * bits/localefwd.h: Renamed, trimmed.
6742 * bits/locfacets.h: Delete.
6743 * bits/locale_facets.h: Rename, expanded.
6744 * bits/loccore.tcc: Deleted.
6745 * bits/locfacets.tcc: Deleted.
6746 * bits/locale_facets.tcc: Resultant merge.
6747 * bits/std_fstream.h: Modify include.
6748 * bits/ostream.tcc: Same.
6749 * bits/istream.tcc: Same.
6751 * src/locale-inst.cc: And here.
6752 * src/locale.cc: Ditto.
6753 * src/Makefile.am: Updated.
6754 * src/Makefile.in: Rengenerated.
6756 * bits/std_istream.h: Move istream::sentry ctor definition.
6757 * bits/istream.tcc: Move istream::sentry ctor here.
6758 Add more detailed locale include here for ctype member functions.
6759 * bits/ostream.tcc (std): And here.
6761 * bits/sbuf_iter.h: Include std_streambuf.h
6763 * bits/locfacets.h: Start separating this into a localeimp.h file.
6764 * bits/loccore.h: Start separating this into a localefwd.h file.
6765 Add std_climits for CHAR_BIT.
6767 * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
6769 * bits/char_traits.h: Tweak.
6771 * bits/ios_base.h: Remove INT_MAX, use 1<<16.
6773 * bits/std_ostream.h: Remove c++config.h include.
6774 * bits/std_istream.h: Same.
6775 * bits/std_streambuf.h: Same.
6776 * bits/std_fstream.h: Same.
6777 * bits/std_sstream.h: And here.
6779 * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
6780 * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
6781 * bits/fpos.h: Tweak, format.
6783 * std/ciso646: New file.
6784 * bits/std_ciso646.h: New file.
6785 * src/Makefile.am (std_headers): Add ciso646.
6786 (headers): Add bits/std_ciso646.h.
6787 * src/Makefile.in: Regenerate.
6788 * testsuite/17_intro/header_ciso646.cc: New file, disable
6791 * bits/fpos.h: Remove libio.h include.
6792 * bits/basic_file.h: And here.
6793 * bits/std_ios.h: Put here.
6795 * src/ios.cc: Simplify includes, tweak.
6796 * bits/std_ios.h: Simplify include order.
6797 * bits/ios_base.h: Modify ios_base::failure.
6799 * stl/bits/std_numeric.h: Change include from stl_iterator to
6802 1999-05-19 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6804 * std/iostream: Remove static member __ioint.
6805 * bits/std_iostream.h: Put here.
6807 * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
6808 * stl/bits/stl_algobase.h: Same.
6809 * testsuite/27_io/iostream_objects.cc: Regression tests.
6810 * testsuite/27_io/hello.cc: Remove, subset of above.
6812 1999-05-19 Phil Edwards <pedwards@ball.com>
6814 * docs/index.html: Tweak, update.
6816 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6818 * docs/17_intro/RELEASE-NOTES: remove outdated
6819 documentation about numeric_limits. Correct CXXINCLUDE setting
6822 1999-05-18 Phil Edwards <pedwards@ball.com>
6824 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
6825 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
6826 27_io}/howto.html: Created, with some initial entries.
6827 * docs/faq/index.html: Fixed some links.
6828 * docs/faq/index.txt: Regenerated.
6830 1999-05-18 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6832 * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
6834 * docs/17_intro/RELEASE-NOTES: Update.
6835 * docs/index.html: Correct link to mailing list help page, update News.
6836 * docs/faq/index.html: Change fifth to sixth for snapshot.
6838 * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
6839 install $(top_builddir)/bits/std_limits.h into
6840 $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
6841 Makefile.am changes.
6842 * *Makefile*: Regenerate using automake.
6844 * mkcheck (LOG_FILE): Fix filebuf directory oddness.
6845 * testsuite/27_io/filebuf.cc: Same.
6847 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6849 * docs/17_intro/CHECKLIST: update.
6850 * docs/17_intro/TODO: update.
6852 1999-05-17 Phil Edwards <pedwards@ball.com>
6854 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
6855 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
6856 27_io}/howto.html: Created, with some initial entries.
6857 * docs/faq/index.html: Fixed some links.
6858 * docs/faq/index.txt: Regenerated.
6860 1999-05-17 Benjamin Kosnik <bkoz@unhappy.cygnus.com>
6862 * src/Makefile.am (myinstallheaders): Missed removing missing.h.
6863 * Makefile.in*: Regenerate.
6865 1999-05-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
6867 * bits/std_streambuf.h: Same.
6869 * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
6870 * bits/locfacets.h (std): Same.
6871 * bits/sstream.tcc: Same.
6872 * testsuite/27_io/stringstream.cc: Tweak.
6874 * testsuite/27_io/filebuf.cc: Adjust.
6875 * testsuite/21_strings/capacity.cc (test01): Add more
6876 string::reserve tests.
6878 * bits/c++config.h: Remove broken CCTYPE.
6879 * bits/std_cctype.h: Tweak, remove de-macroization, enable
6880 sequestered topper implementation.
6881 * bits/std_cwctype.h: Same.
6883 * bits/missing.h: Remove.
6884 * bits/std_locale.h: Remove missing.h include.
6886 * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
6888 * src/Makefile.am (headers): Add bits/std_cwctype.h.
6889 INCLUDES: Add top_builddir.
6890 * src/Makefile.in: Regenerate.
6892 * Makefile.am: Add check and check-install as new targets.
6893 * testsuite/make_check_libfree++: Move to. . .
6895 * configure.in: Tweak versions.
6896 * mknumeric_limits: Set paths correctly.
6898 1999-05-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6900 * src/Makefile.in (myinstallheaders): add rule to install
6903 * bits/slice.h (class slice): don't const-qualify data members
6904 since the copy and assignment operator is implicitly used. The
6905 valarray specification is definitively a bad one.
6907 * Makefile.in (generate-limits-sources): fix typo.
6909 * docs/text/TODO: update.
6910 * docs/text/CHECKLIST: update.
6912 * bits/gslice.h (gslice): fix bugglet.
6913 (gslice::gslice): set _M_index_size to 0 whenever given lengths
6916 * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
6917 * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
6918 [Note: **/Makefile.in should be generated from the corresponding
6919 Makefile.am. The current situation is a litte chaotic. ]
6921 1999-05-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6923 * mknumeric_limits: tweak.
6925 * Makefile.in (all): add target generate-limits-sources.
6926 (generate-limits-sources): make a directory bits/ in top_builddir
6927 where the generated std_limits.h is put; generate limitsMEMBERs.cc
6928 directly under $(top_builddir)/src. Remains to put the appropriate
6929 rule for installing std_limits.h.
6931 * src/Makefile.in (headers): remove bits/std_limits.h to this list.
6932 (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
6933 now generated at build-time in the build directory
6934 (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
6935 * src/Makefile.am: reflect changes in src/Makefile.in
6937 1999-05-12 Phil Edwards <pedwards@ball.com>
6939 * docs/faq/index.html: Add more entries (5.4,5.5), finish
6940 all but one empty entry. Add links for HOWTOs, but no files yet.
6941 (Corrected HOWTO links are for bkoz's new scheme.)
6942 * docs/faq/index.txt: Regenerated.
6944 1999-05-12 Benjamin Kosnik <bkoz@happy.cygnus.com>
6946 * testsuite/17_intro/headers.cc: New file.
6947 * stl/bits/std_queue.h: Change stl_bvector.h include path.
6948 * bits/std_cwctype.h: New file.
6950 * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
6952 1999-05-11 Benjamin Kosnik <bkoz@loony.cygnus.com>
6954 * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
6955 Check __USE_MALLOC before defining specializations containing
6956 __default_alloc_template.
6957 * src/stl-inst.cc: Here too.
6959 * bits/basic_string.h: Change.
6961 * testsuite/make_check_libfree++: More tweaks.
6962 * testsuite/21/capacity.cc: New file.
6964 * src/string.cc: Rename to be consistent with other inst files.
6965 Rename to string-inst.cc.
6966 * src/string*.cc: Change include.
6967 * src/wstring.cc: Rename to wstring-inst.cc.
6968 * src/wstring*.cc: Ditto.
6969 * src/Makefile.in: Also here.
6970 * src/Makefile.am: Ditto.
6972 * src/traits.cc: Remove.
6973 * src/wtraits.cc: Same.
6975 Try a new way of organizing documentation, one with synchronicity
6976 between testsuites and docs subdirectories, and see who yelps.
6977 * docs/html: Remove, use chapter and subject specific directories
6978 instead of forcing things immediately into format of
6982 * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
6983 directory and sort by filename and extension.
6984 * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
6985 22_locale, 23_containers, 24_iterators, 25_algorithms,
6986 26_numerics, 27_io: Add.
6987 * docs/17_intro/*: Populate with all the text files. . .
6988 * docs/index.html: Construct.
6990 * testsuite/*: Update with same names as the docs subdir.
6991 * testsuite/results: Where to stash conformance results for the
6992 different snapshots, so that progress/size/speed issues can be
6995 1999-05-10 Benjamin Kosnik <bkoz@loony.cygnus.com>
6997 * src/string.cc: Add _S_copy_chars instantiation, as well as
6998 string::binary operators !=, ==, etc.
7000 * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
7001 * src/Makefile.in (CXXFLAGS): Same here.
7002 * testsuite/make_check_libfree++ (CXX_FLAG): And here.
7004 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
7006 * src/string.cc: Add missing member functions to instantiation list.
7008 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
7010 * src/misc-inst.cc: Remove unused string instantiations.
7012 * bits/string.tcc: Tweak, fix.
7013 * bits/basic_string.h: Format. Fix reported error with c_str().
7015 * testsuite/make_check_libfree++: Tweak for shared builds.
7016 * testsuite/21/operations.cc: New file for testing c_str() etc.
7018 1999-05-06 Benjamin Kosnik <bkoz@cygnus.com>
7019 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7021 * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
7022 an iterator class. Delineate pointer versus iterator differences
7024 * 23/vector_capacity.cc: New file, tests for above.
7026 1999-05-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7028 * mknumeric_limits: Fix typo. 'unsigned lont' should read
7030 * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
7031 generated by mknumeric_limits to the list. Now std_limits.h is
7033 * src/Makefile.in (generate-numeric-limits): new target to handle
7034 automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
7035 (all): add target generate-numeric-limits.
7036 (libstdc___la_OBJECTS): add limitsMEMBERS.lo
7037 (libstdc___la_SOURCES): add limitsMEMBERS.cc
7039 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
7042 * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
7043 mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
7044 * bits/locfacts.h: Here.
7046 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
7047 Ulrich Drepper <drepper@cygnus.com>
7049 Solaris build issues.
7050 * bits/c++config.h: Define new macros, _G_USE_STRTOF and
7053 * bits/locfacets.tcc (num_get::do_get): Tweak long double and
7054 float overloads to use the above macros. Account for the lack of
7055 strtold on some systems, and revert back to using sscanf.
7057 1999-05-04 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7059 * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
7060 Use strtoul/strtoull for unsigned types. Check the ranges for
7061 short/unsigned short and if necessary for int/unsigned int.
7063 1999-05-04 Benjamin Kosnik <bkoz@cygnus.com>
7065 * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
7066 to generate bits/std_limits.h now, as the SGI std_limits.h is
7067 being depricated. Not done, but should be done immediately: need
7068 to make sure this script is run as part of the configuration
7069 process, because without it "make" in a configured build directory
7070 will fail. Also tweaked: added a space for float_round_style, and
7071 used static_cast of zero to default-initialize, which should be ok
7072 according to the standard. (see 8.5 p5 and 20.1.3).
7073 * mknumeric_limits (OUT_C): Need this for x86 long
7076 * bits/basic_file.h: Include libio.h, not libioP.h.
7077 * src/basic_file.cc: And add libioP.h include here, so that
7078 _IO_init, et. al are well-declared.
7080 * testsuite/make_check_libfree++ (LIB_PATH): Test installed
7081 headers, not source directory headers.
7083 * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
7084 for ext/*. Also add basic_file.h.
7085 * src/Makefile.in (headers): Same.
7087 * bits/std_string.h: Reduce dependencies for faster
7088 pre-processing. Move istream and ostream specific defines into
7089 istream.tcc and ostream.tcc respectively.
7090 * bits/string.tcc: And here.
7091 * bits/basic_string.h: Move getline inline out-of-line, and to
7093 * bits/istream.tcc: Move string::getline and operator>> here.
7094 * bits/ostream.tcc: And here too.
7096 * bits/utility.h: Remove, as clashes with a standard header. Put
7097 __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
7098 being, until this can be combined with SGI's approach.
7099 * bits/string.tcc: Add macros, as above.
7100 * bits/loccore.h: Add _Count_ones defines.
7101 * bits/std_string.h: And here too.
7102 * bits/std_locale.h: And here.
7103 * bits/std_ios.h: Take out include here.
7104 * src/Makefile.am (headers): Remove utility.h
7105 * src/Makefile.in (headers): Remove utility.h
7107 * stl/bits/*: Update to SGI STL 3.20.
7108 * stl/ext/pthread_alloc: Delete this file.
7110 1999-05-04 Phil Edwards <pedwards@ball.com>
7112 * docs/faq/html/index.html: Add more entries
7113 * docs/faq/html/index.txt: regenerated.
7115 1999-05-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7117 * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
7119 1999-04-29 Benjamin Kosnik <bkoz@haight.cygnus.com>
7121 * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
7122 from Ulrich and Nathan. Remove extraneous string class usage,
7123 tweak, clean, simplify and consolidate with a eye towards removing
7124 duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
7125 Not done: dealing with leading zeros, wchar_t work.
7126 * bits/locfacets.h: And here too.
7130 1999-04-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7133 * docs/faq/: New directory.
7134 * docs/faq/html/: Likewise.
7135 * docs/faq/text/: Likewise.
7136 * docs/faq/html/index.html: New file.
7137 * docs/faq/html/index.txt: Likewise. Generated from
7138 docs/faq/html/index.html by lynx.
7140 1999-04-28 Benjamin Kosnik <bkoz@happy.cygnus.com>
7141 Ryszard Kabatek and Branko Cibej
7143 * bits/locfacets.tcc: Modify.
7145 1999-04-27 Benjamin Kosnik <bkoz@happy.cygnus.com>
7147 * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
7148 conformant to 14882, wrap non-standard extensions with
7149 _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
7150 * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
7152 * testsuite/27/istringstream_formatted.cc: Add tests.
7154 * bits/locfacets.h: Remove cruft from _Format_cache, continue
7155 commenting, simplify.
7156 * bits/locfacets.tcc: Same.
7158 1999-04-27 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7159 * bits/locfacets.tcc (num_get::do_get):
7160 Fix the sscanf format parameter
7161 for long long 'll' (as in C9X) instead of 'l'.
7162 Fix the order of sscanf format parameters: "%dl" --> "%ld".
7163 Change the type of the local variable '__conv' from 'string'
7164 to 'const char*' and adapt the change.
7166 1999-04-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
7168 * bits/locfacets.h: Document _Format_cache, and name data members
7169 after the corresponding functions in numpunct. For instance:
7170 _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
7171 Break apart _M_boolnames{2] into _M_truename and _M_falsename.
7172 * bits/locfacets.tcc: Same.
7174 * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
7175 stop parsing--store for later analysis.
7176 * testsuite/27/istringstream_formatted.cc: Add cases.
7178 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7180 * bits/valarray_meta.h: tweak.
7181 (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
7182 _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
7183 happy -- boggus warning.
7184 * bits/std_valarray.h: Fix.
7185 (valarray<T>::shift): Fix. Update comment.
7186 (valarray<T>::cshift): Fix.
7188 1999-04-23 Benjamin Kosnik <bkoz@cygnus.com>
7190 * testsuite/27filebuf-2.txt: Delete.
7191 * testsuite/27/filebuf.cc: Put output files directly into the
7192 correct subdirectory (27).
7194 Alexandre Petit-Bianco <apbianco@cygnus.com>
7195 * testsuite/make_check_libfree++: Check generated (*.txt) file
7196 against stored results file (*.tst).
7198 1999-04-22 Benjamin Kosnik <bkoz@nabi.net>
7200 * bits/locfacets.tcc: Fix.
7202 * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
7203 (filebuf::overflow): Simplify.
7204 (filebuf::xsputn): Correctly handle indeterminate state.
7206 * testsuite/27/istringstream_formatted.cc: Tweak.
7207 * testsuite/27/filebuf.cc: Tweak.
7208 * testsuite/27/filebuf-3.tst: Correct: this is the canonical
7209 results file, please use this in the future to guarantee filebuf
7210 positioning accuracy.
7211 * testsuite/27/filebuf-2.tst: Same.
7213 1999-04-21 Benjamin Kosnik <bkoz@cygnus.com>
7215 * bits/fstream.tcc (filebuf::xsputn): Add.
7216 * bits/std_fstream.h: Declare.
7218 * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
7219 calls using ios_base::trunc.
7221 * bits/sstream.tcc (streambuf::overflow): Fix crasher.
7223 * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
7224 * testsuite/27/27stringstream.cc: Same.
7225 * testsuite/27/27stringbuf.cc: More tweaks.
7226 * testsuite/27/27filebuf-2.txt: Remove.
7228 * testsuite/27/27filebuf-1.tst: Append, to force byte size over
7229 BUFSIZE so that overflows/underflow can be tested with default
7231 * testsuite/27/27filebuf-1.tst: Add.
7233 * testsuite/*/*: Remove pre-pended chapter names, as they
7234 duplicate the chapter info contained in the enclosing directory
7237 1999-04-20 Benjamin Kosnik <bkoz@cygnus.com>
7239 * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
7240 to sputc conditions.
7242 * bits/ios_base.h: Define here.
7243 * src/ios.cc (ios_base::_M_clear): Remove hack.
7244 * bits/basic_ios.h: Fix rdstate().
7246 * bits/sstream.tcc (streambuf::seekoff): Fix.
7247 * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
7249 * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
7250 * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
7251 * testsuite/27/27stringstream.cc: Same.
7252 * testsuite/27/27stringbuf.cc: Same.
7253 * testsuite/27/27istringstream_formatted.cc: Same.
7254 * testsuite/27/27filebuf.cc: Same.
7256 * bits/locfacets.h: Remove specializations for messages<char> and
7257 messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
7258 * src/locale.cc: Remove definitions for above.
7259 * src/misc-inst.cc: Revert, take out iomanip.h include.
7260 * bits/std_iomanip.h: Tweak, format.
7262 1999-04-19 Benjamin Kosnik <bkoz@cygnus.com>
7264 * bits/loccore.h: Format, move inline.
7265 * bits/locfacets.tcc: Same.
7266 * bits/locfacets.h: Same.
7268 Ulrich Drepper <drepper@cygnus.com>
7269 * aclocal.m4: Re-generate.
7270 * configure, configure.in: Same.
7271 * m4/lc_messages.m4: New file.
7273 1999-04-18 Benjamin Kosnik <bkoz@cygnus.com>
7275 * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
7276 * bits/sstream.tcc: Tweak.
7278 * std/iostream: Put __ioinit inside macro guards.
7280 * src/stlinst.cc: Delete and move to . . .
7281 * src/stl-inst.cc: New file, plus wrapping in namespace std.
7282 * src/Makefile.in: Change.
7283 * src/Makefile.am: Same.
7284 * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
7286 * testsuite/make_check_libfree++: Efficiently format for minimal
7287 space. Enforce stricter execution tests by enabling
7290 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
7292 * docs/text/RELEASE-NOTES: Fix include typo.
7294 * src/Makefile.am (headers): Add istream.tcc.
7295 * src/Makefile.in (headers): Add istream.tcc.
7297 * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
7299 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
7301 * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
7302 * bits/locfacets.h (num_get::_M_extract): New functin:
7303 consolidate logic for do_get(...) members.
7305 * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
7306 * testsuite/27/27istringstream_formatted.cc: Add.
7308 1999-04-16 Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de>
7310 * src/basic_file.cc (__basic_file::open): Fix thinko in
7311 _G_HAVE_IO_FILE_OPEN bits.
7312 * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
7313 * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
7314 * src/complex.cc (FCT): Qualify all functions with global namespace.
7315 * src/locale.cc: Don't qualify memcpy and setlocale.
7316 * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
7317 (__length_error): Likewise, for length_error.
7318 * src/stlinst.cc: Qualify instantiations with std::.
7320 1999-04-15 Benjamin Kosnik <bkoz@cygnus.com>
7322 * C++STYLE: Add ChangeLog guidelines for member functions.
7325 * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
7326 DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
7327 docs/text and made less strident.
7329 * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
7330 * bits/std_fstream.h: Same.
7333 * bits/locfacets.h: Touch.
7335 1999-04-15 Ulrich Drepper <drepper@cygnus.com>
7337 * math/cexp.c (cexp): Use NAN instead of nan("").
7338 Reported by joel reed <joelreed@yahoo.com>.
7340 * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
7341 _G_IO_IO_FILE_VERSION. Use these types in the prototypes.
7342 * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
7343 instead of #if cascades.
7344 * libio/genops.c: Likewise.
7345 * libio/ioseekoff.c: Likewise.
7346 * libio/ioseekpos.c: Likewise.
7347 * libio/strops.c: Likewise.
7348 Patch by Chip Salzenberg <chip@perlsupport.com>.
7350 1999-04-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7352 * docs: New directory.
7353 * docs/html: Likewise.
7354 * docs/text: Likewise.
7355 * docs/image: Likewise.
7357 * bits/std_cmath.h: Add new functions.
7358 (abs): overload for long and double.
7359 (div): overload for long.
7361 * bits/valarray_array.h: Fix.
7362 * bits/gslice.h: Adjust friend.
7363 * bits/slice_array.h: likewise.
7364 * bits/valarray_meta.h: likewise.
7366 1999-04-13 Benjamin Kosnik <bkoz@tintin.cygnus.com>
7368 * bits/locfacets.h: More changes, for num_get for insertion
7369 operators for integral types. Comment fields in _Format_cache.
7370 * bits/locfacets.tcc: And here too: add preliminary long version.
7371 * testsuite/27/27istringstream_formatted.cc: Add cases.
7373 1999-04-13 Mark Elbrecht <snowball3@usa.net>
7375 * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
7376 AC_LC_MESSAGES macro.
7377 * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
7378 supports LC_MESSAGES.
7379 * config.h.in: Add entry for HAVE_LC_MESSAGES.
7380 * src/locale.cc (locale::_S_normalize_category): Use the
7381 HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
7382 _G_NO_CLOCALE_HAS_MESSAGES.
7383 * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
7384 '?:' from '?:\\' so any path beginning with a drive name matches.
7386 1999-04-12 Mark Elbrecht <snowball3@usa.net>
7388 * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
7390 1999-04-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
7392 * bits/locfacets.h: Tweak.
7393 * bits/locfacets.tcc(do_get): Clean/fix bool method.
7395 * testsuite/21/21nonmember.cc: Same.
7396 * testsuite/21/21compare.cc: Fix license.
7397 * testsuite/27/27istringstream_formatted.cc: New file.
7399 1999-04-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7401 * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
7402 _BinBase2: new template classes; put in there to work around a
7403 compiler limitation. The whole valarray architecture is now
7406 1999-04-08 Benjamin Kosnik <bkoz@haight.constant.com>
7408 * bits/locfacets.tcc: Fix, format.
7409 * bits/locfacets.h: Fix.
7410 * src/locale.cc: Same, plus format.
7412 * bits/basic_string.h: Re-add definition here.
7413 * src/string.cc: Take out.
7415 1999-04-08 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7417 * bits/std_valarray.h: tweak.
7418 * bits/valarray_array.h tweak. use _Expr.
7419 * bits/slice_array.h: likewise.
7420 * bits/gslice_array.h: likewise.
7421 * bits/mask_array.h: likewise.
7422 * bits/indirect_array.h: likewise.
7423 * bits/valarray_meta.h: tweak.
7424 _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
7425 _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
7426 _IClos: new template classes.
7427 _Meta: renamed to _Expr. Made template with args.
7428 _Constant: made template with two args.
7430 1999-04-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7432 * bits/valarray_array.h: tweak.
7434 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
7436 * bits/basic_string.h: Whoops--fix blip.
7438 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
7440 Update to SGI STL 3.13
7441 * bits/basic_string.h: Add __get_c_string definition.
7442 * stl/bits/stl_range_errors.h: New file.
7443 * stl/bits/std_bvector.h: Same.
7444 * stl/bits/*: Update.
7446 1999-04-04 1999 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7448 * bits/slice_array.h: tweak.
7449 * bits/gslice_array.h: tweak.
7450 * bits/mask_array.h: tweak.
7451 * bits/indirect_array.h: tweak.
7452 * bits/valarray_array.h: tweak.
7453 (__valarray_copy): replace copy with memcpy.
7454 * bits/std_valarray.h: use __valarray_copy whenever possible.
7455 use __valarray_fill instead of fill.
7457 1999-04-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7459 * src/gen-num-limits.cc: new file
7460 * mknumeric_limits: Ditto.
7462 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
7464 * bits/locfacets.tcc: Do a stub version of num_get for short, int,
7466 * bits/locfacets.h: Add num_get::get methods overloaded for int
7467 and short, to resolve ambiguous overloads in istream insertion
7470 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
7472 * bits/std_istream.h: Fix.
7473 * bits/istream.tcc: Fix.
7475 1999-03-30 Philip Martin <pm@corris.dircon.co.uk>
7477 * testsuite/24/24iterator.cc: fix ++/-- tests
7479 1999-03-29 Benjamin Kosnik <bkoz@cygnus.com>
7481 * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
7482 * bits/ostream.tcc: Same.
7484 * bits/std_istream.h: Bring over ostream changes, implement member
7485 functions. Baseline.
7486 * bits/istream.tcc: New file.
7488 1999-03-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7490 * bits/gslice.h (class gslice): fix friends template.
7492 1999-03-23 Benjamin Kosnik <bkoz@cygnus.com>
7494 * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
7496 * bits/ostream.tcc: Same.
7498 * bits/std_istream.h: Minor tweaks.
7500 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
7502 * src/locale-inst.cc: Remove duplicate instantiations.
7503 * bits/locfacets.tcc: Tweak definitions of static member.
7505 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
7507 * bits/std_fstream.h: Format: prepend "__" in front of
7508 non-standard typedefs.
7509 * bits/fstream.tcc: Match.
7510 * bits/std_streambuf.h: Format: prepend "__" in front of
7511 non-standard typedefs.
7513 * bits/sstream.tcc: Match.
7514 * bits/std_istream.h: Format.
7515 * src/locale-inst.cc: Add num_get instantiations.
7517 * bits/std_sstream.h: Fix crash in stringstreams. Remove member
7518 _M_sb, a basic_stringbuf object, and use the basic_ios pointer
7519 _M_streambuf instead. Make initializations sane. Fix
7520 allocation/deallocation of _M_streambuf.
7521 * bits/std_ostream.h: Fix initialization code.
7522 (ctor): Eliminate redundant this->init(), let base class initialize.
7523 (default ctor): New. Assume base classes already initialzed.
7524 * bits/std_istream.h: Parallel work to ostream.
7525 (ctor): Eliminate redundant this->init(), let base class initialize.
7526 (default ctor): New. Assume base classes already initialzed.
7527 Fix initialization of basic_iostream.
7529 * bits/std_fstream.h: While we're at it, make initializations sane
7530 here too. Now matches sstream.h.
7532 * bits/string.tcc: Fix crash in basic_string::compare.
7533 * bits/basic_string.h: And here.
7534 * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
7536 * testsuite/make_check_libfree++: Check shared as well.
7537 * testsuite/27/27stringstream.cc: Add bits.
7538 * testsuite/27/27boolfmt.cc: Add bits.
7539 * testsuite/27/27octfmt.cc: Add bits.
7541 1999-03-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
7543 * configure.in (USE_LONG_DOUBLE): signbitl link error.
7545 * bits/locfacets.h: Fix errors that cause build problems
7546 with current egcs (template parameters have class scope).
7547 * bits/locfacets.tcc: Same.
7548 * src/locale-inst.cc: Same, clean.
7549 * src/misc-inst.cc: Same, clean.
7551 1999-03-17 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7553 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
7554 standard. Re-apply this previous patch.
7556 1999-03-17 Philip Martin <pm@corris.dircon.co.uk>
7558 * bits/basic_string.h: Use __normal_iterator<> for iterators.
7559 * bits/std_sstream.h: Support __normal_iterator<> iterators.
7560 * bits/string.tcc: Ditto.
7561 * src/misc-inst.cc: Ditto.
7562 * src/locale-inst.cc: Ditto.
7563 * stl/bits/stl_iterator.h: Add __normal_iterator<>.
7564 * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
7565 * testsuite/24/24iterator.cc: Add test cases for basic_string and
7568 1999-03-16 Benjamin Kosnik <bkoz@cygnus.com>
7570 * bits/locfacets.tcc: Remove macro hack.
7571 * bits/locfacets.h: Tweaks.
7572 * src/misc-inst.cc: Weed out locale-related instantiations.
7573 * src/locale-inst.cc: Same.
7575 * RELEASE-NOTES: Make more changes.
7576 * bits/c++config.h: Bump version number.
7578 * testsuite/make_check_libfree++: Collect diagnostics.
7580 * bits/std_ostream.h: Fix ostream initialization/destruction
7581 problem, related to dtor cleanup and new cached facets, agggggggh.
7582 * bits/ostream.tcc: Tweak.
7583 * bits/locfacets.h: Remove all friends of iostream classes.
7584 * bits/ios_base.h: Same.
7585 * bits/streambuf.tcc: Tweak.
7586 * bits/std_streambuf.h: Tweak.
7587 * bits/std_fstream.h: Tweak.
7588 * bits/fstream.tcc: Tweak.
7589 * src/stdstreams.cc: Tweak.
7590 * src/ios.cc: Close streams.
7592 * math/Makefile.in: Add missing files for shared link errors.
7593 * math/Makefile.am: Same.
7595 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
7597 * src/locale-inst.cc: More wchar_t instantiations.
7598 * src/misc-inst.cc: Missed a few bits.
7599 * testsuite/make_check_libfree++: Add static and shared runs.
7600 * src/ios.cc: Add clarity to ios_base::Init::~Init().
7602 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
7604 * bits/std_ostream.h: Format, expunge, simplify. Add cached
7605 facets. Resolve link errors.
7606 * bits/ostream.tcc: Same.
7607 * src/misc-inst.cc: Add ostream, wostream instantiations.
7608 * src/Makefile.am: Add missing bits for stdstreams.cc.
7609 * src/Makefile.in: Same.
7610 * bits/std_iosfwd.h: Format.
7611 * bits/locfacets.h (num_put): Add basic_ostream as a friend to
7612 num_put so that cached _M_fnumput pointer can be deleted in
7613 basic_ostream's dtor. Now everybody plays nice.
7615 1999-03-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
7617 * bits/gslice.h (class gslice): Make friends valarray,
7618 gslice_array and _GliceExpression.
7620 1999-03-11 Benjamin Kosnik <bkoz@cygnus.com>
7622 * RELEASE-NOTES: Update.
7623 * src/ios.cc: Use do proper init.
7624 * bits/std_streambuf.h: Tweak.
7625 * bits/std_iostream.h: Take out static member.
7626 * std/iostream: Put here.
7627 * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
7628 * bits/std_istream.h: Ditto.
7629 * bits/basic_ios.h: Format.
7630 * bits/ostream.tcc(write): Fix.
7631 * bits/fstream.tcc: Fix stdstreams ctor to do a proper
7632 initialization of the fstream class.
7633 * src/stdstreams.cc: I'm baaaaaaaack.
7635 1999-03-10 Benjamin Kosnik <bkoz@rhino.cygnus.com>
7637 * bits/ios_base.h: Correct comments. Add ios_base::init()
7638 functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
7639 * src/misc-inst.cc: Add instantiations here.
7640 * src/ios.cc: Clean.
7641 * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
7642 * src/stdstreams.cc: Delete this file, as now unnecessary.
7643 * bits/fstream.tcc: Add missing initialization bits for ctor.
7644 * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
7645 * src/Makefile.in (libstdc___la_OBJECTS): And here.
7647 * bits/streambuf.tcc: Tweak.
7648 * bits/sstream.tcc: Here too.
7650 * bits/fstream.tcc: And change definition as well.
7651 * bits/std_fstream.h: Change ctor.
7652 * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
7653 * bits/basic_file.h: Add declarations.
7655 * testsuite/27/27hello.cc: New file.
7657 * bits/std_ostream.h: Move flush() inline.
7658 * bits/ostream.tcc: From here.
7660 * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
7661 * bits/std_ios.h: Change include libio to only when necessary.
7662 * bits/fpos.h: Like here.
7663 * ios_base.h: And here.
7665 * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
7666 * bits/locfacets.tcc: Same.
7667 * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
7668 * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
7670 1999-03-09 Benjamin Kosnik <bkoz@rhino.cygnus.com>
7672 * bits/basic_ios.h: Change _M_ctype to _M_fctype.
7674 * bits/std_streambuf.h: Clean, tweak.
7675 * bits/std_fstream.h: Same.
7676 * bits/std_sstream.h: Same.
7677 * bits/streambuf.tcc: Move most member functions out-of-line.
7678 * bits/fstream.tcc: Same.
7679 * bits/streambuf.tcc: Same.
7681 * bits/basic_file.h(filepos_cur): Set correctly.
7682 (filepos_beg): Same.
7683 (seekpos): Change to __c_streampos.
7684 * src/basic_file.cc (std): Change to __c_streampos.
7686 * testsuite/27/27filebuf.cc: Round one is finished.
7687 * testsuite/27/27filebuf-2.tst: New file, final output should match.
7688 * testsuite/27/27filebuf-3.tst: Same.
7690 1999-03-08 Benjamin Kosnik <bkoz@rhino.cygnus.com>
7692 * bits/basic_file.h: Fix typo, add comments about what to expect
7693 from the various member functions in __basic_file.
7695 * bits/std_fstream.h: Re-do sync/underflow to work
7696 together. Change from sys_read to xsgetn and from sys_write to
7697 xsputn. As it should have been from the beginning. . .
7699 1999-03-06 Benjamin Kosnik <bkoz@haight.constant.com>
7701 * bits/c++config.h (__GLIBCPP__): Add versioning macro.
7703 * bits/basic_file.h(file_beg): New function.
7706 * testsuite/27/27filebuf.cc: Test in, out, in | out.
7707 * bits/std_fstream.h: More _M_mode refinements.
7708 (synch): Add bits for out mode only.
7709 * bits/std_streambuf.h(xsputn): Correct for filebufs.
7710 * bits/std_sstream.h: Ditto.
7712 1999-03-03 Benjamin Kosnik <bkoz@cygnus.com>
7714 * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
7715 * testsuite/27/27filebuf.cc: Modify.
7716 * bits/c++config.h: Fix.
7718 1999-03-02 Benjamin Kosnik <bkoz@tintin.cygnus.com>
7720 * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
7721 code in place that diverges from the final standard, but has been
7722 brought up on the library mailing list.
7724 * bits/std_fstream.h(underflow): Position all three internal
7725 buffer pointers at the same initial position. Re-implement with
7726 basic_filebuf abstraction.
7730 * bits/std_sstream.h: Move _M_mode down into base class
7732 * bits/sstream.tcc: Ditto.
7733 * bits/std_streambuf.h: Ditto.
7735 * testsuite/27/27filebuf.cc: Tweak.
7737 1999-02-27 Benjamin Kosnik <bkoz@slap-happy.cygnus.com>
7739 * bits/std_sstream.h: Ditto.
7740 * bits/std_fstream.h: Fix blip.
7742 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
7744 * C++STYLE: Add cases.
7745 * bits/std_fstream.h: Format.
7746 * bits/std_streambuf.h: Ditto.
7747 * bits/std_sstream.h: Ditto.
7749 * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
7750 return type for _IO_file_seek and __basic_file::seek the same size.
7751 * bits/basic_file.h: Ditto.
7753 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
7755 * bits/fstream.tcc: Add include guards.
7756 * src/misc-inst.cc: Add instantiations for shared libes.
7757 * src/locale-inst.cc: Add instantiaions for use_facet.
7758 * bits/loccore.h: Remove specialization foward decls for
7759 use_facet<ctype>: perhaps add the whole lot of them later on.
7760 * bits/std_fstream.h: Fix.
7761 * bits/locfacets.h: Ditto.
7762 * src/stdstreams.cc: Disable wide streams for now.
7764 * src/Makefile.am (CXXFLAGS): Change up.
7765 * src/Makefile.in (CXXFLAGS): Ditto.
7767 1999-02-25 Benjamin Kosnik <bkoz@happy.cygnus.com>
7769 * src/basic_file.cc: Change to ios_base::seekdir from int.
7770 * bits/basic_file.h: Ditto.
7771 * bits/locfacets.h : Fix blip with new guard macros.
7773 1999-02-25 Benjamin Kosnik <bkoz@cygnus.com>
7775 * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
7776 * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
7778 * amm1/locale: Remove unused defines.
7779 * generic/locale: Ditto.
7780 * src/ios.cc: Ditto.
7781 * src/locale.cc: Ditto.
7782 * src/locale-inst.cc: Ditto.
7783 * src/localename.cc: Ditto.
7784 * src/stdstreams.cc: And here.
7786 * bits/c++config.h (_G_USE_WCHAR_T): Fix.
7787 * bits/loccore.h: Simplify, clean, add wchar_t guards.
7788 * bits/loccore.tcc: Ditto.
7789 * bits/locfacets.h: Ditto.
7790 * src/locale-inst.cc: Ditto.
7791 * bits/locfacets.tcc: Add do_put long long here.
7793 1999-02-24 Benjamin Kosnik <bkoz@cygnus.com>
7795 * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
7796 * bits/basic_ios.h: Clean. Replace _M_strbuf with
7797 _M_streambuf. Use cached _M_cvt in basic_streambuf.
7798 * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
7799 * bits/std_fstream.h: Tweak.
7801 * bits/char_traits.h: Remove fpos definitions from here. . .
7802 * bits/fpos.h: New file, put them here. Eventually, this may allow
7803 the severing of char_traits and fpos dependancies.
7804 * src/Makefile.in: Add fpos.h.
7805 * src/Makefile.am: Ditto.
7806 * bits/std_string.h: Add fpos.h include here.
7807 * bits/std_ios.h: And here.
7809 * bits/std_streambuf.h: Change _M_init to _M_initialized.
7810 * bits/ios_base.h: Remove cstdio include.
7811 * bits/std_ios.h: ... Place here.
7813 1999-02-23 Benjamin Kosnik <bkoz@loony.cygnus.com>
7815 * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
7816 * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
7818 * bits/basic_file.h: Comment, adjust arguments.
7819 * src/basic_file.cc: Ditto.
7821 * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
7822 type: check and convert accordingly. Re-interpet "resultant stream
7823 position" to indicate external byte sequence location, not internal
7826 1999-02-22 Benjamin Kosnik <bkoz@loony.cygnus.com>
7828 * mkcshadow: And change copyright here.
7829 * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
7830 dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
7831 stl_thread.h, and stl_iterator_base.h.
7832 * src/Makefile.in (CXXFLAGS): Ditto.
7833 * stl/backward/pthread_alloc.h: Remove.
7835 1999-02-19 Benjamin Kosnik <bkoz@loony.cygnus.com>
7837 * bits/std_streambuf.h (sungetc): Use standard defs for putback
7839 * bits/std_fstream.h (pbackfail): Correct.
7841 (seekoff): Implement.
7843 * testsuite/27/27filebuf.cc: Add test cases.
7845 1999-02-18 Benjamin Kosnik <bkoz@loony.cygnus.com>
7847 * bits/std_fstream.h: Go with basic_file's interfaces for dealing
7848 with the external buffers, and stop mucking around with setting
7849 and re-setting the external buf's pointers. Aka, clarity and
7850 simplicity rule the day.
7851 * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
7852 Remove partial result and support code.
7854 1999-02-18 Ulrich Drepper <drepper@cygnus.com>
7856 * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
7857 list of function which have to be replaced.
7858 Remove expf from list of functions to test for.
7859 Define USE_LONG_DOUBLE in case the libm has partial support for long
7861 * Makefile.in: Regenerated.
7862 * config.h.in: Likewise.
7863 * configure: Likewise.
7864 * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
7865 * libio/Makefile.in: Regenerated.
7866 * src/Makefile.in: Regenerated.
7867 * string/Makefile.in: Regenerated.
7868 * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
7869 atan2f.c, expf.c, and $(EXTRA_yes).
7870 (EXTRA_yes): Add signbitl.c mycabsl.c.
7871 (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
7872 (libmath_la_SOURCES): remove long double versions.
7873 * math/Makefile.in: Regnerated.
7874 * math/atan2f.c: New file.
7875 * math/copysignf.c: New file.
7876 * math/expf.c: New file.
7877 * math/hypot.c: New file.
7878 * math/hypotf.c: New file.
7879 * math/hypotl.c: New file.
7880 * math/cargf.c: Use correct function and macro names.
7881 * math/ccos.c: Likewise.
7882 * math/ccosh.c: Likewise.
7883 * math/ccoshf.c: Likewise.
7884 * math/ccoshl.c: Likewise.
7885 * math/cexp.c: Likewise.
7886 * math/cexpf.c: Likewise.
7887 * math/cexpl.c: Likewise.
7888 * math/clog.c: Likewise.
7889 * math/clog10.c: Likewise.
7890 * math/clog10f.c: Likewise.
7891 * math/clog10l.c: Likewise.
7892 * math/clogf.c: Likewise.
7893 * math/clogl.c: Likewise.
7894 * math/copysignf.c: Likewise.
7895 * math/csin.c: Likewise.
7896 * math/csinf.c: Likewise.
7897 * math/csinh.c: Likewise.
7898 * math/csinhf.c: Likewise.
7899 * math/csinhl.c: Likewise.
7900 * math/csinl.c: Likewise.
7901 * math/csqrt.c: Likewise.
7902 * math/csqrtf.c: Likewise.
7903 * math/csqrtl.c: Likewise.
7904 * math/ctan.c: Likewise.
7905 * math/ctanf.c: Likewise.
7906 * math/ctanh.c: Likewise.
7907 * math/ctanhf.c: Likewise.
7908 * math/ctanhl.c: Likewise.
7909 * math/ctanl.c: Likewise.
7911 1999-02-17 Benjamin Kosnik <bkoz@cygnus.com>
7913 * testsuite/27/27filebuf.cc: Add cases.
7914 * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
7915 * bits/std_streambuf.h: Simplify, always have one return statement.
7916 * bits/std_fstream.h: Tweak comments in underflow.
7918 1999-02-17 Ulrich Drepper <drepper@cygnus.com>
7920 * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
7921 * ltconfig: Likewise.
7923 1999-02-16 Christophe Pierret <cpierret@businessobjects.com>
7925 * src/locale.cc: Fix assert.
7927 1999-02-16 Benjamin Kosnik <bkoz@cygnus.com>
7929 FIXME: Still need some kind of solution for undefined math symbols.
7930 * src/Makefile.in (locale-inst.lo): Compile with
7931 -fimplicit-templates to fix Solaris link problem.
7932 * src/Makefile.am: Ditto.
7933 * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
7934 * libio/Makefile.am: Ditto.
7935 * src/locale.cc: Provide some kind of def for _S_tolower.
7936 * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
7937 match ctype<char> for _S_tolower, _S_toupper, _S_table.
7939 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
7941 * bits/loccore.tcc: Move member-template ctor inline...
7942 * bits/loccore.h: ...here.
7943 * src/locale-inst.cc: Add instantiation here.
7945 * testsuite/27/27stringstream.cc: Tweak.
7947 * bits/ostream.tcc: Include sbuf_iter.h.
7949 * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
7950 passing to num_put, as num_put's first argument is an interator,
7953 * testsuite/make_check_libfree++: New file, runs through the
7954 existing test files in the testsuite directory and makes sure
7957 1999-02-10 Brendan Kehoe <brendan@cygnus.com>
7959 * testsuite/21/21compare.cc: Fix typo.
7960 * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
7961 Don't try to provide non-linux versions, since it's impossible to
7962 initialize their const references with the integer 0, no matter
7963 how we try to cast it.
7965 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
7967 * bits/std_locale.h: Move std_vector.h dependency.
7968 * bits/std_ios.h: ...from here.
7969 * bits/std_string.h: ...and here.
7970 * src/locale.cc: ..to here.
7971 * bits/loccore.h: Ditto, add vector forward declaration,
7972 make locale::_Impl data members pointers not containers.
7973 * bits/loccore.tcc: Move out-of-line for now.
7974 * bits/locfacets.h: Move vector dependency from here...
7975 * bits/locfacets.tcc: ...to here.
7976 * src/localename.cc: ..and here.
7977 * src/locale-inst.cc: Add include of locfacets.tcc here.
7979 * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
7980 * bits/basic_string.h: Can't use sizeof on an incomplete type.
7981 * bits/string.tcc: Tweak.
7982 * src/string.cc: And add __get_c_string def here.
7984 * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
7986 * src/stlinst.cc: Add include of stl_config.h.
7988 1999-02-09 Benjamin Kosnik <bkoz@cygnus.com>
7990 * stl/bits/std_bitset.h: Update to SGI STL 3.12.
7991 * stl/bits/stl_config.h: Tweak, update.
7992 * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
7994 * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
7995 * stl/bits/std_functional.h: Ditto.
7997 * stl/bits/stl_string.h: New file, SGI's string
7998 implementation. For reference only, corresponding to string in
8000 * stl/bits/stl_char_traits.h: As above.
8002 * stl/bits/pthread_allocimpl.h: New file corresponding to
8004 * stl/bits/stl_pthread_alloc.h: New file corresponding to
8006 * stl/bits/stl_threads.h: New file.
8008 Note that SGI STL 3.12's file iterator.h is not used.
8009 * stl/bits/std_iterator.h: Ditto.
8010 * stl/bits/stl_iterator.h: Drop in replace.
8011 * stl/bits/stl_iterator_base.h: New file, drop in replace.
8013 * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
8014 stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
8015 stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
8016 stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
8017 stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
8018 Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
8019 preprocessor guards, but fixup include paths and names according
8020 to new directory layout).
8022 1999-02-05 Benjamin Kosnik <bkoz@cygnus.com>
8024 * bits/std_fstream.h: Remove _M_open data member.
8025 * bits/fstream.tcc: Ditto.
8027 * src/locale.cc: Tweak.
8029 * bits/std_sstream.h: Simplify.
8031 * bits/std_streambuf.h: Simplify.
8032 (sputc): Use correct definition of "write area."
8034 * bits/std_fstream.h: Fix uflow.
8035 * src/basic_file.cc: Tweak.
8036 * testsuite/27/27filebuf.cc: Add tests.
8037 * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
8039 1999-02-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8041 * bits/ios_base.h: Make protected.
8043 1999-02-01 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8045 * bits/ios_base.h: Changes in the class ios_base:
8046 Rename _M_exceptions member to _M_exceptions_data.
8047 Make the member functions rdstate(), clear(), exceptions()
8048 and exceptions(iostate) protected and add the "_M_" prefix.
8049 * src/ios.cc: Ditto.
8050 * bits/basic_ios.h: Adapt the changes from ios_base.
8052 1999-01-29 Benjamin Kosnik <bkoz@cygnus.com>
8054 * bits/std_fstream.h: Remove _M_flags, _M_equilibrate as unnecessary.
8055 * bits/fstream.tcc: Ditto.
8057 * bits/std_fstream.h (underflow): Resize deallocates memory and
8058 resets pointers in the internal cache according to new _M_buf. . dooh!
8059 * src/locale.cc: Mas changes with codecvt::do_in, do_out.
8061 1999-01-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8063 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
8066 1999-01-28 Benjamin Kosnik <bkoz@cygnus.com>
8068 * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
8069 into account partial returns.
8070 (codecvt::do_out): Likewise.
8072 * bits/char_traits.h: Change streamsize to be a signed type, as
8073 required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
8074 * bits/std_streambuf.h: Make
8075 in_avail() and showmanyc() have streamsize as return types, so
8076 that showmanyc()'s return of eof won't underflow in_avail's return
8077 value and give a bogus result.
8078 * src/misc-inst.cc: And more changes. . .
8080 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
8081 track of joint in/out pointers into the internal buffer.
8082 (sbumpc): Add check for _M_buf_unified.
8086 * testsuite/27/27filebuf.cc: Add cases.
8087 * testsuite/27/27stringbuf.cc: Add showmanyc case.
8089 * bits/std_fstream.h (close): Fix logic error.
8090 (open): Initialize internal pointers based on _M_buf and _M_buf_size.
8091 (showmanyc): Add underflow component, to match the standard.
8093 * bits/fstream.tcc: Ditto.
8095 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
8097 * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
8098 * src/basic_file.cc: Ditto.
8099 * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
8100 format for dealing with _IO_file in libio.
8102 1999-01-27 Ulrich Drepper <drepper@cygnus.com>
8104 * src/basic_file.cc: Include fcntl.h.
8106 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
8108 * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
8110 * bits/std_streambuf.h: Redefine read posion.
8112 * bits/std_fstream.h: Temporary hack to get vtables working again.
8113 * bits/basic_file.h: Revert.
8114 * src/basic_file.cc: Ditto.
8115 * testsuite/27/27filebuf.cc: Tweak.
8117 1999-01-26 Benjamin Kosnik <bkoz@cygnus.com>
8119 * bits/basic_file.h: Add showmanyc, underflow. .
8120 * src/basic_file.cc: Ditto.
8122 * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
8125 * testsuite/27/27filebuf.cc: Add testcases.
8126 * src/basic_file.cc: Add O_CREAT to open calls with
8127 ios_base::trunc as part of the open mode.
8129 1999-01-26 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8131 * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
8133 1999-01-25 Benjamin Kosnik <bkoz@nabi.net>
8135 * src/ios.cc (clear): Correct typo.
8136 * bits/ios_base.h: Tweak spacing.
8138 1999-01-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8140 * bits/basic_ios.h: fix basic_ios::fail()
8142 1999-01-25 Benjamin Kosnik <bkoz@loony.cygnus.com>
8144 * bits/basic_file.h: Include libioP.h from libio instead of here.
8145 * bits/iolibio.h: Remove.
8146 * bits/libio.h: Remove.
8148 1999-01-22 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
8150 * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
8152 1999-01-22 Ulrich Drepper <drepper@cygnus.com>
8154 * Makefile.am (SUBDIRS): Add libio.
8155 * configure.in: Add rule to test for glibc2.
8157 * src/Makefile.am (INCLUDES): Add -I to libio subdir.
8158 (libstdc___la_LIBADD): Add libio.la.
8160 1999-01-21 Benjamin Kosnik <bkoz@cygnus.com>
8162 * bits/basic_file.h: Make new abstraction for underlying C library
8163 FILE, named __basic_file.
8164 * src/basic_file.cc: New file.
8165 * bits/os_raw.h: Delete.
8166 * src/os_raw.cc: Delete.
8167 * src/Makefile.in: Tweak.
8168 * src/Makefile.am: Tweak.
8169 * bits/iolibio.h: Add this here, for the time being.
8170 * bits/libioP.h: Ditto.
8172 * bits/ios_base.h: Delete unused defines.
8173 * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
8174 strcpy to copy between the two buffers.
8176 * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
8177 * testsuite/27/27filebuf.cc: New file.
8178 * testsuite/27/27filebuf-1.txt: Data file for above test.
8179 * testsuite/27/27filebuf-2.txt: Ditto.
8181 * bits/std_streambuf.h (uflow): Re-implement default.
8182 * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
8183 Re-implement virtual functions.
8184 * bits/fstream.tcc: Delete unused mf's.
8186 1998-12-31 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
8188 * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
8189 * bits/std_fstream.h: Ditto.
8190 * src/stdstreams.cc: Ditto.
8192 * math/cpowl.c: Fix header typo with last change.
8194 1998-12-31 Benjamin Kosnik <bkoz@loony.cygnus.com>
8196 * COPYING: New file (GPL v 2).
8197 * LICENSE.STD: Remove.
8198 * ./*: Change license.
8200 1998-12-30 Benjamin Kosnik <bkoz@haight.constant.com>
8202 * bits/std_streambuf.h (std): Remove static on _M_init.
8203 * bits/streambuf.tcc (std): Ditto.
8205 * bits/std_fstream.h: Add changes as discussed with Nathan, including
8206 state_type and codecvt_type members, the allocation of an internal
8207 buffer, the streamlined codecvt calls, etc.
8209 1998-12-21 Benjamin Kosnik <bkoz@haight.constant.com>
8211 * bits/std_sstream.h: Tweak.
8212 * bits/fstream.tcc: Remove unused stubs.
8213 * bits/std_fstream.h: Tweak.
8215 1998-12-17 Benjamin Kosnik <bkoz@tintin.cygnus.com>
8217 * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
8218 Remove unused _IO_* members, possibly put into filebuf, which may
8220 * bits/std_fstream.h: Add _M_flag.
8221 * bits/sbuf_iter.h: Tweak.
8223 * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
8224 * bits/ios_base.h: Use.
8226 * src/stdstreams.cc: Modify to reflect standard ctors for
8228 * src/misc-inst.cc: Ditto.
8230 * bits/os_raw.h: Wrap in std namespace. Model parameters on
8231 underlying C library calls instead of the underlying unix
8233 * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
8234 string as per p.659.
8235 (_S_os_close): Model on fopen.
8236 (_S_os_read): Model on fread.
8237 (_S_os_write): Model on fwrite.
8238 (_S_os_seek): Model on fseek.
8240 * bits/ios_base.h: Tweak.
8241 * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
8242 * bits/std_sstream.h: Tweak.
8243 * bits/sstream.tcc: Remove old, uncalled code.
8244 * bits/std_fstream.h: Major reconstruction.
8245 * bits/fstream.tcc: Disable for the time being.
8247 1998-12-11 Benjamin Kosnik <bkoz@haight.constant.com>
8249 * bits/basic_string.h: Fix insert method.
8250 * stl/bits/stl_iterator.h: Remove previous hack.
8251 * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
8252 * bits/std_sstream.h: Fix more regressions.
8253 * testsuite/27/27stringbuf.C: Add (almost) complete tests.
8255 1998-12-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
8257 * bits/basic_string.h: Tweak.
8259 * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
8260 that string::append can be instantiated. HACK--checkin
8261 basic_string::iterator class.
8263 1998-12-07 Benjamin Kosnik <bkoz@haight.constant.com>
8265 * bits/std_sstream.h: Tweak.
8266 * bits/sstream.tcc: Tweak ctors.
8268 FIXME invalid friend defs. . WHERE ARE THEY??
8270 * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
8271 names for basic_streambuf data members.
8273 * bits/std_streambuf.h: Add getloc() initialization bits.
8274 basic_streambuf(): Initialize with global locale data.
8275 imbue(): Set _M_init.
8277 * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
8278 stream pos == pos_type(off_type(-1)).
8279 in_avail(): Complete default implementation.
8280 snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
8281 underflow, uflow, xsgetn, showmany, sync: Ditto.
8283 * bits/std_streambuf.h: _M_snextc_helper(): Remove.
8285 * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
8286 re-populate with in-line member functions that are too big. Add
8287 initialization for _M_init.
8289 1998-12-03 Benjamin Kosnik <bkoz@cygnus.com>
8291 * bits/sstream.tcc: Convert _Allocator to _Alloc. Add typedefs
8292 for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
8295 * src/stdstreams.cc (std): Disable wchar_t instantiations.
8297 * bits/c++config.h (_G_DEPRICATED): Add.
8298 (_G_USE_WCHAR_T): Add.
8299 * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
8300 Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
8301 * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
8302 * bits/std_fstream.h: Add comment for implementation.
8303 * src/streambuf.cc: Remove.
8304 * src/Makefile.in: Remove streambuf.lo.
8305 * src/misc-inst.cc: Tweak.
8307 1998-12-02 Benjamin Kosnik <bkoz@cygnus.com>
8309 * bits/std_sstream.h: Add const_cast to rdbuf returns.
8310 * testsuite/27stringstream.C: Modify.
8312 1998-11-25 Benjamin Kosnik <bkoz@haight.constant.com>
8314 * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
8315 (libstdc___la_SOURCES): Ditto.
8317 * bits/streambuf.tcc: Tweak.
8319 * src/streambuf.cc: New file, add out-of-line definitions for
8322 * src/misc-inst.cc: Remove _Streambuf_base instantiations.
8323 Comment out wchar_t versions of the buffer instantiations, for now.
8325 * bits/std_streambuf.h: Wrap libio.h include with extern "C".
8326 Remove template wrapper around _Streambuf_base.
8327 Move IO_* data members into _Streambuf_base.
8328 Move _Streambuf_base members into streambuf.tcc.
8330 * bits/c++config.h (_G_USE_LIBIO): Enable.
8332 1998-11-02 Nathan Myers <ncm@cantrip.org>
8334 * CHECKLIST: downgrade iterator implementations
8335 * DESIGN: fill out notes about unimplemented features
8337 1998-10-31 Nathan Myers <ncm@cantrip.org>
8339 * CHECKLIST: itemized list of all interfaces, and status of each.
8341 1998-10-30 Nathan Myers <ncm@cantrip.org>
8343 * RELEASE-NOTES: add notes about optional includes, linking, running
8344 * src/Makefile.am: handle header installs properly
8345 * src/Makefile.in: regenerate from new src/Makefile.am
8347 1998-10-30 Benjamin Kosnik <bkoz@loony.cygnus.com>
8349 * bits/basic_string.h: Revert npos pending ciso646.
8350 * src/Makefile.am: Revert CXX flags for now.
8351 * src/Makefile.in: Ditto.
8353 1998-10-30 Brendan Kehoe <brendan@cygnus.com>
8355 * bits/std_sstream.h: Re-order ctors to put base before member
8358 1998-10-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
8360 * stl/bits/std_memory.h: Fix typo.
8362 1998-10-30 Nathan Myers <ncm@cantrip.org>
8364 * src/string[A-Z]+.cc: change back to include "string.cc".
8365 * src/Makefile.am: revert filename changes. We need a different
8366 way to keep filenames in std/ from confusing Make.
8367 * bits/basic_string.h: define _S_max_size right, return it from
8368 string::max_size(); churn definition of npos again.
8369 * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
8370 * bits/ios.cc: remove #ifdef on ios_base locale member initialization
8371 * BUGS: clear cruft.
8372 * C++STYLE: Touchup for release.
8373 * CHECKLIST: Touchup for release.
8375 * LICENSE.STD: Add requirement to retain copyrights and to provide
8376 the license with any copies.
8377 * README: Update for release.
8378 * TODO: Minor touchup for release.
8379 * RELEASE-NOTES: prepare for release
8381 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
8383 * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
8385 * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
8387 * src/Makefile.am (CXXLINK): New variable. Make sure we don't use
8388 CXX to generate the shared object.
8390 * src/Makefile.am (headers): Remove duplicated char_traits.h.
8392 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
8394 * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
8395 2, from npos, solving infinite loop problems.
8397 1998-10-29 18:41 Ulrich Drepper <drepper@cygnus.com>
8399 * src/Makefile.am: Add rules to install headers.
8401 1998-10-29 Nathan Myers <ncm@cantrip.org>
8403 * bits/std_ostream.h: Remove #ifdef on operator<< for long double
8404 * bits/ostream.tcc: Remove #ifdef on operator<< for long double
8407 * shadow/bits/wrap_libio.h:
8408 * shadow/bits/wrap_unistd.h: New files.
8410 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
8412 * bits/ostream.tcc (operator<<): Wrap with #ifdef
8413 _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
8415 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
8417 * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
8418 is not compiled with -fno-implicit-templates in effect.
8420 * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
8421 (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
8422 * src/stringADDCS.cc: Wrapper around string.cc to define individual
8424 * src/stringADDPS.cc: Likewise.
8425 * src/stringADDSC.cc: Likewise.
8426 * src/stringADDSP.cc: Likewise.
8427 * src/stringADDSS.cc: Likewise.
8428 * src/stringBIST.cc: Likewise.
8429 * src/stringBOST.cc: Likewise.
8430 * src/stringCHTR.cc: Likewise.
8431 * src/stringEQPS.cc: Likewise.
8432 * src/stringEQSP.cc: Likewise.
8433 * src/stringEQSS.cc: Likewise.
8434 * src/stringEXTRA.cc: Likewise.
8435 * src/stringGEPS.cc: Likewise.
8436 * src/stringGESP.cc: Likewise.
8437 * src/stringGESS.cc: Likewise.
8438 * src/stringGETLI.cc: Likewise.
8439 * src/stringGTPS.cc: Likewise.
8440 * src/stringGTSP.cc: Likewise.
8441 * src/stringGTSS.cc: Likewise.
8442 * src/stringINSER.cc: Likewise.
8443 * src/stringLEPS.cc: Likewise.
8444 * src/stringLESP.cc: Likewise.
8445 * src/stringLESS.cc: Likewise.
8446 * src/stringLTPS.cc: Likewise.
8447 * src/stringLTSP.cc: Likewise.
8448 * src/stringLTSS.cc: Likewise.
8449 * src/stringMAIN.cc: Likewise.
8450 * src/stringNEPS.cc: Likewise.
8451 * src/stringNESP.cc: Likewise.
8452 * src/stringNESS.cc: Likewise.
8453 * src/stringSCOPY.cc: Likewise.
8454 * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
8456 * src/wstringADDPS.cc: Likewise.
8457 * src/wstringADDSC.cc: Likewise.
8458 * src/wstringADDSP.cc: Likewise.
8459 * src/wstringADDSS.cc: Likewise.
8460 * src/wstringBIST.cc: Likewise.
8461 * src/wstringBOST.cc: Likewise.
8462 * src/wstringCHTR.cc: Likewise.
8463 * src/wstringEQPS.cc: Likewise.
8464 * src/wstringEQSP.cc: Likewise.
8465 * src/wstringEQSS.cc: Likewise.
8466 * src/wstringEXTRA.cc: Likewise.
8467 * src/wstringGEPS.cc: Likewise.
8468 * src/wstringGESP.cc: Likewise.
8469 * src/wstringGESS.cc: Likewise.
8470 * src/wstringGETLI.cc: Likewise.
8471 * src/wstringGTPS.cc: Likewise.
8472 * src/wstringGTSP.cc: Likewise.
8473 * src/wstringGTSS.cc: Likewise.
8474 * src/wstringINSER.cc: Likewise.
8475 * src/wstringLEPS.cc: Likewise.
8476 * src/wstringLESP.cc: Likewise.
8477 * src/wstringLESS.cc: Likewise.
8478 * src/wstringLTPS.cc: Likewise.
8479 * src/wstringLTSP.cc: Likewise.
8480 * src/wstringLTSS.cc: Likewise.
8481 * src/wstringMAIN.cc: Likewise.
8482 * src/wstringNEPS.cc: Likewise.
8483 * src/wstringNESP.cc: Likewise.
8484 * src/wstringNESS.cc: Likewise.
8485 * src/wstringSCOPY.cc: Likewise.
8486 * src/string.cc: Remove now unneeded #defines now.
8488 1998-10-29 Nathan Myers <ncm@cantrip.org>
8490 * bits/locfacets.tcc: Define num_put::put(... const void*), improve
8492 * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
8493 add definitions for double, long double, const void*.
8494 * bits/std_ostream.h: Move op<<'s back into class ostream,
8495 define some in-line.
8496 * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
8497 string construction from input iterators that Brendan reported.
8500 1998-10-28 Brendan Kehoe <brendan@cygnus.com>
8502 * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
8504 * bits/valarray_meta.h (class _Constant): Move declaration to the
8505 top, so the rest of the file can grok it.
8506 (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
8508 * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
8510 (basic_stringstream::str, both instances): Likewise.
8512 1998-10-28 Nathan Myers <ncm@cantrip.org>
8514 * bits/locfacets.h: fix num_put<>::falsename()
8515 * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
8516 * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
8517 * bits/locfacets.tcc: touch up _S_group_digits.
8518 * src/misc-inst.cc: adjust _S_group_digits insts to match.
8520 1998-10-27 Nathan Myers <ncm@cantrip.org>
8522 * stl/bits/stl_config.h: Turn off long long support, for now.
8523 * src/locale-inst.cc: Instantiate num_put<> only for
8524 ostreambuf_iterator, num_get only for istreambuf_iterator.
8525 * src/misc-inst.cc: Delete duplicate locale-related instantiations,
8526 add lots of new instantiations for num_put support function templates;
8527 remove junk about __match_parallel for ostreambuf_iterator.
8529 1998-10-27 Nathan Myers <ncm@cantrip.org>
8531 * bits/locfacets.tcc: Make num_put's digit grouping work.
8532 * bits/string.tcc: More uglification.
8533 * src/ios.cc: initialize format cache right
8535 1998-10-26 Nathan Myers <ncm@cantrip.org>
8537 * bits/basic_string.h: Uglify more names.
8538 * bits/fstream.tcc: Rewrite some filebut output handling.
8539 * bits/ios_base.h: Cosmetic.
8540 * bits/locfacets.h: Changes to _Format_cache for support of num_put.
8541 Also, specialize its default ctor for optimal default case.
8542 #ifdef out "long long" prototypes for now.
8543 * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
8544 implementation for integer types. (Still needs optimized
8545 std::copy() applied to ostreambuf_iterator to be optimal.)
8546 * bits/ostream.tcc: Write operator<< for long, bool types.
8547 Make other operators<< non-members, per spec. (Many still
8548 not implemented.) Identify those that fail to create a sentry.
8549 * bits/sbuf_iter: Cosmetic.
8550 * bits/std_fstream.h: Add some filebuf members.
8551 * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
8552 * bits/std_ostream.h: Make member operators<< global, per spec.
8553 (Should do the same in std_istream.h.)
8554 * bits/std_string.h: Include <limits> for use in bits/locfacets.h
8555 * bits/string.tcc: Uglify names
8556 * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
8557 * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
8558 for optimal default behavior.
8560 1998-10-26 Benjamin Kosnik <bkoz@loony.cygnus.com>
8562 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
8564 1998-10-21 Nathan Myers <ncm@cantrip.org>
8566 * src/locale.cc: make ctype operations actually work for glibc
8567 * CHECKLIST: add a comprehensive (i.e. huge) implementation
8568 checklist of stdlib facilities. Not filled in yet.
8570 1998-10-20 Nathan Myers <ncm@cantrip.org>
8572 * bits/string.tcc: fix patching NULs on string ends.
8574 1998-10-19 Nathan Myers <ncm@cantrip.org>
8576 * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
8577 iterator forward declarations
8578 * bits/sbuf_iter.h: eliminate default template argument definitions
8579 on streambuf iterators (rely on <iosfwd> decls).
8580 * TODO: add note about lazy facet construction
8581 * bits/basic_ios.h: hit operator void* again. This should be the
8582 last time we need to touch it.
8583 * bits/basic_ios.h: copyfmt now returns *this.
8584 * bits/basic_string.h: fix npos again. npos cannot be defined as zero.
8585 * bits/basic_string.h: put back overloaded constructors; adjust
8586 behavior for default allocator on copy constructor.
8587 * bits/char_traits.h: make not_eof return correct type.
8588 * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
8589 cannot be in non-standard headers or we get include loops (bad)
8590 * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
8591 * bits/loccore.h: add apparatus to support lazy construction of
8593 * bits/locfacets.tcc: Uglify names in __match_parallel decl.
8594 * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
8595 locale use_facet<> failure.
8596 * bits/std_locale.h: same.
8597 * bits/std_string.h: same.
8598 * bits/std_stdexcept.h: change exception member __msg from a
8599 reference to a regular object.
8600 * bits/string.tcc: add pasting a NUL on the end of strings after
8601 each operation. We had already left room for it, but previously
8602 plugged it only on a call to c_str(), but the WG changed the
8603 requirement when I wasn't looking. (Can't leave them alone for
8604 a second without they break something else.)
8605 * bits/valarray_meta.h: add Gaby's changes from 981018.
8606 * src/locale.cc: add new type _Bad_use_facet to be thrown on
8607 failure of use_facet<>().
8608 * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
8609 comment out leftover member definitions
8611 1998-10-16 Ulrich Drepper <drepper@cygnus.com>
8613 * string/Makefile.am: Revert last change.
8614 * math/Makefile.am: Likewise.
8616 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
8618 * bits/std_sstream.h: Fix typo.
8620 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
8622 * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
8624 * bits/std_sstream.h: Add typedefs, member definitions. Clean.
8625 * bits/std_stdexcept.h: Remove.
8627 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
8629 * src/misc-inst.cc: Tweak again.
8631 * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
8632 * bits/sstream.tcc: New file.
8634 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
8636 * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
8637 Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
8640 * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
8642 (INFINITE_P): Use IS_INF macro if available.
8644 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
8646 * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
8648 * string/Makefile.am: Likewise.
8650 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
8652 * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
8654 (AC_CHECK_HEADERS): Add machine/endian.h. If no header specifying
8655 endianess is available run AC_C_BIGENDIAN.
8657 * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
8658 fixincludes is fixed.
8659 * math/clogl.c: Likewise.
8660 * math/csqrtl.c: Likewise.
8661 * math/mycabsl.c: Likewise.
8663 * math/mathconf.h: Include machine/endian.h if possible. If no
8664 header describing endianess is available rely on WORDS_BIGENDIAN
8666 (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
8667 (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
8670 * src/complex.cc (polar): Don't use sincos on OSF machines.
8672 1998-10-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
8674 * src/locale-inst.cc: Don't instantiate time_get for
8675 ostreambuf_iterators as time_get::do_get_weekday and
8676 time_get::do_get_monthname use __match_parallel, which is illegal
8677 for ostreambuf_iterators to use, as they don't have operator== or
8679 * bits/std_stdexcept.h: Add dtor definitions.
8680 Use stl/bits/std_stdexcept.h instead of this file?
8681 * bits/sbuf_iter.h : Tweak.
8682 * src/misc-inst.cc: Tweak.
8684 1998-10-09 Benjamin Kosnik <bkoz@haight.constant.com>
8686 * bits/std_stdexcept.h: New file.
8687 * src/stdexcept.cc: Define the following:
8689 runtime_error::what()
8691 * src/misc-inst.cc: New file.
8692 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
8693 (libstdc___la_OBJECTS): Add misc-inst.lo.
8695 * bits/basic_string.h: Disable non-standard ctor declarations.
8696 * bits/string.tcc: Disable definitions as well.
8697 * src/string.cc: Disable <ios> dependancies.
8698 * bits/sbuf_iter.h (std): Add default to template parameter for
8699 ostreambuf_iterator and istreambuf_iterator.
8700 * bits/std_iosfwd.h: Change istreambuf_iterator to
8701 basic_istreambuf_iterator. Likewise for ostreambuf.
8702 * bits/locfacets.tcc (__match_parallel): Fix typo.
8703 * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
8705 * bits/std_streambuf.h: Define _Streambuf_base::getloc().
8706 * bits/std_istream.h: Define the following:
8707 get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
8708 get (char_type* __s, streamsize __n, char_type __delim);
8709 getline (char_type* __s, streamsize __n, char_type __delim)
8710 * bits/loccore.h : FIXME friend template code for use_facet.
8711 Add std_stdexcept.h include so that range_error will be defined.
8712 Add explicit conversion to string for range_error throws. (HACK?)
8714 1998-10-8 Ulrich Drepper <drepepr@cygnus.com>
8716 * configure.in: Check for sincos, sincosf, and sincosl.
8717 * src/complex.cc (polar): Use sincos if available.
8719 * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
8720 * stl/bits/std_limits.h: Include bits/c++config.h. HACK!!!
8722 * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
8724 * math/cpow.c: Use c_log, not clog.
8725 * math/cpowf.c: Likewise.
8726 * math/cpowl.c: Likewise.
8728 * math/cexp.c: Remove unused fpclassify calls. Use FINITE_P instead
8731 * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
8732 isfinite macro if it is available.
8733 (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
8735 * math/ccosf.c: Use appropriate test macros for this type.
8736 * math/ccoshf.c: Likewise.
8737 * math/ccoshl.c: Likewise.
8738 * math/ccosl.c: Likewise.
8739 * math/cexpf.c: Likewise.
8740 * math/cexpl.c: Likewise.
8741 * math/clog10f.c: Likewise.
8742 * math/clog10l.c: Likewise.
8743 * math/clogf.c: Likewise.
8744 * math/clogl.c: Likewise.
8745 * math/csinf.c: Likewise.
8746 * math/csinhf.c: Likewise.
8747 * math/csinhl.c: Likewise.
8748 * math/csinl.c: Likewise.
8749 * math/csqrtf.c: Likewise.
8750 * math/csqrtl.c: Likewise.
8751 * math/ctanf.c: Likewise.
8752 * math/ctanhf.c: Likewise.
8753 * math/ctanhl.c: Likewise.
8754 * math/ctanl.c: Likewise.
8756 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
8758 * bits/basic_ios.h: Fix previous change.
8760 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
8762 * bits/basic_ios.h: Add const_cast<basic_ios&>
8763 (operator void*): As per 5.2.9 p 2, make sure static_cast is
8765 * bits/char_traits.h: No _CharT for specialization, change to 0.
8766 * bits/basic_string.h: As per 9.4.2 p4, initialize with
8767 constant-initializer.
8768 * bits/locfacets.tcc: Add template parameter to initialization list.
8770 1998-10-02 Benjamin Kosnik <bkoz@loony.cygnus.com>
8772 * bits/basic_string.h: Should just be <, not <=.
8774 1998-10-01 Benjamin Kosnik <bkoz@bliss.nabi.net>
8776 * bits/string.tcc (compare): Fix for strings that are similar, but
8777 not the same length.
8779 1998-09-04 Brendan Kehoe <brendan@cygnus.com>
8781 * bits/c++config.h: For __linux__, define _GNU_SOURCE. This is
8782 required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
8783 We can't check for __GLIBC__ here, since this header can be read
8784 before any system one (that would lead to features.h) being used.
8786 * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
8788 * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
8789 LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
8791 * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
8792 LONGLONG_{MIN,MAX} which I can't find the origin of.
8794 1998-09-03 Brendan Kehoe <brendan@cygnus.com>
8796 * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
8797 should this come from, if not iostream.h?
8798 (class istream_iterator): Make the new operator!= a friend also.
8800 * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
8801 __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG. Don't include
8802 _G_config.h like the egcs one does.
8804 1998-09-01 Brendan Kehoe <brendan@cygnus.com>
8806 * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
8808 * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
8809 _Expr1 (or _Expr_def if it's taken), and change definitions.
8810 Avoids redecl of the template parm.
8812 * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
8813 (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
8815 * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
8818 * src/locale-inst.cc: New file, **TOTAL HACK**. There has GOT to
8819 be a better way to do this.
8821 * src/stlinst.cc: New file.
8823 * BUGS: New file, with various discovered bugs that need to be
8826 * Makefile.in, math/Makefile.in, string/Makefile.in,
8827 src/Makefile.in: Reran automake.
8829 Workarounds, these may not all be the final fixes:
8831 * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
8832 not private, for basic_istream::get() in std_istream.h to be able
8834 (basic_ios::operator void*): Don't use static_cast for the false
8836 (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
8837 This appears to have been in sep94, but didn't get corrected
8840 * bits/basic_string.h (npos): Don't init here.
8841 * bits/string.tcc: Instead, do initialization here, to -1 instead
8842 of the size_type destructor.
8844 * src/traits.cc, src/wtraits.cc: New files.
8845 * bits/char_traits.h: For char_traits<char> and
8846 char_traits<wchar_t>, declare static, but define over in the src
8849 * bits/gslice.h: Comment out forward decls of _Array, valarray,
8850 gslice_array, and _GsliceExpression.
8852 * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
8853 clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
8854 stdout, and stderr. Note we do get unresolved refs to stdin, but
8855 that'll get fixed by the "true" solution.
8857 * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
8858 definition of basic_streambuf.h, which is used in basic_ios.h to
8861 * bits/std_streambuf.h: Don't include libio.h for now.
8862 (class basic_streambuf): Define missing methods pubimbue and
8865 * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
8866 ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
8867 locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
8869 * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
8871 * src/locale.cc: Come up with munged versions of _S_toupper,
8872 _S_tolower, and _S_table instead of the glibc-specific ones, so
8873 they're at least defined, if not necessarily usable. The glibc
8874 ones on any other system will yield unresolved refs to
8875 __ctype_{b,toupper,tolower}.
8877 * src/string.cc: Define all of ADDCS, ADDPS, et al. Add
8878 basic_ios, basic_istream, basic_ostream. Don't do char_traits
8879 anymore cuz of the explicit specialization in char_traits.h.
8880 Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
8881 file for the details.
8883 * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
8884 * stl/bits/stl_iterator.h (__distance): Likewise.
8886 * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
8887 op>, op<=, and op>= for reverse_iterator. Also add op!= for
8890 1998-08-26 Brendan Kehoe <brendan@cygnus.com>
8892 * bits/string.tcc (basic_string::compare (const char*)): Fix to
8895 1998-08-25 Brendan Kehoe <brendan@cygnus.com>
8897 This should really be fixed with __asm__ directives renaming the
8898 symbol, but keeping the function.
8899 * math/clogf.c (c_logf): Renamed from `clogf'.
8900 * math/clogl.c (c_logl): Renamed from `clogl'.
8901 * math/complex-stub.h (c_logf, c_logl): Change decls.
8903 * bits/locfacets.h (class _Numeric_get): For friend decls, rename
8904 _CharT and _InIter parms, since they duplicate the enclosing ones.
8906 1998-08-19 Brendan Kehoe <brendan@cygnus.com>
8908 Deal with conflict of the iostreams `clog' and our internal
8909 complex number `clog'.
8910 * src/complex.cc: Call `c_log' instead of `clog'.
8911 * math/clog.c (c_log):: Renamed from clog.
8912 * math/complex-stub.h (c_log): Renamed from clog decl.
8914 * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
8916 (num_put::put): #if 0 long long version, since we don't declare or
8917 define the long long version of do_put.
8919 1998-08-18 Nathan Myers <ncm@cantrip.org>
8921 * bits/basic_string.h: add basic_string<>::push_back(), fix return
8922 type of get_allocator (thanks to Ryszard Kabatek).
8923 * bits/char_traits.h: make init order of fpos<> members
8925 * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
8926 flags _S_fd_in etc. for special filebuf ctor.
8927 * bits/locfacets.h: make _Numeric_get and _Format_cache public
8928 to work around problems in friend declarations.
8929 * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
8930 fix random type errors & typos
8931 * bits/std_fstream.h: major refitting to bypass libio (for now),
8932 instrument to use bits/fstream.tcc template definitions
8933 * bits/std_iosfwd.h: mess with wrappers
8934 * bits/std_istream.h: remove meaningless comment
8935 * bits/std_ostream.h: instrument to work with ostream.tcc.
8936 * bits/std_streambuf.h: instrument to work with streambuf.tcc
8937 * bits/fstream.tcc: template defs for <fstream>
8938 * bits/ostream.tcc: template defs for <ostream>
8939 * bits/streambuf.tcc: template defs for <streambuf>
8940 * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
8941 * Delete .cc files, replace with bits/*.tcc
8947 src/os_raw.cc: thin interface to OS, to bypass libio (for now).
8948 src/stdstreams.cc: cout, cin, etc. definitions
8949 (these still need work: must be init'd before user statics.)
8952 1998-08-18 Brendan Kehoe <brendan@cygnus.com>
8954 Sent to SGI before checkin:
8955 * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
8956 operator>=): Define.
8957 * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
8958 * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
8959 operator>=): Define.
8960 (operator==, operator<): Add inline.
8961 * stl/bits/stl_map.h (operator!=, operator<, operator<=,
8962 operator>=): Define.
8963 * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
8964 operator>=): Define.
8965 * stl/bits/stl_list.h (operator!=, operator<, operator<=,
8966 operator>=): Define.
8967 * stl/bits/stl_set.h (operator!=, operator<, operator<=,
8968 operator>=): Define.
8969 * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
8970 operator>=): Define.
8972 * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
8975 1998-08-15 Nathan Myers <ncm@cantrip.org>
8977 * bits/ios_base.h: change nominal bitmask and enum types to real enums
8978 * bits/locfacets.h: make _Format_cache bool names usable by num_get
8979 * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
8980 * bits/std_fstream.h: minor cleanups: ctors delegate to open()
8981 * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
8982 * bits/std_sstream.h: formatting cleanups
8984 1998-08-14 Nathan Myers <ncm@cantrip.org>
8986 * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
8987 * bits/locfacets.tcc: implement time_get<>::do_get_weekday
8988 * bits/locfacets.tcc: implement time_get<>::do_get_monthname
8989 * bits/locfacets.h: fix missing argument in do_get_monthname
8990 (this is a bug in the standard, ref. 36 in my list.)
8991 * bits/locfacets.h: make month and day name caches mutable
8992 * bits/locfacets.tcc: various typos in get() functions
8993 * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
8994 * bits/std_streambuf.h: fix typo in sgetn (Brendan)
8996 1998-08-12 Nathan Myers <ncm@cantrip.org>
8997 * move streambuf iterators to bits/sbuf_iter.h
8998 * optimize streambuf iterators
8999 * begin generalizing streambuf
9000 * begin implementing num_get<>::get (starting with bool)
9001 * patch stl/bits/stl_config.h so that relops operators are
9002 contained properly, out of the way.
9004 1998-07-24 Nathan Myers <ncm@cantrip.org>
9005 * Fold in SGI 3.11 changes (uglified names, some algorithm
9006 improvements, very minor bug fixes.)
9007 * Uglify names elsewhere to match (s/_T/_Tp/).
9008 * Begin work on optimized streambuf
9009 * Put complex.cc in namespace std:: (thanks Martin)
9011 1998-07-17 Nathan Myers <ncm@cantrip.org>
9013 * bits/char_traits.h: add _Char_traits_match template.
9014 * bits/string.tcc: fix bugs in various find_last* members.
9015 * bits/basic_string.h: redeclare member _S_find.
9016 * stl/bits/stl_iterator.h: change member names in nonstandard
9017 templates bidirectional_reverse_iterator and
9018 random_access_reverse_iterator to match expected changes
9020 * src/string.cc: fix definitions of stream operators.
9022 1998-07-14 16:06 Ulrich Drepper <drepper@cygnus.com>
9024 * Makefile.am (SUBDIRS): Add string.
9026 * configure.in: Test for long double functions separately. Test for
9027 ISO C 89 float functions. Test for endian.h and sys/isa_defs.h.
9028 Generate string/Makefile.
9030 * bits/c++config.h: Define mbstate_t for Solaris.
9032 * bits/char_traits.h: Remove unused #if.
9034 * bits/std_cwchar.h: Declare wide char string functions.
9036 * m4/stringfcts.m4: New file.
9038 * math/complex-stub.h: Declare nan.
9039 * math/nan.c: New file.
9041 * math/mathconf.h: Hack around missing endian.h file.
9042 Handle missing NAN definition.
9043 Handle missing float math functions.
9045 * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
9046 (libstdc___la_LDFLAGS): Set version information.
9048 * src/complexl.cc: Don't compile any code if no long double functions
9051 * string/Makefile.am: New file.
9052 * string/dummy.c: New file.
9053 * string/wmemchr.c: New file.
9054 * string/wmemcmp.c: New file.
9055 * string/wmemcpy.c: New file.
9056 * string/wmemmove.c: New file.
9057 * string/wmemset.c: New file.
9059 1998-07-14 10:45 Ulrich Drepper <drepper@cygnus.com>
9061 * configure.in: Make it work.
9062 * install-sh: New file.
9063 * missing: New file.
9064 * mkinstalldirs: New file.
9065 * m4/mathfcts.m4: New file.
9066 * math/Makefile.am: New file.
9068 * bits/std_complex.h (conj): Mark specializations as inline.
9070 * math/carg.c: New file.
9071 * math/cargf.c: New file.
9072 * math/cargl.c: New file.
9073 * math/mycabs.c: New file.
9074 * math/mycabsf.c: New file.
9075 * math/mycabsl.c: New file.
9076 * math/signbit.c: New file.
9077 * math/signbitf.c: New file.
9078 * math/signbitl.c: New file.
9080 * math/ccos.c: Avoid ISO C 9x functionality.
9081 * math/ccosf.c: Likewise.
9082 * math/ccosh.c: Likewise.
9083 * math/ccoshf.c: Likewise.
9084 * math/ccoshl.c: Likewise.
9085 * math/ccosl.c: Likewise.
9086 * math/cexp.c: Likewise.
9087 * math/cexpf.c: Likewise.
9088 * math/cexpl.c: Likewise.
9089 * math/clog.c: Likewise.
9090 * math/clog10.c: Likewise.
9091 * math/clog10f.c: Likewise.
9092 * math/clog10l.c: Likewise.
9093 * math/clogf.c: Likewise.
9094 * math/clogl.c: Likewise.
9095 * math/cpow.c: Likewise.
9096 * math/cpowf.c: Likewise.
9097 * math/cpowl.c: Likewise.
9098 * math/csin.c: Likewise.
9099 * math/csinf.c: Likewise.
9100 * math/csinh.c: Likewise.
9101 * math/csinhf.c: Likewise.
9102 * math/csinhl.c: Likewise.
9103 * math/csinl.c: Likewise.
9104 * math/csqrt.c: Likewise.
9105 * math/csqrtf.c: Likewise.
9106 * math/csqrtl.c: Likewise.
9107 * math/ctan.c: Likewise.
9108 * math/ctanf.c: Likewise.
9109 * math/ctanh.c: Likewise.
9110 * math/ctanhf.c: Likewise.
9111 * math/ctanhl.c: Likewise.
9112 * math/ctanl.c: Likewise.
9114 * math/complex-stub.h: New file.
9116 * math/mathconf.h: New file.
9118 * src/Makefile.am: New file.
9120 * src/complex.cc: Use mathconf.h instead of complex.h.
9121 Don't use cabs, always use __mycabs.
9123 1998-02-13 Brendan Kehoe <brendan@cygnus.com>
9125 * iterator (class reverse_iterator): Do some tweaks to be in sync