1 2000-07-19 Phil Edwards <pme@sourceware.cygnus.com>
3 * docs/18_support/howto.html: Update.
5 2000-07-19 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
7 Internal consistency checks.....
8 * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
11 * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
12 * bits/basic_ios.tcc: Same.
14 * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
15 Change _M_fctype_buf to _M_buf_fctype.
16 * bits/fstream.tcc: Same.
18 * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
19 Change _M_locale_set to _M_buf_locale_init.
20 * bits/streambuf.tcc: Same.
21 * bits/sstream.tcc: Same.
22 * bits/fstream.tcc: Same.
24 * bits/std_streambuf.h: Make typedefs consistent.
25 (_M_buf_bump): Be more careful with input sequence.
27 * bits/std_sstream.h: Same.
28 * bits/std_fstream.h: Same.
30 2000-07-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
32 * acinclude.m4: Tweaks.
33 * config/c_io_libio.cc: Tweaks.
34 * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
35 * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
36 * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
37 * libio/iofclose.c iofopen.c, stdio.c: New files.
38 * libio/Makefile.am: Add files, add flags, etc.
39 * src/Makefile.am (sources): Add filebuf.cc.
40 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
41 (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
43 2000-07-17 Phil Edwards <pme@sourceware.cygnus.com>
45 * acinclude.m4: Import CHECK_GNU_MAKE from autoconf macro archive.
46 * configure.in: Use it. Also print reminders one time.
47 * aclocal.m4: Regenerate.
48 * configure: Regenerate.
50 2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
52 * bits/valarray_array.h (__valarray_get_storage): New function.
53 (_Array<>::Array): Use it.
54 * bits/std_valarray.h (valarray<>::valarray): Likewise.
55 (valarray<>::resize): Likewise. Tweak.
56 * src/valarray-inst.cc (__valarray_product): Tweak.
58 2000-07-11 Phil Edwards <pme@sourceware.cygnus.com>
60 * docs: Update sourceware->sources in every HTML file. Minor updates.
62 2000-07-07 Benjamin Kosnik <bkoz@soma.redhat.com>
64 Clean up configure/build longstanding issues.
65 * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
66 (CXXLINK): Add here, instead.
68 * Makefile.am (check-install): Make sure mkcheck has execute privs.
70 * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
72 * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
73 c_io_libio.cc instead of copying.
74 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
76 * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
77 c++threads.h instead of copying.
78 * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
81 * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
82 * bits/basic_file.h: Declare.
84 * mkcheck.in (TESTS_FILE): Use -v instead of --version.
86 2000-07-07 brent verner <brent@rcfile.org>
88 * testsuite/27_io/istream_unformatted.cc (test05): New test.
90 2000-07-07 Benjamin Kosnik <bkoz@gnu.org>
92 * bits/istream.tcc (istream::getline): Minor tweaks.
94 2000-07-07 Phil Edwards <pme@sourceware.cygnus.com>
96 * docs/download.html: Mention gcc_update.
97 * docs/configopts.html: Minor updates.
98 * docs/gccrebuild.html: Ditto.
99 * docs/18_support/howto.html: More tips, explanations, and reminders.
100 * docs/19_diagnostics/howto.html: Ditto.
101 * docs/21_strings/howto.html: Ditto.
102 * docs/24_iterators/howto.html: Ditto.
103 * docs/25_algorithms/howto.html: Ditto.
104 * docs/26_numerics/howto.html: Ditto.
106 2000-07-05 brent verner <brent@rcfile.org>
108 * testsuite/27_io/ifstream_members.cc (test01): Add tests.
109 * testsuite/27_io/ofstream_members.cc (test01): Add tests.
110 * config/c_io_libio.cc (__basic_file::open): Unset
111 ~_IO_DELETE_DONT_CLOSE.
113 2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
115 * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
116 bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
117 Do not paste anything after 'operator' keyword.
119 2000-07-03 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
121 * bits/std_memory.h: Revert.
123 2000-07-03 Brendan Kehoe <brendan@zen.org>
125 * bits/std_complex.h: Fix parens. Format.
127 2000-07-03 scott snyder <snyder@fnal.gov>
129 * bits/locale_facets.tcc (_M_extract): Only figure out the base
130 from the input if base == 0.
131 * testsuite/27_io/istream_extractor_arith.cc: Test reading a
132 number with a leading `0' in hex mode.
134 * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
136 * mkinclosure: Change `==' to `=' in test.
138 2000-07-03 Chip Salzenberg <chip@valinux.com>
140 * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
142 * src/Makefile.in: Regenerate.
144 2000-07-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
145 Ulrich Drepper <drepper@purist.soma.redhat.com>
147 Sync libio to glibc-2.2 current CVS.
148 * libio/_G_config.h: New file.
149 * libio/wfileops.c: New file.
150 * libio/wfiledoalloc.c: New file.
151 * libio/wgenops.c: New file.
152 * libio/iofwide.c: New file.
153 * libio/Makefile.am: Tweaks.
154 * libio/Makefile.in: Regenerate.
155 * libio/gen-params: Remove. Generic replacement for this yet undone.
156 * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
157 libioP.h, stdfiles.c]: Update.
158 * config/c_io_libio.cc: Tweaks.
159 * acinclude.m4: Complete hacks to test wide io.
160 * aclocal.m4: Regenerate.
161 * configure: Regenerate.
162 * src/Makefile.am: Update.
163 * src/Makefile.in: Regenerate.
165 * math/cargl.c: Remove underscores.
167 * bits/locale_facets.h: Tweaks. Start adding iconv details
169 * bits/locale_facets.tcc: Tweaks.
170 * bits/std_cwchar.h: Tweaks.
172 2000-06-29 scott snyder <snyder@fnal.gov>
174 * bits/concept_checks.h
175 (__less_then_comparable_requirement_violation): Only check for <.
176 * testsuite/25_algorithms/lower_bound.cc: New file.
178 2000-06-29 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
180 * testsuite/27_io/ostream_manip.cc (test02): Add tests.
181 * bits/ostream.tcc: Tweak.
182 * bits/std_fstream.h (basic_filebuf::setbuf): Reset
184 * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
186 * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
187 _M_buf_size_opt out here.
188 * bits/char_traits.h (char_traits::eos): Non standard member
189 function, uglify to __eos. Return char_type().
190 * bits/std_ostream.h: Change.
192 * testsuite/27_io/ostream_seeks.cc: New file.
193 * testsuite/27_io/ostream_seeks-1.tst: New file.
194 * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
196 * testsuite/27_io/istream_seeks.cc: New file.
198 2000-06-29 Branko Cibej <branko.cibej@hermes.si>
200 * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
201 _GLIBCPP_RESOLVE_LIB_DEFECTS.
202 (auto_ptr): _M_ptr changed to void*.
203 (suto_ptr::get): Cast _M_ptr to element type.
204 (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
205 (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
206 (auto_ptr::operator*): Likewise.
207 (auto_ptr::operator->): Likewise.
208 (auto_ptr::release): Likewise.
209 (auto_ptr::reset): Likewise.
210 (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
211 (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
212 Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
213 Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
215 2000-06-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
217 * testsuite/27_io/filebuf.cc: Tweak.
218 * testsuite/27_io/filebuf_members.cc (test_01): Fix.
219 * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
221 (__basic_file::basic_file): Clean, add calls similar to
223 (__basic_file::open): Clean.
224 (__basic_file::sys_open): Clean.
226 * bits/std_fstream.h: Revert.
227 * bits/fstream.tcc (filebuf::close()): Revert.
228 (filebuf::basic_filebuf()): Revert.
230 2000-06-27 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
232 Update to SGI STL 3.3
233 * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
234 ext/stl_rope.h, ext/ropeimpl.h: Update.
235 * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
236 bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
237 bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
238 bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
239 bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
240 bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
241 bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
242 bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
243 bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
245 * src/Makefile.am (headers): Add new files.
246 * src/Makefile.in: Regenerate.
247 * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
248 * bits/concept_checks.h: New file.
249 * bits/container_concepts.h: New file.
250 * bits/sequence_concepts.h: New file.
252 2000-06-27 H.J. Lu <hjl@gnu.org>
253 Loren J. Rittle <ljrittle@acm.org>
255 * mkcheck.in: Add support to print standard flags needed to
256 test g++ in build tree. Enhance command line error checking.
258 2000-06-27 Phil Edwards <pme@sourceware.cygnus.com>
260 * docs/install.html: Fix minor typo as reported.
262 2000-06-26 Brent Verner <brent@rcfile.org>
264 * bits/string.tcc (string::rfind): Fix.
265 * testsuite/21_strings/rfind.cc: New file.
267 2000-06-26 Anthony Williams <anthony@anthonyw.cjb.net>
269 * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
271 2000-06-26 Branko Cibej <branko.cibej@hermes.si>
273 * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
275 * mkcheck.in: Make the *.txt and *.tst files writable after
276 copying them to $TEST_DIR.
278 * testsuite/27_io/ostream_inserter_arith.cc: Renamed
279 __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE. Define
280 TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
282 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
284 * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
285 (basic_filebuf::close): Use it.
286 * bits/std_fstream.h (basic_filebuf): Remove default arguments for
288 (basic_filebuf): Add _M_fileno_based data member.
289 As reported by brent verner <brent@rcfile.org>
290 * testsuite/27_io/filebuf_members.cc: New file.
291 * testsuite/27_io/filebuf_members-1.tst: New file.
293 * bits/std_fstream.h: Formatting tweaks.
294 * testsuite/27_io/ofstream_members.cc: New file.
295 * testsuite/27_io/ofstream_members-1.tst: New file.
296 * testsuite/27_io/ifstream_members.cc: New file.
297 * testsuite/27_io/ifstream_members-1.tst: New file.
299 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
300 Ulrich Drepper <drepper@cygnus.com>
302 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
303 that all the freaky stuff like sincos will be around...
305 2000-06-22 Branko Cibej <branko.cibej@hermes.si>
307 * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
309 2000-06-22 Steven King <sxking@uswest.net>
311 * acinclude.m4: Check for sinl, _sinl using 1 parameter.
313 2000-06-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
315 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
316 same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
317 link against libm and don't use -fno-builtins...
318 * math/mathconf.h: Change up builtin macros to new schema.
319 * bits/std_cmath.h: And here. Wheee!
320 * shadow/bits/std_cmath.h: And here.
321 * acconfig.h: Change up builtin macros here.
322 * math/cosf.c: Remove.
323 * math/fabsf.c: Likewise.
324 * math/sinf.c: Likewise.
325 * math/sqrtf.c: Likewise.
326 * math/Makefile.am (EXTRA_DIST): Remove those four files.
327 * math/Makefile.in: Regenerate.
329 2000-06-22 Anthony Williams <anthony@anthonyw.cjb.net>
331 * testsuite/21_strings/find.cc: Patch.
333 2000-06-22 Benjamin Kosnik <bkoz@soma.redhat.com>
335 * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
336 an easy way to get at g++ without having to link in libstdc++.
338 2000-06-21 Benjamin Kosnik <bkoz@soma.redhat.com>
340 Fix alpha, powerpc build failures.
341 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
342 re-write. Need to check for both proper declaration when using a
343 c++ compiler, and "C" linkage when linking. Do both, and if both
344 exist, then define the HAVE_* bits in config.h.
345 (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
346 (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
349 2000-06-20 Anthony Williams <anthony@anthonyw.cjb.net>
351 * bits/string.tcc: Fix find.
352 * testsuite/21_strings/find.cc: Patch.
354 2000-06-20 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
356 * docs/install.html: Update where to get automake, where to get
358 * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
361 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
363 * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
364 Add -Werror-implicit-function-declaration instead.
366 Regenerate with fixed maintainer-tools.
367 * aclocal.m4: Regenerate.
368 * configure: Regenerate.
369 * libio/Makefile.in: Regenerate.
370 * src/Makefile.in: Regenerate.
372 2000-06-19 Russell Davidson <russell@ehess.cnrs-mrs.fr>
374 * testsuite/27_io/istream_extractor_arith.cc: Patch.
375 * bits/locale_factets.tcc: Tweak.
377 2000-06-19 Raja R Harinath <harinath@cs.umn.edu>
379 * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
380 be overridden on the command line for individual files.
382 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
384 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
385 AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
386 building. Use -x c++ instead, which does not attempt to link
389 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
390 not coring when we hit a try/throw block, which was the problem
391 with the linker support...
393 * docs/17_intro/contribute.html: Add bits about getting to the LWG
395 * docs/documentation.html: Rename link to make more accurate and scary.
396 * docs/gccrebuild.html: Edit for clarity as these are no longer
398 * docs/install.html: Add bits about binutils for
399 -ffunction-sections, -fdata-sections, -Wl,--gc-sections
401 * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
402 * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
403 USE_COMPLEX_LONG_DOUBLE.
404 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
405 GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
406 Works around irregularies in powerpc "C" compiler, but a good idea
409 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
410 New. Merge both old compiler bug checks for complex into this.
412 2000-06-19 Anthony Williams <anthony@anthonyw.cjb.net>
414 * testsuite/21_strings/find.cc: Empty strings can be found at all
417 2000-06-19 Branko Cibej <branko.cibej@hermes.si>
419 * testsuite/20_utilities: New directory.
420 * testsuite/20_utilities/auto_ptr.cc: New file.
422 2000-06-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
424 * src/Makefile.am (string_sources): Simplify, assuming that with
425 -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
426 hacking is not necessary.
427 (wstring_sources): Same.
428 (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
430 * src/string-inst.cc: Remove macro blocks.
431 * mkcheck.in (CXX_FLAG): Add bits here.
433 * src/string-inst.cc: Remove iostream-related string instantiations.
434 * src/misc-inst.cc: Add here.
436 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
438 * aclocal.m4: Regenerate.
439 * configure.in: Change up.
440 * configure: Regenerate.
442 2000-06-13 Steven King <sxking@uswest.net>
444 * acinclude.m4: Fixup some of the builtin math tests and add tests for
445 __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
446 * acconfig.h: Add entries for fmod*.
448 2000-06-13 Branko Cibej <branko.cibej@hermes.si>
450 * bits/std_cmath.h: Fix typos in tests (*_FMODFF -> *_FMODF).
451 Test *_MODFF not *_MODF for modf(float, float*).
452 (modf(float, float*)): Remove reference to _C_legacy.
454 2000-06-13 Benjamin Kosnik <bkoz@redhat.com>
456 * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
457 _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
458 superset, and already defined at top level.
459 * aclocal.m4: Regenerate.
460 * configure: Regenerate.
462 * docs/17_intro/contribute.html: Plead with people to use -cp.
464 2000-06-13 Anthony Williams <anthony@anthonyw.cjb.net>
466 * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
468 * testsuite/27_io/filebuf.cc: Changed calls to
469 fpos<>._M_position() to implicit calls to operator streamoff().
470 * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
471 as not needed. Revert, as part of standard.
472 * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
473 call to numpunct<>._M_init() with overrides of the appropriate
476 * testsuite/27_io/stringstream.cc: Removed unnecessary char *
477 pointers from test01, so no need to call base(), which isn't
478 guaranteed to be implemented as iterators may themselves be pointers
479 * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
480 _M_position() - use implicit conversion to streamoff instead
482 2000-06-13 Thomas Holenstein <thomas@hex.ch>
484 * bits/stl_iterator.h: Added inline to operators == to >=.
486 2000-06-13 Brent Verner <brent@rcfile.org>
488 * bits/streambuf.tcc: repaired _S_copy_streambufs()
489 * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
491 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
493 * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
495 * src/locale.cc: Add cwchar include here. Remove incorrect
496 definitions, and stub them out.
497 * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
498 * config/solaris/solaris2.7/ctype.cc (ctype): Same.
499 * config/solaris/solaris2.5/ctype.cc (ctype): Same.
500 * config/newlib/ctype.cc: Same.
501 * config/gnu-linux/ctype.cc: Same.
502 * config/bsd/ctype.cc: Same.
503 * config/aix/ctype.cc: Same.
505 2000-06-12 Branko Cibej <branko.cibej@hermes.si>
507 * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
508 towupper and towlower to convert wide characters.
510 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
512 * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
514 2000-06-08 Branko Cibej <branko.cibej@hermes.si>
516 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Check for
517 sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
518 * aclocal.m4: Regenerate.
519 * configure: Regenerate.
520 * math/cosf.c: New file.
521 * math/fabsf.c: Likewise.
522 * math/sinf.c: Likewise.
523 * math/sqrtf.c: Likewise.
524 * math/Makefile.am (EXTRA_DIST): Add those four files.
525 * math/Makefile.in: Regenerate.
527 2000-06-08 Phil Edwards <pme@sourceware.cygnus.com>
529 * testsuite/26_numerics/complex_inserters_extractors.cc: Need cmath.
531 2000-06-06 Steven King <sxking@uswest.net>
533 * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
534 double and long double. Added defines for HAVE libm math functs for
535 float and long double.
536 * aclocal.m4: Added configure checks for builtin math funcs and libm
537 support for float and long double versions of the math functions.
538 * config.h.in: Added undefs for math functs.
539 * configure: Regenerate.
540 * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
541 _GLIBCPP_HAVE_BUILTIN_*.
542 * bits/std_cmath.h: Added long double support. Use builtins for
543 float, double and long if available, otherwise, use libm versions if
544 availible, otherwise, punt.
545 * shadow/bits/std_cmath.h: ditto
547 2000-06-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
549 * bits/locale_facets.h: Tweak.
550 * src/locale.cc (codecvt<wchar_t>): Tweak.
552 * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x.
553 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
555 * bits/basic_string.h: Move data member up.
556 * src/string-inst.cc: Fix instantiations.
557 * bits/string.tcc: Fix types.
559 2000-06-02 Anthony Williams <anthony@anthonyw.cjb.net>
561 * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
563 2000-06-01 Benjamin Kosnik <bkoz@gnu.org>
565 * bits/std_cwctype.h: Clean.
566 * bits/std_cwchar.h: Clean, remove cruft.
568 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
569 for beginning iconv support.
570 Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
572 * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
573 * bits/limits_generic.h: Remove.
574 * src/gen-num-limits.cc: Same.
576 * src/locale.cc: Tweaks.
578 * bits/char_traits.h: Tweaks.
580 2000-05-31 Russell Davidson <russell@ehess.cnrs-mrs.fr>
582 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
583 exponent, scientific formatting issues.
584 * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
586 2000-05-31 Branko Cibej <branko.cibej@hermes.si>
588 * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
589 and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
591 2000-05-31 Nathan Myers <ncm@cantrip.org>
593 * docs/thanks.html: edit own credits
595 2000-05-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
597 * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
599 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
601 * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
603 2000-05-31 Steven King <sxking@uswest.net>
605 * shadow/time.h: fix typo
606 * shadow/wchar.h: ifdef __USE_GNU for wcsdup
607 * shadow/bits/std_cwchar.h: ditto
608 * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
611 2000-05-26 Phil Edwards <pme@sourceware.cygnus.com>
613 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't
614 available, force --disable. Need to flesh this out; make smarter.
615 * aclocal.m4: Regenerate.
616 * configure: Regenerate.
618 * mkcheck.in: Minor tweaks.
619 * docs/download.html: Fix typo.
621 2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
623 * inclosure: Change to...
626 * mkcshadow: Fix paths to bash.
628 * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
629 * src/Makefile.in: Regnerate.
630 * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
631 (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
632 * aclocal.m4: Regenerate.
633 * mkcheck.in (INC_PATH): Tweak.
635 * configure.in: Enable long long by default.
636 * configure: Regenerate.
638 * mkcheck.in (LIB_PATH): Revert.
640 2000-05-24 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
642 * config/cpu/i486: New directory.
643 * config/cpu/i486/bits: New directory.
644 * config/cpu/i486/bits/atomicity.h: New file.
645 * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
647 * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
649 2000-05-24 Loren J. Rittle <ljrittle@acm.org>
651 * backward/alloc.h (__default_alloc_template): Only expose
652 implementation-specific symbol, if it exists in the
654 * backward/iostream.h (ends): Expose symbol.
655 * backward/strstream.h: New file.
656 * backward/stream.h: New file.
657 * backward/ostream.h: New file.
658 * backward/istream.h: New file.
659 * backward/fstream.h: New file.
660 * backward/complex.h: New file.
661 * backward/iomanip.h: New file.
663 * mkcheck.in (LIB_PATH): Add -R bits.
665 * math/carg.c (carg): Replace __atan2 with atan2.
667 2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
669 * Makefile.am (TAGS): Construct.
670 * Makefile.in: Rengerate.
671 * src/Makefile.am: Tweak.
672 * src/Makefile.in: Tweak.
673 * configure.in: Tweak.
675 * bits/c++config.h: Rename to ...
676 * bits/c++config: This.
677 * mkc++config: Adjust.
680 * m4/lc_message.m4: Merge into acinclude.m4.
681 * m4/mathfcts.m4: Same.
682 * m4/stringfcts.m4: Same.
683 * acinclude.m4: Add here.
684 * configure: Regnerate.
686 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
687 OPTLEVEL. Add FMTFLAGS.
688 * aclocal.m4: Regenerate.
689 * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
690 been disabled due to higher-level Makefiles running amuck over
691 this bit, and add in FMTFLAGS so that formatting is clear.
692 * src/Makefile.in: Regenerate.
693 * configure: Regenerate.
695 * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
698 * docs/download.html: Remove references to Cygwin-specific bits,
699 as this can now be built natively.
700 Update with current information.
702 2000-05-24 Phil Edwards <pme@sourceware.cygnus.com>
704 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): If we can use
705 -fdiagnostics-show-location=once, do so. Expand AC_LANG_* to
706 enclose other tests in this macro, including future ones.
707 * aclocal.m4: Regenerate.
708 * configure: Regenerate.
710 * docs/faq/index.html: Update location of libg++ FAQ.
711 * docs/faq/index.txt: Regenerate.
713 2000-05-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
715 * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
717 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
719 * mkcheck.in: Tweak for Solaris 8. Additional minor output comment.
721 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
723 * acinclude.m4: If the new pragma isn't supported, don't kill -Werror;
724 keep -Werror and add -Wno-unknown-pragma. -Werror Is Good.
725 * aclocal.m4: Regenerate.
726 * configure: Regenerate.
728 2000-05-19 Nathan C. Myers <ncm@cantrip.org>
730 * bits/generic_shadow.h: s/swamp/legacy/
732 2000-05-19 Phil Edwards <pme@sourceware.cygnus.com>
734 * acinclude.m4: Clean up comments on newer checks.
735 (GLIBCPP_CHECK_COMPILER_VERSION): Check for system_header
736 pragma support. Remove WERRORSUPPRESS variable, add WERROR.
737 * aclocal.m4: Regenerate.
738 * configure: Regenerate.
739 * Makefile.in: Regenerate.
740 * libio/Makefile.in: Regenerate.
741 * math/Makefile.in: Regenerate.
742 * src/Makefile.am: Tell make's WERROR to depend on configure's WERROR.
743 * src/Makefile.in: Regenerate.
744 * docs/configopts.html: Document changes to --enable names.
746 2000-05-18 Chip Salzenberg <chip@valinux.com>
748 * bits/ostream.tcc (_S_pad_char): Function template should not be
750 * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
751 * src/string-inst.cc (__destroy_aux): Instantiate for string*.
753 2000-05-18 Nathan C. Myers <ncm@cantrip.org>
755 * mkcshadow: Change C_Swamp to C_legacy.
757 * shadow/bits/*: Same.
762 2000-05-18 Anthony Williams <anthony@anthonyw.cjb.net>
764 * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
766 * src/string-inst.cc (string::_S_find): Same.
768 2000-05-18 Benjamin Kosnik <bkoz@gnu.org>
770 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
771 --enable-cshadow-headers. Add output messages.
772 (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
773 underscores (like the rest of the enable options.) Add output messages.
774 * aclocal.m4: Regenerate.
775 * configure: Regenerate.
776 * configure.in: Touch.
778 2000-05-17 Benjamin Kosnik <bkoz@cygnus.com>
780 * mkcheck.in: Enable shared library testing.
782 2000-05-17 Nathan C. Myers <ncm@cantrip.org>
784 * bits/std_cmath.h: fix sqrt(float)
786 2000-05-16 Loren J. Rittle <ljrittle@acm.org>
788 * bits/std_cassert.h: Use system_header pragma.
789 * bits/std_cctype.h: Likewise.
790 * bits/std_cerrno.h: Likewise.
791 * bits/std_cfloat.h: Likewise.
792 * bits/std_climits.h: Likewise.
793 * bits/std_clocale.h: Likewise.
794 * bits/std_cmath.h: Likewise.
795 * bits/std_csetjmp.h: Likewise.
796 * bits/std_csignal.h: Likewise.
797 * bits/std_cstdarg.h: Likewise.
798 * bits/std_cstddef.h: Likewise.
799 * bits/std_cstdio.h: Likewise.
800 * bits/std_cstdlib.h: Likewise.
801 * bits/std_cstring.h: Likewise.
802 * bits/std_ctime.h: Likewise.
803 * bits/std_cwchar.h: Likewise.
804 * bits/std_cwctype.h: Likewise.
805 * bits/std_exception.h: Likewise.
806 * bits/std_new.h: Likewise.
807 * bits/std_typeinfo.h: Likewise.
808 * shadow/bits/std_cassert.h: Likewise.
809 * shadow/bits/std_cctype.h: Likewise.
810 * shadow/bits/std_cerrno.h: Likewise.
811 * shadow/bits/std_cfloat.h: Likewise.
812 * shadow/bits/std_climits.h: Likewise.
813 * shadow/bits/std_clocale.h: Likewise.
814 * shadow/bits/std_cmath.h: Likewise.
815 * shadow/bits/std_csetjmp.h: Likewise.
816 * shadow/bits/std_csignal.h: Likewise.
817 * shadow/bits/std_cstdarg.h: Likewise.
818 * shadow/bits/std_cstddef.h: Likewise.
819 * shadow/bits/std_cstdio.h: Likewise.
820 * shadow/bits/std_cstdlib.h: Likewise.
821 * shadow/bits/std_cstring.h: Likewise.
822 * shadow/bits/std_ctime.h: Likewise.
823 * shadow/bits/std_cwchar.h: Likewise.
824 * shadow/bits/std_cwctype.h: Likewise.
825 * shadow/bits/wrap_libio.h: Likewise.
826 * shadow/bits/wrap_unistd.h: Likewise.
827 * shadow/sys/cdefs.h: Likewise.
829 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
831 It appears that gcc-2.96 supports the keyword "and" now.
832 * bits/std_ciso646.h: remove.
834 * testsuite/17_intro/header_ciso646.c: enable testing.
835 * src/Makefile.am, src/Makefile.in: remove mention of
838 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
840 * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
842 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
844 * acinclude.m4: Fix typo, switch to decaf...
845 * aclocal.m4: Regenerate.
846 * configure: Regenerate.
848 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
850 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro, stub.
851 * aclocal.m4: Regenerate.
852 * configure.in: Call.
853 * configure: Regenerate.
854 * docs/configopts.html: Stub documentation.
856 2000-05-14 Nathan Myers <ncm@cantrip.org>
858 * mkcshadow: build in more-correct directory, create cshadow/
859 directory if needed, report progress.
861 2000-05-14 LLeweLLyn Reese <llewelly@dbritsch.dsl.xmission.com>
863 * src/Makefile.am: Fix tr commands.
864 * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
865 * src/string-inst.cc: Remove extra instantiation of
866 S::basic_string(S::size_type, C, S::allocator_type const&);
867 * src/string-inst.cc: Remove extra template keyword.
869 2000-05-14 Loren J. Rittle <ljrittle@acm.org>
871 * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
872 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
873 * aclocal.m4: Regenerate.
874 * configure: Regenerate.
875 * */Makefile.in: Regenerate.
877 2000-05-11 Phil Edwards <pme@sourceware.cygnus.com>
879 * acinclude.m4: Fix minor typo with ctypes, add more sanity to
880 enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
881 * aclocal.m4: Regenerate.
882 * configure.in: Non-blank arguments break fewer Linuxes.
883 * configure: Regenerate.
884 * src/Makefile.am: Re-order AC_CXXFLAGS components.
885 * src/Makefile.in: Regenerate.
887 2000-05-10 Benjamin Kosnik <bkoz@redhat.com>
889 * bits/std_cmath.h: Tweaks.
890 * math/mathconf.h: Tweaks and fixes for HP-UX 11.
891 (sqrtf): Define away iff !builtin and !in <math.h>.
895 At some point this directory should be converted to c++, the
896 autoconf tests should be run by the c++ compiler (not c), and
897 <cmath> should be used instead of math.h.
898 Move declaration of nan() here.
899 * math/complex-stub.h (cabsl): Remove nan() declaration.
901 Finish up FreeBSD4.0 support.
902 * config/bsd/ctype.cc: Scope out toupper, tolower calls.
903 * config/generic/ctype.cc: And here.
904 * testsuite/21_strings/char_traits.cc (test02): Guard with
905 _GLIBCPP_USE_WCHAR_T.
907 via Phil Edwards <pme@sourceware.cygnus.com>
908 * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
909 * acconfig.h: And here.
910 * acinclude.m4: Same.
911 * testsuite/27_io/istream.cc: And here.
912 * testsuite/27_io/ostream.cc: And here.
914 2000-05-09 Benjamin Kosnik <bkoz@gnu.org>
916 * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
918 * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
920 * config/generic/bits/ctype_specializations.h (ctype<char>::is):
923 * config/bsd: New directory.
924 * config/bsd/ctype.cc: New.
925 * config/bsd/bits/ctype_base.h (ctype_base): New.
926 * config/bsd/bits/ctype_specializations.h: New.
927 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
929 2000-05-09 Phil Edwards <pme@sourceware.cygnus.com>
931 * acinclude.m4: New macro, GLIBCPP_ENABLE_CXX_FLAGS.
932 * configure.in: Call.
933 * src/Makefile.am: Append results of macro to AC_CXXFLAGS.
934 * aclocal.m4: Regenerate.
936 * src/Makefile.in: Ditto.
937 * docs/configopts.html: Document.
938 * docs/download.html: Fix typo (close quote).
939 * docs/footer.html: Update.
941 2000-05-09 Loren J. Rittle <ljrittle@acm.org>
943 * backward/iostream.h: Expose endl. Guard wide types.
944 * src/Makefile.am (headers): Update list to match files.
945 * src/Makefile.in: Regenerate.
947 2000-05-09 Vadim Egorov <egorovv@mailandnews.com>
948 Benjamin Kosnik <bkoz@gnu.org>
949 Nathan Myers <ncm@cantrip.org>
950 Dietmar Kuehl <dietmar_kuehl@yahoo.com>
952 * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
953 (basic_streambuf::xsputn): Make consistent.
954 * testsuite/27_io/filebuf.cc: Add tests.
956 2000-05-08 Steven King <sxking@uswest.net>
958 * bits/char_traits.h: Use wchar_t utility functions for
959 char_traits<wchar_t> methods.
960 * testsuite/21_string/char_traits.cc: New (test02): test
963 2000-05-08 Benjamin Kosnik <bkoz@cygnus.com>
965 * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
967 * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
968 _M_buf_size based on macro, instead use _M_buf_size_opt.
969 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
970 (basic_streambuf()): Set _M_buf_size_opt.
971 * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
972 instead of _M_buf_size.
974 2000-05-04 Branko Cibej <branko.cibej@hermes.si>
976 * src/complex_io.cc: Don't instantiate inserters and extractors
977 for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
979 2000-05-03 Phil Edwards <pme@sourceware.cygnus.com>
980 Felix Natter <fnatter@gmx.net>
982 * docs/footer.html: Update to see if it takes effect.
983 * docs/thanks.html: More people.
984 * docs/17_intro/headers_cc.txt: Copy from testsuite, since that can't
985 be seen from the web pages. Rename for browser-friendliness...
986 * docs/17_intro/howto.html: ...and update here.
987 * docs/17_intro/porting-howto.html: Changes from Felix.
988 * docs/gccrebuild.html: Mention v3->egcs move.
989 * docs/faq/index.html: Ditto. Also misc tweaks and URL updates.
990 * docs/faq/index.txt: Regenerate.
992 2000-05-01 Benjamin Kosnik <bkoz@redhat.com>
994 * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
997 2000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
999 * bits/char_traits.h: Fix parameter types.
1000 * bits/string.tcc: Avoid traits_type::move.
1002 2000-05-01 Benjamin Kosnik <bkoz@haight.constant.com>
1004 * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
1005 * src/Makefile.in: Regenerate.
1006 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
1008 2000-04-30 Steven King <sxking@uswest.net>
1010 * bits/locale_facets.h: Fix syntax error.
1011 * bits/std_fstream.h: ditto
1013 2000-04-30 Benjamin Kosnik <bkoz@gnu.org>
1015 * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
1017 * mknumeric_limits (trait_name): Fix copyright notice.
1018 * src/gen-num-limits.cc: Explicitly instantiate epsilon and
1019 round_error data members of struct value. This works around
1020 weak-linking issues on AIX, HPUX.
1022 2000-04-29 Phil Edwards <pme@sourceware.cygnus.com>
1024 * docs/download.html: Add link to list of mirror sites.
1026 2000-04-28 Loren J. Rittle <ljrittle@acm.org>
1028 * mkcheck.in: Rely on exit status instead of the presence of a
1029 core file. Added comments on how/where to save core and exe
1030 files. Move shell wildcards outside quotes and fix core path.
1032 2000-04-27 scott snyder <snyder@fnal.gov>
1034 * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
1037 2000-04-26 Nathan C. Myers <ncm@cantrip.org>
1039 * bits/basic_string.h: include <bits/atomicity.h> instead
1040 of <atomicity.h>, and use the uglified names.
1041 * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
1042 uglify names, eliminate dependence on <inttypes.h>.
1043 * src/Makefile.in, src/Makefile.am: refer to correct place
1044 for atomicity.h header.
1046 2000-04-25 Steven King <sxking@uswest.net>
1048 * bits/basic_string.h: Fix syntax error.
1050 2000-04-25 Benjamin Kosnik <bkoz@redhat.com>
1052 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
1054 (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
1055 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
1056 versions to this as copysignl is needed anyway for these targets.
1057 * math/Makefile.in: Regenerate.
1059 * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
1060 * bits/fstream.tcc (underflow): Cast to libio types.
1061 * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
1062 * config/c_io_libio.cc (seekoff): And here.
1064 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
1066 * mkcheck.in: Report compiler version used for test. Find
1067 the built _G_config.h instead of any old installed version.
1069 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
1071 * config/generic/ctype.cc (do_toupper): Remove dependence on
1072 non-portable/non-existent lookup table.
1075 2000-04-24 Nathan Myers <ncm@cantrip.org>
1077 * src/string-inst.cc: More fixing.
1079 2000-04-24 Benjamin Kosnik <bkoz@gnu.org>
1081 * bits/stl_iterator.h: Pedantic fixing.
1082 * bits/std_sstream.h: And here.
1083 * bits/string.tcc: And here.
1085 2000-04-24 Felix Natter <fnatter@gmx.net>
1087 * docs/17_intro/howto.html: Add bits.
1088 * docs/17_intro/porting-howto.html: New file.
1090 2000-04-24 Branko Cibej <branko.cibej@hermes.si>
1092 * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
1093 @libinst_wstring_la@ to libinst-wstring.la when specializing for
1094 wchar_t, to empty string otherwise.
1095 * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
1096 (sources): Remove $(string_sources) and $(wstring_sources).
1097 (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
1098 (libstdc___la_DEPENDENCIES): New.
1099 (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
1101 2000-04-20 Benjamin Kosnik <bkoz@redhat.com>
1103 * bits/std_sstream.h: Tweak formatting.
1104 * bits/std_fstream.h: Make types public.
1106 * testsuite/27_io/streambuf.cc: Fix for alpha.
1108 Brad Garcia <bgarcia@laurelnetworks.com>
1109 * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
1111 * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
1114 2000-04-19 Nathan Myers <ncm@cantrip.org>
1116 * src/string-inst: consolidate _S_create,
1117 destroy, leak, clone members into stringMAIN and stringMUTATE
1119 * src/Makefile.am: Above, and eliminate dependence on
1121 * src/wstring-inst.cc: Remove.
1123 2000-04-18 Benjamin Kosnik <bkoz@redhat.com>
1125 * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
1126 Add flags for specialized rules dealing with instantiations.
1128 * src/string-inst.cc: Add instantiations missing from shared
1129 libraries--see stringEQ, stringCONSC.
1130 * src/Makefile.am (wstring_sources): Add.
1131 (string_sources): Same.
1132 * src/Makefile.in: Regenerate.
1134 * stl/*: Integrate contents of this directory into top-level
1136 * ext/bvector hash_map hash_set rope ropeimpl.h slist
1137 stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
1138 * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
1139 std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
1140 std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
1141 std_stdexcept.h std_strstream.h std_utility.h std_vector.h
1142 stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
1143 stl_deque.h stl_function.h stl_heap.h stl_iterator.h
1144 stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
1145 stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
1146 stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
1147 stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
1148 stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
1149 * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
1150 function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
1151 list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
1152 stack.h tempbuf.h tree.h vector.h: Add.
1153 * README (file): Update.
1154 * docs/documentation.html: README not being found.
1155 * src/Makefile.am (sources): Take out stl directory.
1156 * mkcheck.in (SRC_DIR): And here.
1157 * src/Makefile.in: Regenerate.
1159 2000-04-18 Levente Farkas <lfarkas@mindmaker.hu>
1161 * stl/bits/stl_function.h: Add bits so that const and non-const
1164 2000-04-18 scott snyder <snyder@fnal.gov>
1166 * stl/bits/stl_map.h (class map): Fix default for _Alloc template
1167 parameter. Get rid of use of __STL_DEFAULT_ALLOCATOR and
1168 __STL_LIMITED_DEFAULT_TEMPLATES macros.
1169 * stl/bits/stl_multimap.h (class multimap): Likewise. Get rid of
1170 use of __STL_DEPENDENT_DEFAULT_TMPL macro.
1172 2000-04-18 scott snyder <snyder@fnal.gov>
1174 * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
1177 * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
1178 of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
1179 * stl/ext/hash_set (class hash_set, class hash_multiset):
1181 * stl/bits/stl_function.h (struct constant_unary_fun, struct
1182 constant_binary_fun): Likewise.
1183 * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
1184 * stl/bits/stl_stack.h (class stack): Likewise.
1185 * stl/bits/stl_set.h (class set): Likewise.
1186 * stl/bits/stl_multiset.h (class multiset): Likewise.
1188 * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
1189 class reverse_iterator): Get rid of use of
1190 __STL_LIMITED_DEFAULT_TEMPLATES macro.
1192 * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
1195 * stl/bits/stl_deque.h (class deque): Get rid of use of
1196 __STL_DEFAULT_ALLOCATOR macro.
1197 * stl/bits/stl_list.h (class list): Likewise.
1198 * stl/bits/stl_multiset.h (class multiset): Likewise.
1199 * stl/bits/stl_set.h (class set): Likewise.
1200 * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
1201 * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
1202 * stl/bits/stl_vector.h (class vector): Likewise.
1203 * stl/ext/ropeimpl.h (rotate): Likewise.
1204 * stl/ext/hash_map (class hash_map, class hash_multimap):
1206 * stl/ext/hash_set (class hash_set, class hash_multiset):
1208 * stl/ext/slist (class slist): Likewise.
1209 * stl/ext/stl_bvector.h (class bit_vector): Likewise.
1210 * stl/ext/stl_rope.h (class rope): Likewise.
1211 * src/locale.cc (_Impl): Likewise.
1212 * src/localename.cc (_Impl): Likewise.
1213 * bits/localefwd.h (_Impl): Likewise.
1215 2000-04-18 Phil Edwards <pme@sourceware.cygnus.com>
1217 * docs/install.html: Cleanup, minor changes.
1218 * docs/17_intro/howto.html: Ditto.
1220 2000-04-18 Nathan Myers <ncm@cantrip.org>
1222 * bits/basic_string.h: Remove "inline" from member _S_find.
1224 * src/string-inst.cc: Rewrite to reflect non-inline template
1225 instantiations in string.tcc.
1227 * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
1228 stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
1229 stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
1230 stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
1231 stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
1232 stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
1233 stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
1234 stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
1235 stringNESS.cc, stringSCOPY.cc: Remove.
1236 * src/wstringADDCS.cc, etc: Remove.
1238 Benjamin Kosnik <bkoz@haight.constant.com>
1239 * src/Makefile.am: Modify to reflect above.
1240 * src/Makefile.in: Regenerate.
1242 2000-04-17 Benjamin Kosnik <bkoz@cygnus.com>
1244 * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
1246 2000-04-13 Benjamin Kosnik <bkoz@haight.cygnus.com>
1248 * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
1249 io interface here instead of the libio particulars.
1251 * config/threads-posix.h: Consistency with stl_config.h.
1253 * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
1255 2000-04-13 Loren J. Rittle <ljrittle@acm.org>
1257 * mknumeric_limits: Rename generic type template parameter name
1259 * stl/bits/type_traits.h: Ditto.
1261 2000-04-06 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
1263 * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
1264 it is more useful for --enable-libstdcxx-v3. Use the built
1265 compilers with v3, instead of compilers in PATH, and don't
1266 re-include include directories for checking the install.
1268 2000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
1270 * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
1271 by default when using --enable-libstdcxx-v3.
1272 * src/Makefile.in: Regenerate.
1273 * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
1274 GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
1275 * configure: Regenerate.
1276 * mkcheck.in: Deal with NAMESPACES.
1278 2000-04-05 Petter Urkedal <petter@matfys.lth.se>
1280 * src/cmath.cc: New file...
1281 (pow(*, int)): Define functions...
1282 * src/Makefile.am (sources): ...register file.
1283 * src/Makefile.in: Regenerate.
1284 * bits/std_cmath.h (pow): ...declare functions here, and remove
1287 2000-04-04 Benjamin Kosnik <bkoz@redhat.com>
1289 * acinclude.m4 (GCC_OBJDIR): Tweaks
1291 2000-04-03 Benjamin Kosnik <bkoz@redhat.com>
1293 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
1294 * config/cpu/arm: New directory.
1296 Jesper Skov <jskov@redhat.com>
1297 * config/cpu/arm/atomicity.h: New file.
1299 2000-03-31 Benjamin Kosnik <bkoz@redhat.com>
1301 * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
1302 Remove unused bits. Clean.
1304 2000-03-29 Benjamin Kosnik <bkoz@cygnus.com>
1306 * testsuite/25_algorithms: New directory.
1307 * testsuite/25_algorithms/min_max.cc: New file.
1309 2000-03-29 scott snyder <snyder@fnal.gov>
1311 * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
1312 precision beyond that which we get from numeric_limits::digits10.
1314 * stl/bits/stl_algobase.h (max, min): Don't use comparison
1317 * testsuite/23_containers/bitset_shift.cc: Fix.
1319 * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
1320 temporary to imbue().
1322 * bits/std_fstream.h (sync): Resync libio's idea of the current
1323 file position with the external file.
1325 2000-03-28 Benjamin Kosnik <bkoz@cygnus.com>
1327 * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
1330 * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
1331 attempting calls to it.
1332 * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
1333 ctors. Instead, call _M_init_filebuf ...
1334 (open): Here, as suggested by 27.8.1.3.
1335 * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
1336 properly when initializing cout/cin/cerr.
1338 2000-03-27 Russell Davidson <russell@ehess.cnrs-mrs.fr>
1340 * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
1341 * testsuite/22_locale/ctype_char_members.cc: And here.
1342 * testsuite/27_io/streambuf.cc (streambuf): And here.
1343 * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
1344 * testsuite/27_io/istream_unformatted.cc (test05): And here.
1345 * testsuite/27_io/istream_extractor_arith.cc: And here.
1346 * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
1347 * testsuite/27_io/ios_base_members_static.cc: And here.
1348 * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
1350 2000-03-27 Chris Faylor <cgf@cygnus.com>
1352 * configure.in: Remove setting of CXX if canadian cross.
1353 * configure: Regenerate.
1355 2000-03-27 Nathan Myers <ncm@zembu.com>
1357 * bits/sstream.tcc: Optimize.
1358 * bits/basic_string.h(string::append): Don't inline.
1359 * bits/string.tcc: Move out-of-line.
1361 2000-03-27 Phil Edwards <pme@sourceware.cygnus.com>
1363 * acinclude.m4: (GLIBCPP_CHECK_COMPILER_VERSION) When using <2.96,
1364 define WERRORSUPPRESS so that the inlining warnings won't kill us.
1365 * aclocal.m4: Regenerate.
1366 * configure: Regenerate.
1367 * src/Makefile.am: Use WERRORSUPPRESS for the files that need it.
1368 * src/Makefile.in: Regenerate.
1370 * docs/install.html: Almost complete rewrite.
1372 2000-03-25 Phil Edwards <pme@sourceware.cygnus.com>
1374 * docs/install.html: Explain -Werror problem at "#Werror" mark.
1375 * docs/faq/index.html: Testsuite will die horribly if new libgcc.a
1377 * docs/faq/index.txt: Regenerate.
1379 2000-03-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1381 * src/Makefile.am (libio_headers_install): Fix.
1382 * src/Makefile.in: Regenerate.
1384 2000-03-24 Benjamin Kosnik <bkoz@cygnus.com>
1386 * docs/17_intro/RELEASE-NOTES: Fix typos.
1387 * docs/index.html: Update.
1388 * docs/17_intro/BUGS: Update.
1389 * docs/status.html: Update for 2.90.8 release.
1391 2000-03-23 Phil Edwards <pme@sourceware.cygnus.com>
1393 * Makefile.am: Better error message when missing libgcc2.ready.
1394 * Makefile.in: Regenerate.
1395 * acinclude.m4: Fastidious nitpicking reformatting.
1396 * aclocal.m4: Regenerate.
1397 * configure: Regenerate.
1398 * mkcheck.in: Must use same namespace settings as the library being
1399 tested. Also log ST_FLAG, since it's being passed.
1400 * docs/install.html: Add brief chunk on configuration.
1401 * docs/17_intro/RELEASE-NOTES: Fix minor Cygwin typo.
1402 * docs/23_containers/howto.html: Mention MT-safe string.
1403 * docs/faq/index.html: Minor updates.
1404 * docs/faq/index.txt: Regerarate.
1406 2000-03-22 Benjamin Kosnik <bkoz@cygnus.com>
1408 * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
1410 * bits/fstream.tcc (seekoff): Sync.
1412 * testsuite/27_io/ostream_unformatted.cc: New file.
1413 * testsuite/27_io/stringbuf.cc: Fix.
1414 * testsuite/27_io/istream_unformatted.cc (test04): Fix.
1416 * config/newlib/bits/ctype_base.h (ctype_base): Fix.
1417 * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
1419 * src/complex_io.cc (operator>>complex): Tweak.
1421 * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
1422 <inttypes.h> does not exist.
1423 * config/cpu/sparc/sparc64/atomicity.h: Same.
1424 * config/cpu/sparc/sparc32/atomicity.h: Same.
1425 * config/cpu/powerpc/atomicity.h: Same.
1426 * config/cpu/i386/atomicity.h: Same.
1427 * config/cpu/generic/atomicity.h: Same.
1428 * configure.in: Check for inttypes.h.
1429 * configure: Regnerate.
1431 2000-03-21 Benjamin Kosnik <bkoz@cygnus.com>
1433 * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
1435 * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
1437 * docs/17_intro/RELEASE-NOTES (New): Add bits.
1439 * configure.in: Move AC_CHECK_HEADERS to a point where we know we
1440 are compiling natively.
1442 * libio/*: Update to CVS libio from egcs.
1444 2000-03-21 Phil Edwards <pme@sourceware.cygnus.com>
1446 * docs/download.html: Document use of -z9 for CVS.
1447 * docs/index.html: Add target date (no link) for future snapshot.
1449 2000-03-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1451 * bits/slice_array.h: Rename generic type template parameter name
1453 * bits/mask_array.h: Ditto
1455 2000-03-20 Benjamin Kosnik <bkoz@cygnus.com>
1457 * *: Change copyright holder from "Cygnus Solutions" to "Free
1458 Software Foundation, Inc."
1460 * docs/configopts.html: Explain what "hella versions" means.
1461 * docs/install.html: Some tweaks--nice job on this Phil.
1462 * docs/documentation.html: Add a direct link to configuration options.
1464 * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
1465 * docs/17_intro/RELEASE-NOTES (New): Add.
1466 * bits/c++config.h (__GLIBCPP__): Bump version.
1468 * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
1469 type to match prototype.
1471 2000-03-20 Phil Edwards <pme@sourceware.cygnus.com>
1473 * docs/install.html: Update for new funky build procedure. Move
1474 description of 'configure' options to...
1475 * docs/configopts.html: ...here. New file.
1476 * docs/17_intro/howto.html: Updates for new snapshot.
1477 * docs/20_util/howto.html: Ditto.
1478 * docs/21_strings/howto.html: Ditto.
1479 * docs/21_strings/stringtok_std_h.txt: Fix example typos.
1480 * docs/22_locale/howto.html: Ditto.
1481 * docs/23_containers/howto.html: Ditto.
1482 * docs/faq/index.html: Ditto.
1484 2000-03-18 Petter Urkedal <petter@matfys.lth.se>
1485 Benjamin Kosnik <bkoz@gnu.org>
1487 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
1489 * aclocal.m4: Regenerate.
1490 * configure: Regenerate.
1492 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
1493 scott snyder <sss@karma.fnal.gov>
1495 * config/c_io_libio.h: Add __c_lock.
1496 * config/threads-no.h: Same here.
1497 * config/threads-posix.h: Add __mutext_type typedef.
1498 * config/c_io_libio.cc: basic_file ctor takes lock arg.
1499 * bits/basic_file.h: Ctor takes lock arg.
1500 * bits/std_fstream.h: Add _M_lock.
1501 * bits/fstream.tcc: Supply it to basic_file ctor.
1503 * mkcheck.in (resultstext): Change [[ to [.
1505 * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
1507 * bits/locale_facets.h: Tweak.
1509 * stl/bits/stl_config.h: Fix defines.
1511 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
1513 * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
1515 * configure: Regenerate.
1516 * aclocal.m4: Regnerate.
1518 2000-03-16 Nathan Myers <ncm@zembu.com>
1520 * bits/string.tcc: Add MT support.
1521 * bits/basic_string.h: Same.
1523 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
1525 * configure.in: Make --enable-namespaces and -libgcc-rebuild=../..
1527 * configure: Regenerate.
1529 * config/solaris/solaris2.7/ctype.cc: Fix unsigned/signed comparison.
1531 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
1533 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): If Sol2.5 ctype is found, keep
1534 checking for 2.[67]. (GLIBCPP_ENABLE_RELIBGCC): No longer ignore
1535 any defaults passed in.
1536 * aclocal.m4: Regenerate.
1538 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
1540 * mkcheck.in: Report total successes and failures.
1542 2000-03-15 Benjamin Kosnik <bkoz@cygnus.com>
1544 * config/cpu: New directory, intended to be used to provide
1545 cpu-specific configuration files. In particular, assembly language
1546 primitives for thread safety.
1547 * config/cpu/alpha: Populate.
1548 * config/cpu/alpha/atomicity.h: New file.
1549 * config/cpu/arm: Populate.
1550 * config/cpu/generic: Populate.
1551 * config/cpu/generic/atomicity.h: New file.
1552 * config/cpu/hppa: Populate.
1553 * config/cpu/i386: Populate.
1554 * config/cpu/i386/atomicity.h: New file, take from i486.
1555 * config/cpu/m68k: Populate.
1556 * config/cpu/mips: Populate.
1557 * config/cpu/powerpc: Populate.
1558 * config/cpu/powerpc/atomicity.h: New file.
1559 * config/cpu/sparc: Populate.
1560 * config/cpu/sparc/sparc32: Populate.
1561 * config/cpu/sparc/sparc64: Populate.
1562 * config/cpu/sparc/sparc32/atomicity.h: New file.
1563 * config/cpu/sparc/sparc64/atomicity.h: New file.
1565 * src/Makefile.am (myinstallheaders): Add install routines.
1566 * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
1568 * configure.in: Add.
1570 * config/default: Adopt glibc naming conventions, and so move to
1571 * config/generic: Here.
1572 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
1574 2000-03-15 Bill Thompson <billt@toast.net>
1576 * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
1578 2000-03-14 Phil Edwards <pme@sourceware.cygnus.com>
1580 * docs/17_intro/howto.html: Add missing "TOC" entry, and new section.
1582 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
1583 * aclocal.m4: Regenerate.
1584 * configure: Regenerate.
1586 2000-03-13 scott snyder <snyder@fnal.gov>
1587 Jason Merrill <jason@cygnus.com>
1589 * bits/locale_facets.h (class ctype, class ctype<char>, class
1590 ctype<wchar_t>): More mask fixes.
1591 * testsuite/22_locale/ctype.cc: Test for the problem.
1593 2000-03-13 Benjamin Kosnik <bkoz@cygnus.com>
1595 * acconfig.h: Add bits.
1596 * configure.in: Move AM_PROG_LIBTOOL up in file.
1597 Tweak cross compiling info.
1598 * configure: Regenerate.
1600 * mknumeric_limits (XCOMPILE): Echo compilation line for
1603 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
1604 * aclocal.m4: Regenerate.
1605 * configure: Regenerate.
1606 * config/aix/ctype.cc (ctype): Tweak.
1607 * config/aix/bits/ctype_base.h (ctype_base): Tweak.
1608 * config/aix/bits/ctype_specializations.h: New file.
1610 2000-03-10 scott snyder <snyder@fnal.gov>
1612 * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator
1614 * testsuite/23_containers/vector_modifiers.cc (test01): Add a
1615 regression test for the problem.
1617 2000-03-09 Benjamin Kosnik <bkoz@fidel.cygnus.com>
1619 * testsuite/27_io/streambuf.cc (class testbuf): Same here.
1620 * bits/fpos.h: And here.
1621 * bits/std_ostream.h: Same here.
1622 * bits/std_istream.h: Same here.
1623 * bits/basic_ios.h: Same here.
1624 * bits/std_fstream.h: Same here.
1625 * bits/sbuf_iter.h (std): Here too.
1626 * bits/std_sstream.h: Make types public.
1628 * src/misc-inst.cc: Use size_t instead of unsigned int.
1629 * bits/locale_facets.tcc (_S_format): For now, cast to char. I
1630 suppose this should be ctype::narrow... all the ctype<wchar_t>
1631 stuff needs to be cleaned up.
1633 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
1635 * docs/gentop: Remove entire directory, finally.
1637 2000-03-09 scott snyder <snyder@fnal.gov>
1639 * bits/std_cmath.h (modf): Fix pointer overrun.
1640 * testsuite/26_numerics/c_math.cc (test04, main): Add a regression
1641 test for the problem.
1643 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
1645 Looks like changes to the #include'd files must be followed by a
1646 change to the #include'ing files to take effect. Caveat emptor.
1647 * docs/header.html: New file, for server-side include.
1648 * docs/footer.html: New file, for server-side include.
1649 * docs/documentation.html: Change to use SSI.
1650 * docs/download.html: Ditto.
1651 * docs/index.html: Ditto.
1652 * docs/mail.html: Ditto.
1653 * docs/status.html: Ditto.
1654 * docs/thanks.html: Ditto, plus minor updates.
1655 * docs/how.html: Remove.
1657 2000-03-09 Benjamin Kosnik <bkoz@gnu.org>
1659 Preliminary alpha-linux support.
1660 * src/locale.cc (ctype<wchar_t>): Use correct types...
1661 * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
1662 (ctype<wchar_t>): Same.
1663 * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
1664 types match for table_size (size_t).
1666 * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
1667 as per char specialization.
1668 * config/*/ctype.cc: Same.
1670 2000-03-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1672 * bits/locale_facets.h (_Ctype<>::mask): Import from base class
1673 _Ctype_nois<>. Template base classes are never examinated in
1674 first-phase name-lookup.
1676 2000-03-08 Benjamin Kosnik <bkoz@gnu.org>
1678 Add Solaris 2.5.1 support.
1679 * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
1680 * config/solaris/solaris2.5/ctype.cc: Fixup.
1681 * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
1682 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
1683 * aclocal.m4: Regenerate.
1684 * configure: Regenerate.
1686 * config/default/ctype.cc (ctype): Fixup.
1688 2000-03-07 Benjamin Kosnik <bkoz@blues.cygnus.com>
1690 * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
1691 * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
1694 2000-03-07 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1696 * bits/cpp_type_traits.h: Expand on this file purpose.
1698 2000-03-06 Benjamin Kosnik <bkoz@gnu.org>
1700 * bits/locale_facets.h (ctype<char>): Remove static members, and
1701 re-work initialization code.
1702 (ctype<wchar_t>): Same.
1703 Move _S_touppper to _M_toupper and initialize in ctor.
1704 Move _S_tolower to _M_tolower and initialize in ctor.
1705 Move _S_table to _M_ctable and intialize in ctor.
1706 * bits/locale_facets.h (std): And here.
1707 * src/locale.cc (std): Tweak.
1708 * config/gnu-linux/ctype.cc: Change initialization here.
1709 * config/newlib/ctype.cc: And here.
1710 * config/solaris/solaris2.7/ctype.cc: And here.
1711 * config/solaris/solaris2.6/ctype.cc: And here.
1713 * bits/localefwd.h: Tweak.
1714 * bits/std_streambuf.h: Tweak formatting.
1716 * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
1718 2000-03-05 Chip Salzenberg <chip@valinux.com>
1720 * src/misc-inst.cc (basic_iostream<>): Instantiate.
1722 2000-03-02 Phil Edwards <pme@sourceware.cygnus.com>
1723 Kevin Atkinson <kevinatk@home.com>
1725 Initial grab of SGI's strstream implementation with minor
1727 * src/strstream.cc: New file.
1728 * std/strstream: New file.
1729 * stl/bits/std_strstream.h: New file.
1730 * bits/std_streambuf.h: Add public access.
1731 * src/Makefile.am: Add strstream sources to list of dependancies.
1732 * src/Makefile.in: Regenerate.
1734 2000-03-03 2000 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1736 * bits/valarray_meta.h: Fix typo.
1738 2000-03-02 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
1739 Chip Salzenberg <chip@valinux.com>
1740 Petter Urkedal <petter@matfys.lth.se>
1742 * src/Makefile.am (myinstallheaders): Hack to avoid
1744 * src/Makefile.in: Regenerate.
1746 2000-03-02 Chip Salzenberg <chip@valinux.com>
1748 * libio/Makefile.an, math/Makefile.an, src/Makefile.am
1749 (LINK): Put quotes around "$(CC)" for libtool link mode,
1750 so libtool will use "-B" options during GCC bootstrap.
1751 * */Makefile.in: Regenerate.
1753 2000-03-02 Petter Urkedal <petter@matfys.lth.se>
1755 * config/c_io_libio.h: Enclose it all in ::std.
1756 * bits/basic_string.h (basic_string<>): Make types and
1758 * mkc++config: Truncate output file before writing.
1760 2000-03-01 Benjamin Kosnik <bkoz@gnu.org>
1762 * math/cabsf.c (__mycabsf): Rename to cabsf.
1763 * math/cabs.c (__mycabs): Rename to cabs.
1765 2000-02-29 LLeweLLyn Reese <llewelly@198.dsl.xmission.com>
1767 * bits/basic_string.h: Move declarations of __out_of_range(),
1768 __length_error() and accompanying macros ...
1769 * bits/exception_support.h: here. (Newly created file).
1770 * bits/basic_string.h: #include <bits/exception_support.h>
1771 * stl/bits/stl_vector.h: #include <bits/exception_support.h>
1772 * src/Makefile.am (headers): Add.
1773 * src/Makefile.in: Regenerate.
1775 2000-02-29 Benjamin Kosnik <bkoz@cygnus.com>
1777 * bits/cpp_type_traits.h: Rename structs so they don't clash with
1779 * bits/valarray_array.h: Synch. Fix typos.
1781 * libio/Makefile.am: Change to only compile source files that
1782 config/c_io_libio.cc actually needs.
1783 * libio/Makefile.in: Regnerate.
1784 * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
1785 floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
1786 ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
1787 iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
1788 iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
1789 iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
1790 ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
1791 iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
1792 ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
1793 istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
1794 pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
1795 strops.c strstream.h: Delete.
1797 * bits/basic_file.h: Stub out or delete unused bits in this
1799 (filepos_beg): Remove.
1800 (filepos_cur): Remove.
1801 (filepos_valid): Remove.
1802 * config/c_io_libio.cc: Resynch with the changes to basic_file.
1804 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1806 * bits/cpp_type_traits.h: Correct typo.
1808 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
1810 * bits/cpp_type_traits.h: New file.
1812 * bits/valarray_array.h: Tweak. #include <bits/cpp_type_traits.h>
1813 Improve array construction.
1814 (_Array_default_ctor): New dispatcher class.
1815 (__valarray_default_construct): New function.
1816 (_Array_copy_ctor): New dispatcher class.
1817 (__valarray_copy_construct): New function.
1818 (_Array<>::free_data): Remove.
1820 * src/Makefile.am (headers): Add cpp_type_traits.h
1821 * src/Makefile.in: Regenerate.
1823 2000-02-28 Benjamin Kosnik <bkoz@cygnus.com>
1825 Prune libio directory to match files in libio/Makefile.
1826 * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
1827 stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
1828 streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
1829 strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
1830 stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
1831 stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
1832 stdstreams.cc: Remove.
1833 * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
1834 * libio/iofflush_u.c: Remove.
1836 * libio/dbz: Remove.
1837 * libio/include: Remove.
1838 * libio/stdio: Remove.
1839 * libio/tests: Remove.
1840 * libio/testsuite: Remove.
1842 * config/c_io_libio.cc: Add fcntl.h include for Solaris.
1844 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
1845 * configure.in: Replace 'grep -e' with 'grep' for Solaris.
1846 * configure: Regenerate.
1848 2000-02-25 Benjamin Kosnik <bkoz@gnu.org>
1850 Abstract out the underlying "C" io bits.
1851 * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
1852 * stl/bits/stl_string_fwd.h: Remove <stddef> include.
1853 * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
1855 * stl/bits/stl_config.h: Don't include _G_config.h.
1857 * bits/basic_file.h: Allow for non-inheritance based __basic_files.
1858 * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
1859 * config/c_io_libio.cc: Tweak.
1861 * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
1862 * src/Makefile.in: Regenerate.
1863 * Makefile.am (AM_MAKEFLAGS): Define includedir so that
1864 prefix/include files will be picked up.
1865 * Makefile.in: Regenerate.
1866 * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
1867 * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
1869 * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
1870 * bits/fpos.h: And here.
1871 * bits/basic_file.h (get_fileno): Move definition from ...
1872 * src/basic_file.cc (std): To here.
1873 * bits/fpos.h: Move types for streamoff, streampos to..
1874 * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
1875 * config/c_io_libio.h: ...here.
1876 (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
1877 SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
1878 UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
1879 FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
1880 abstract out bits in ios_base.
1881 * bits/ios_base.h: Re-macrofy.
1882 * src/basic_file.cc : Rename, move to
1883 * config/c_io_libio.cc: Here.
1884 * config/c_io_libio.h: New file. Include libio.
1885 * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
1886 * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
1887 * configure: Regenerate.
1888 * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
1889 (generated_headers): Add c++io.h
1890 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
1891 underlying "C" io library.
1892 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
1893 GLIBCPP_ENABLE_CSTDIO.
1895 * configure.in: Add configure bits for cross compiling non-newlib
1897 GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
1898 target, as we assume g++ support is not the limiting factor.
1899 GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.
1900 * configure: Regenerate.
1902 2000-02-22 Benjamin Kosnik <bkoz@cygnus.com>
1904 * Makefile.am (INTERFACE): Define.
1905 * Makefile.in: Regenerate.
1906 * libio/ChangeLog: Add entry.
1908 2000-02-21 Benjamin Kosnik <bkoz@cygnus.com>
1910 * docs/install.html: Update install directions.
1912 * docs/status.html: Fix sidebar to be consistent.
1913 * docs/thanks.html: Same.
1914 * docs/links.html: Same.
1915 * docs/mail.html: Same.
1916 * docs/download.html: Same.
1918 * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
1919 kill the macro BUFSIZ. I think the solaris fails lie elsewhere
1920 however, in the ctype_char_members.cc fail (for instance.)
1921 * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
1922 that do not have wchar_t enabled.
1923 * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
1925 * testsuite/27_io/iostream_objects.cc: And here.
1927 * libio/gen-params (CONFIG_NM): Specifically add in nm as the
1930 2000-02-18 Benjamin Kosnik <bkoz@haight.constant.com>
1931 Tom Tromey <tromey@cygnus.com>
1933 * configure.in: Manually add MULTISUBDIR.
1934 * configure: Regenerate.
1935 * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
1936 "Eww" hacks to get multilib installs working correctly.
1937 ($(headers): Test for MULTISUBDIR before installing.
1938 * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
1939 have configure hack it in.
1940 * Makefile.in: Regenerate.
1941 * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording.
1942 Add enabling bits for native Cygwin ctypes, and other newlib-based
1945 2000-02-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
1947 * mkc++config (OUT_H): Remove EOF in cygwin.
1948 * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
1950 Tom Tromey <tromey@cygnus.com>
1951 * src/Makefile.am: Tweaks for installing multilibs.
1953 2000-02-17 Benjamin Kosnik <bkoz@cygnus.com>
1956 (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
1957 Add USE_LIBDIR bits here, not...
1958 * src/Makefile.in: Regenerate.
1959 * Makefile.am: ...here.
1960 * Makefile.in: Regenerate.
1962 2000-02-17 Benjamin Kosnik <bkoz@gnu.org>
1964 * acinclude.m4 (LIBS): Fix typos.
1965 * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
1966 _GLIBCPP_BUGGY_COMPLEX for crosses.
1967 * src/Makefile.am (std_headers): Add libio.h as install include,
1969 * src/Makefile.in: Regenerate.
1971 * mkcheck.in: Add bits to set CXX to cross compiler.
1973 * src/complex_io.cc: Tweak.
1974 * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
1975 * configure: Regenerate.
1977 * config/newlib/ctype.cc: Tweaks.
1978 * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
1980 * src/complex_io.cc (operator>>(istream, complex): Define out if
1983 2000-02-16 Benjamin Kosnik <bkoz@cygnus.com>
1985 * config/newlib/bits/ctype_base.h: Correct _S_table.
1987 Reconfigure ctype support for "C" libraries that don't use arrays.
1988 * testsuite/22_locale/ctype_char_members.cc: New file. Test for
1989 basic ctype<char> functionality.
1990 * src/locale.cc: Move host-specific ctype functions that are not
1991 inlines to config/*/ctype.cc files.
1992 (ctype<char>::do_tolower): For instance.
1993 (ctype<char>::do_toupper): For instance.
1994 (ctype<wchar_t>::do_tolower): For instance.
1995 (ctype<wchar_t>::do_toupper): For instance.
1996 * config/gnu-linux/ctype.cc: Modify.
1997 * config/default/ctype.cc: Modify.
1998 * config/newlib/ctype.cc: Modify.
1999 * config/solaris/solaris2.6/ctype.cc: Modify.
2000 * config/solaris/solaris2.7/ctype.cc: Modify.
2002 * bits/locale_facets.h (ctype<char>::is): Mark inline, move
2004 (ctype<char>::scan_is): Here too.
2005 (ctype<char>::scan_not): Here too.
2006 Move out of line defs to config/*/bits/ctype_specializations.h.
2007 * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
2008 * config/default/bits/ctype_specializations.h: ...here. New file.
2009 * config/newlib/bits/ctype_specializations.h: ...here. New file.
2010 * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
2011 * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
2012 * src/Makefile.am (headers): Add ctype_specializations.h.
2013 * src/Makefile.in: Regenerate.
2015 Aaron Weiss <weiss@clearway.com>
2016 * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
2017 CONFIG_NM for Solaris builds.
2018 * Makefile.in: Regenerate.
2020 * src/locale.cc: Tweak formatting.
2022 2000-02-15 Benjamin Kosnik <bkoz@cygnus.com>
2024 Jim Parsons <parsons@clearway.com>
2025 * testsuite/27_io/istream_unformatted.cc (test06): Add test.
2026 * bits/istream.tcc (read): Set failbit if !good(). Don't increment
2030 Michel Decima <michel.decima@cnet.francetelecom.fr>
2031 * testsuite/27_io/streambuf.cc: Add test.
2032 * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
2035 * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
2036 OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
2037 will work correctly, for instance.
2038 * src/Makefile.in: Regenerate.
2040 * bits/locale_facets.h: Fix merge error.
2041 (num_put::put(unsigned long long): And here.
2042 * mknumeric_limits (trait_name): Same.
2044 2000-02-15 Chip Salzenberg <chip@valinux.com>
2046 Support 'configure --enable-long-long'.
2047 * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
2048 * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
2049 * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add. Default to undef.
2050 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
2051 * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
2053 * aclocal.m4: Regenerate.
2054 * config.h.in: Regenerate.
2055 * configure: Regenerate.
2057 2000-02-15 Chip Salzenberg <chip@valinux.com>
2059 Improve (complete?) 'long long' support.
2060 * mknumeric_limits: Call $CXX with $CPPFLAGS. Define statics
2061 for {,unsigned} long long if the limits header declares them.
2062 * src/gen-num-limits.cc: Include <bits/c++config.h> early.
2063 (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
2064 (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
2065 * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
2066 (num_put<>::put(..., long long)): Likewise.
2067 (num_put<>::put(..., unsigned long long)): Likewise.
2068 * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
2069 Templatize last parameter to support 'long long'.
2070 (num_put<>::put(...)): Call _S_format with new name.
2071 (num_put<>::put(..., long long)): Define.
2072 (num_put<>::put(..., unsigned long long)): Likewise.
2073 * src/locale-inst.cc (_S_format): Instantiate under new name.
2075 2000-02-15 Petter Urkedal <petter@matfys.lth.se>
2077 * src/complex.cc (operator<<, operator>>): Moved from here...
2078 * src/complex_io.cc: ...to new file.
2079 (operator>>): Stub replaced by the real thing.
2080 * src/Makefile.am (sources): Inserted complex_io.cc.
2081 * src/Makefile.in: Regenerate.
2082 * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
2084 2000-02-14 Benjamin Kosnik <bkoz@gnu.org>
2086 Add in ctype information for newlib "C" libraries.
2087 * config/newlib: New directory
2088 * config/newlib/bits/ctype_base.h: New file.
2089 * config/newlib/ctype.cc: New file.
2091 * ctype/config/linux/*: Rename, move to...
2092 * ctype/config/gnu-linux/*: Here.
2094 Finish off multilib work.
2095 * configure.in: Don't set CXX if not Canadian cross.
2096 * configure: Regenerate.
2097 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
2098 * aclocal.m4: Regenerate.
2099 * config.h.in: Regenerate.
2101 * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
2102 the top-level gcc directory now.
2103 * mkinstalldirs: Remove.
2106 * ltmain.sh: Remove.
2107 * config.guess: Remove.
2108 * config.sub: Remove.
2110 2000-02-13 Benjamin Kosnik <bkoz@cygnus.com>
2112 * configure.in (glibcpp_basedir): Add glibcpp_basedir.
2113 * Makefile.am: Move mutlilib stuff to src/Makefile.am.
2114 * Makefile.in: Regenerate.
2115 * src/Makefile.am: Add multilib bits.
2116 * src/Makefile.in: Regenerate.
2118 2000-02-12 Benjamin Kosnik <bkoz@cygnus.com>
2120 * configure.in: Clean, add some multilib support.
2121 * configure: Regenerate.
2122 * configure.host: New file.
2124 * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and
2125 roll a new function, checks for presence of libio.
2126 GLIBCPP_CHECK_COMPILER_VERSION: Same.
2127 GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
2128 GLIBCPP_CHECK_MATH_SUPPORT: Same.
2129 GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
2130 GLIBCPP_CHECK_LIBIO: Same.
2131 GLIBCPP_CHECK_CTYPE: Same.
2132 * aclocal.m4: Regenerate.
2133 * config.h.in: Regenerate.
2135 * Makefile.am: Tweaks.
2136 * Makefile.in: Regenerate.
2138 2000-02-11 Benjamin Kosnik <bkoz@cygnus.com>
2140 * configure.in: Make outputing the libio/Makefile
2141 conditional. Haha, yeah right. Anyway, we instead do this thing
2142 where if libio is found, then we build a null library, as there is
2143 no point in duplicating the found libio.
2144 * Makefile.am: Tweak.
2145 * Makefile: Regenerate.
2146 * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
2147 are happy happy happy.
2148 * libio/Makefile.am: Regenerate.
2149 * libio/gen-params: New file.
2150 * src/Makefile.am: Make libio.la non-conditional, as it is now a
2151 null library if it's not needed. At least we are being consistent,
2152 if not as elegant as we could be.
2153 * src/Makefile: Regenerate.
2155 2000-02-10 Benjamin Kosnik <bkoz@gnu.org>
2157 * Makefile.am (SUBDIRS): Add libio again.
2158 * Makefile.in: Regenerate.
2159 * configure.in (BUILD_LIBIO_INCLUDE): And here.
2160 (AC_OUTPUT): Generate libio/Makefile again.
2161 * configure: Regnerate.
2162 * src/Makefile.am (libstdc___la_LIBADD): Change path so that
2163 libio.la is referring back to the libio subdir again.
2164 (LIBIO_INCLUDES): And here.
2165 * src/Makefile.in: Regenerate.
2167 2000-02-09 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2169 * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
2171 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2173 * bits/valarray_array.h (<bits/std_new.h>): #include.
2174 (__valarray_get_memory): New function.
2175 (__valarray_release_memory): Likewise.
2176 (__valarray_default_construct): New functions.
2177 (__valarray_fill_construct): New function.
2178 (__valarray_copy_construct): New funstions.
2179 (__valarray_destroy_elements): New function.
2181 * bits/valarray_array.tcc (__valarray_copy_construct): New
2184 * bits/std_valarray.h (valarray<>::valarray): Use
2185 __valarray_get_memory and __valarray_fill_construct,
2186 __valarray_copy_construct, __valarray_default_construct to
2187 properly construct valarrays.
2188 (valarray<>::~valarray): Use __valarray_destroy_elements to
2189 destroy elements and __valarray_release_memory to return memory.
2190 (valarray<>::shift): Tweak.
2191 (valarray<>::cshift): Likewise.
2192 (valarray<>::resize): Robustify.
2194 2000-02-09 Benjamin Kosnik <bkoz@cygnus.com>
2196 * mknumeric_limits (XCOMPILE): Add support for cross compiling.
2197 * bits/limits_generic.h: New file, defaults.
2198 * src/limits_generic.cc: New file, defaults.
2199 * configure.in (LIBS): Run mknumeric_limits at configure time.
2200 * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
2201 HAVE_LC_MESSAGES, tidy, clean, etc.
2202 * src/Makefile.am (geberated_sources): Remove.
2204 * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
2205 (_IO_off_t, _IO_ssize_t)
2207 * src/complex.cc: Use glibc's <complex.h> if
2208 possible. . . apparently this was not being done before. Include
2210 (abs): Enable cabs if it's around, instead of mycabs.
2211 * src/complexf.cc (FCT): Add global scope to match complex.cc.
2212 * src/complexl.cc (FCT): Same.
2213 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
2214 (libmath_la_SOURCES): And here.
2215 * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
2216 * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
2217 * math/complex-stub.h: Move c_log declarations into. . .
2218 * math/mathconf.h: Here. This is because glibc's <complex.h>
2219 declares cclog, not c_log. The case of the dueling standards. . .
2220 * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
2221 * math/Makefile.am: Change.
2222 * math/nan.c (nan): Change signature.
2223 * math/mathconf.h (NAN): Same.
2224 * math/complex-stub.h (nan): And here.
2226 * Makefile.am (rebuild-stamp): Remove libio and libio
2227 dependancies. Plan to take out libio subdir and just merge with
2228 libio in top level gcc directory. Of course, this assumes there is
2229 a libio in the top level directory (ie ../src_dir). This will
2230 probably change the way this library is configured by default.
2233 2000-02-09 Chip Salzenberg <chip@valinux.com>
2235 * localefwd.h (locale): Make public: facet, id, category.
2237 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2239 * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
2241 * acinclude.m4: Patch only once!
2243 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2245 * testsuite/26_numerics/buggy_complex.cc: New file.
2247 2000-02-05 Petter Urkedal <petter@matfys.lth.se>
2249 * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
2250 on the 1999-11-21 entries by Mumit Khan.
2251 * configure.in: Use.
2252 * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
2253 * bits/std_complex.h: Use.
2255 2000-02-04 Philip Martin <pm@corris.dircon.co.uk>
2257 * stl/bits/stl_algobase.h: Add traits based dispatch for
2258 __normal_iterator in the copy_backward()algorithm
2259 * stl/bits/stl_vector.h: Reduce use of __normal_iterator
2262 2000-02-04 Mumit Khan <khan@xraylith.wisc.edu>
2264 * src/gen-num-limits.cc (signal_handler): Work around signal
2265 handling problem on Cygwin.
2266 Thanks to Chris Faylor <cgf@cygnus.com>.
2268 2000-02-03 Benjamin Kosnik <bkoz@cygnus.com>
2270 * configure.in: Add (preliminary) support for cross compiles and
2272 Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
2273 compilation freaks on this.
2274 * configure: Regenerate.
2275 * src/Makefile.am: Add support for cross compiles.
2276 * src/Makefile: Regenerate.
2277 * Makefile.am: Add support for cross compiles.
2278 * Makefile.in: Regenerate.
2280 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
2282 * configure.in (LIBS): Remove unused subdirs.
2283 * configure: Regenerate.
2284 * Makefile.am (SUBDIRS): And here.
2285 * Makefile.in: Regenerate.
2286 * src/Makefile.am (sources): And here.
2287 * src/Makefile.in: Regenerate.
2290 * generic/*: Remove.
2292 * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
2294 * libtool: Update to libtool-1.3.4.
2298 * config.guess: Same.
2300 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
2301 Alexandre Petit-Bianco <apbianco@cygnus.com>
2303 * mkc++config: New file. Put autoconf macros into _GLIBCPP_
2304 namespace instead of polluting global namespace with duplicate
2306 * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
2308 (AC_OUTPUT_COMMANDS): Make it here.
2309 * configure: Regenerate.
2310 * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
2311 endif, as now we will add it manually.
2312 Move to this file. . .
2313 * bits/c++config.h: New file. Same as old c++config.h.in except
2314 the ending macro guard is now appended manually.
2316 * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
2317 * bits/std_cmath.h: Same here.
2318 * bits/std_cwchar.h: And here.
2319 * src/locale.cc: And here.
2320 * src/complexl.cc: And here.
2321 * math/mathconf.h: Change to include "config.h" instead of
2324 2000-02-01 Benjamin Kosnik <bkoz@gnu.org>
2326 * configure.in: Add support for threads. Try a model closer to
2327 libjava, as hopefully if the thread bits are added carefully
2328 enough, the source code will not have gross hacks. Besides, the
2329 libstdc++-v2 model could be easily emulated without the necessity
2330 of linking files in (as currently done)--all that needs to be done
2331 is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
2332 new. . . and see if we arrive at a more elegant solution.
2333 * configure: Regenerated.
2334 * config/threads-no.h: New file.
2335 * config/threads-posix.h: New file.
2336 * src/Makefile.am (myinstallheaders): Install c++threads.h.
2337 * src/Makefile.in: Regenerated.
2339 2000-01-31 Benjamin Kosnik <bkoz@gnu.org>
2341 META-QUESTION: Can we just make a "header.html" file and a
2342 "footer.html" and just include them in all the doc sub-pages. The
2343 duplication of the header info is kind of gross, and weak
2344 considering that if you change order or layout then all this stuff
2345 has to be changed in all the sub-files.
2347 * docs/17_intro/contribute.html: Take out duplicate file info.
2348 * README: Should just contain a link to the docs/index.html
2349 page. Duplicate information removed.
2350 * docs/faq/index.html: Remove indexes into HOWTOS.
2351 * docs/17_intro/howto.html: Make intro and docs part more
2352 centralized. Move intro stuff to documentation.html.
2353 * docs/how.html: Tweak. Does this file need to exist? What calls it?
2354 * docs/README.html: Move documentation files to
2355 documentation.html. Should this file be renamed
2356 "config_and_install.html" as that is what is apparently covered
2358 * docs/install.html: Yes. New file, moved and renamed README.html.
2359 * docs/documentation.html: New file. This is the index file for
2361 * docs/index.html: Edit sidebar order. Insert new link to new
2362 documentation spine, documentation.html.
2364 2000-01-31 Scott Snyder <snyder@fnal.gov>
2366 * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if
2367 we don't extract any characters.
2368 * testsuite/21_strings/inserters_extractors.cc (main): New tests.
2370 2000-01-31 Anders Widell <awl@hem.passagen.se>
2372 * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
2373 step is a multiple of the word size.
2374 (_M_do_right_shift): Same.
2375 * testsuite/23_containers/bitset_shift.cc: New file.
2377 2000-01-31 Nathan Myers <ncm@zembu.com>
2379 * README (Documentation): Add path info, fix typos.
2381 2000-01-26 Benjamin Kosnik <bkoz@redhat.com>
2383 * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
2384 crazy group checking for numpunct, for real this time. At some
2385 point, the local variable __grp should probably get replaced a
2386 char array, or something a bit more lightweight.
2387 (num_get::do_get(bool)): Simplify. Don't set bool reference to
2388 parsed value unless err isn't failbit.
2389 (num_get::do_get(*)): Same, make consistent.
2391 Nathan Myers <ncm@zembu.com>
2392 Jim Parsons <parsons@clearway.com>
2393 * testsuite/27_io/istream_extractor_arith.cc (test08): Add
2394 more grouping tests, tweak, scold, wine.
2396 2000-01-24 Benjamin Kosnik <bkoz@gnu.org>
2398 * testsuite/27_io/istream_extractor_arith.cc (test07): Add
2400 * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
2401 grouping bugs. Only allow thousands_sep if _M_use_groupings is
2404 via <llewelly@198.dsl.xmission.com>
2405 * stl/bits/stl_vector.h (vector::_M_range_check): Throw
2406 out_of_range instead of range_error.
2408 2000-01-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2410 * bits/std_iomanip.h (setw): Fix typo.
2412 2000-01-14 Benjamin Kosnik <bkoz@gnu.org>
2414 * testsuite/27_io/istream_extractor_arith.cc: Fix.
2415 * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
2416 * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
2418 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
2420 * docs/README.html: Reformat, more installation instructions.
2421 * docs/gccrebuild.html: New file.
2422 * docs/faq/index.html: Update for new testsuite output filenames.
2423 * docs/faq/index.txt: Regenerate.
2425 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
2427 * Makefile.am (rebuild-stamp, all-local): New targets.
2428 * Makefile.in: Regenerated.
2429 * acinclude.m4: New macro, GLIBCPP_ENABLE_RELIBGCC.
2430 * aclocal.m4: Regenerated.
2431 * configure.in: Call new macro. Also do some sanity checks
2432 for combinations of --enable's that may not make sense.
2433 * configure: Regenerated.
2435 2000-01-13 Benjamin Kosnik <bkoz@cygnus.com>
2437 * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
2438 * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
2439 correctly for hex-formatted input.
2441 * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
2442 eofbit instead of eofbit | failbit.
2443 * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
2444 ifstreams now are opened or'd with ios_base::in (as is correct).
2445 * bits/fstream.tcc (filebuf::seekoff): Simplify.
2446 * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
2448 2000-01-12 Benjamin Kosnik <bkoz@gnu.org>
2450 * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
2451 * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
2453 (__basic_file::filepos_valid): Same.
2454 (__basic_file::filepos_beg): Same.
2455 (__baseic_file::get_fileno): New function.
2456 * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
2457 feedback from LWG 49.
2458 * src/ios.cc: Move definition here.
2459 * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
2461 * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
2462 output part of internal buffer based on string size, so that
2463 _M_out_end is set consistently with filebufs. Correct comments.
2464 * bits/sstream.tcc (stringbuf::overflow): Update here too.
2465 * testsuite/27_io/stringbuf.cc: Changes.
2467 2000-01-11 Benjamin Kosnik <bkoz@gnu.org>
2469 * bits/sstream.tcc (seekoff): Set based on end of written buffer,
2471 * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
2473 * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
2474 (ofstream::open): Add ios_base::out to openmode.
2476 * bits/locale_facets.tcc (_M_extract): Have consistency between
2477 istream::sentry and extractors, where failbit | eofbit is
2478 set. Don't change this, but instead change. . (do some formatting
2480 * bits/istream.tcc (istream::sentry): Only set eofbit.
2482 2000-01-10 Benjamin Kosnik <bkoz@gnu.org>
2484 * testsuite/27_io/istringstream_members.cc: New file.
2486 2000-01-09 Benjamin Kosnik <bkoz@gnu.org>
2488 * bits/istream.tcc (istream::sentry): Flush.
2490 * configure.in (AC_OUTPUT_COMMANDS): Simplify.
2491 * configure: Regenerate.
2492 * src/Makefile.am (generated_headers): Remove bits/c++config.h so
2493 that make clean will not delete it.
2494 * src/Makefile: Regenerate.
2496 2000-01-07 Phil Edwards <pme@sourceware.cygnus.com>
2498 * mkcheck.in: Use host-specific invocation of size(1);
2499 GNU binutils isn't necessarily there (more's the pity).
2501 2000-01-06 Benjamin Kosnik <bkoz@cygnus.com>
2503 * configure.in (LIBS): Better tests for solaris2.6.
2504 * configure: Regenerate.
2506 <vakatov@ncbi.nlm.nih.gov>
2507 * bits/std_sstream.h: As per libstdc++20.
2509 2000-01-06 Benjamin Kosnik <bkoz@gnu.org>
2511 Break out configuration on solaris.
2512 * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
2513 * config/solaris/ctype.cc: Delete and move to proper version.
2514 * config/solaris/bits: Same.
2515 * config/solaris/solaris2.5: Add this directory, with subdir bits
2516 and file ctype.cc. Probably doesn't work.
2517 * config/solaris/solaris2.6: Same.
2518 * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
2520 * Makefile.am: Change paths to mkcheck.
2521 * Makefile: Regenerate.
2522 * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
2523 * configure: Regenerate.
2524 * src/Makefile.am (generated_headers): Add bits/c++config.h.
2526 * mkcheck: Now autogenerated by configure and renamed. . .
2527 * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.
2528 Have longer-style dates.
2529 Raja R Harinath <harinath@cs.umn.edu>
2530 * mkcheck: Change path to #!/usr/clocal/bin/bash.
2532 * docs/README.html: Correct links, maybe. FAQ, install notes, and
2533 general documentation need to be organized around each other, not
2534 fight against each other. . .
2536 2000-01-04 Phil Edwards <pme@sourceware.cygnus.com>
2537 Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
2539 * README: Add a note referring to README.html.
2540 * docs/README.html: New file from Nicolai.
2541 * docs/faq/index.html: Move "how to get a copy" to here.
2542 * docs/gentop/footchunk.html: Update.
2543 * docs/gentop/headchunk.html: New links according to
2544 bkoz's idea for "How to..." stuff.
2545 * docs/gentop/thanks: Actually put people here.
2546 * docs/download.html: Regenerated.
2547 * docs/index.html, docs/links.html, docs/mail.html,
2548 docs/status.html, docs/thanks.html, docs/faq/index.txt: Ditto.
2549 * docs/how.html: Ditto. (This file should go away soon.)
2551 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
2553 * docs/gentop/status: Add snapshot version column, update
2555 * docs/status.html: Regenerated.
2557 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
2559 * docs/faq/index.html: Turn README and RELEASE-NOTES into links
2560 from installation FAQ, and specify location of text files.
2561 * docs/faq/index.txt: Regenerated.
2563 1999-12-23 Phil Edwards <pme@sourceware.cygnus.com>
2565 * docs/gentop/download: Add links to prebuilds for Cygwin/Mingw32.
2566 * docs/download.html: Regenerated.
2568 1999-12-22 Phil Edwards <pme@sourceware.cygnus.com>
2570 * docs/faq/index.html: Update 'what works' for .7 snapshot,
2571 clean up various links.
2572 * docs/faq/index.txt: Regenerated.
2573 * docs/gentop/gentop: Smarter regeneration script.
2574 * docs/gentop/{head,foot}chunk.html: Updated with new
2575 contributors link and mod date.
2576 * docs/gentop/index: Snapshot relase date.
2577 * docs/gentop/thanks: New contributors page added.
2578 * docs/{download,how,index,links,mail,status,thanks}.html:
2579 Regenerated from gentop; thanks.html created.
2581 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2583 * bits/c++config.h.in (__GLIBCPP__): 19991221.
2584 * docs/index.html: Add correct information.
2586 * config/irix: New directory.
2587 * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
2588 * config/irix/bits/ctype_base.h: And here.
2590 * config/aix: New directory.
2591 * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
2592 * config/aix/bits/ctype_base.h: And here.
2594 1999-12-21 Philip Martin <pm@corris.dircon.co.uk>
2596 * bits/basic_string.h: Add special case handling for integral
2598 * bits/std_string.h: include type_traits.h
2599 * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
2601 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2603 * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
2605 * bits/std_fstream.h (sync): And here.
2606 * testsuite/27_io/filebuf.cc: Revisions.
2607 * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
2608 at the end of the file.
2609 * testsuite/27_io/filebuf-3.tst: Correct.
2611 1999-12-21 Phil Edwards <pedwards@jaj.com>
2613 * docs/gentop/index: Hold off on .7 announcement date.
2614 * docs/index.html: Regenerate.
2616 1999-12-21 Benjamin Kosnik <bkoz@kcygnus.com>
2618 * bits/std_fstream.h (sync): Move _M_file->sync() to
2619 _M_really_overflow().
2620 * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
2621 as to get the _M_file->sync action, which forces the external
2622 buffer to update itself.
2623 (underflow): Same here.
2625 1999-12-21 Phil Edwards <pedwards@jaj.com>
2627 * bits/c++config.h.in: Uncomment _GLIBCPP_USE_NAMESPACES and move...
2628 * acconfig.h: ...to here.
2629 * config.h.in: Regenerate from aclocal.
2630 * acinclude.m4: Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
2631 * aclocal.m4: Regenerate from acinclude.
2632 * configure.in: Use ENABLE macros here.
2633 * configure: Regenerate.
2634 * src/Makefile.am: Use results from ENABLE macros.
2635 * src/Makefile.in: Regenerate.
2637 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
2639 * mkcheck (SRC_DIR): Now have to include config/* dir if "make
2640 check" and not "make check-install." Temporarily hack in linux
2643 * bits/std_streambuf.h: Tweaks.
2644 * bits/streambuf.tcc (xsgetn): Tweaks.
2645 * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
2646 * bits/fstream.tcc (filebuf::underflow): Simplify.
2647 * bits/std_sstream.h (streambuf::underflow): Minor change to make
2648 checks for read position precisely implement the standard.
2649 * bits/basic_file.h (filepos_cur): Base this on _offset.
2650 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
2651 * testsuite/27_io/filebuf.cc: Tweak.
2653 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
2655 * docs/17_intro/RELEASE-NOTES: Fix typos.
2657 * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
2658 out platform-specific bits.
2659 * config/default/ctype.cc: And here.
2660 * config/defaults/bits/ctype_base.h: And here.
2661 * config/linux/ctype.cc: And here.
2662 * config/linux/bits/ctype_base.h (ctype_base): And here.
2663 * config/solaris/bits/ctype_base.h (ctype_base): Add
2664 __to_type. Comment, as it looks like this is for solaris2.6 and
2665 above: solaris2.5.1 doesn't seem to have the same definitions.
2666 * config/solaris/ctype.cc: And here.
2668 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
2669 Ulrich Drepper <drepper@cygnus.com>
2671 * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
2673 * src/locale.cc: Take out platform-specific hacks.
2674 * config/linux/ctype.cc: Put here.
2675 * config/solaris/ctype.cc: Put here.
2676 * config/default/ctype.cc: Put here.
2678 * bits/locale_facets.h: Take out platform-specific hacks.
2679 * config/linux/bits/ctype_base.h: Put here.
2680 * config/solaris/bits/ctype_base.h: Put here.
2681 * config/default/bits/ctype_base.h: Put here.
2683 * configure.in: Bump version.
2684 Add tests for top-level config directory.
2685 * configure: Regenerated.
2686 * src/Makefile.am (INCLUDES): Add platform-specific dir.
2687 * src/Makefile: Regenerate.
2689 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
2690 Ulrich Drepper <drepper@cygnus.com>
2692 * bits/locale_facets.h: Hack in solaris support.
2693 * src/locale.cc: Here too.
2695 1999-12-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2697 * docs/17_intro/TODO: Update
2698 * docs/17_intro/RELEASE-NOTES (New): Update.
2700 1999-12-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
2702 * bits/c++config.h.in (__GLIBCPP__): Bump.
2703 * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
2704 * docs/17_intro/TODO: Update.
2706 * bits/locale_facets.h: Touch this too.
2707 * bits/localefwd.h: Add typedefs for loooooong vector names.
2708 * bits/locale_facets.tcc (locale::operator()): Need parens.
2709 (has_facet): Simplify.
2710 * src/locale-inst.cc: Add instantiations.
2711 * src/locale.cc: Tweaks.
2713 * bits/std_streambuf.h: Move indeterminates into. .
2714 * bits/std_fstream.h: Here.
2715 * bits/fstream.tcc (underflow): Rewind just for ios_base::out
2717 * bits/sstream.tcc: Very minor formatting tweaks.
2718 * bits/std_streambuf.h (_M_set_determinate): If exclusively an
2719 input buffer, set _M_buf to offset.
2720 * bits/istream.tcc (std): Tweaks.
2721 * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
2723 * testsuite/27_io/filebuf.cc: Tweaks.
2725 1999-12-17 Phil Edwards <pedwards@jaj.com>
2727 * configure.in: Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
2728 * configure: Regenerate.
2729 * src/Makefile.am: Use OPTLEVEL in CXXFLAGS.
2730 * src/Makefile.in: Regenerate. Also picks up OTHER_CXXFLAGS rename
2731 to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
2733 1999-12-17 Phil Edwards <pedwards@jaj.com>
2735 * docs/21_strings/stringtok_std_h.txt: New algorithm
2736 suggested by Chris King.
2737 * docs/21_strings/howto.html: Link to new version.
2739 1999-12-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2741 * bits/valarray_array.h (__valarray_sum): Use operator+=, not
2743 * docs/17_intro/TODO: Update.
2745 1999-12-15 Phil Edwards <pme@sourceware.cygnus.com>
2747 * docs/gentop/footchunk.html: Updated, fixed CRLFs.
2748 * docs/gentop/gentop: Ditto.
2749 * docs/gentop/headchunk.html: Ditto.
2750 * docs/*.html: Regenerated from gentop.
2751 * docs/*/howto.html: Updated as test.
2752 * docs/faq/index.html: Updated, fixed CRLFs.
2753 * docs/faq/index.txt: Regenerated.
2755 1999-12-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2757 * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
2759 * bits/std_complex.h
2760 (complex<float>::complex(const complex<double>&),
2761 complex<float>::complex(const complex<long double>&)): Define.
2763 * docs/17_intro/TODO: Update.
2765 1999-12-13 Benjamin Kosnik <bkoz@cygnus.com>
2767 * bits/istream.tcc (seekg): Don't set _M_gcount.
2769 * bits/fstream.tcc (filebuf::underflow): Re-sync
2770 external byte sequence's input buffer only. . .
2771 * testsuite/27_io/istream_unformatted.cc (test04): New tests for
2772 tellg, seekg and filebufs.
2773 (test05): Same for stringbufs.
2774 * testsuite/27_io/istream_unformatted-2.tst: New file.
2775 * testsuite/27_io/istream_unformatted-1.tst: New file.
2776 * testsuite/27_io/istream_unformatted-1.txt: New file.
2777 * testsuite/21_strings/inserters_extractors.cc (test05): Change
2780 1999-12-13 Phil Edwards <pedwards@jaj.com>
2782 * docs/gentop/*: New directory, containing bits for the homepages.
2783 * docs/*.html: Regenerated from gentop.
2784 * docs/*/*.html: Entries added and regenerated.
2786 1999-12-13 Benjamin Kosnik <bkoz@gnu.org>
2788 Efforts to get -O2 to work with -Winline -Werrors.
2789 * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
2790 _Tp&): Remove inline declaration, as cannot be inlined and
2791 -Winline -Werror complains. An interesting question is why this
2792 cannot be inlined, as I can see no real reason to disqualify it.
2793 (__valarray_product(const _Tp*, const _Tp*)): Same here.
2794 * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
2796 * docs/17_intro/TODO: Update.
2798 1999-12-12 Benjamin Kosnik <bkoz@gnu.org>
2800 * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
2802 * bits/basic_file.h (filepos_cur()): Make pointers themselves be
2803 the resultant position.
2804 * bits/fstream.tcc (seekoff): Explicitly set return value to
2805 resultant external byte sequence position, not value returned from
2806 _M_file->seekoff. Need to make
2807 (seekpos): New definition.
2809 * bits/istream.tcc (seekg): As per Library Issues List 136, set to
2810 just istream. Necessary, or else tellg will give an invalid stream
2811 position, but seekg will return a valid stream position, which is
2812 not groovy: see testcase addition.
2813 * bits/ostream.tcc (seekp): Same.
2815 * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
2816 * bits/sstream.tcc: Tweaks.
2817 * bits/locale_facets.tcc: Tweaks.
2818 (num_put::do_put(iter_type, ios_base, char_type, const void*)):
2819 Re-write in a way that is easier for the inliner to work with.
2820 * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
2822 1999-12-10 Benjamin Kosnik <bkoz@cygnus.com>
2824 * bits/locale_facets.tcc: Tweaks.
2825 * bits/locale_facets.h (use_facet): Can't inline, remove inline
2827 * bits/localefwd.h: And here.
2828 * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
2829 * bits/ostream.tcc: Put here.
2831 Frank Ch. Eigler <fche@cygnus.com>
2832 * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS.
2834 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
2836 * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
2837 in and out buffers update independantly.
2839 * bits/basic_ios.h: Minor formatting.
2840 * bits/fstream.tcc (std): Fix indentation.
2842 1999-12-08 Chip Salzenberg <chip@valinux.com>
2844 * bits/char_traits.h (char_traits<>): Move not_eof() functions
2845 after corresponding eof() functions, so they're easier for the
2847 * bits/locale_facets.h (money_base::__default_pattern): Move
2848 static variable out of inline functions.
2849 (_Moneypunct<>::do_{pos,neg}_format): Use it.
2850 * src/locale-inst.cc (money_base::__default_pattern): Define it.
2852 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
2854 * bits/std_fstream.h (filebuf::open): Tweak.
2855 * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
2856 * bits/std_ios.h: Minor tweaks for headers.
2858 1999-12-06 Benjamin Kosnik <bkoz@gnu.org>
2860 * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
2861 * src/string-inst.cc: Add guards . . .
2862 * src/misc-inst.cc: And here.
2863 * bits/std_sstream.h: And here.
2864 * bits/std_fstream.h: And here.
2865 * bits/std_streambuf.h: And here.
2866 * bits/std_istream.h: And here.
2867 * bits/std_ostream.h: And here.
2869 1999-12-06 Scott Snyder <snyder@fnal.gov>
2871 * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
2873 (basic_istream::readsome): And here as well.
2874 * testsuite/27_io/istream_unformatted.cc: Test a zero-length
2877 1999-12-06 Mumit Khan <khan@xraylith.wisc.edu>
2879 * bits/istream.tcc (basic_istream::ignore): streamsize is not
2880 necessarily an `int'.
2882 1999-12-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2884 * mknumeric_limits: Don't use $CXXFLAGS when building
2885 gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
2886 generally instructs the compiler not to emit template
2887 instantiations and we end up with undefined symbols. Sigh.
2889 1999-12-05 Benjamin Kosnik <bkoz@gnu.org>
2891 * bits/locale_facets.tcc: Tweak.
2892 (_S_format_long): Adjust showpos formatting for hex and oct.
2893 * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
2894 and oct by formatting as unsigned.
2895 (operator<<(int)): Same here.
2896 * bits/ostream.tcc (operator<<(long)): Same.
2897 (operator<<(long long)): Same.
2898 (_S_pad_char): Actually treat ios_base::internal as something
2899 worth doing correctly. Remove const designation on ios argument.
2900 * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
2901 * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
2903 1999-12-04 Benjamin Kosnik <bkoz@gnu.org>
2905 * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
2907 1999-12-03 Benjamin Kosnik <bkoz@gnu.org>
2909 * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
2911 * bits/sstream.tcc (streambuf::seekoff): Add parens.
2912 * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
2913 (operator>>(istream, _CharT*)): Change streamsize to int_type.
2914 (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
2915 * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
2917 (ostream::operator<<(_CharT)): Fix.
2919 * bits/std_sstream.h: Temporarily disable including sstream.tcc to
2920 see if this will increase compile speed.
2921 * bits/std_ostream.h: Likewise. . .
2922 * bits/std_istream.h: And here.
2923 * bits/std_fstream.h: And here.
2924 * src/misc-inst.cc: Add relevant header file includes for
2925 instantiation purposes.
2926 * src/string-inst.cc: And here.
2927 * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
2929 1999-12-02 Benjamin Kosnik <bkoz@gnu.org>
2931 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2932 * bits/istream.tcc (get(streambuf)): More fixes.
2933 (istream::ignore): Get specific about numeric_limits<int>::max()
2936 * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
2937 (filebuf::close): Same.
2938 * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
2940 1999-12-01 Phil Edwards <pedwards@jaj.com>
2942 * mkcheck: Support for compilation/execution timing.
2943 * testsuite/printnow.c: New file.
2945 1999-12-01 Phil Edwards <pedwards@jaj.com>
2947 * bits/std_cwchar.h: Test for _GLIBCPP_USE_WCHAR_T.
2948 * configure.in: Test for presence of wchar.h before testing
2949 for any of its features.
2950 * configure: Regenerate.
2952 1999-11-30 Benjamin Kosnik <bkoz@gnu.org>
2954 Preliminary istream validations complete.
2955 * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
2956 formatting more consistent. Removal of if-statements inside of for
2961 * bits/std_istream.h: Same.
2962 * bits/sstream.tcc (stringbuf::pbackfail): Fix.
2963 * testsuite/27_io/stringbuf.cc: Tweak.
2964 * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.
2966 * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
2967 failbit on failure, as per 27.6.2.5.2.
2969 * stl/bits/std_vector.h: Allow bool specializations. Should move
2970 ext/std_bvector to bits, not ext, maybe.
2972 1999-11-30 Mumit Khan <khan@xraylith.wisc.edu>
2974 * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
2975 * configure: Regenerate.
2977 999-11-29 Benjamin Kosnik <bkoz@gnu.org>
2979 * bits/istream.tcc (get(streambuf, char)): Fix.
2980 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
2982 1999-11-29 Scott Snyder <snyder@fnal.gov>
2984 * bits/basic_string.h (append(const _Char*, size_type)): The
2985 length of the appended string is given exactly by the second arg,
2986 regardless of the data in the character array.
2987 * bits/string.tcc (basic_string(const _CharT*, size_type, const
2988 _Alloc&)): Likewise.
2989 * testsuite/21_strings/append.cc (test01): Remove erroneous test
2990 of basic_string::append.
2992 1999-11-29 Chip Salzenberg <chip@valinux.com>
2994 * Makefile.in: Tweaks for CXXFLAGS.
2995 * */Makefile.in: Same.
2997 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
2999 * conficd bgure.in: Check for wide character support.
3000 * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
3001 * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
3002 * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
3004 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
3006 * acinclude.m4: Fix typo.
3007 * src/complex.cc: Fix macro line continuation.
3009 1999-11-29 Petter Urkedal <petter@matfys.lth.se>
3011 * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
3012 string literals in format, as used in locale-facets.tcc.
3014 1999-11-28 Benjamin Kosnik <bkoz@gnu.org>
3016 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
3017 * bits/istream.tcc (istream::get): Extract to argument minus one.
3018 Various tweaks and fixes.
3020 1999-11-22 Mumit Khan <khan@xraylith.wisc.edu>
3022 * bits/locale_facets.tcc: Workaround for compiler crash on
3025 1999-11-21 Mumit Khan <khan@xraylith.wisc.edu>
3027 * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
3028 * configure.in: Use.
3029 * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
3030 * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
3031 * bits/std_complex.h: Use.
3032 * src/complex.cc: Use.
3034 1999-11-19 Mumit Khan <khan@xraylith.wisc.edu>
3036 * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
3037 * testsuite/21_strings/inserters_extractors.cc: Likewise.
3038 * testsuite/22_locale/ctype.cc: Likewise.
3039 * testsuite/23_containers/multiset.cc: Likewise.
3040 * testsuite/23_containers/vector_ctor.cc: Likewise.
3041 * testsuite/26_numerics/binary_closure.cc: Likewise.
3042 * testsuite/27_io/fpos.cc: Likewise.
3043 * testsuite/27_io/ios_base_callbacks.cc: Likewise.
3044 * testsuite/27_io/istream_extractor_arith.cc: Likewise.
3045 * testsuite/27_io/istream_extractor_char.cc: Likewise.
3046 * testsuite/27_io/istream_extractor_other.cc: Likewise.
3047 * testsuite/27_io/istream_sentry.cc: Likewise.
3048 * testsuite/27_io/ostream_inserter_char.cc: Likewise.
3049 * testsuite/27_io/ostream_inserter_other.cc: Likewise.
3050 * testsuite/27_io/streambuf.cc: Likewise.
3051 * testsuite/27_io/stringstream.cc: Likewise.
3053 1999-11-19 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3055 * bits/valarray_meta.h: Don't forget to define tanh
3057 1999-11-18 Philip Martin <pm@corris.dircon.co.uk>
3059 * src/stl-inst.cc: Use typedef to refer to iterator
3060 * stl/bits/stl_algobase.h: Add traits based dispatch for
3061 __normal_iterator in the copy()algorithm
3062 * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
3064 1999-11-18 Kevin Ediger <kediger@licor.com>
3066 * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
3067 constructors for locale::_Impl exception safe.
3069 1999-11-18 Scott Snyder <snyder@fnal.gov>
3071 * stl/bits/stl_queue.h: The C++ standard gives the default for the
3072 _Sequence template argument of priority_queue<> as vector<>, not
3075 1999-11-18 Benjamin Kosnik <bkoz@gnu.org>
3077 * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
3079 * bits/sstream.tcc: Adjust here too.
3081 1999-11-17 Benjamin Kosnik <bkoz@gnu.org>
3083 * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
3084 * bits/istream.tcc (operator>>): Replace iostate(0) with
3085 iostate(ios_base::goodbit), which is the same thing, but hopefully
3087 * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
3088 libraries issue list 17.
3089 (do_gets): Don't set goodbit explicitly, instead only set on
3090 failures as good bit is the default setting.
3091 * bits/ios_base.h (setf): Set correctly.
3092 * bits/fstream.tcc: Tweak.
3093 * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
3094 in|out bufs that are empty. . .
3095 * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
3097 1999-11-16 Benjamin Kosnik <bkoz@gnu.org>
3099 * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
3100 * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
3101 Add comments "all about _M_buf."
3102 (setg): Set _M_mode.
3104 1999-11-16 Kevin Ediger <kediger@licor.com>
3106 * bits/locale_facets.tcc (_S_build_float_format): New function.
3107 (_S_output_float): New function.
3108 (num_put::do_put(double)): Use 'em.
3109 (num_put::do_put(long double)): Use 'em.
3110 * testsuite/27_io/ostream_inserter_arith.cc: New file.
3112 1999-11-15 Scott Snyder <snyder@fnal.gov>
3114 * bits/basic_file.h: Type of __off parm should be __c_streampos, to
3115 match how libio is calling us.
3116 * src/basic_file.cc (sys_seek): Likewise.
3117 * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
3119 1999-11-15 Benjamin Kosnik <bkoz@gnu.org>
3121 * docs/17_intro/contribute.html: Add link to assignment form.
3122 * docs/17_intro/libstdc++-assign.txt: New file.
3124 * mkcheck (TESTS_FILE): Move a copy of test files as well as
3127 * bits/std_streambuf.h (_M_buf_bump): New function.
3128 * bits/streambuf.tcc: Mods to support _M_buf_bump.
3129 (xsputn): Here. Also add checks for output valid.
3130 (xsgetn): Add checks for input valid.
3132 (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
3133 * bits/std_sstream.h (_M_really_sync): Set _M_buf.
3134 Set _M_out_end to variable-length-end.
3135 * bits/sstream.tcc (overflow): Use _M_buf_bump.
3138 * bits/fstream.tcc (std): Tweak formatting.
3139 (filebuf::overflow): Simplify.
3140 (filebuf::showmanyc): Same.
3141 (filebuf::underflow): Same.
3142 * testsuite/27_io/filebuf.cc: Fix.
3143 * testsuite/27_io/ostream_inserter_other.cc: Fix.
3144 * testsuite/27_io/ostream_inserter_other-2.tst: New file.
3145 * testsuite/27_io/stringbuf.cc: Tweak.
3146 * testsuite/27_io/streambuf.cc: Tweak.
3147 * testsuite/27_io/istream_extractor_other.cc: Fix.
3149 1999-11-11 Matthias Klose <doko@cs.tu-berlin.de>
3151 * stl_deque.h: Use static_casts<size_type>(signed_type).
3153 1999-11-11 Benjamin Kosnik <bkoz@gnu.org>
3155 Cleanups for callbacks, more regression hunting. Remaining
3156 failures (1) due to last unresolved stringstream issues, not
3158 * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
3159 killing 27_io/filebuf.cc tests. . . need another solution.
3161 * bits/streambuf.tcc (_S_copy_streambufs): Fix.
3162 * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
3164 * bits/basic_ios.h: Add cached facets here. UGH. The standard
3165 foils all attempts at a graceful, minimal implementation.
3166 * bits/basic_ios.tcc: Tweaks.
3167 * bits/istream.tcc: Fix.
3168 * bits/ostream.tcc: Fix.
3169 * bits/std_istream.h: Fix.
3170 * bits/std_ostream.h: Fix.
3171 * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
3173 * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
3174 (_S_pad_numeric): Make comprehensible.
3176 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
3178 * bits/std_ostream.h: Add callbacks for _M_fnumput.
3179 (_S_ostream_fcache): New function.
3180 Move functions out-of-line.
3181 * bits/ostream.tcc: Put here.
3183 * bits/std_istream.h: Add callbacks for _M_fnumget.
3184 (_S_istream_fcache): New function.
3185 Move functions out-of-line.
3186 * bits/istream.tcc: Put here.
3188 * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
3189 _M_call_callbacks(), as ios_base::imbue does this already.
3190 * src/ios.cc (register_callback): Clean.
3191 (_M_call_callbacks): Same.
3192 * bits/ios_base.h: Callback work.
3193 * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
3195 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
3196 Matthias Klose <doko@cs.tu-berlin.de>
3198 * stl/ext/stl_rope.h: Fix initialization order.
3200 1999-11-09 Scott Snyder <snyder@fnal.gov>
3202 * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
3203 _M_file->sync() so that redirection works correctly.
3205 1999-11-09 Benjamin Kosnik <bkoz@gnu.org>
3207 * bits/istream.tcc: Re-order.
3208 * bits/std_istream.h: Fix getline problems.
3209 * testsuite/27_io/istream_unformatted.cc: New tests.
3211 Clean up regressions.
3212 * bits/std_sstream.h: Set initial stringbufs correctly.
3214 1999-11-09 Scott Snyder <snyder@fnal.gov>
3216 * stl_vector.h (_M_range_insert): Fix mixing pointers and
3218 * testsuite/23_containers/vector_modifiers.cc (test01): New file,
3221 1999-11-09 Benjamin Kosnik <bkoz@cygnus.com>
3223 * src/Makefile.am (CXXFLAGS): Add -Winline.
3224 * src/Makefile.in: Regenerate.
3226 1999-11-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3228 * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
3229 building meta-expressions don't forget to take the contained
3232 1999-11-02 Benjamin Kosnik <benjamin@cygnus.com>
3234 * configure: Regenerate.
3236 1999-11-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3238 * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
3240 * bits/valarray_meta.h (min): Likewise.
3241 * bits/valarray_meta.h (max): Likewise.
3243 1999-11-01 Benjamin Kosnik <bkoz@cygnus.com>
3245 * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
3246 * bits/std_streambuf.h (_S_copy_streambufs): New function.
3247 * bits/streambuf.tcc: Define.
3248 * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
3249 * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
3250 * testsuite/27_io/ostream_inserter_other.cc: Add tests.
3251 * testsuite/27_io/ostream_inserter_other-1.tst: New file.
3253 * bits/basic_string.h: Explicitly cast npos to unsigned type,
3254 reported by Richard Atterer.
3255 * bits/char_traits.h: For consistency's sake, here too.
3257 * configure.in: Bump version to 2.90.7.
3259 1999-10-31 Benjamin Kosnik <bkoz@cygnus.com>
3261 * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
3262 * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
3263 * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
3265 * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
3266 writing into buffer.
3269 1999-10-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3271 * bits/valarray_array.h (__valarray_sum): New function.
3272 * bits/valarray_array.h (__valarray_product): Same.
3274 * bits/std_valarray.h (valarray<T>::product): Comment out.
3275 * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
3276 instead of accumulate.
3278 * src/valarray-inst.cc: Remove explicit intantiation of
3279 class multiplies<size_t>, accumulate, valarray<size_t>::product.
3280 * src/valarray-inst.cc (__valarray_product): Instantiate
3282 * src/valarray-inst.cc (__valarray_product(const
3283 valarray<size_t>&)): New function.
3284 * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
3285 valarray<size_t>::product. Use __valarray_product instead.
3288 1999-10-25 Benjamin Kosnik <bkoz@cygnus.com>
3290 * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
3291 (_S_pad_char): New function. Not done: ios_base::internal.
3292 * bits/ostream.tcc: Clean for above.
3293 * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
3294 specialization that was commented out, as ostreams now have to
3295 correctly deal with padding.
3296 * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
3298 * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
3299 from mailing list. This is a bug, and should be fixed.
3300 * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
3302 1999-10-22 Petter Urkedal <petter@matfys.lth.se>
3304 * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
3305 to avoid conflict with gcc name mangling.
3306 * stl/bits/stl_algo.h (__transform): Same.
3308 1999-10-21 Benjamin Kosnik <bkoz@cygnus.com>
3310 * bits/ios_base.h: Change argument names.
3311 * docs/17_intro/BADNAMES: Add __opr.
3313 1999-10-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3315 Work on compilation slowdowns from 10-5 to 10-12, which are
3316 related to the _Callback_list inlining/merge-ifcation, which is
3317 still a pending issue, but this stuff is necessary cleanup anyway.
3319 * src/ios.cc: Re-arrange.
3320 * bits/ios_base.h: Tweak.
3321 * bits/basic_ios.tcc: Move out of line definitions here, move
3322 small out-of-line definitions inline.
3323 * bits/basic_ios.h: From here.
3325 * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
3326 * bits/std_streambuf.h: From here.
3328 1999-10-19 Benjamin Kosnik <bkoz@cygnus.com>
3330 * testsuite/27_io/istream_extractor_char.cc: Add tests.
3331 * bits/std_istream.h: Tweaks--set eofbit on eof condition.
3332 * bits/istream.tcc (operator>>(istream&, string&): Remove
3333 vestigial issspace hacks and use ctype::is instead.
3334 (getline): Remove unnecessary loops, fortify and pasteurize.
3337 1999-10-18 Benjamin Kosnik <bkoz@cygnus.com>
3339 * bits/istream.tcc (operator>>): Tweak.
3340 * bits/std_istream.h: Fix according to library issues list 68.
3343 * bits/locale_facets.h: Fix table_size to be non-zero.
3345 1999-10-18 Vadim Egorov <egorovv@HotPOP.com>
3347 * src/basic_file.cc: ifdef instead of comment for binary mode
3349 1999-10-18 Russell Davidson <russell@qed.econ.queensu.ca>
3351 * bits/std_sstream.h: Stringbuf initialization based on actual,
3352 not allocated, size.
3353 * testsuite/21_strings/inserters_extractors.cc (test06): Add test
3356 1999-10-17 Benjamin Kosnik <bkoz@cygnus.com>
3358 * testsuite/26_numerics/c_math.cc (test03): Tweak.
3359 * testsuite/27_io/istream_manip.cc (test01): Corrections due to
3361 * testsuite/21_strings/inserters_extractors.cc (test01): Same.
3363 1999-10-14 Benjamin Kosnik <bkoz@cygnus.com>
3365 * bits/std_istream.h: Tweaks.
3366 * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
3367 as per issues list addition--set failbit, eof on empty buffers.
3368 * testsuite/27_io/istream_sentry.cc: New file.
3370 1999-10-12 Chris Prince <prince@wcug.wwu.edu>
3372 * bits/std_cstdio.h: Remove Solaris hacks.
3374 1999-10-12 Phil Edwards <philip.edwards@sn.wpafb.af.mil>
3376 * docs/index.html: Fix minor typos and tweaks.
3377 * docs/17_intro/contribute.html: Ditto.
3378 * docs/*/howto.html: Ditto. More "EGCS"->"GCC" conversion, notes on
3379 thread safety and binary I/O, links to external sites.
3380 * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
3383 1999-10-12 Petter Urkedal <petter@matfys.lth.se>
3385 * bits/std_cmath.h (abs(float)): When ::absf is not present, call
3386 ::fabs(double) rather than ::abs(int).
3388 1999-10-11 Benjamin Kosnik <bkoz@milou.cygnus.com>
3390 * bits/std_streambuf.h: Fix minor blip--should explicitly return
3391 *gptr(), not the result of underflow.
3392 (pbackfail): Conform to default behavior.
3394 * bits/streambuf.tcc: Add out-of-line streambuf members.
3397 * testsuite/27_io/streambuf.cc: New file.
3398 * testsuite/27_io/filebuf.cc: Correct test.
3400 1999-10-08 Benjamin Kosnik <bkoz@haight.constant.com>
3402 * bits/std_cmath.h: Correctly cast int to double.
3403 * testsuite/26_numerics/c_math.cc: Add test.
3405 * mknumeric_limits (OUT_C): Tweaks.
3406 * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
3407 trying to instantiate type_traits<wchar_t>.
3408 * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
3409 * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
3410 * configure: Regenerate.
3412 1999-10-06 Benjamin Kosnik <bkoz@milou.cygnus.com>
3414 * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
3415 (streambuf::xsputn): Put in break.
3416 Aiming for parity between these two (mostly) similar functions.
3417 Need to re-write tests.
3419 * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
3420 Make data members protected, not private.
3421 * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
3422 ios_base.h. As called only once, collapse into . . .
3423 * bits/basic_ios.h (basic_ios::copyfmt): Fix.
3424 (basic_ios::clear): Throw ios_base::failure on occasion.
3425 (basic_ios::exceptions): Fix.
3426 * testsuite/27_io/ios_members.cc (test02): Add tests.
3428 * bits/fpos.h: Default initialize.
3429 * testsuite/27_io/fpos.cc (test03): Add test.
3431 1999-10-04 Russell Davidson <russell@qed.econ.queensu.ca>
3433 * src/basic_file.cc: Fix open modes.
3435 1999-10-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3437 * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
3439 1999-09-23 Benjamin Kosnik <bkoz@milou.cygnus.com>
3441 * bits/streambuf.tcc: Yea. Fix this for real.
3442 * testsuite/27_io/ostream_inserter_other.cc: Add file.
3443 * src/Makefile.*: Regenerate.
3445 1999-09-22 Benjamin Kosnik <bkoz@milou.cygnus.com>
3447 * bits/std_cstdlib.h: Add more linux-specif hacks to the header
3448 files so that stdtof and strtold will be declared. Some hacks
3449 already exits in bits/std_cctype.h -- these should all be removed
3451 * bits/locale_facets.tcc: Add cstring.h include.
3452 _S_format_long: Use long, not int.
3453 Add std_limits.h include, for numeric_limits.
3454 * testsuite/27_io/istream.cc: Make instantiations work when using
3456 * testsuite/27_io/ostream.cc: Same.
3458 1999-09-21 Benjamin Kosnik <bkoz@milou.cygnus.com>
3460 * bits/fpos.h (fpos::operator streamoff): Make const, don't return
3461 a reference. Same for operators == and !=.
3462 * testsuite/27_io/fpos.cc: Add tests.
3464 1999-09-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3466 * bits/valarray_array.h: Fix typo.
3468 * mknumeric_limits: Make sure we are regenerating things from
3469 scratch. Otherwise things get redefined. Not good.
3471 1999-09-20 Benjamin Kosnik <bkoz@milou.cygnus.com>
3473 * bits/std_ostream.h: Fix typo.
3474 * bits/std_istream.h: Same.
3475 * bits/std_iomanip.h: Same.
3477 * bits/istream.tcc (sentry::sentry()): Remove optional tie with
3478 ostream, as happens with underflow anyway.
3479 * testsuite/27_io/istream.cc (main): New file.
3480 * testsuite/27_io/ostream.cc (main): New file.
3481 * testsuite/27_io/istream_unformatted.cc: Add tests.
3483 * src/Makefile.am (headers): Add new file.
3484 * src/Makefile.in (headers): Regenerated.
3486 * bits/basic_ios.h: Remove local-related files.
3487 * bits/basic_ios.tcc: New file, add locale-related items.
3488 * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
3489 * testsuite/27_io/ios_members_static.cc: Change to
3490 * testsuite/27_io/ios_base_members_static.cc: This.
3491 * testsuite/27_io/ios_members.cc: New file.
3492 * testsuite/27_io/stdios_basefield_manip: Change to
3493 * testsuite/27_io/ios_manip_basefield.cc: This.
3494 * testsuite/27_io/stdios_fmtflags_manip: Change to
3495 * testsuite/27_io/ios_manip_fmtflags.cc: This.
3497 * bits/fpos.h: Fix discarding qualifiers on this when
3498 using _M_position with a const fpos.
3499 * bits/std_iosfwd.h: Tweak.
3500 * testsuite/27_io/fpos.cc: New file.
3502 1999-09-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
3504 * bits/streambuf.tcc (streambuf::xsputn): Tweak.
3505 * bits/ostream.tcc: Tweak.
3506 * testsuite/21_strings/inserters_extractors.cc (test04, test05):
3507 Add new regressions.
3509 1999-09-16 Benjamin Kosnik <bkoz@milou.cygnus.com>
3511 * bits/basic_ios.h: Inline, tweak.
3512 * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
3513 pass back accurate return value to basic_filebuf::overflow.
3514 * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
3515 This fixes sstream problems reported in libstdc++/9, but screws up
3516 filebufs. That solution is pending.
3518 1999-09-15 Vadim Egorov <egorovv@1c.ru>
3520 * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for
3522 * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
3524 1999-09-08 Benjamin Kosnik <bkoz@milou.cygnus.com>
3526 * bits/c++config.h.in: Add emacs hints.
3528 * stl/bits/stl_range_errors.h: Don't define here, for now define
3529 in stdexcept.cc along with string inlines __length_error, etc.
3530 * src/stdexcept.cc: Define here.
3531 * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
3532 at(size_t) will be declared/defined.
3533 (__STL_THREADS): Fix mess surrounding use of this, enable.
3535 1999-08-31 Benjamin Kosnik <bkoz@milou.cygnus.com>
3537 * testsuite/27_io/istream_extractor_arith.cc: Fix.
3538 * src/localename.cc: Tweak formatting, fix assignment to
3539 const compiler errors.
3541 1999-08-25 Benjamin Kosnik <bkoz@cygnus.com>
3543 * acconfig.h: Add absf, cosf.
3544 * configure.in (use_builtin_sinf): Same.
3545 * configure: Regenerate.
3546 * bits/std_cmath.h: Add mess of defines.
3547 * testsuite/26_numerics/modf_float.cc: Change to
3548 * testsuite/26_numerics/c_math.cc: This.
3550 * src/locale.cc: Change.
3551 * bits/locale_facets.h: Fix.
3552 * testsuite/22_locale/ctype.cc: Add temporary tests.
3554 1999-08-24 Benjamin Kosnik <bkoz@cygnus.com>
3556 * bits/fpos.h: Test.
3558 * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
3559 Fix database name for "libstdc++".
3561 1999-08-23 Benjamin Kosnik <bkoz@cygnus.com>
3563 * mknumeric_limits (numeric_limits): Add default definitions to
3565 * testsuite/18_support/numeric_limits.cc: New file.
3567 1999-08-18 Benjamin Kosnik <bkoz@cygnus.com>
3569 * bits/std_istream.h: Correct initialization.
3570 * bits/std_ostream.h: Likewise.
3571 * bits/std_sstream.h: Likewise.
3572 * bits/std_fstream.h: Likewise.
3573 * testsuite/27_io/stringstream.cc: Add test case.
3575 * bits/std_sstream.h: Replace ____string_type with __string_type.
3576 * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
3577 * bits/std_ostream.h: Tweak dtor.
3579 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3581 * src/Makefile.am (CXXFLAGS): Add -O2.
3582 * src/Makefile.in: Likewise.
3584 * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
3586 * mknumeric_limits (numeric_limits): Uglify.
3588 * bits/std_istream.h: Fix warnings.
3589 * bits/locale_facets.tcc: Collateral damage from
3590 char_traits<char>::int_type change.
3592 * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
3594 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3596 * docs/index.html: Add mailing list form.
3597 * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
3599 1999-08-16 Benjamin Kosnik <bkoz@cygnus.com>
3601 * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
3602 if overflow successfully allocates more space.
3603 * bits/std_sstream.h: Adjust comments.
3604 * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
3605 before overflow forces a resize.
3606 * testsuite/27_io/ostream_inserter_char.cc: New file.
3608 * bits/std_fstream.h: Remove declaration.
3609 * bits/fstream.tcc: Move uflow.
3610 * bits/std_streambuf.h: To here.
3611 * bits/streambuf.tcc: Make consistent.
3613 * src/Makefile.am (WERROR): Enable.
3614 * src/Makefile.in: Regenerate.
3615 * bits/sbuf_iter.h: Tweak.
3616 * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
3617 Use unsigned int as char_traits<char>::int_type.
3619 * bits/ostream.tcc (ostream::putc(char)): Tweak.
3620 * testsuite/27_io/iostream_objects.cc: Terminate string.
3621 Move cin::operator>>(char*) test to extractor_char.cc.
3622 * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
3623 * bits/std_istream.h (basic_iostream): Make explicit definition
3625 * bits/std_sstream.h: Fix typos.
3626 * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
3627 basic_filebuf ctor with fileno open arguments. Thus, filebufs are
3628 initialized in a consistent manner, no matter if the underlying
3629 FILE/bit bucket is a tty or a text file or some other imaginary
3630 construct. This and setting _M_buf_size to 1 for cin allows
3631 istream::get(char) to work in a manner consistent with what others
3634 * docs/index.html: Link Stroustrup's C++ page.
3636 1999-08-12 Michael Cook <cook@sightpath.com>
3638 * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
3639 * bits/istream.tcc: ditto.
3640 * bits/sbuf_iter.h: ditto.
3641 * bits/std_istream.h: ditto.
3642 * src/Makefile.am: Add -Wall to CXXFLAGS.
3643 * src/Makefile.in: ditto.
3645 1999-08-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3646 Russell Davidson <russell@ehess.cnrs-mrs.fr>
3648 * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
3649 * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
3651 1999-08-11 Benjamin Kosnik <bkoz@tintin.cygnus.com>
3653 * testsuite/27_io/istream_unformatted.cc: New file.
3655 * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
3656 elaborate tests for int types with noskipws.
3658 * testsuite/27_io/istream_extractor_other-1.txt: New file.
3659 * testsuite/27_io/istream_extractor_other-1.tst: New file.
3660 * testsuite/27_io/istream_extractor_other-2.tst: New file.
3661 * testsuite/27_io/istream_extractor_other.cc: Add tests.
3662 * bits/istream.tcc: Fix operator>>(streambuf*).
3664 * testsuite/23_containers/vector_ctor.cc (test01): Add.
3666 * docs/index.html: Remove references to egcs.
3667 * docs/17_intro/DESIGN: Same.
3668 * docs/17_intro/contribute.html: Same.
3669 * docs/17_intro/RELEASE-NOTES: Ditto.
3670 * docs/17_intro/howto.html: Same here.
3672 Russell Davidson <russell@ehess.cnrs-mrs.fr>
3673 * stl/bits/stl_vector.h (_M_insert_aux):
3674 * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
3675 decimal/floating point support.
3676 * bits/locale_facets.h: Change _M_extract prototype.
3677 * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
3678 * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
3680 1999-08-10 Michael Cook <cook@sightpath.com>
3682 * bits/fstream.tcc: Fix for unused variable warning (-Wall).
3683 * bits/ios_base.h: ditto.
3684 * bits/istream.tcc: ditto.
3685 * bits/locale_facets.h: ditto.
3686 * bits/locale_facets.tcc: ditto.
3687 * bits/std_streambuf.h: ditto.
3688 * src/basic_file.cc: ditto.
3689 * src/locale.cc: ditto.
3690 * src/localename.cc: ditto.
3692 1999-08-10 Kirat Singh <singhki@jany.gs.com>
3694 * bits/std_iomanip.h: Inline.
3696 1999-08-10 Alfred Minarik <a8601248@unet.univie.ac.at>
3698 * bits/std_streambuf.h: Correct member initialization order.
3699 * src/ios.cc: Add definitions for ios_base data members.
3701 1999-08-06 Phil Edwards <pedwards@ball.com>
3703 * docs/index.html: Seventh snapshot updates. Minor tweaks.
3704 * docs/faq/index.html: Ditto. Removed bugs sections that have
3705 been fixed for a long time... Lots of "egcs" references still
3707 * docs/faq/index.txt: Regenerated.
3709 1999-08-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3710 Andreas Amann <amann@physik.tu-berlin.de>
3712 * testsuite/26_numerics/binary_closure.cc (main): new test.
3714 1999-07-29 Andreas Amann <amann@physik.tu-berlin.de>
3716 * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
3719 1999-08-04 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3721 * docs/index.html (host): Put in testing status.
3723 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3725 * docs/index.html: Update for libstdc++-2.90.6 release.
3726 * docs/17_intro/RELEASE-NOTES (New): Update.
3727 * docs/17_intro/BUGS: Update.
3728 * bits/c++config.h.in (__GLIBCPP__): Bump version number.
3729 * README (file): Update.
3731 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3733 * src/Makefile.am (generated_headers): Remove bits/c++config.h as
3735 ($(generated_headers)): Same.
3736 * src/gen-c++config.cc: Remove, rename to
3737 * bits/c++config.h.in: New file. Bump version number.
3738 * configure.in: Generate bits/c++config.h at configure time.
3739 * math/mathconf.h: include bits/c++config.h, not config.h.
3741 * bits/std_cmath.h: Fix remaining link error for solaris shared
3742 builds. _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
3743 being, as on Solaris this silently calls sinf, which does not
3746 * src/complex.cc: More tweaks.
3748 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
3750 * src/complex.cc: Same.
3751 * math/complex-stub.h: Change.
3752 * math/c_log10*.c: Change back to clog10*.c.
3754 * configure.in (NEED_C_LOG10): Delete.
3755 * configure: Regenerate.
3756 * math/Makefile.am: Change.
3758 1999-07-30 Benjamin Kosnik <bkoz@cygnus.com>
3760 * math/Makefile.am: Fix, for real.
3761 * configure.in (use_builtin_sinf): Ok, make autoconf solution.
3762 * math/clog.c: Move to c_log.c.
3763 * math/clog*: Ditto.
3764 * math/c_log10l.c (c_log10l): Change function name.
3765 * math/c_log10f.c (c_log10f): Change function name.
3766 * math/c_log10.c (c_log10): Change function name.
3768 * math/complex-stub.h: Change to c_log* variants.
3769 * src/complex.cc: And here.
3771 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
3773 * testsuite/27_io/istream_extractor_other.cc: Correct last test.
3774 * bits/sstream.tcc (stringbuf::overflow): Don't update the input
3775 sequence, just the output sequence.
3776 * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
3777 the original string, all others use complicated heuristic.
3779 * src/complex.cc: Assume c_log10.
3780 * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
3781 symbols in shared libraries by making c_log/c_log10 part of the
3782 "must cmpile" sources. This may not work on solaris, must check.
3784 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
3786 * bits/istream.tcc (operator>>(streambuf*)): Re-do.
3787 * bits/std_istream.h: Fix char extractors.
3788 * testsuite/27_io/istream_extractor_char.cc: Change.
3789 * testsuite/27_io/istream_extractor_other.cc: Add tests.
3791 1999-07-28 Benjamin Kosnik <bkoz@cygnus.com>
3793 * bits/std_cctype.h: Fix for solaris2.6 builds.
3795 * bits/istream.tcc: Fix, thanks Alfred.
3796 * bits/std_istream.h: Formatting changes.
3798 * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
3799 _IO_cleanup will not be undefined.
3800 * libio/*: Regenerate.
3802 * bits/basic_string.h: More namespace-safety stuff.
3803 * testsuite/27_io/istream_extractor_char.cc: Fix.
3804 * testsuite/27_io/istream_extractor_arith.cc: Fix.
3805 * testsuite/27_io/iostream_objects.cc: Fix.
3806 * testsuite/27_io/ios_ctor.cc: Fix.
3807 * testsuite/27_io/istream_manip.cc: Make namespace safe.
3808 * testsuite/27_io/istream_extractor_other.cc: New file.
3810 * mkcheck (TESTS_FILE): Tweaks.
3812 1999-07-27 Benjamin Kosnik <bkoz@cygnus.com>
3814 * src/gen-c++config.cc: Note here, change version.
3815 * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
3816 * src/locale.cc: Used here.
3817 * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
3819 * aclocal.m4: Regenerate by running `aclocal -I m4.`
3821 * bits/istream.tcc: Fix.
3822 * bits/std_istream.h: More changes to extractors.
3824 * testsuite/27_io/istream_extractor_char.cc: More.
3825 * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
3826 error in testsuite construction.
3828 * bits/std_istream.h: Partially revert.
3829 * bits/std_ostream.h: Same.
3830 * bits/std_sstream.h: Revert.
3832 1999-07-26 Benjamin Kosnik <bkoz@cygnus.com>
3834 * bits/std_sstream.h: Change initialization.
3835 * bits/std_ostream.h: Make default ctor/assign/operator= private.
3836 * bits/std_istream.h: Same, also correct sentry args.
3837 * bits/istream.tcc: Add correct sentry args.
3839 * testsuite/27_io/istream_extractor_char.cc: New file.
3840 * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
3841 name changes making me dizzy.
3843 1999-07-26 Ulrich Drepper <drepper@happy.cygnus.com>
3844 Benjamin Kosnik <bkoz@cygnus.com>
3846 * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
3849 1999-07-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3851 * bits/std_complex.h: Tweak. Make the primary template class
3852 complex work with user-defined numerical types. Provide member
3853 definitions. Restructure.
3854 (class complex<float>): Uglify. Remove __value(). Rename __val
3855 to _M_value. Rename __complex_value_type to _ComplexT. Make it
3856 private. Remove dependency on __value(). Fix various explicit
3857 specialization syntax. Declare a some functions friend. Now the
3858 implementation is nearly comforming.
3859 (class complex<double>): Likewise.
3860 (class complex<long double>): Likewise.
3862 * src/complex.cc: Tweak. Remove dependency on complex::__value().
3863 (sin, sinh, tan, than): Fix call to corresponding C9x function
3866 1999-07-24 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3868 * bits/istream.tcc (ws): Fix error with failbit being set.
3870 Disabled due to egcs/gcc-2_95 internal compiler errors.
3871 * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
3872 -fnew-exceptions. Compiling with namespaces enabled will now be
3874 * mkcheck (CXX_FLAG): Same.
3875 * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
3876 * bits/std_cctype.h: Not enough to just define in namespace std if
3877 ctype-isms are macros. Need to also define in namespace std:: if
3878 the C functions are just plain functions.
3880 * src/gen-num-limits.cc: Fix spelling inconsistencies.
3882 1999-07-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3884 * docs/18_support/howto.html: Start documentation. Need to keep
3885 track of the ongoing discussion in th LWG reflector.
3887 * src/gen-num-limits.cc: Tweak.
3888 (class predicate): New class.
3889 (class value): Likewise.
3890 Make the whole machinery more flexible. Add comments.
3892 1999-07-23 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3894 * bits/ios_base.h: Move state/exception functions into basic_ios.
3895 * bits/basic_ios.h: Same.
3896 * src/ios.cc: And here. Callbacks don't attempt to reset
3899 * bits/std_streambuf.h: Separate ios and streambuf locale data
3900 members and cached facets. Using this convention: _M_locale_buf for
3901 the streambuf-related classes, and _M_locale_ios for the ios
3903 * bits/fstream.tcc: And here.
3904 * bits/basic_ios.h: And here. Also, add cached ctype.
3905 * src/ios.cc: Ditto.
3906 * bits/ios_base.h: Ditto.
3907 * bits/std_istream.h: Use cached ctype facet.
3908 * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
3911 * testsuite/27_io/ios_ctor.cc: New file.
3912 * src/ios.cc: Move _M_state init to basic_ios::init().
3913 * bits/basic_ios.h: To here.
3915 Attempt for some consistency in naming for testsuite/27_io/*.cc.
3916 * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
3917 * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
3918 * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
3919 * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
3921 1999-07-22 Benjamin Kosnik <bkoz@fidel.cygnus.com>
3923 * src/ios.cc: Tweak initializations of standard iostream
3924 objects to closely match the standard. Tie cin/wcin, set flags on
3926 * bits/char_traits.h: Change from size_t to int_type, as per
3927 standard. As per wide streams.
3928 * bits/basic_ios.h: Infect with __ctype_type, as a preparation
3929 for caching a bunch of ctype info. For instance, ctype_base::space
3930 info needs to be stored somewhere, somehow.
3931 * bits/std_istream.h: Also here.
3932 * bits/std_ostream.h: Ditto.
3933 * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
3934 * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
3937 * bits/istream.tcc (ws): Fix.
3938 * testsuite/27_io/istream_manip.cc: New file, test ws.
3939 * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
3941 * bits/basic_string.h: Provide a specialized member function for
3942 _S_find<char> using strchr.
3943 * src/string-inst.cc: Put specializations here.
3944 * bits/string.tcc: Small fix for find, remove typo.
3945 * testsuite/21_strings/find.cc (test01): Add tests to catch this
3948 1999-07-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3950 * bits/basic_ios.h: Put into basic_ios namespace.
3953 1999-07-19 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3955 * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
3956 adjust _M_*_cur pointers inside the function, so callee doesn't
3958 * bits/sstream.tcc (stringbuf::overflow): Tweak.
3960 * mkcheck: Tweak. Add execution time field, even though it is not
3961 implemented yet. Simplify pass/fail status notation.
3963 1999-07-18 Mumit Khan <khan@xraylith.wisc.edu>
3965 * configure.in: Check for float.h and underscored version of
3967 * acconfig.h: Add @BOTTOM@ section for handling underscored
3969 * configure: Regenerate.
3970 * config.h.in: Regenerate.
3971 * math/mathconf.h (float.h): Include conditionally.
3972 (M_PI): Define conditionally.
3973 (INFINITE_P): Define for Mingw.
3974 * bits/locale_facets.tcc: Workaround for compiler crash on
3976 * bits/std_cwchar.h (bits/std_cstddef.h): Include.
3977 * src/locale.cc (bits/std_istream.h): Include.
3978 (bits/std_ostream.h): Likewise.
3980 1999-07-18 Phil Edwards <pedwards@ball.com>
3982 * docs/faq/index.html: Updated __black_count notes, fixed typos.
3983 * docs/faq/index.txt: Regenerated.
3985 1999-07-15 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3987 * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
3989 * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
3990 newly-allocated buffer.
3991 * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
3992 overflow condition bits.
3994 1999-07-14 Benjamin Kosnik <bkoz@cygnus.com>
3996 * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
3997 _M_buf_size to initial _M_string.size(), even though for
3998 ostringstreams it is pretty pointless. It's necessary for
4000 (stringbuf::str()): Adjust.
4001 (stringbuf::str()): Adjust, call _M_init_stringbuf.
4002 * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
4003 overflow's possible success.
4004 (streambuf::xsputn): Adjust.
4006 * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
4008 * testsuite/27_io/stringbuf.cc: Tweak.
4009 * testsuite/21_strings/inserters_extractors.cc (test01): Remove
4011 * testsuite/23_containers/vector_cons.cc: Rename to be consistent
4012 with other constructor tests to. . .
4013 * testsuite/23_containers/vector_ctor.cc: New file.
4015 1999-07-14 Alfred Minarik <a8601248@unet.univie.ac.at>
4017 * testsuite/*: Changes to make the testsuit compilable with
4018 -fhonor-std. Contains direct qualification of library names with
4021 1999-07-13 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4023 * bits/streambuf.tcc: Tweaks.
4024 (streambuf::xsputn): Optimize, fix for sstreams.
4025 (streambuf::xsgetn): Same.
4026 * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
4027 correctly, handle overflow/reallocate conditions correctly.
4028 * bits/std_sstream.h: Fix typo.
4029 _M_init_stringbuf(): Fix _M_buf_size initialization.
4030 (stringbuf::str()): Construct return string if output has occurred.
4032 * bits/basic_string.h: Fix typo from yesterday's patch.
4034 1999-07-12 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4036 * bits/string.tcc: _M_mutate - clear _M_state again.
4037 * bits/basic_string.h: In the three functions that return
4038 an iterator set _M_state to -1 before return.
4039 Also optimized two cases of operator+.
4041 1999-07-12 Phil Edwards <pedwards@ball.com>
4043 * docs/index.html: Expand egcs-1.1.2 notes/links.
4044 * docs/faq/index.html: And here. Add links to LWG issues-list.
4045 * docs/faq/index.txt: Regenerate. (lynx rocks)
4046 * docs/21_strings/howto.html: Fix notes on case conversion.
4047 * docs/21_strings/stringtok_h.txt: Goodly spelling...
4048 * docs/23_containers/howto.html: Stub for bitmasks.
4049 * docs/27_io/howto.html: Add section on buffering, stub binary.
4051 1999-07-12 Nathan Myers <ncm@cantrip.org>
4053 * stl/bits/stl_tree.h (__black_count): Optimize.
4055 1999-07-09 Vadim Egorov <egorovv@1c.ru>
4057 * src/basic_file.cc: Cleanup in __basic_file destructor.
4059 1999-07-08 Benjamin Kosnik <bkoz@cygnus.com>
4061 * bits/std_streambuf.h: Changes. . .
4062 * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
4063 basic_streambuf, to be used for both filebufs and streambufs.
4064 * bits/std_fstream.h (_M_init_filebuf): New function.
4065 Take out specialized xsputn, put into basic_streambuf.
4066 * bits/fstream.tcc: Define, call from both ctors.
4067 * bits/std_sstream.h (_M_init_stringbuf): New function.
4068 * bits/sstream.tcc: Tweak.
4070 * docs/27_io/iostreams_heirarchy.pdf: New file.
4072 * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
4073 acceptance. Wooo-hoo!
4075 * bits/char_traits.h: Change int_type for char_traits general
4076 template, so that 21_strings/capacity.cc will compile.
4077 * testsuite/21_strings/capacity.cc: Add operators.
4079 * bits/string.tcc (string::compare): Clean up, re-implement.
4080 * testsuite/21_strings/compare.cc: Tweak.
4082 * bits/string.tcc (string:_M_mutate): Keep leaked value in
4083 _M_state, which means that whenever begin() or end() has been
4084 called, the string is unshareable, period. By doing this, insert
4085 and erase member functions that return iterators can remain
4086 footloose and fancy free.
4087 * testsuite/21_strings/invariants.cc: Update.
4089 * bits/basic_string.h (string::append): Fix self-referential
4090 problems, ie when "this" is also an argument to a member function.
4091 * bits/string.tcc: Tweak, same.
4092 * testsuite/21_strings/append.cc: New file.
4094 1999-07-07 Benjamin Kosnik <bkoz@cygnus.com>
4096 * bits/char_traits.h: Tweaks.
4097 * bits/basic_string.h: Tweak.
4098 * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
4100 1999-07-06 Benjamin Kosnik <bkoz@cygnus.com>
4102 * bits/std_streambuf.h: Absorb/acquire data members previously
4103 working in basic_filebuf.
4104 * bits/streambuf.tcc: Tweaks.
4105 * bits/fstream.tcc: Adjust.
4106 * bits/std_fstream.h: Move and rename the following functions:
4107 _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
4108 now declared and defined in the base class, basic_streambuf. Oh
4109 fuck it, move data members _M_buf, and _M_buf_size into
4110 basic_streambuf as well.
4112 * bits/ostream.tcc: Tweak.
4113 * bits/locale_facets.tcc: Fix typo in comments.
4115 * testsuite/21_strings/inserters_extractors.cc (test01): Change
4116 state from good to not good, as eof() is set.
4118 1999-07-05 Benjamin Kosnik <bkoz@cygnus.com>
4120 * bits/char_traits.h (char_traits::compare). Fix.
4122 * config.guess, config.sub: Update.
4124 1999-07-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4126 * bits/string.tcc: Check the __res_arg for a length error.
4128 1999-07-01 Benjamin Kosnik <bkoz@nabi.net>
4130 * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
4131 and related functions into basic_streambuf, from basic_filebuf to
4132 take care of ostringstreams and empty strings. So that's groovy,
4134 * bits/std_istream.h: Tweaks.
4135 * bits/istream.tcc: Implement ws, getline, operator>> for string.
4136 * bits/std_ostream.h: And here.
4137 * bits/ostream.tcc: Same.
4138 * src/misc-inst.cc: Add instantiations for ws.
4140 * src/string-inst.cc: Add instantiations for inserters and
4141 extractors (operators << and >>, getline).
4143 * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
4144 a testcase for getline and operators << and >>. Ostream tests are
4145 failing right now, but istream tests should work. . .
4147 * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
4148 * bits/std_sstream.h: Revert.
4150 * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
4151 istream, ostream, streambuf, fstream, sstream].cc: New files.
4153 1999-06-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4155 * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
4158 * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
4159 specializations for _CharT*, iterator and const_iterator.
4160 * src/string-inst.cc: Remove explicit instantiation, as
4161 now explicitly specialized.
4163 * bits/basic_string.h: Add a size_type parameter to _M_clone with
4164 a default value set to 0.
4165 * bits/string.tcc: In _M_clone by the call of _S_create add the
4166 value of the new parameter to _M_length. In reserve check
4167 _M_state and use _M_clone instead of _M_mutate.
4169 1999-06-30 Benjamin Kosnik <bkoz@happy.cygnus.com>
4171 * bits/basic_string.h: Fix _S_max_size.
4172 * bits/string.tcc: Add def here.
4173 * testsuite/21_strings/insert.cc: Fix.
4175 * bits/sbuf_iter.h: Remove detritus.
4176 * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
4178 * src/locale-inst.cc: Elaborate iterator/locale instantiations
4179 to resolve alpha-osf4 build problems.
4181 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
4183 * bits/string.tcc: Fix signed/unsigned issues in compares.
4184 * stl/bits/stl_deque.h: And here.
4185 * stl/bits/stl_string_fwd.h: Remove __get_c_string.
4187 1999-06-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4189 * bits/string.tcc: New implementation and interface of _M_mutate.
4190 Adapt the change in all functions that call _M_mutate.
4191 * bits/basic_string.h: And here.
4193 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
4195 * testsuite/21_strings/capacity.cc (test01): Fix.
4197 1999-06-29 Phil Edwards <pedwards@ball.com>
4199 * mknumeric_limits: Exit script if gen-num-limits isn't built.
4201 1999-06-29 Andreas Gruenbacher <agruenba@pent224.infosys.tuwien.ac.at>
4203 * stl/bits/stl_vector.h: Fix.
4204 * testsuite/23_containers/vector_cons.cc: Add.
4206 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4208 * mknumeric_limits (LDFLAGS): fix.
4210 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4212 * mknumeric_limits (LDFLAGS): set it according to the system.
4214 * math/mathconf.h (NAN): Check whether host is running under
4215 Cygwin and make the appropriate definition.
4216 * math/complex-stub.h (nan): protect declaration.
4218 1999-06-28 Benjamin Kosnik <bkoz@haight.constant.com>
4220 * bits/sbuf_iter.h: Rename internal data structure to prevent
4221 confusion between basic_ios and istreambuf_iterators internal
4222 basic_streambuf data member.
4223 * testsuite/24_iterators/istreambuf_iterator.cc: New file.
4225 * bits/basic_string.h: Remove conditionals, add input_iterator
4226 version of S_construct again.
4227 * bits/string.tcc: Same.
4228 * src/string-inst.cc: And add explicit instantiation here.
4230 * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
4231 and __USE_GNU macro defines, as single __USE_GNU use leading to
4232 confusion on glibc2.1 systems (ie, RedHat 6.0).
4234 * src/Makefile.am (headers): Add std_utility to installed headers.
4236 1999-06-25 John Potter <jpotter@eagle.lhup.edu>
4238 * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
4240 1999-06-25 Gilles Zunino <Gilles.Zunino@hei.fr>
4242 * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
4244 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4246 * src/gen-c++config.cc (_GLIBCPP_*): Change all
4247 macros to include _GLIBCPP as a distinct namespace.
4251 * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
4252 * bits/basic_string.h: Remove __get_c_string.
4253 * src/stdexcept.cc: Define ctor here.
4254 * bits/ios_base.h: And fix ios_base::failure as well.
4255 * src/ios.cc: Define here.
4257 * bits/std_streambuf.h: Add a private copy ctor and assignment
4258 operator wrapped in _G_RESOLVE_LIB_DEFECTS.
4259 * bits/ios_base.h: And here too.
4261 * bits/basic_string.h: Tweak.
4262 * testsuite/21_strings/nonmember.cc: Add operator+ tests.
4264 * src/valarray.cc: Rename to. . .
4265 * src/valarray-inst.cc: This.
4266 * src/Makefile.am (sources): Change here.
4267 * src/Makefile.in: Regenerated.
4269 1999-06-24 Vadim Egorov <egorovv@1c.ru>
4271 * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
4274 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4275 Tom Tromey <tromey@cygnus.com>
4277 * configure.in (use_glibc2): Eek, correct for non-glibc systems.
4278 Use AM_CONDITIONAL to get us out of this jam. .
4279 * libio/Makefile.am: Same.
4280 * */Makefile: Regenerated.
4282 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4283 John Potter <jpotter@eagle.lhup.edu>
4285 * stl/bits/stl_tree.h (insert_equal): Fix.
4286 * testsuite/23_containers/multiset.cc: New file.
4288 1999-06-23 Benjamin Kosnik <bkoz@cygnus.com>
4290 * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
4291 this works correctly on glibc-2 systems. This should allow
4292 simplified linking on these systems, and successful linking on Red
4294 * configure, Makefile: Regenerate.
4296 * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name.
4298 * testsuite/ext: New directory.
4299 * testsuite/ext/headers.cc: New file.
4301 1999-06-23 Vadim Egorov <egorovv@1c.ru>
4303 * stl/ext/hash_set: include missing headers
4304 * stl/ext/hash_map: Same
4305 * stl/ext/slist: Same
4307 1999-06-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4309 * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
4311 1999-06-15 Benjamin Kosnik <bkoz@cygnus.com>
4313 * src/Makefile.am (sources): Regenerate.
4314 * mkcheck: Add TESTS_FILE as a way of controlling what testcases
4317 1999-06-14 Benjamin Kosnik <bkoz@cygnus.com>
4319 * src/string-inst.cc: Change _S_construct signature, to
4320 track requested allocation size versus valid input iterator range.
4321 * bits/basic_string.h: Here too.
4322 * bits/string.tcc: And here.
4324 1999-06-12 Benjamin Kosnik <bkoz@cygnus.com>
4326 * mkcheck (LOG_FILE): Correctly append errors.
4328 * stl/bits/stl_iterator.h: Revert previous, delirious, change.
4330 * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
4331 to clarify differences between basic_string::_M_data() calls and
4332 _Rep::_M_data() calls.
4333 * bits/std_string.h: Fix.
4334 Put in check for out_of_range in substr.
4335 * bits/string.tcc: Fix for _S_find.
4337 * testsuite/21_strings/compare.cc: Add tests.
4338 * testsuite/21_strings/find.cc: New file.
4339 * testsuite/21_strings/substr: New file.
4340 * testsuite/21_strings/replace.cc: New file.
4342 1999-06-11 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4344 * bits/valarray_array.h: __restrict__ify pointers.
4346 * bits/std_valarray.h: Tweak.
4347 (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
4349 * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
4351 * bits/gslice.h: Tweak.
4352 (class gslice::_Indexer): new class.
4353 (gslice::gslice(const gslice&)): implement copy-ctor to support
4355 (gslice::operator=(const gslice&)): support ref-counted index.
4356 (gslice::_M_convert_to_index): delete.
4358 * src/valarray.cc: New file.
4359 (__gslice_to_index): turn a gslice into a valarray<size_t>
4360 (ctor gslice::_Indexer::_Indexer): implement.
4362 * src/Makefile.am (sources): add valarray.cc
4363 * src/Makefile.in: regenerate.
4365 1999-06-08 Benjamin Kosnik <bkoz@cygnus.com>
4367 * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
4368 ctor): Put in a const_cast.
4370 * testsuite/21_strings/invariants.cc: New file.
4372 * testsuite/21_strings/insert.cc: Add exception handling bits.
4373 * testsuite/21_strings/ctor_copy_dtor.cc: Same.
4375 * src/wstring-inst.cc: Add c++config.h include.
4377 * bits/basic_string.h: Fix const operator[] for size == pos.
4378 Add _M_leak for rbegin, non-const.
4379 Add _M_leak for rend, non-const.
4380 Make member function at standards conformant.
4381 Add _S_terminal to _Rep for operator[] const, add this into
4383 * bits/string.tcc: Add static member definition here,
4386 * testsuite/21_strings/element_access.cc: Add tests.
4388 1999-06-08 Vadim Egorov <egorovv@1c.ru>
4390 * bits/fstream.tcc (_M_really_overflow): Fixed size of
4393 1999-06-08 Phil Edwards <pedwards@ball.com>
4395 * bits/fstream.tcc (basic_filebuf::xsputn): Fix off-by-one count
4396 caused when __testinit is true.
4397 * bits/ostream.tcc (basic_ostream::op<<(streambuf*)): Write buffer
4398 using rdbuf()->sputn rather than _M_fnumput->put.
4400 1999-06-08 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4402 * testsuite/23_containers/bitset_ctor.cc: New file.
4403 * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
4405 1999-06-08 Phil Edwards <pedwards@ball.com>
4407 * bits/fstream.tcc (basic_filebuf::underflow): Fix, rename local vars.
4409 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4411 * testsuite/21_strings/element_access.cc: Finish off these tests.
4412 * testsuite/21_strings/insert.cc (test01): Uncomment.
4413 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
4414 * bits/basic_string.h: Tweak, okay, fix for real this time.
4415 * bits/string.tcc: Same.
4416 * bits/char_traits.h: Tweak.
4418 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4420 * bits/std_cmath.h: Example of how to use the generated macro.
4421 * acconfig.h: Add macro for sinf here.
4422 * configure.in (LIBS): Add test for builtin math function sinf.
4423 * configure: Regenerated.
4425 * bits/basic_string.h: Fix _S_max_size.
4427 1999-06-06 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4429 * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
4430 Remove _S_construct signature for forward_iterator_tag and
4433 * src/string-inst.cc: Same, tweaks.
4434 * bits/string.tcc: Same, tweaks.
4436 * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
4437 * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
4438 * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
4441 * src/locale.cc: Final separation for char/wchar_t bits.
4443 1999-06-05 Phil Edwards <pedwards@ball.com>
4445 * docs/index.html: Added link to book upon request'n'agreement.
4446 * docs/23_containers/wrappers_h.txt: Added.
4447 * docs/{23_containers,27_io}/howto.html: Added sections.
4449 * bits/std_fstream.h: Tweak.
4451 1999-06-05 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4453 * src/ios.cc: Same here.
4454 * bits/std_iosfwd.h: More wchar_t defines.
4456 * bits/basic_string.h: Tweaks.
4457 * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
4458 when doing error checking, as per LWG defect #83.
4460 * src/gen-c++config.cc: Fix comment.
4462 * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
4464 * testsuite/21_strings/element_access.cc: New file, checks for
4465 operator[], at(...).
4466 * testsuite/21_strings/insert.cc: New file, tests string::insert.
4467 * testsuite/21_strings/char_traits.cc: New file, tests
4468 for char_traits<char>.
4470 * bits/utility.h: Remove, again.
4471 * src/Makefile.am (std_headers): Remove utility.h.
4472 * src/Makefile.in (std_headers): Regenerate.
4474 Alfred Minarik <a8601248@unet.univie.ac.at>
4475 * bits/basic_string.h: Move __out_of_range and __length_error into
4478 1999-06-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4480 * testsuite/26_numerics/modf_float.cc: New file.
4482 * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
4483 typo: use ::modff, not ::modf.
4485 1999-06-03 Vadim Egorov <egorovv@1c.ru>
4487 * bits/string.tcc (basic_string::_M_mutate): Fixed memory
4489 * testsuite/21_strings/capacity.cc (test01): Test.
4491 1999-06-03 Phil Edwards <pedwards@ball.com>
4493 * bits/fstream.tcc: Re-order inits to stop warnings. Comment/move
4494 unused variables to within #if 0 blocks to do the same.
4495 * bits/std_fstream.h: Fix typos (one prevents compilation).
4497 1999-06-03 Benjamin Kosnik <bkoz@pacifica.cygnus.com>
4499 * src/wstring-inst.cc: Fix.
4501 1999-06-02 Benjamin Kosnik <bkoz@madcow.cygnus.com>
4503 * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
4504 * stl/bits/stl_string_fwd.h: Same.
4505 * bits/locale_facets.h: Same.
4506 * bits/locale_facets.tcc: Same.
4507 * src/wstring-inst.cc: And here.
4509 * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
4510 problems on HPUX 10.20.
4511 * your-build-directory-here/bits/c++config.h: Just kidding, do it
4512 here as a temporary hack till the compiler/host problems get
4515 * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
4516 HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
4517 converting "long double" to struct long_double. Probably should be
4518 done with one macro (HAVE_STRTOLD) at configure time.
4520 * bits/std_cmath.h: Comment out pow(double, int) defintion as
4521 gives re-declaration under hpux10.20. Revert previous change, as
4522 kills linux/x86, solaris 2.7, hpux builds. These should be done
4523 using autoconf, see std_cctype.h and the solutions started in
4524 configure.in (see config.h for the generated file.)
4526 * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
4527 -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
4530 * docs/index.html: Add some useful links.
4531 * docs/17_intro/contribute.html: Fix broken links.
4533 1999-06-02 Benjamin Kosnik <bkoz@rhino.cygnus.com>
4535 * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
4536 paths. The rest of the world should be able to run this script
4539 * src/Makefile.am ($(generated_headers)): Remove comment.
4540 * Makefile*: Regenerate.
4542 * bits/std_locale.h: Remove detritus.
4543 * bits/localefwd.h: Add <cctype> include to undefine the isspace
4546 1999-06-01 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4548 * src/gen-c++config.cc: New file. Making c++config.h at configure
4549 time by catting this file (nee bits/config.h) with the build
4550 directories config.h. This is not a complete or perfect solution
4551 but is better than what was in place previously.
4552 * bits/c++config.h: Rename/move to above.
4553 * src/Makefile.am (headers): Remove c++config.h.
4554 (myinstallheaders). Add.
4555 * Makefile*: Regenerated.
4557 * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
4558 definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
4559 declared only if not present in the host's wchar.h.
4561 * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
4563 * bits/std_cmath.h: Define out, for the moment. Linux has no
4564 __buitin_fsqrtl? Probably need some kind of configure trickery
4567 * src/Makefile.*: Regenerate.
4568 * bits/c++config.h: Add config.h include.
4570 * bits/std_cwchar.h: Remove remaining #error guard.
4572 * acconfig.h: Add bits for HAVE_LC_MESSAGES.
4574 * configure.in (LIBS): Replace previous effort for mbstate_t and
4575 strtold/strtof with this implementation.
4577 1999 06-01 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4579 * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
4582 1999-05-28 Benjamin Kosnik <bkoz@cygnus.com>
4584 * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
4585 for determining mbstate_t differences across various hosts not
4588 1999-05-26 Benjamin Kosnik <bkoz@nabi.net>
4590 * bits/locale_facets.tcc: Change to ifdef.
4592 * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
4593 * bits/std_fstream.h (filebuf::setbuf): Same.
4595 * bits/std_istream.h: Add ws declaration.
4596 * bits/istream.tcc: Stub out definition.
4598 * docs/index.html: Fix broken link for design.txt.
4600 * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
4601 then set _G_NEED_MBSTATE_T.
4602 * configure: Regenerate.
4603 * bits/c++config.h: Move mbstate_t define.
4604 * bits/std_cwchar.h: To here.
4606 1999-05-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4608 * bits/std_sstream.h:
4609 basic_stringbuf<>::basic_stringbuf: fix.
4610 basic_stringbuf<>::setbuf:
4611 remove the temporary __string_type object,
4612 remove the unnecessary dynymic_cast in the return value,
4613 change the type of the returned value from __streambuf_type*
4614 to basic_stringbuf<_CharT, _Traits, _Alloc>*.
4616 1999-05-25 Phil Edwards <pedwards@ball.com>
4618 * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*.
4620 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4622 * bits/std_cmath.h: Tweak. Add float versions of the math functions
4623 in <math.h>. <cmath> still incomplete and incorrekt.
4625 1999-05-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4627 * mknumeric_limits (LDFLAGS): set appropriate link flags.
4629 1999-05-23 Phil Edwards <pedwards@ball.com>
4631 * docs/17_intro/howto.html: Added links to text docs,
4633 * docs/21_strings/howto.html: Updated sections and links.
4634 * docs/21_strings/{gotw29a.txt,stringtok_h.txt}: Added.
4635 * docs/faq/index.html: Updated what-works for sixth
4636 snapshot. Also a number of "internal" links have been
4637 fixed, now that the web pages are the docs directory...
4638 * docs/faq/index.txt: Regenerated.
4640 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4642 * bits/basic_string.h: Add Nathan's documentation on the string class.
4644 * testsuite/27_io/ios_members_static.cc: New file, for testing
4645 ios_base::sync_with_stdio.
4647 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4649 * bits/std_locale.h: Simplify includes.
4650 * bits/loccore.h: Delete.
4651 * bits/localefwd.h: Renamed, trimmed.
4652 * bits/locfacets.h: Delete.
4653 * bits/locale_facets.h: Rename, expanded.
4654 * bits/loccore.tcc: Deleted.
4655 * bits/locfacets.tcc: Deleted.
4656 * bits/locale_facets.tcc: Resultant merge.
4657 * bits/std_fstream.h: Modify include.
4658 * bits/ostream.tcc: Same.
4659 * bits/istream.tcc: Same.
4661 * src/locale-inst.cc: And here.
4662 * src/locale.cc: Ditto.
4663 * src/Makefile.am: Updated.
4664 * src/Makefile.in: Rengenerated.
4666 * bits/std_istream.h: Move istream::sentry ctor definition.
4667 * bits/istream.tcc: Move istream::sentry ctor here.
4668 Add more detailed locale include here for ctype member functions.
4669 * bits/ostream.tcc (std): And here.
4671 * bits/sbuf_iter.h: Include std_streambuf.h
4673 * bits/locfacets.h: Start separating this into a localeimp.h file.
4674 * bits/loccore.h: Start separating this into a localefwd.h file.
4675 Add std_climits for CHAR_BIT.
4677 * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
4679 * bits/char_traits.h: Tweak.
4681 * bits/ios_base.h: Remove INT_MAX, use 1<<16.
4683 * bits/std_ostream.h: Remove c++config.h include.
4684 * bits/std_istream.h: Same.
4685 * bits/std_streambuf.h: Same.
4686 * bits/std_fstream.h: Same.
4687 * bits/std_sstream.h: And here.
4689 * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
4690 * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
4691 * bits/fpos.h: Tweak, format.
4693 * std/ciso646: New file.
4694 * bits/std_ciso646.h: New file.
4695 * src/Makefile.am (std_headers): Add ciso646.
4696 (headers): Add bits/std_ciso646.h.
4697 * src/Makefile.in: Regenerate.
4698 * testsuite/17_intro/header_ciso646.cc: New file, disable
4701 * bits/fpos.h: Remove libio.h include.
4702 * bits/basic_file.h: And here.
4703 * bits/std_ios.h: Put here.
4705 * src/ios.cc: Simplify includes, tweak.
4706 * bits/std_ios.h: Simplify include order.
4707 * bits/ios_base.h: Modify ios_base::failure.
4709 * stl/bits/std_numeric.h: Change include from stl_iterator to
4712 1999-05-19 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4714 * std/iostream: Remove static member __ioint.
4715 * bits/std_iostream.h: Put here.
4717 * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
4718 * stl/bits/stl_algobase.h: Same.
4719 * testsuite/27_io/iostream_objects.cc: Regression tests.
4720 * testsuite/27_io/hello.cc: Remove, subset of above.
4722 1999-05-19 Phil Edwards <pedwards@ball.com>
4724 * docs/index.html: Tweak, update.
4726 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4728 * docs/17_intro/RELEASE-NOTES: remove outdated
4729 documentation about numeric_limits. Correct CXXINCLUDE setting
4732 1999-05-18 Phil Edwards <pedwards@ball.com>
4734 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
4735 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
4736 27_io}/howto.html: Created, with some initial entries.
4737 * docs/faq/index.html: Fixed some links.
4738 * docs/faq/index.txt: Regenerated.
4740 1999-05-18 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4742 * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
4744 * docs/17_intro/RELEASE-NOTES: Update.
4745 * docs/index.html: Correct link to mailing list help page, update News.
4746 * docs/faq/index.html: Change fifth to sixth for snapshot.
4748 * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
4749 install $(top_builddir)/bits/std_limits.h into
4750 $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
4751 Makefile.am changes.
4752 * *Makefile*: Regenerate using automake.
4754 * mkcheck (LOG_FILE): Fix filebuf directory oddness.
4755 * testsuite/27_io/filebuf.cc: Same.
4757 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4759 * docs/17_intro/CHECKLIST: update.
4760 * docs/17_intro/TODO: update.
4762 1999-05-17 Phil Edwards <pedwards@ball.com>
4764 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
4765 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
4766 27_io}/howto.html: Created, with some initial entries.
4767 * docs/faq/index.html: Fixed some links.
4768 * docs/faq/index.txt: Regenerated.
4770 1999-05-17 Benjamin Kosnik <bkoz@unhappy.cygnus.com>
4772 * src/Makefile.am (myinstallheaders): Missed removing missing.h.
4773 * Makefile.in*: Regenerate.
4775 1999-05-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
4777 * bits/std_streambuf.h: Same.
4779 * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
4780 * bits/locfacets.h (std): Same.
4781 * bits/sstream.tcc: Same.
4782 * testsuite/27_io/stringstream.cc: Tweak.
4784 * testsuite/27_io/filebuf.cc: Adjust.
4785 * testsuite/21_strings/capacity.cc (test01): Add more
4786 string::reserve tests.
4788 * bits/c++config.h: Remove broken CCTYPE.
4789 * bits/std_cctype.h: Tweak, remove de-macroization, enable
4790 sequestered topper implementation.
4791 * bits/std_cwctype.h: Same.
4793 * bits/missing.h: Remove.
4794 * bits/std_locale.h: Remove missing.h include.
4796 * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
4798 * src/Makefile.am (headers): Add bits/std_cwctype.h.
4799 INCLUDES: Add top_builddir.
4800 * src/Makefile.in: Regenerate.
4802 * Makefile.am: Add check and check-install as new targets.
4803 * testsuite/make_check_libfree++: Move to. . .
4805 * configure.in: Tweak versions.
4806 * mknumeric_limits: Set paths correctly.
4808 1999-05-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4810 * src/Makefile.in (myinstallheaders): add rule to install
4813 * bits/slice.h (class slice): don't const-qualify data members
4814 since the copy and assignment operator is implicitly used. The
4815 valarray specification is definitively a bad one.
4817 * Makefile.in (generate-limits-sources): fix typo.
4819 * docs/text/TODO: update.
4820 * docs/text/CHECKLIST: update.
4822 * bits/gslice.h (gslice): fix bugglet.
4823 (gslice::gslice): set _M_index_size to 0 whenever given lengths
4826 * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
4827 * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
4828 [Note: **/Makefile.in should be generated from the corresponding
4829 Makefile.am. The current situation is a litte chaotic. ]
4831 1999-05-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4833 * mknumeric_limits: tweak.
4835 * Makefile.in (all): add target generate-limits-sources.
4836 (generate-limits-sources): make a directory bits/ in top_builddir
4837 where the generated std_limits.h is put; generate limitsMEMBERs.cc
4838 directly under $(top_builddir)/src. Remains to put the appropriate
4839 rule for installing std_limits.h.
4841 * src/Makefile.in (headers): remove bits/std_limits.h to this list.
4842 (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
4843 now generated at build-time in the build directory
4844 (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
4845 * src/Makefile.am: reflect changes in src/Makefile.in
4847 1999-05-12 Phil Edwards <pedwards@ball.com>
4849 * docs/faq/index.html: Add more entries (5.4,5.5), finish
4850 all but one empty entry. Add links for HOWTOs, but no files yet.
4851 (Corrected HOWTO links are for bkoz's new scheme.)
4852 * docs/faq/index.txt: Regenerated.
4854 1999-05-12 Benjamin Kosnik <bkoz@happy.cygnus.com>
4856 * testsuite/17_intro/headers.cc: New file.
4857 * stl/bits/std_queue.h: Change stl_bvector.h include path.
4858 * bits/std_cwctype.h: New file.
4860 * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
4862 1999-05-11 Benjamin Kosnik <bkoz@loony.cygnus.com>
4864 * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
4865 Check __USE_MALLOC before defining specializations containing
4866 __default_alloc_template.
4867 * src/stl-inst.cc: Here too.
4869 * bits/basic_string.h: Change.
4871 * testsuite/make_check_libfree++: More tweaks.
4872 * testsuite/21/capacity.cc: New file.
4874 * src/string.cc: Rename to be consistent with other inst files.
4875 Rename to string-inst.cc.
4876 * src/string*.cc: Change include.
4877 * src/wstring.cc: Rename to wstring-inst.cc.
4878 * src/wstring*.cc: Ditto.
4879 * src/Makefile.in: Also here.
4880 * src/Makefile.am: Ditto.
4882 * src/traits.cc: Remove.
4883 * src/wtraits.cc: Same.
4885 Try a new way of organizing documentation, one with synchronicity
4886 between testsuites and docs subdirectories, and see who yelps.
4887 * docs/html: Remove, use chapter and subject specific directories
4888 instead of forcing things immediately into format of
4892 * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
4893 directory and sort by filename and extension.
4894 * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
4895 22_locale, 23_containers, 24_iterators, 25_algorithms,
4896 26_numerics, 27_io: Add.
4897 * docs/17_intro/*: Populate with all the text files. . .
4898 * docs/index.html: Construct.
4900 * testsuite/*: Update with same names as the docs subdir.
4901 * testsuite/results: Where to stash conformance results for the
4902 different snapshots, so that progress/size/speed issues can be
4905 1999-05-10 Benjamin Kosnik <bkoz@loony.cygnus.com>
4907 * src/string.cc: Add _S_copy_chars instantiation, as well as
4908 string::binary operators !=, ==, etc.
4910 * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
4911 * src/Makefile.in (CXXFLAGS): Same here.
4912 * testsuite/make_check_libfree++ (CXX_FLAG): And here.
4914 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
4916 * src/string.cc: Add missing member functions to instantiation list.
4918 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
4920 * src/misc-inst.cc: Remove unused string instantiations.
4922 * bits/string.tcc: Tweak, fix.
4923 * bits/basic_string.h: Format. Fix reported error with c_str().
4925 * testsuite/make_check_libfree++: Tweak for shared builds.
4926 * testsuite/21/operations.cc: New file for testing c_str() etc.
4928 1999-05-06 Benjamin Kosnik <bkoz@cygnus.com>
4929 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4931 * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
4932 an iterator class. Delineate pointer versus iterator differences
4934 * 23/vector_capacity.cc: New file, tests for above.
4936 1999-05-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4938 * mknumeric_limits: Fix typo. 'unsigned lont' should read
4940 * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
4941 generated by mknumeric_limits to the list. Now std_limits.h is
4943 * src/Makefile.in (generate-numeric-limits): new target to handle
4944 automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
4945 (all): add target generate-numeric-limits.
4946 (libstdc___la_OBJECTS): add limitsMEMBERS.lo
4947 (libstdc___la_SOURCES): add limitsMEMBERS.cc
4949 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
4952 * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
4953 mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
4954 * bits/locfacts.h: Here.
4956 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
4957 Ulrich Drepper <drepper@cygnus.com>
4959 Solaris build issues.
4960 * bits/c++config.h: Define new macros, _G_USE_STRTOF and
4963 * bits/locfacets.tcc (num_get::do_get): Tweak long double and
4964 float overloads to use the above macros. Account for the lack of
4965 strtold on some systems, and revert back to using sscanf.
4967 1999-05-04 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
4969 * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
4970 Use strtoul/strtoull for unsigned types. Check the ranges for
4971 short/unsigned short and if necessary for int/unsigned int.
4973 1999-05-04 Benjamin Kosnik <bkoz@cygnus.com>
4975 * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
4976 to generate bits/std_limits.h now, as the SGI std_limits.h is
4977 being depricated. Not done, but should be done immediately: need
4978 to make sure this script is run as part of the configuration
4979 process, because without it "make" in a configured build directory
4980 will fail. Also tweaked: added a space for float_round_style, and
4981 used static_cast of zero to default-initialize, which should be ok
4982 according to the standard. (see 8.5 p5 and 20.1.3).
4983 * mknumeric_limits (OUT_C): Need this for x86 long
4986 * bits/basic_file.h: Include libio.h, not libioP.h.
4987 * src/basic_file.cc: And add libioP.h include here, so that
4988 _IO_init, et. al are well-declared.
4990 * testsuite/make_check_libfree++ (LIB_PATH): Test installed
4991 headers, not source directory headers.
4993 * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
4994 for ext/*. Also add basic_file.h.
4995 * src/Makefile.in (headers): Same.
4997 * bits/std_string.h: Reduce dependencies for faster
4998 pre-processing. Move istream and ostream specific defines into
4999 istream.tcc and ostream.tcc respectively.
5000 * bits/string.tcc: And here.
5001 * bits/basic_string.h: Move getline inline out-of-line, and to
5003 * bits/istream.tcc: Move string::getline and operator>> here.
5004 * bits/ostream.tcc: And here too.
5006 * bits/utility.h: Remove, as clashes with a standard header. Put
5007 __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
5008 being, until this can be combined with SGI's approach.
5009 * bits/string.tcc: Add macros, as above.
5010 * bits/loccore.h: Add _Count_ones defines.
5011 * bits/std_string.h: And here too.
5012 * bits/std_locale.h: And here.
5013 * bits/std_ios.h: Take out include here.
5014 * src/Makefile.am (headers): Remove utility.h
5015 * src/Makefile.in (headers): Remove utility.h
5017 * stl/bits/*: Update to SGI STL 3.20.
5018 * stl/ext/pthread_alloc: Delete this file.
5020 1999-05-04 Phil Edwards <pedwards@ball.com>
5022 * docs/faq/html/index.html: Add more entries
5023 * docs/faq/html/index.txt: regenerated.
5025 1999-05-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5027 * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
5029 1999-04-29 Benjamin Kosnik <bkoz@haight.cygnus.com>
5031 * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
5032 from Ulrich and Nathan. Remove extraneous string class usage,
5033 tweak, clean, simplify and consolidate with a eye towards removing
5034 duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
5035 Not done: dealing with leading zeros, wchar_t work.
5036 * bits/locfacets.h: And here too.
5040 1999-04-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5043 * docs/faq/: New directory.
5044 * docs/faq/html/: Likewise.
5045 * docs/faq/text/: Likewise.
5046 * docs/faq/html/index.html: New file.
5047 * docs/faq/html/index.txt: Likewise. Generated from
5048 docs/faq/html/index.html by lynx.
5050 1999-04-28 Benjamin Kosnik <bkoz@happy.cygnus.com>
5051 Ryszard Kabatek and Branko Cibej
5053 * bits/locfacets.tcc: Modify.
5055 1999-04-27 Benjamin Kosnik <bkoz@happy.cygnus.com>
5057 * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
5058 conformant to 14882, wrap non-standard extensions with
5059 _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
5060 * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
5062 * testsuite/27/istringstream_formatted.cc: Add tests.
5064 * bits/locfacets.h: Remove cruft from _Format_cache, continue
5065 commenting, simplify.
5066 * bits/locfacets.tcc: Same.
5068 1999-04-27 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5069 * bits/locfacets.tcc (num_get::do_get):
5070 Fix the sscanf format parameter
5071 for long long 'll' (as in C9X) instead of 'l'.
5072 Fix the order of sscanf format parameters: "%dl" --> "%ld".
5073 Change the type of the local variable '__conv' from 'string'
5074 to 'const char*' and adapt the change.
5076 1999-04-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
5078 * bits/locfacets.h: Document _Format_cache, and name data members
5079 after the corresponding functions in numpunct. For instance:
5080 _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
5081 Break apart _M_boolnames{2] into _M_truename and _M_falsename.
5082 * bits/locfacets.tcc: Same.
5084 * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
5085 stop parsing--store for later analysis.
5086 * testsuite/27/istringstream_formatted.cc: Add cases.
5088 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5090 * bits/valarray_meta.h: tweak.
5091 (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
5092 _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
5093 happy -- boggus warning.
5094 * bits/std_valarray.h: Fix.
5095 (valarray<T>::shift): Fix. Update comment.
5096 (valarray<T>::cshift): Fix.
5098 1999-04-23 Benjamin Kosnik <bkoz@cygnus.com>
5100 * testsuite/27filebuf-2.txt: Delete.
5101 * testsuite/27/filebuf.cc: Put output files directly into the
5102 correct subdirectory (27).
5104 Alexandre Petit-Bianco <apbianco@cygnus.com>
5105 * testsuite/make_check_libfree++: Check generated (*.txt) file
5106 against stored results file (*.tst).
5108 1999-04-22 Benjamin Kosnik <bkoz@nabi.net>
5110 * bits/locfacets.tcc: Fix.
5112 * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
5113 (filebuf::overflow): Simplify.
5114 (filebuf::xsputn): Correctly handle indeterminate state.
5116 * testsuite/27/istringstream_formatted.cc: Tweak.
5117 * testsuite/27/filebuf.cc: Tweak.
5118 * testsuite/27/filebuf-3.tst: Correct: this is the canonical
5119 results file, please use this in the future to guarantee filebuf
5120 positioning accuracy.
5121 * testsuite/27/filebuf-2.tst: Same.
5123 1999-04-21 Benjamin Kosnik <bkoz@cygnus.com>
5125 * bits/fstream.tcc (filebuf::xsputn): Add.
5126 * bits/std_fstream.h: Declare.
5128 * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
5129 calls using ios_base::trunc.
5131 * bits/sstream.tcc (streambuf::overflow): Fix crasher.
5133 * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
5134 * testsuite/27/27stringstream.cc: Same.
5135 * testsuite/27/27stringbuf.cc: More tweaks.
5136 * testsuite/27/27filebuf-2.txt: Remove.
5138 * testsuite/27/27filebuf-1.tst: Append, to force byte size over
5139 BUFSIZE so that overflows/underflow can be tested with default
5141 * testsuite/27/27filebuf-1.tst: Add.
5143 * testsuite/*/*: Remove pre-pended chapter names, as they
5144 duplicate the chapter info contained in the enclosing directory
5147 1999-04-20 Benjamin Kosnik <bkoz@cygnus.com>
5149 * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
5150 to sputc conditions.
5152 * bits/ios_base.h: Define here.
5153 * src/ios.cc (ios_base::_M_clear): Remove hack.
5154 * bits/basic_ios.h: Fix rdstate().
5156 * bits/sstream.tcc (streambuf::seekoff): Fix.
5157 * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
5159 * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
5160 * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
5161 * testsuite/27/27stringstream.cc: Same.
5162 * testsuite/27/27stringbuf.cc: Same.
5163 * testsuite/27/27istringstream_formatted.cc: Same.
5164 * testsuite/27/27filebuf.cc: Same.
5166 * bits/locfacets.h: Remove specializations for messages<char> and
5167 messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
5168 * src/locale.cc: Remove definitions for above.
5169 * src/misc-inst.cc: Revert, take out iomanip.h include.
5170 * bits/std_iomanip.h: Tweak, format.
5172 1999-04-19 Benjamin Kosnik <bkoz@cygnus.com>
5174 * bits/loccore.h: Format, move inline.
5175 * bits/locfacets.tcc: Same.
5176 * bits/locfacets.h: Same.
5178 Ulrich Drepper <drepper@cygnus.com>
5179 * aclocal.m4: Re-generate.
5180 * configure, configure.in: Same.
5181 * m4/lc_messages.m4: New file.
5183 1999-04-18 Benjamin Kosnik <bkoz@cygnus.com>
5185 * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
5186 * bits/sstream.tcc: Tweak.
5188 * std/iostream: Put __ioinit inside macro guards.
5190 * src/stlinst.cc: Delete and move to . . .
5191 * src/stl-inst.cc: New file, plus wrapping in namespace std.
5192 * src/Makefile.in: Change.
5193 * src/Makefile.am: Same.
5194 * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
5196 * testsuite/make_check_libfree++: Efficiently format for minimal
5197 space. Enforce stricter execution tests by enabling
5200 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
5202 * docs/text/RELEASE-NOTES: Fix include typo.
5204 * src/Makefile.am (headers): Add istream.tcc.
5205 * src/Makefile.in (headers): Add istream.tcc.
5207 * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
5209 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
5211 * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
5212 * bits/locfacets.h (num_get::_M_extract): New functin:
5213 consolidate logic for do_get(...) members.
5215 * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
5216 * testsuite/27/27istringstream_formatted.cc: Add.
5218 1999-04-16 Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de>
5220 * src/basic_file.cc (__basic_file::open): Fix thinko in
5221 _G_HAVE_IO_FILE_OPEN bits.
5222 * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
5223 * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
5224 * src/complex.cc (FCT): Qualify all functions with global namespace.
5225 * src/locale.cc: Don't qualify memcpy and setlocale.
5226 * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
5227 (__length_error): Likewise, for length_error.
5228 * src/stlinst.cc: Qualify instantiations with std::.
5230 1999-04-15 Benjamin Kosnik <bkoz@cygnus.com>
5232 * C++STYLE: Add ChangeLog guidelines for member functions.
5235 * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
5236 DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
5237 docs/text and made less strident.
5239 * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
5240 * bits/std_fstream.h: Same.
5243 * bits/locfacets.h: Touch.
5245 1999-04-15 Ulrich Drepper <drepper@cygnus.com>
5247 * math/cexp.c (cexp): Use NAN instead of nan("").
5248 Reported by joel reed <joelreed@yahoo.com>.
5250 * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
5251 _G_IO_IO_FILE_VERSION. Use these types in the prototypes.
5252 * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
5253 instead of #if cascades.
5254 * libio/genops.c: Likewise.
5255 * libio/ioseekoff.c: Likewise.
5256 * libio/ioseekpos.c: Likewise.
5257 * libio/strops.c: Likewise.
5258 Patch by Chip Salzenberg <chip@perlsupport.com>.
5260 1999-04-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5262 * docs: New directory.
5263 * docs/html: Likewise.
5264 * docs/text: Likewise.
5265 * docs/image: Likewise.
5267 * bits/std_cmath.h: Add new functions.
5268 (abs): overload for long and double.
5269 (div): overload for long.
5271 * bits/valarray_array.h: Fix.
5272 * bits/gslice.h: Adjust friend.
5273 * bits/slice_array.h: likewise.
5274 * bits/valarray_meta.h: likewise.
5276 1999-04-13 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5278 * bits/locfacets.h: More changes, for num_get for insertion
5279 operators for integral types. Comment fields in _Format_cache.
5280 * bits/locfacets.tcc: And here too: add preliminary long version.
5281 * testsuite/27/27istringstream_formatted.cc: Add cases.
5283 1999-04-13 Mark Elbrecht <snowball3@usa.net>
5285 * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
5286 AC_LC_MESSAGES macro.
5287 * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
5288 supports LC_MESSAGES.
5289 * config.h.in: Add entry for HAVE_LC_MESSAGES.
5290 * src/locale.cc (locale::_S_normalize_category): Use the
5291 HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
5292 _G_NO_CLOCALE_HAS_MESSAGES.
5293 * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
5294 '?:' from '?:\\' so any path beginning with a drive name matches.
5296 1999-04-12 Mark Elbrecht <snowball3@usa.net>
5298 * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
5300 1999-04-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5302 * bits/locfacets.h: Tweak.
5303 * bits/locfacets.tcc(do_get): Clean/fix bool method.
5305 * testsuite/21/21nonmember.cc: Same.
5306 * testsuite/21/21compare.cc: Fix license.
5307 * testsuite/27/27istringstream_formatted.cc: New file.
5309 1999-04-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5311 * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
5312 _BinBase2: new template classes; put in there to work around a
5313 compiler limitation. The whole valarray architecture is now
5316 1999-04-08 Benjamin Kosnik <bkoz@haight.constant.com>
5318 * bits/locfacets.tcc: Fix, format.
5319 * bits/locfacets.h: Fix.
5320 * src/locale.cc: Same, plus format.
5322 * bits/basic_string.h: Re-add definition here.
5323 * src/string.cc: Take out.
5325 1999-04-08 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5327 * bits/std_valarray.h: tweak.
5328 * bits/valarray_array.h tweak. use _Expr.
5329 * bits/slice_array.h: likewise.
5330 * bits/gslice_array.h: likewise.
5331 * bits/mask_array.h: likewise.
5332 * bits/indirect_array.h: likewise.
5333 * bits/valarray_meta.h: tweak.
5334 _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
5335 _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
5336 _IClos: new template classes.
5337 _Meta: renamed to _Expr. Made template with args.
5338 _Constant: made template with two args.
5340 1999-04-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5342 * bits/valarray_array.h: tweak.
5344 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
5346 * bits/basic_string.h: Whoops--fix blip.
5348 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
5350 Update to SGI STL 3.13
5351 * bits/basic_string.h: Add __get_c_string definition.
5352 * stl/bits/stl_range_errors.h: New file.
5353 * stl/bits/std_bvector.h: Same.
5354 * stl/bits/*: Update.
5356 1999-04-04 1999 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5358 * bits/slice_array.h: tweak.
5359 * bits/gslice_array.h: tweak.
5360 * bits/mask_array.h: tweak.
5361 * bits/indirect_array.h: tweak.
5362 * bits/valarray_array.h: tweak.
5363 (__valarray_copy): replace copy with memcpy.
5364 * bits/std_valarray.h: use __valarray_copy whenever possible.
5365 use __valarray_fill instead of fill.
5367 1999-04-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5369 * src/gen-num-limits.cc: new file
5370 * mknumeric_limits: Ditto.
5372 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
5374 * bits/locfacets.tcc: Do a stub version of num_get for short, int,
5376 * bits/locfacets.h: Add num_get::get methods overloaded for int
5377 and short, to resolve ambiguous overloads in istream insertion
5380 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
5382 * bits/std_istream.h: Fix.
5383 * bits/istream.tcc: Fix.
5385 1999-03-30 Philip Martin <pm@corris.dircon.co.uk>
5387 * testsuite/24/24iterator.cc: fix ++/-- tests
5389 1999-03-29 Benjamin Kosnik <bkoz@cygnus.com>
5391 * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
5392 * bits/ostream.tcc: Same.
5394 * bits/std_istream.h: Bring over ostream changes, implement member
5395 functions. Baseline.
5396 * bits/istream.tcc: New file.
5398 1999-03-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5400 * bits/gslice.h (class gslice): fix friends template.
5402 1999-03-23 Benjamin Kosnik <bkoz@cygnus.com>
5404 * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
5406 * bits/ostream.tcc: Same.
5408 * bits/std_istream.h: Minor tweaks.
5410 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
5412 * src/locale-inst.cc: Remove duplicate instantiations.
5413 * bits/locfacets.tcc: Tweak definitions of static member.
5415 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
5417 * bits/std_fstream.h: Format: prepend "__" in front of
5418 non-standard typedefs.
5419 * bits/fstream.tcc: Match.
5420 * bits/std_streambuf.h: Format: prepend "__" in front of
5421 non-standard typedefs.
5423 * bits/sstream.tcc: Match.
5424 * bits/std_istream.h: Format.
5425 * src/locale-inst.cc: Add num_get instantiations.
5427 * bits/std_sstream.h: Fix crash in stringstreams. Remove member
5428 _M_sb, a basic_stringbuf object, and use the basic_ios pointer
5429 _M_streambuf instead. Make initializations sane. Fix
5430 allocation/deallocation of _M_streambuf.
5431 * bits/std_ostream.h: Fix initialization code.
5432 (ctor): Eliminate redundant this->init(), let base class initialize.
5433 (default ctor): New. Assume base classes already initialzed.
5434 * bits/std_istream.h: Parallel work to ostream.
5435 (ctor): Eliminate redundant this->init(), let base class initialize.
5436 (default ctor): New. Assume base classes already initialzed.
5437 Fix initialization of basic_iostream.
5439 * bits/std_fstream.h: While we're at it, make initializations sane
5440 here too. Now matches sstream.h.
5442 * bits/string.tcc: Fix crash in basic_string::compare.
5443 * bits/basic_string.h: And here.
5444 * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
5446 * testsuite/make_check_libfree++: Check shared as well.
5447 * testsuite/27/27stringstream.cc: Add bits.
5448 * testsuite/27/27boolfmt.cc: Add bits.
5449 * testsuite/27/27octfmt.cc: Add bits.
5451 1999-03-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
5453 * configure.in (USE_LONG_DOUBLE): signbitl link error.
5455 * bits/locfacets.h: Fix errors that cause build problems
5456 with current egcs (template parameters have class scope).
5457 * bits/locfacets.tcc: Same.
5458 * src/locale-inst.cc: Same, clean.
5459 * src/misc-inst.cc: Same, clean.
5461 1999-03-17 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5463 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
5464 standard. Re-apply this previous patch.
5466 1999-03-17 Philip Martin <pm@corris.dircon.co.uk>
5468 * bits/basic_string.h: Use __normal_iterator<> for iterators.
5469 * bits/std_sstream.h: Support __normal_iterator<> iterators.
5470 * bits/string.tcc: Ditto.
5471 * src/misc-inst.cc: Ditto.
5472 * src/locale-inst.cc: Ditto.
5473 * stl/bits/stl_iterator.h: Add __normal_iterator<>.
5474 * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
5475 * testsuite/24/24iterator.cc: Add test cases for basic_string and
5478 1999-03-16 Benjamin Kosnik <bkoz@cygnus.com>
5480 * bits/locfacets.tcc: Remove macro hack.
5481 * bits/locfacets.h: Tweaks.
5482 * src/misc-inst.cc: Weed out locale-related instantiations.
5483 * src/locale-inst.cc: Same.
5485 * RELEASE-NOTES: Make more changes.
5486 * bits/c++config.h: Bump version number.
5488 * testsuite/make_check_libfree++: Collect diagnostics.
5490 * bits/std_ostream.h: Fix ostream initialization/destruction
5491 problem, related to dtor cleanup and new cached facets, agggggggh.
5492 * bits/ostream.tcc: Tweak.
5493 * bits/locfacets.h: Remove all friends of iostream classes.
5494 * bits/ios_base.h: Same.
5495 * bits/streambuf.tcc: Tweak.
5496 * bits/std_streambuf.h: Tweak.
5497 * bits/std_fstream.h: Tweak.
5498 * bits/fstream.tcc: Tweak.
5499 * src/stdstreams.cc: Tweak.
5500 * src/ios.cc: Close streams.
5502 * math/Makefile.in: Add missing files for shared link errors.
5503 * math/Makefile.am: Same.
5505 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
5507 * src/locale-inst.cc: More wchar_t instantiations.
5508 * src/misc-inst.cc: Missed a few bits.
5509 * testsuite/make_check_libfree++: Add static and shared runs.
5510 * src/ios.cc: Add clarity to ios_base::Init::~Init().
5512 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
5514 * bits/std_ostream.h: Format, expunge, simplify. Add cached
5515 facets. Resolve link errors.
5516 * bits/ostream.tcc: Same.
5517 * src/misc-inst.cc: Add ostream, wostream instantiations.
5518 * src/Makefile.am: Add missing bits for stdstreams.cc.
5519 * src/Makefile.in: Same.
5520 * bits/std_iosfwd.h: Format.
5521 * bits/locfacets.h (num_put): Add basic_ostream as a friend to
5522 num_put so that cached _M_fnumput pointer can be deleted in
5523 basic_ostream's dtor. Now everybody plays nice.
5525 1999-03-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5527 * bits/gslice.h (class gslice): Make friends valarray,
5528 gslice_array and _GliceExpression.
5530 1999-03-11 Benjamin Kosnik <bkoz@cygnus.com>
5532 * RELEASE-NOTES: Update.
5533 * src/ios.cc: Use do proper init.
5534 * bits/std_streambuf.h: Tweak.
5535 * bits/std_iostream.h: Take out static member.
5536 * std/iostream: Put here.
5537 * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
5538 * bits/std_istream.h: Ditto.
5539 * bits/basic_ios.h: Format.
5540 * bits/ostream.tcc(write): Fix.
5541 * bits/fstream.tcc: Fix stdstreams ctor to do a proper
5542 initialization of the fstream class.
5543 * src/stdstreams.cc: I'm baaaaaaaack.
5545 1999-03-10 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5547 * bits/ios_base.h: Correct comments. Add ios_base::init()
5548 functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
5549 * src/misc-inst.cc: Add instantiations here.
5550 * src/ios.cc: Clean.
5551 * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
5552 * src/stdstreams.cc: Delete this file, as now unnecessary.
5553 * bits/fstream.tcc: Add missing initialization bits for ctor.
5554 * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
5555 * src/Makefile.in (libstdc___la_OBJECTS): And here.
5557 * bits/streambuf.tcc: Tweak.
5558 * bits/sstream.tcc: Here too.
5560 * bits/fstream.tcc: And change definition as well.
5561 * bits/std_fstream.h: Change ctor.
5562 * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
5563 * bits/basic_file.h: Add declarations.
5565 * testsuite/27/27hello.cc: New file.
5567 * bits/std_ostream.h: Move flush() inline.
5568 * bits/ostream.tcc: From here.
5570 * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
5571 * bits/std_ios.h: Change include libio to only when necessary.
5572 * bits/fpos.h: Like here.
5573 * ios_base.h: And here.
5575 * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
5576 * bits/locfacets.tcc: Same.
5577 * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
5578 * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
5580 1999-03-09 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5582 * bits/basic_ios.h: Change _M_ctype to _M_fctype.
5584 * bits/std_streambuf.h: Clean, tweak.
5585 * bits/std_fstream.h: Same.
5586 * bits/std_sstream.h: Same.
5587 * bits/streambuf.tcc: Move most member functions out-of-line.
5588 * bits/fstream.tcc: Same.
5589 * bits/streambuf.tcc: Same.
5591 * bits/basic_file.h(filepos_cur): Set correctly.
5592 (filepos_beg): Same.
5593 (seekpos): Change to __c_streampos.
5594 * src/basic_file.cc (std): Change to __c_streampos.
5596 * testsuite/27/27filebuf.cc: Round one is finished.
5597 * testsuite/27/27filebuf-2.tst: New file, final output should match.
5598 * testsuite/27/27filebuf-3.tst: Same.
5600 1999-03-08 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5602 * bits/basic_file.h: Fix typo, add comments about what to expect
5603 from the various member functions in __basic_file.
5605 * bits/std_fstream.h: Re-do sync/underflow to work
5606 together. Change from sys_read to xsgetn and from sys_write to
5607 xsputn. As it should have been from the beginning. . .
5609 1999-03-06 Benjamin Kosnik <bkoz@haight.constant.com>
5611 * bits/c++config.h (__GLIBCPP__): Add versioning macro.
5613 * bits/basic_file.h(file_beg): New function.
5616 * testsuite/27/27filebuf.cc: Test in, out, in | out.
5617 * bits/std_fstream.h: More _M_mode refinements.
5618 (synch): Add bits for out mode only.
5619 * bits/std_streambuf.h(xsputn): Correct for filebufs.
5620 * bits/std_sstream.h: Ditto.
5622 1999-03-03 Benjamin Kosnik <bkoz@cygnus.com>
5624 * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
5625 * testsuite/27/27filebuf.cc: Modify.
5626 * bits/c++config.h: Fix.
5628 1999-03-02 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5630 * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
5631 code in place that diverges from the final standard, but has been
5632 brought up on the library mailing list.
5634 * bits/std_fstream.h(underflow): Position all three internal
5635 buffer pointers at the same initial position. Re-implement with
5636 basic_filebuf abstraction.
5640 * bits/std_sstream.h: Move _M_mode down into base class
5642 * bits/sstream.tcc: Ditto.
5643 * bits/std_streambuf.h: Ditto.
5645 * testsuite/27/27filebuf.cc: Tweak.
5647 1999-02-27 Benjamin Kosnik <bkoz@slap-happy.cygnus.com>
5649 * bits/std_sstream.h: Ditto.
5650 * bits/std_fstream.h: Fix blip.
5652 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
5654 * C++STYLE: Add cases.
5655 * bits/std_fstream.h: Format.
5656 * bits/std_streambuf.h: Ditto.
5657 * bits/std_sstream.h: Ditto.
5659 * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
5660 return type for _IO_file_seek and __basic_file::seek the same size.
5661 * bits/basic_file.h: Ditto.
5663 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
5665 * bits/fstream.tcc: Add include guards.
5666 * src/misc-inst.cc: Add instantiations for shared libes.
5667 * src/locale-inst.cc: Add instantiaions for use_facet.
5668 * bits/loccore.h: Remove specialization foward decls for
5669 use_facet<ctype>: perhaps add the whole lot of them later on.
5670 * bits/std_fstream.h: Fix.
5671 * bits/locfacets.h: Ditto.
5672 * src/stdstreams.cc: Disable wide streams for now.
5674 * src/Makefile.am (CXXFLAGS): Change up.
5675 * src/Makefile.in (CXXFLAGS): Ditto.
5677 1999-02-25 Benjamin Kosnik <bkoz@happy.cygnus.com>
5679 * src/basic_file.cc: Change to ios_base::seekdir from int.
5680 * bits/basic_file.h: Ditto.
5681 * bits/locfacets.h : Fix blip with new guard macros.
5683 1999-02-25 Benjamin Kosnik <bkoz@cygnus.com>
5685 * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
5686 * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
5688 * amm1/locale: Remove unused defines.
5689 * generic/locale: Ditto.
5690 * src/ios.cc: Ditto.
5691 * src/locale.cc: Ditto.
5692 * src/locale-inst.cc: Ditto.
5693 * src/localename.cc: Ditto.
5694 * src/stdstreams.cc: And here.
5696 * bits/c++config.h (_G_USE_WCHAR_T): Fix.
5697 * bits/loccore.h: Simplify, clean, add wchar_t guards.
5698 * bits/loccore.tcc: Ditto.
5699 * bits/locfacets.h: Ditto.
5700 * src/locale-inst.cc: Ditto.
5701 * bits/locfacets.tcc: Add do_put long long here.
5703 1999-02-24 Benjamin Kosnik <bkoz@cygnus.com>
5705 * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
5706 * bits/basic_ios.h: Clean. Replace _M_strbuf with
5707 _M_streambuf. Use cached _M_cvt in basic_streambuf.
5708 * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
5709 * bits/std_fstream.h: Tweak.
5711 * bits/char_traits.h: Remove fpos definitions from here. . .
5712 * bits/fpos.h: New file, put them here. Eventually, this may allow
5713 the severing of char_traits and fpos dependancies.
5714 * src/Makefile.in: Add fpos.h.
5715 * src/Makefile.am: Ditto.
5716 * bits/std_string.h: Add fpos.h include here.
5717 * bits/std_ios.h: And here.
5719 * bits/std_streambuf.h: Change _M_init to _M_initialized.
5720 * bits/ios_base.h: Remove cstdio include.
5721 * bits/std_ios.h: ... Place here.
5723 1999-02-23 Benjamin Kosnik <bkoz@loony.cygnus.com>
5725 * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
5726 * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
5728 * bits/basic_file.h: Comment, adjust arguments.
5729 * src/basic_file.cc: Ditto.
5731 * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
5732 type: check and convert accordingly. Re-interpet "resultant stream
5733 position" to indicate external byte sequence location, not internal
5736 1999-02-22 Benjamin Kosnik <bkoz@loony.cygnus.com>
5738 * mkcshadow: And change copyright here.
5739 * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
5740 dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
5741 stl_thread.h, and stl_iterator_base.h.
5742 * src/Makefile.in (CXXFLAGS): Ditto.
5743 * stl/backward/pthread_alloc.h: Remove.
5745 1999-02-19 Benjamin Kosnik <bkoz@loony.cygnus.com>
5747 * bits/std_streambuf.h (sungetc): Use standard defs for putback
5749 * bits/std_fstream.h (pbackfail): Correct.
5751 (seekoff): Implement.
5753 * testsuite/27/27filebuf.cc: Add test cases.
5755 1999-02-18 Benjamin Kosnik <bkoz@loony.cygnus.com>
5757 * bits/std_fstream.h: Go with basic_file's interfaces for dealing
5758 with the external buffers, and stop mucking around with setting
5759 and re-setting the external buf's pointers. Aka, clarity and
5760 simplicity rule the day.
5761 * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
5762 Remove partial result and support code.
5764 1999-02-18 Ulrich Drepper <drepper@cygnus.com>
5766 * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
5767 list of function which have to be replaced.
5768 Remove expf from list of functions to test for.
5769 Define USE_LONG_DOUBLE in case the libm has partial support for long
5771 * Makefile.in: Regenerated.
5772 * config.h.in: Likewise.
5773 * configure: Likewise.
5774 * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
5775 * libio/Makefile.in: Regenerated.
5776 * src/Makefile.in: Regenerated.
5777 * string/Makefile.in: Regenerated.
5778 * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
5779 atan2f.c, expf.c, and $(EXTRA_yes).
5780 (EXTRA_yes): Add signbitl.c mycabsl.c.
5781 (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
5782 (libmath_la_SOURCES): remove long double versions.
5783 * math/Makefile.in: Regnerated.
5784 * math/atan2f.c: New file.
5785 * math/copysignf.c: New file.
5786 * math/expf.c: New file.
5787 * math/hypot.c: New file.
5788 * math/hypotf.c: New file.
5789 * math/hypotl.c: New file.
5790 * math/cargf.c: Use correct function and macro names.
5791 * math/ccos.c: Likewise.
5792 * math/ccosh.c: Likewise.
5793 * math/ccoshf.c: Likewise.
5794 * math/ccoshl.c: Likewise.
5795 * math/cexp.c: Likewise.
5796 * math/cexpf.c: Likewise.
5797 * math/cexpl.c: Likewise.
5798 * math/clog.c: Likewise.
5799 * math/clog10.c: Likewise.
5800 * math/clog10f.c: Likewise.
5801 * math/clog10l.c: Likewise.
5802 * math/clogf.c: Likewise.
5803 * math/clogl.c: Likewise.
5804 * math/copysignf.c: Likewise.
5805 * math/csin.c: Likewise.
5806 * math/csinf.c: Likewise.
5807 * math/csinh.c: Likewise.
5808 * math/csinhf.c: Likewise.
5809 * math/csinhl.c: Likewise.
5810 * math/csinl.c: Likewise.
5811 * math/csqrt.c: Likewise.
5812 * math/csqrtf.c: Likewise.
5813 * math/csqrtl.c: Likewise.
5814 * math/ctan.c: Likewise.
5815 * math/ctanf.c: Likewise.
5816 * math/ctanh.c: Likewise.
5817 * math/ctanhf.c: Likewise.
5818 * math/ctanhl.c: Likewise.
5819 * math/ctanl.c: Likewise.
5821 1999-02-17 Benjamin Kosnik <bkoz@cygnus.com>
5823 * testsuite/27/27filebuf.cc: Add cases.
5824 * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
5825 * bits/std_streambuf.h: Simplify, always have one return statement.
5826 * bits/std_fstream.h: Tweak comments in underflow.
5828 1999-02-17 Ulrich Drepper <drepper@cygnus.com>
5830 * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
5831 * ltconfig: Likewise.
5833 1999-02-16 Christophe Pierret <cpierret@businessobjects.com>
5835 * src/locale.cc: Fix assert.
5837 1999-02-16 Benjamin Kosnik <bkoz@cygnus.com>
5839 FIXME: Still need some kind of solution for undefined math symbols.
5840 * src/Makefile.in (locale-inst.lo): Compile with
5841 -fimplicit-templates to fix Solaris link problem.
5842 * src/Makefile.am: Ditto.
5843 * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
5844 * libio/Makefile.am: Ditto.
5845 * src/locale.cc: Provide some kind of def for _S_tolower.
5846 * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
5847 match ctype<char> for _S_tolower, _S_toupper, _S_table.
5849 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
5851 * bits/loccore.tcc: Move member-template ctor inline...
5852 * bits/loccore.h: ...here.
5853 * src/locale-inst.cc: Add instantiation here.
5855 * testsuite/27/27stringstream.cc: Tweak.
5857 * bits/ostream.tcc: Include sbuf_iter.h.
5859 * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
5860 passing to num_put, as num_put's first argument is an interator,
5863 * testsuite/make_check_libfree++: New file, runs through the
5864 existing test files in the testsuite directory and makes sure
5867 1999-02-10 Brendan Kehoe <brendan@cygnus.com>
5869 * testsuite/21/21compare.cc: Fix typo.
5870 * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
5871 Don't try to provide non-linux versions, since it's impossible to
5872 initialize their const references with the integer 0, no matter
5873 how we try to cast it.
5875 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
5877 * bits/std_locale.h: Move std_vector.h dependency.
5878 * bits/std_ios.h: ...from here.
5879 * bits/std_string.h: ...and here.
5880 * src/locale.cc: ..to here.
5881 * bits/loccore.h: Ditto, add vector forward declaration,
5882 make locale::_Impl data members pointers not containers.
5883 * bits/loccore.tcc: Move out-of-line for now.
5884 * bits/locfacets.h: Move vector dependency from here...
5885 * bits/locfacets.tcc: ...to here.
5886 * src/localename.cc: ..and here.
5887 * src/locale-inst.cc: Add include of locfacets.tcc here.
5889 * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
5890 * bits/basic_string.h: Can't use sizeof on an incomplete type.
5891 * bits/string.tcc: Tweak.
5892 * src/string.cc: And add __get_c_string def here.
5894 * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
5896 * src/stlinst.cc: Add include of stl_config.h.
5898 1999-02-09 Benjamin Kosnik <bkoz@cygnus.com>
5900 * stl/bits/std_bitset.h: Update to SGI STL 3.12.
5901 * stl/bits/stl_config.h: Tweak, update.
5902 * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
5904 * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
5905 * stl/bits/std_functional.h: Ditto.
5907 * stl/bits/stl_string.h: New file, SGI's string
5908 implementation. For reference only, corresponding to string in
5910 * stl/bits/stl_char_traits.h: As above.
5912 * stl/bits/pthread_allocimpl.h: New file corresponding to
5914 * stl/bits/stl_pthread_alloc.h: New file corresponding to
5916 * stl/bits/stl_threads.h: New file.
5918 Note that SGI STL 3.12's file iterator.h is not used.
5919 * stl/bits/std_iterator.h: Ditto.
5920 * stl/bits/stl_iterator.h: Drop in replace.
5921 * stl/bits/stl_iterator_base.h: New file, drop in replace.
5923 * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
5924 stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
5925 stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
5926 stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
5927 stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
5928 Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
5929 preprocessor guards, but fixup include paths and names according
5930 to new directory layout).
5932 1999-02-05 Benjamin Kosnik <bkoz@cygnus.com>
5934 * bits/std_fstream.h: Remove _M_open data member.
5935 * bits/fstream.tcc: Ditto.
5937 * src/locale.cc: Tweak.
5939 * bits/std_sstream.h: Simplify.
5941 * bits/std_streambuf.h: Simplify.
5942 (sputc): Use correct definition of "write area."
5944 * bits/std_fstream.h: Fix uflow.
5945 * src/basic_file.cc: Tweak.
5946 * testsuite/27/27filebuf.cc: Add tests.
5947 * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
5949 1999-02-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5951 * bits/ios_base.h: Make protected.
5953 1999-02-01 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5955 * bits/ios_base.h: Changes in the class ios_base:
5956 Rename _M_exceptions member to _M_exceptions_data.
5957 Make the member functions rdstate(), clear(), exceptions()
5958 and exceptions(iostate) protected and add the "_M_" prefix.
5959 * src/ios.cc: Ditto.
5960 * bits/basic_ios.h: Adapt the changes from ios_base.
5962 1999-01-29 Benjamin Kosnik <bkoz@cygnus.com>
5964 * bits/std_fstream.h: Remove _M_flags, _M_equilibrate as unnecessary.
5965 * bits/fstream.tcc: Ditto.
5967 * bits/std_fstream.h (underflow): Resize deallocates memory and
5968 resets pointers in the internal cache according to new _M_buf. . dooh!
5969 * src/locale.cc: Mas changes with codecvt::do_in, do_out.
5971 1999-01-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5973 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
5976 1999-01-28 Benjamin Kosnik <bkoz@cygnus.com>
5978 * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
5979 into account partial returns.
5980 (codecvt::do_out): Likewise.
5982 * bits/char_traits.h: Change streamsize to be a signed type, as
5983 required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
5984 * bits/std_streambuf.h: Make
5985 in_avail() and showmanyc() have streamsize as return types, so
5986 that showmanyc()'s return of eof won't underflow in_avail's return
5987 value and give a bogus result.
5988 * src/misc-inst.cc: And more changes. . .
5990 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
5991 track of joint in/out pointers into the internal buffer.
5992 (sbumpc): Add check for _M_buf_unified.
5996 * testsuite/27/27filebuf.cc: Add cases.
5997 * testsuite/27/27stringbuf.cc: Add showmanyc case.
5999 * bits/std_fstream.h (close): Fix logic error.
6000 (open): Initialize internal pointers based on _M_buf and _M_buf_size.
6001 (showmanyc): Add underflow component, to match the standard.
6003 * bits/fstream.tcc: Ditto.
6005 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
6007 * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
6008 * src/basic_file.cc: Ditto.
6009 * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
6010 format for dealing with _IO_file in libio.
6012 1999-01-27 Ulrich Drepper <drepper@cygnus.com>
6014 * src/basic_file.cc: Include fcntl.h.
6016 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
6018 * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
6020 * bits/std_streambuf.h: Redefine read posion.
6022 * bits/std_fstream.h: Temporary hack to get vtables working again.
6023 * bits/basic_file.h: Revert.
6024 * src/basic_file.cc: Ditto.
6025 * testsuite/27/27filebuf.cc: Tweak.
6027 1999-01-26 Benjamin Kosnik <bkoz@cygnus.com>
6029 * bits/basic_file.h: Add showmanyc, underflow. .
6030 * src/basic_file.cc: Ditto.
6032 * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
6035 * testsuite/27/27filebuf.cc: Add testcases.
6036 * src/basic_file.cc: Add O_CREAT to open calls with
6037 ios_base::trunc as part of the open mode.
6039 1999-01-26 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6041 * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
6043 1999-01-25 Benjamin Kosnik <bkoz@nabi.net>
6045 * src/ios.cc (clear): Correct typo.
6046 * bits/ios_base.h: Tweak spacing.
6048 1999-01-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6050 * bits/basic_ios.h: fix basic_ios::fail()
6052 1999-01-25 Benjamin Kosnik <bkoz@loony.cygnus.com>
6054 * bits/basic_file.h: Include libioP.h from libio instead of here.
6055 * bits/iolibio.h: Remove.
6056 * bits/libio.h: Remove.
6058 1999-01-22 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
6060 * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
6062 1999-01-22 Ulrich Drepper <drepper@cygnus.com>
6064 * Makefile.am (SUBDIRS): Add libio.
6065 * configure.in: Add rule to test for glibc2.
6067 * src/Makefile.am (INCLUDES): Add -I to libio subdir.
6068 (libstdc___la_LIBADD): Add libio.la.
6070 1999-01-21 Benjamin Kosnik <bkoz@cygnus.com>
6072 * bits/basic_file.h: Make new abstraction for underlying C library
6073 FILE, named __basic_file.
6074 * src/basic_file.cc: New file.
6075 * bits/os_raw.h: Delete.
6076 * src/os_raw.cc: Delete.
6077 * src/Makefile.in: Tweak.
6078 * src/Makefile.am: Tweak.
6079 * bits/iolibio.h: Add this here, for the time being.
6080 * bits/libioP.h: Ditto.
6082 * bits/ios_base.h: Delete unused defines.
6083 * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
6084 strcpy to copy between the two buffers.
6086 * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
6087 * testsuite/27/27filebuf.cc: New file.
6088 * testsuite/27/27filebuf-1.txt: Data file for above test.
6089 * testsuite/27/27filebuf-2.txt: Ditto.
6091 * bits/std_streambuf.h (uflow): Re-implement default.
6092 * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
6093 Re-implement virtual functions.
6094 * bits/fstream.tcc: Delete unused mf's.
6096 1998-12-31 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
6098 * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
6099 * bits/std_fstream.h: Ditto.
6100 * src/stdstreams.cc: Ditto.
6102 * math/cpowl.c: Fix header typo with last change.
6104 1998-12-31 Benjamin Kosnik <bkoz@loony.cygnus.com>
6106 * COPYING: New file (GPL v 2).
6107 * LICENSE.STD: Remove.
6108 * ./*: Change license.
6110 1998-12-30 Benjamin Kosnik <bkoz@haight.constant.com>
6112 * bits/std_streambuf.h (std): Remove static on _M_init.
6113 * bits/streambuf.tcc (std): Ditto.
6115 * bits/std_fstream.h: Add changes as discussed with Nathan, including
6116 state_type and codecvt_type members, the allocation of an internal
6117 buffer, the streamlined codecvt calls, etc.
6119 1998-12-21 Benjamin Kosnik <bkoz@haight.constant.com>
6121 * bits/std_sstream.h: Tweak.
6122 * bits/fstream.tcc: Remove unused stubs.
6123 * bits/std_fstream.h: Tweak.
6125 1998-12-17 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6127 * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
6128 Remove unused _IO_* members, possibly put into filebuf, which may
6130 * bits/std_fstream.h: Add _M_flag.
6131 * bits/sbuf_iter.h: Tweak.
6133 * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
6134 * bits/ios_base.h: Use.
6136 * src/stdstreams.cc: Modify to reflect standard ctors for
6138 * src/misc-inst.cc: Ditto.
6140 * bits/os_raw.h: Wrap in std namespace. Model parameters on
6141 underlying C library calls instead of the underlying unix
6143 * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
6144 string as per p.659.
6145 (_S_os_close): Model on fopen.
6146 (_S_os_read): Model on fread.
6147 (_S_os_write): Model on fwrite.
6148 (_S_os_seek): Model on fseek.
6150 * bits/ios_base.h: Tweak.
6151 * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
6152 * bits/std_sstream.h: Tweak.
6153 * bits/sstream.tcc: Remove old, uncalled code.
6154 * bits/std_fstream.h: Major reconstruction.
6155 * bits/fstream.tcc: Disable for the time being.
6157 1998-12-11 Benjamin Kosnik <bkoz@haight.constant.com>
6159 * bits/basic_string.h: Fix insert method.
6160 * stl/bits/stl_iterator.h: Remove previous hack.
6161 * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
6162 * bits/std_sstream.h: Fix more regressions.
6163 * testsuite/27/27stringbuf.C: Add (almost) complete tests.
6165 1998-12-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
6167 * bits/basic_string.h: Tweak.
6169 * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
6170 that string::append can be instantiated. HACK--checkin
6171 basic_string::iterator class.
6173 1998-12-07 Benjamin Kosnik <bkoz@haight.constant.com>
6175 * bits/std_sstream.h: Tweak.
6176 * bits/sstream.tcc: Tweak ctors.
6178 FIXME invalid friend defs. . WHERE ARE THEY??
6180 * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
6181 names for basic_streambuf data members.
6183 * bits/std_streambuf.h: Add getloc() initialization bits.
6184 basic_streambuf(): Initialize with global locale data.
6185 imbue(): Set _M_init.
6187 * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
6188 stream pos == pos_type(off_type(-1)).
6189 in_avail(): Complete default implementation.
6190 snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
6191 underflow, uflow, xsgetn, showmany, sync: Ditto.
6193 * bits/std_streambuf.h: _M_snextc_helper(): Remove.
6195 * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
6196 re-populate with in-line member functions that are too big. Add
6197 initialization for _M_init.
6199 1998-12-03 Benjamin Kosnik <bkoz@cygnus.com>
6201 * bits/sstream.tcc: Convert _Allocator to _Alloc. Add typedefs
6202 for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
6205 * src/stdstreams.cc (std): Disable wchar_t instantiations.
6207 * bits/c++config.h (_G_DEPRICATED): Add.
6208 (_G_USE_WCHAR_T): Add.
6209 * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
6210 Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
6211 * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
6212 * bits/std_fstream.h: Add comment for implementation.
6213 * src/streambuf.cc: Remove.
6214 * src/Makefile.in: Remove streambuf.lo.
6215 * src/misc-inst.cc: Tweak.
6217 1998-12-02 Benjamin Kosnik <bkoz@cygnus.com>
6219 * bits/std_sstream.h: Add const_cast to rdbuf returns.
6220 * testsuite/27stringstream.C: Modify.
6222 1998-11-25 Benjamin Kosnik <bkoz@haight.constant.com>
6224 * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
6225 (libstdc___la_SOURCES): Ditto.
6227 * bits/streambuf.tcc: Tweak.
6229 * src/streambuf.cc: New file, add out-of-line definitions for
6232 * src/misc-inst.cc: Remove _Streambuf_base instantiations.
6233 Comment out wchar_t versions of the buffer instantiations, for now.
6235 * bits/std_streambuf.h: Wrap libio.h include with extern "C".
6236 Remove template wrapper around _Streambuf_base.
6237 Move IO_* data members into _Streambuf_base.
6238 Move _Streambuf_base members into streambuf.tcc.
6240 * bits/c++config.h (_G_USE_LIBIO): Enable.
6242 1998-11-02 Nathan Myers <ncm@cantrip.org>
6244 * CHECKLIST: downgrade iterator implementations
6245 * DESIGN: fill out notes about unimplemented features
6247 1998-10-31 Nathan Myers <ncm@cantrip.org>
6249 * CHECKLIST: itemized list of all interfaces, and status of each.
6251 1998-10-30 Nathan Myers <ncm@cantrip.org>
6253 * RELEASE-NOTES: add notes about optional includes, linking, running
6254 * src/Makefile.am: handle header installs properly
6255 * src/Makefile.in: regenerate from new src/Makefile.am
6257 1998-10-30 Benjamin Kosnik <bkoz@loony.cygnus.com>
6259 * bits/basic_string.h: Revert npos pending ciso646.
6260 * src/Makefile.am: Revert CXX flags for now.
6261 * src/Makefile.in: Ditto.
6263 1998-10-30 Brendan Kehoe <brendan@cygnus.com>
6265 * bits/std_sstream.h: Re-order ctors to put base before member
6268 1998-10-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6270 * stl/bits/std_memory.h: Fix typo.
6272 1998-10-30 Nathan Myers <ncm@cantrip.org>
6274 * src/string[A-Z]+.cc: change back to include "string.cc".
6275 * src/Makefile.am: revert filename changes. We need a different
6276 way to keep filenames in std/ from confusing Make.
6277 * bits/basic_string.h: define _S_max_size right, return it from
6278 string::max_size(); churn definition of npos again.
6279 * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
6280 * bits/ios.cc: remove #ifdef on ios_base locale member initialization
6281 * BUGS: clear cruft.
6282 * C++STYLE: Touchup for release.
6283 * CHECKLIST: Touchup for release.
6285 * LICENSE.STD: Add requirement to retain copyrights and to provide
6286 the license with any copies.
6287 * README: Update for release.
6288 * TODO: Minor touchup for release.
6289 * RELEASE-NOTES: prepare for release
6291 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
6293 * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
6295 * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
6297 * src/Makefile.am (CXXLINK): New variable. Make sure we don't use
6298 CXX to generate the shared object.
6300 * src/Makefile.am (headers): Remove duplicated char_traits.h.
6302 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
6304 * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
6305 2, from npos, solving infinite loop problems.
6307 1998-10-29 18:41 Ulrich Drepper <drepper@cygnus.com>
6309 * src/Makefile.am: Add rules to install headers.
6311 1998-10-29 Nathan Myers <ncm@cantrip.org>
6313 * bits/std_ostream.h: Remove #ifdef on operator<< for long double
6314 * bits/ostream.tcc: Remove #ifdef on operator<< for long double
6317 * shadow/bits/wrap_libio.h:
6318 * shadow/bits/wrap_unistd.h: New files.
6320 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
6322 * bits/ostream.tcc (operator<<): Wrap with #ifdef
6323 _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
6325 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
6327 * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
6328 is not compiled with -fno-implicit-templates in effect.
6330 * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
6331 (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
6332 * src/stringADDCS.cc: Wrapper around string.cc to define individual
6334 * src/stringADDPS.cc: Likewise.
6335 * src/stringADDSC.cc: Likewise.
6336 * src/stringADDSP.cc: Likewise.
6337 * src/stringADDSS.cc: Likewise.
6338 * src/stringBIST.cc: Likewise.
6339 * src/stringBOST.cc: Likewise.
6340 * src/stringCHTR.cc: Likewise.
6341 * src/stringEQPS.cc: Likewise.
6342 * src/stringEQSP.cc: Likewise.
6343 * src/stringEQSS.cc: Likewise.
6344 * src/stringEXTRA.cc: Likewise.
6345 * src/stringGEPS.cc: Likewise.
6346 * src/stringGESP.cc: Likewise.
6347 * src/stringGESS.cc: Likewise.
6348 * src/stringGETLI.cc: Likewise.
6349 * src/stringGTPS.cc: Likewise.
6350 * src/stringGTSP.cc: Likewise.
6351 * src/stringGTSS.cc: Likewise.
6352 * src/stringINSER.cc: Likewise.
6353 * src/stringLEPS.cc: Likewise.
6354 * src/stringLESP.cc: Likewise.
6355 * src/stringLESS.cc: Likewise.
6356 * src/stringLTPS.cc: Likewise.
6357 * src/stringLTSP.cc: Likewise.
6358 * src/stringLTSS.cc: Likewise.
6359 * src/stringMAIN.cc: Likewise.
6360 * src/stringNEPS.cc: Likewise.
6361 * src/stringNESP.cc: Likewise.
6362 * src/stringNESS.cc: Likewise.
6363 * src/stringSCOPY.cc: Likewise.
6364 * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
6366 * src/wstringADDPS.cc: Likewise.
6367 * src/wstringADDSC.cc: Likewise.
6368 * src/wstringADDSP.cc: Likewise.
6369 * src/wstringADDSS.cc: Likewise.
6370 * src/wstringBIST.cc: Likewise.
6371 * src/wstringBOST.cc: Likewise.
6372 * src/wstringCHTR.cc: Likewise.
6373 * src/wstringEQPS.cc: Likewise.
6374 * src/wstringEQSP.cc: Likewise.
6375 * src/wstringEQSS.cc: Likewise.
6376 * src/wstringEXTRA.cc: Likewise.
6377 * src/wstringGEPS.cc: Likewise.
6378 * src/wstringGESP.cc: Likewise.
6379 * src/wstringGESS.cc: Likewise.
6380 * src/wstringGETLI.cc: Likewise.
6381 * src/wstringGTPS.cc: Likewise.
6382 * src/wstringGTSP.cc: Likewise.
6383 * src/wstringGTSS.cc: Likewise.
6384 * src/wstringINSER.cc: Likewise.
6385 * src/wstringLEPS.cc: Likewise.
6386 * src/wstringLESP.cc: Likewise.
6387 * src/wstringLESS.cc: Likewise.
6388 * src/wstringLTPS.cc: Likewise.
6389 * src/wstringLTSP.cc: Likewise.
6390 * src/wstringLTSS.cc: Likewise.
6391 * src/wstringMAIN.cc: Likewise.
6392 * src/wstringNEPS.cc: Likewise.
6393 * src/wstringNESP.cc: Likewise.
6394 * src/wstringNESS.cc: Likewise.
6395 * src/wstringSCOPY.cc: Likewise.
6396 * src/string.cc: Remove now unneeded #defines now.
6398 1998-10-29 Nathan Myers <ncm@cantrip.org>
6400 * bits/locfacets.tcc: Define num_put::put(... const void*), improve
6402 * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
6403 add definitions for double, long double, const void*.
6404 * bits/std_ostream.h: Move op<<'s back into class ostream,
6405 define some in-line.
6406 * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
6407 string construction from input iterators that Brendan reported.
6410 1998-10-28 Brendan Kehoe <brendan@cygnus.com>
6412 * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
6414 * bits/valarray_meta.h (class _Constant): Move declaration to the
6415 top, so the rest of the file can grok it.
6416 (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
6418 * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
6420 (basic_stringstream::str, both instances): Likewise.
6422 1998-10-28 Nathan Myers <ncm@cantrip.org>
6424 * bits/locfacets.h: fix num_put<>::falsename()
6425 * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
6426 * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
6427 * bits/locfacets.tcc: touch up _S_group_digits.
6428 * src/misc-inst.cc: adjust _S_group_digits insts to match.
6430 1998-10-27 Nathan Myers <ncm@cantrip.org>
6432 * stl/bits/stl_config.h: Turn off long long support, for now.
6433 * src/locale-inst.cc: Instantiate num_put<> only for
6434 ostreambuf_iterator, num_get only for istreambuf_iterator.
6435 * src/misc-inst.cc: Delete duplicate locale-related instantiations,
6436 add lots of new instantiations for num_put support function templates;
6437 remove junk about __match_parallel for ostreambuf_iterator.
6439 1998-10-27 Nathan Myers <ncm@cantrip.org>
6441 * bits/locfacets.tcc: Make num_put's digit grouping work.
6442 * bits/string.tcc: More uglification.
6443 * src/ios.cc: initialize format cache right
6445 1998-10-26 Nathan Myers <ncm@cantrip.org>
6447 * bits/basic_string.h: Uglify more names.
6448 * bits/fstream.tcc: Rewrite some filebut output handling.
6449 * bits/ios_base.h: Cosmetic.
6450 * bits/locfacets.h: Changes to _Format_cache for support of num_put.
6451 Also, specialize its default ctor for optimal default case.
6452 #ifdef out "long long" prototypes for now.
6453 * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
6454 implementation for integer types. (Still needs optimized
6455 std::copy() applied to ostreambuf_iterator to be optimal.)
6456 * bits/ostream.tcc: Write operator<< for long, bool types.
6457 Make other operators<< non-members, per spec. (Many still
6458 not implemented.) Identify those that fail to create a sentry.
6459 * bits/sbuf_iter: Cosmetic.
6460 * bits/std_fstream.h: Add some filebuf members.
6461 * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
6462 * bits/std_ostream.h: Make member operators<< global, per spec.
6463 (Should do the same in std_istream.h.)
6464 * bits/std_string.h: Include <limits> for use in bits/locfacets.h
6465 * bits/string.tcc: Uglify names
6466 * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
6467 * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
6468 for optimal default behavior.
6470 1998-10-26 Benjamin Kosnik <bkoz@loony.cygnus.com>
6472 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
6474 1998-10-21 Nathan Myers <ncm@cantrip.org>
6476 * src/locale.cc: make ctype operations actually work for glibc
6477 * CHECKLIST: add a comprehensive (i.e. huge) implementation
6478 checklist of stdlib facilities. Not filled in yet.
6480 1998-10-20 Nathan Myers <ncm@cantrip.org>
6482 * bits/string.tcc: fix patching NULs on string ends.
6484 1998-10-19 Nathan Myers <ncm@cantrip.org>
6486 * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
6487 iterator forward declarations
6488 * bits/sbuf_iter.h: eliminate default template argument definitions
6489 on streambuf iterators (rely on <iosfwd> decls).
6490 * TODO: add note about lazy facet construction
6491 * bits/basic_ios.h: hit operator void* again. This should be the
6492 last time we need to touch it.
6493 * bits/basic_ios.h: copyfmt now returns *this.
6494 * bits/basic_string.h: fix npos again. npos cannot be defined as zero.
6495 * bits/basic_string.h: put back overloaded constructors; adjust
6496 behavior for default allocator on copy constructor.
6497 * bits/char_traits.h: make not_eof return correct type.
6498 * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
6499 cannot be in non-standard headers or we get include loops (bad)
6500 * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
6501 * bits/loccore.h: add apparatus to support lazy construction of
6503 * bits/locfacets.tcc: Uglify names in __match_parallel decl.
6504 * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
6505 locale use_facet<> failure.
6506 * bits/std_locale.h: same.
6507 * bits/std_string.h: same.
6508 * bits/std_stdexcept.h: change exception member __msg from a
6509 reference to a regular object.
6510 * bits/string.tcc: add pasting a NUL on the end of strings after
6511 each operation. We had already left room for it, but previously
6512 plugged it only on a call to c_str(), but the WG changed the
6513 requirement when I wasn't looking. (Can't leave them alone for
6514 a second without they break something else.)
6515 * bits/valarray_meta.h: add Gaby's changes from 981018.
6516 * src/locale.cc: add new type _Bad_use_facet to be thrown on
6517 failure of use_facet<>().
6518 * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
6519 comment out leftover member definitions
6521 1998-10-16 Ulrich Drepper <drepper@cygnus.com>
6523 * string/Makefile.am: Revert last change.
6524 * math/Makefile.am: Likewise.
6526 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
6528 * bits/std_sstream.h: Fix typo.
6530 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
6532 * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
6534 * bits/std_sstream.h: Add typedefs, member definitions. Clean.
6535 * bits/std_stdexcept.h: Remove.
6537 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
6539 * src/misc-inst.cc: Tweak again.
6541 * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
6542 * bits/sstream.tcc: New file.
6544 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
6546 * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
6547 Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
6550 * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
6552 (INFINITE_P): Use IS_INF macro if available.
6554 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
6556 * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
6558 * string/Makefile.am: Likewise.
6560 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
6562 * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
6564 (AC_CHECK_HEADERS): Add machine/endian.h. If no header specifying
6565 endianess is available run AC_C_BIGENDIAN.
6567 * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
6568 fixincludes is fixed.
6569 * math/clogl.c: Likewise.
6570 * math/csqrtl.c: Likewise.
6571 * math/mycabsl.c: Likewise.
6573 * math/mathconf.h: Include machine/endian.h if possible. If no
6574 header describing endianess is available rely on WORDS_BIGENDIAN
6576 (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
6577 (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
6580 * src/complex.cc (polar): Don't use sincos on OSF machines.
6582 1998-10-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
6584 * src/locale-inst.cc: Don't instantiate time_get for
6585 ostreambuf_iterators as time_get::do_get_weekday and
6586 time_get::do_get_monthname use __match_parallel, which is illegal
6587 for ostreambuf_iterators to use, as they don't have operator== or
6589 * bits/std_stdexcept.h: Add dtor definitions.
6590 Use stl/bits/std_stdexcept.h instead of this file?
6591 * bits/sbuf_iter.h : Tweak.
6592 * src/misc-inst.cc: Tweak.
6594 1998-10-09 Benjamin Kosnik <bkoz@haight.constant.com>
6596 * bits/std_stdexcept.h: New file.
6597 * src/stdexcept.cc: Define the following:
6599 runtime_error::what()
6601 * src/misc-inst.cc: New file.
6602 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
6603 (libstdc___la_OBJECTS): Add misc-inst.lo.
6605 * bits/basic_string.h: Disable non-standard ctor declarations.
6606 * bits/string.tcc: Disable definitions as well.
6607 * src/string.cc: Disable <ios> dependancies.
6608 * bits/sbuf_iter.h (std): Add default to template parameter for
6609 ostreambuf_iterator and istreambuf_iterator.
6610 * bits/std_iosfwd.h: Change istreambuf_iterator to
6611 basic_istreambuf_iterator. Likewise for ostreambuf.
6612 * bits/locfacets.tcc (__match_parallel): Fix typo.
6613 * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
6615 * bits/std_streambuf.h: Define _Streambuf_base::getloc().
6616 * bits/std_istream.h: Define the following:
6617 get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
6618 get (char_type* __s, streamsize __n, char_type __delim);
6619 getline (char_type* __s, streamsize __n, char_type __delim)
6620 * bits/loccore.h : FIXME friend template code for use_facet.
6621 Add std_stdexcept.h include so that range_error will be defined.
6622 Add explicit conversion to string for range_error throws. (HACK?)
6624 1998-10-8 Ulrich Drepper <drepepr@cygnus.com>
6626 * configure.in: Check for sincos, sincosf, and sincosl.
6627 * src/complex.cc (polar): Use sincos if available.
6629 * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
6630 * stl/bits/std_limits.h: Include bits/c++config.h. HACK!!!
6632 * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
6634 * math/cpow.c: Use c_log, not clog.
6635 * math/cpowf.c: Likewise.
6636 * math/cpowl.c: Likewise.
6638 * math/cexp.c: Remove unused fpclassify calls. Use FINITE_P instead
6641 * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
6642 isfinite macro if it is available.
6643 (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
6645 * math/ccosf.c: Use appropriate test macros for this type.
6646 * math/ccoshf.c: Likewise.
6647 * math/ccoshl.c: Likewise.
6648 * math/ccosl.c: Likewise.
6649 * math/cexpf.c: Likewise.
6650 * math/cexpl.c: Likewise.
6651 * math/clog10f.c: Likewise.
6652 * math/clog10l.c: Likewise.
6653 * math/clogf.c: Likewise.
6654 * math/clogl.c: Likewise.
6655 * math/csinf.c: Likewise.
6656 * math/csinhf.c: Likewise.
6657 * math/csinhl.c: Likewise.
6658 * math/csinl.c: Likewise.
6659 * math/csqrtf.c: Likewise.
6660 * math/csqrtl.c: Likewise.
6661 * math/ctanf.c: Likewise.
6662 * math/ctanhf.c: Likewise.
6663 * math/ctanhl.c: Likewise.
6664 * math/ctanl.c: Likewise.
6666 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
6668 * bits/basic_ios.h: Fix previous change.
6670 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
6672 * bits/basic_ios.h: Add const_cast<basic_ios&>
6673 (operator void*): As per 5.2.9 p 2, make sure static_cast is
6675 * bits/char_traits.h: No _CharT for specialization, change to 0.
6676 * bits/basic_string.h: As per 9.4.2 p4, initialize with
6677 constant-initializer.
6678 * bits/locfacets.tcc: Add template parameter to initialization list.
6680 1998-10-02 Benjamin Kosnik <bkoz@loony.cygnus.com>
6682 * bits/basic_string.h: Should just be <, not <=.
6684 1998-10-01 Benjamin Kosnik <bkoz@bliss.nabi.net>
6686 * bits/string.tcc (compare): Fix for strings that are similar, but
6687 not the same length.
6689 1998-09-04 Brendan Kehoe <brendan@cygnus.com>
6691 * bits/c++config.h: For __linux__, define _GNU_SOURCE. This is
6692 required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
6693 We can't check for __GLIBC__ here, since this header can be read
6694 before any system one (that would lead to features.h) being used.
6696 * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
6698 * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
6699 LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
6701 * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
6702 LONGLONG_{MIN,MAX} which I can't find the origin of.
6704 1998-09-03 Brendan Kehoe <brendan@cygnus.com>
6706 * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
6707 should this come from, if not iostream.h?
6708 (class istream_iterator): Make the new operator!= a friend also.
6710 * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
6711 __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG. Don't include
6712 _G_config.h like the egcs one does.
6714 1998-09-01 Brendan Kehoe <brendan@cygnus.com>
6716 * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
6718 * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
6719 _Expr1 (or _Expr_def if it's taken), and change definitions.
6720 Avoids redecl of the template parm.
6722 * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
6723 (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
6725 * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
6728 * src/locale-inst.cc: New file, **TOTAL HACK**. There has GOT to
6729 be a better way to do this.
6731 * src/stlinst.cc: New file.
6733 * BUGS: New file, with various discovered bugs that need to be
6736 * Makefile.in, math/Makefile.in, string/Makefile.in,
6737 src/Makefile.in: Reran automake.
6739 Workarounds, these may not all be the final fixes:
6741 * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
6742 not private, for basic_istream::get() in std_istream.h to be able
6744 (basic_ios::operator void*): Don't use static_cast for the false
6746 (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
6747 This appears to have been in sep94, but didn't get corrected
6750 * bits/basic_string.h (npos): Don't init here.
6751 * bits/string.tcc: Instead, do initialization here, to -1 instead
6752 of the size_type destructor.
6754 * src/traits.cc, src/wtraits.cc: New files.
6755 * bits/char_traits.h: For char_traits<char> and
6756 char_traits<wchar_t>, declare static, but define over in the src
6759 * bits/gslice.h: Comment out forward decls of _Array, valarray,
6760 gslice_array, and _GsliceExpression.
6762 * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
6763 clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
6764 stdout, and stderr. Note we do get unresolved refs to stdin, but
6765 that'll get fixed by the "true" solution.
6767 * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
6768 definition of basic_streambuf.h, which is used in basic_ios.h to
6771 * bits/std_streambuf.h: Don't include libio.h for now.
6772 (class basic_streambuf): Define missing methods pubimbue and
6775 * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
6776 ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
6777 locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
6779 * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
6781 * src/locale.cc: Come up with munged versions of _S_toupper,
6782 _S_tolower, and _S_table instead of the glibc-specific ones, so
6783 they're at least defined, if not necessarily usable. The glibc
6784 ones on any other system will yield unresolved refs to
6785 __ctype_{b,toupper,tolower}.
6787 * src/string.cc: Define all of ADDCS, ADDPS, et al. Add
6788 basic_ios, basic_istream, basic_ostream. Don't do char_traits
6789 anymore cuz of the explicit specialization in char_traits.h.
6790 Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
6791 file for the details.
6793 * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
6794 * stl/bits/stl_iterator.h (__distance): Likewise.
6796 * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
6797 op>, op<=, and op>= for reverse_iterator. Also add op!= for
6800 1998-08-26 Brendan Kehoe <brendan@cygnus.com>
6802 * bits/string.tcc (basic_string::compare (const char*)): Fix to
6805 1998-08-25 Brendan Kehoe <brendan@cygnus.com>
6807 This should really be fixed with __asm__ directives renaming the
6808 symbol, but keeping the function.
6809 * math/clogf.c (c_logf): Renamed from `clogf'.
6810 * math/clogl.c (c_logl): Renamed from `clogl'.
6811 * math/complex-stub.h (c_logf, c_logl): Change decls.
6813 * bits/locfacets.h (class _Numeric_get): For friend decls, rename
6814 _CharT and _InIter parms, since they duplicate the enclosing ones.
6816 1998-08-19 Brendan Kehoe <brendan@cygnus.com>
6818 Deal with conflict of the iostreams `clog' and our internal
6819 complex number `clog'.
6820 * src/complex.cc: Call `c_log' instead of `clog'.
6821 * math/clog.c (c_log):: Renamed from clog.
6822 * math/complex-stub.h (c_log): Renamed from clog decl.
6824 * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
6826 (num_put::put): #if 0 long long version, since we don't declare or
6827 define the long long version of do_put.
6829 1998-08-18 Nathan Myers <ncm@cantrip.org>
6831 * bits/basic_string.h: add basic_string<>::push_back(), fix return
6832 type of get_allocator (thanks to Ryszard Kabatek).
6833 * bits/char_traits.h: make init order of fpos<> members
6835 * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
6836 flags _S_fd_in etc. for special filebuf ctor.
6837 * bits/locfacets.h: make _Numeric_get and _Format_cache public
6838 to work around problems in friend declarations.
6839 * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
6840 fix random type errors & typos
6841 * bits/std_fstream.h: major refitting to bypass libio (for now),
6842 instrument to use bits/fstream.tcc template definitions
6843 * bits/std_iosfwd.h: mess with wrappers
6844 * bits/std_istream.h: remove meaningless comment
6845 * bits/std_ostream.h: instrument to work with ostream.tcc.
6846 * bits/std_streambuf.h: instrument to work with streambuf.tcc
6847 * bits/fstream.tcc: template defs for <fstream>
6848 * bits/ostream.tcc: template defs for <ostream>
6849 * bits/streambuf.tcc: template defs for <streambuf>
6850 * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
6851 * Delete .cc files, replace with bits/*.tcc
6857 src/os_raw.cc: thin interface to OS, to bypass libio (for now).
6858 src/stdstreams.cc: cout, cin, etc. definitions
6859 (these still need work: must be init'd before user statics.)
6862 1998-08-18 Brendan Kehoe <brendan@cygnus.com>
6864 Sent to SGI before checkin:
6865 * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
6866 operator>=): Define.
6867 * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
6868 * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
6869 operator>=): Define.
6870 (operator==, operator<): Add inline.
6871 * stl/bits/stl_map.h (operator!=, operator<, operator<=,
6872 operator>=): Define.
6873 * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
6874 operator>=): Define.
6875 * stl/bits/stl_list.h (operator!=, operator<, operator<=,
6876 operator>=): Define.
6877 * stl/bits/stl_set.h (operator!=, operator<, operator<=,
6878 operator>=): Define.
6879 * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
6880 operator>=): Define.
6882 * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
6885 1998-08-15 Nathan Myers <ncm@cantrip.org>
6887 * bits/ios_base.h: change nominal bitmask and enum types to real enums
6888 * bits/locfacets.h: make _Format_cache bool names usable by num_get
6889 * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
6890 * bits/std_fstream.h: minor cleanups: ctors delegate to open()
6891 * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
6892 * bits/std_sstream.h: formatting cleanups
6894 1998-08-14 Nathan Myers <ncm@cantrip.org>
6896 * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
6897 * bits/locfacets.tcc: implement time_get<>::do_get_weekday
6898 * bits/locfacets.tcc: implement time_get<>::do_get_monthname
6899 * bits/locfacets.h: fix missing argument in do_get_monthname
6900 (this is a bug in the standard, ref. 36 in my list.)
6901 * bits/locfacets.h: make month and day name caches mutable
6902 * bits/locfacets.tcc: various typos in get() functions
6903 * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
6904 * bits/std_streambuf.h: fix typo in sgetn (Brendan)
6906 1998-08-12 Nathan Myers <ncm@cantrip.org>
6907 * move streambuf iterators to bits/sbuf_iter.h
6908 * optimize streambuf iterators
6909 * begin generalizing streambuf
6910 * begin implementing num_get<>::get (starting with bool)
6911 * patch stl/bits/stl_config.h so that relops operators are
6912 contained properly, out of the way.
6914 1998-07-24 Nathan Myers <ncm@cantrip.org>
6915 * Fold in SGI 3.11 changes (uglified names, some algorithm
6916 improvements, very minor bug fixes.)
6917 * Uglify names elsewhere to match (s/_T/_Tp/).
6918 * Begin work on optimized streambuf
6919 * Put complex.cc in namespace std:: (thanks Martin)
6921 1998-07-17 Nathan Myers <ncm@cantrip.org>
6923 * bits/char_traits.h: add _Char_traits_match template.
6924 * bits/string.tcc: fix bugs in various find_last* members.
6925 * bits/basic_string.h: redeclare member _S_find.
6926 * stl/bits/stl_iterator.h: change member names in nonstandard
6927 templates bidirectional_reverse_iterator and
6928 random_access_reverse_iterator to match expected changes
6930 * src/string.cc: fix definitions of stream operators.
6932 1998-07-14 16:06 Ulrich Drepper <drepper@cygnus.com>
6934 * Makefile.am (SUBDIRS): Add string.
6936 * configure.in: Test for long double functions separately. Test for
6937 ISO C 89 float functions. Test for endian.h and sys/isa_defs.h.
6938 Generate string/Makefile.
6940 * bits/c++config.h: Define mbstate_t for Solaris.
6942 * bits/char_traits.h: Remove unused #if.
6944 * bits/std_cwchar.h: Declare wide char string functions.
6946 * m4/stringfcts.m4: New file.
6948 * math/complex-stub.h: Declare nan.
6949 * math/nan.c: New file.
6951 * math/mathconf.h: Hack around missing endian.h file.
6952 Handle missing NAN definition.
6953 Handle missing float math functions.
6955 * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
6956 (libstdc___la_LDFLAGS): Set version information.
6958 * src/complexl.cc: Don't compile any code if no long double functions
6961 * string/Makefile.am: New file.
6962 * string/dummy.c: New file.
6963 * string/wmemchr.c: New file.
6964 * string/wmemcmp.c: New file.
6965 * string/wmemcpy.c: New file.
6966 * string/wmemmove.c: New file.
6967 * string/wmemset.c: New file.
6969 1998-07-14 10:45 Ulrich Drepper <drepper@cygnus.com>
6971 * configure.in: Make it work.
6972 * install-sh: New file.
6973 * missing: New file.
6974 * mkinstalldirs: New file.
6975 * m4/mathfcts.m4: New file.
6976 * math/Makefile.am: New file.
6978 * bits/std_complex.h (conj): Mark specializations as inline.
6980 * math/carg.c: New file.
6981 * math/cargf.c: New file.
6982 * math/cargl.c: New file.
6983 * math/mycabs.c: New file.
6984 * math/mycabsf.c: New file.
6985 * math/mycabsl.c: New file.
6986 * math/signbit.c: New file.
6987 * math/signbitf.c: New file.
6988 * math/signbitl.c: New file.
6990 * math/ccos.c: Avoid ISO C 9x functionality.
6991 * math/ccosf.c: Likewise.
6992 * math/ccosh.c: Likewise.
6993 * math/ccoshf.c: Likewise.
6994 * math/ccoshl.c: Likewise.
6995 * math/ccosl.c: Likewise.
6996 * math/cexp.c: Likewise.
6997 * math/cexpf.c: Likewise.
6998 * math/cexpl.c: Likewise.
6999 * math/clog.c: Likewise.
7000 * math/clog10.c: Likewise.
7001 * math/clog10f.c: Likewise.
7002 * math/clog10l.c: Likewise.
7003 * math/clogf.c: Likewise.
7004 * math/clogl.c: Likewise.
7005 * math/cpow.c: Likewise.
7006 * math/cpowf.c: Likewise.
7007 * math/cpowl.c: Likewise.
7008 * math/csin.c: Likewise.
7009 * math/csinf.c: Likewise.
7010 * math/csinh.c: Likewise.
7011 * math/csinhf.c: Likewise.
7012 * math/csinhl.c: Likewise.
7013 * math/csinl.c: Likewise.
7014 * math/csqrt.c: Likewise.
7015 * math/csqrtf.c: Likewise.
7016 * math/csqrtl.c: Likewise.
7017 * math/ctan.c: Likewise.
7018 * math/ctanf.c: Likewise.
7019 * math/ctanh.c: Likewise.
7020 * math/ctanhf.c: Likewise.
7021 * math/ctanhl.c: Likewise.
7022 * math/ctanl.c: Likewise.
7024 * math/complex-stub.h: New file.
7026 * math/mathconf.h: New file.
7028 * src/Makefile.am: New file.
7030 * src/complex.cc: Use mathconf.h instead of complex.h.
7031 Don't use cabs, always use __mycabs.
7033 1998-02-13 Brendan Kehoe <brendan@cygnus.com>
7035 * iterator (class reverse_iterator): Do some tweaks to be in sync