1 2000-10-08 Phil Edwards <pme@sources.redhat.com>
3 * include/bits/c++config: Include <bits/os_defines.h>
4 * config/os/aix/bits/os_defines.h: New file.
5 * config/os/bsd/bits/os_defines.h: Ditto.
6 * config/os/generic/bits/os_defines.h: Ditto.
7 * config/os/gnu-linux/bits/os_defines.h: Ditto.
8 * config/os/irix/bits/os_defines.h: Ditto.
9 * config/os/newlib/bits/os_defines.h: Ditto.
10 * config/os/solaris/solaris2.5/bits/os_defines.h: Ditto.
11 * config/os/solaris/solaris2.6/bits/os_defines.h: Ditto.
12 * config/os/solaris/solaris2.7/bits/os_defines.h: Ditto.
14 2000-10-07 David Edelsohn <dje@watson.ibm.com>
16 * config/os/aix/bits/atomicity.h: New file.
18 2000-10-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
20 * acinclude.m4: Remove CPU_FLAGS
21 * libio/Makefile.am: Here too.
22 * Makefile.am: Here too.
24 * src/Makefile.am (CONFIG_INCLUDES): Remove.
25 (INCLUDES): Remove CONFIG_INCLUDES.
26 (cpu_headers): Remove.
27 (myinstallheaders): Remove cpu_headers.
28 (generated_headers): Rename to build_headers.
29 (build_headers): Add atomicity.h, ctype_base.h,
30 ctype_specializations.h.
32 * config/os: New directory.
33 * config/aix: Move to...
34 * config/bsd: Move to...
35 * config/generic: Move to...
36 * config/gnu-linux: Move to...
37 * config/irix: Move to...
38 * config/newlib: Move to...
39 * config/solaris: Move to...
42 2000-10-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
44 * acinclude.m4: Remove CPU_FLAGS
45 * libio/Makefile.am: Here too.
46 * Makefile.am: Here too.
48 * src/Makefile.am (CONFIG_INCLUDES): Remove.
49 (INCLUDES): Remove CONFIG_INCLUDES.
50 (cpu_headers): Remove.
51 (myinstallheaders): Remove cpu_headers.
52 (generated_headers): Rename to build_headers.
53 (build_headers): Add atomicity.h, ctype_base.h,
54 ctype_specializations.h.
56 * config/os: New directory.
57 * config/aix: Move to...
58 * config/bsd: Move to...
59 * config/generic: Move to...
60 * config/gnu-linux: Move to...
61 * config/irix: Move to...
62 * config/newlib: Move to...
63 * config/solaris: Move to...
66 2000-10-06 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
68 * src/Makefile.am: Remove OPTIMIZE_CXXFLAGS, WARN_CXXFLAGS,
69 CONFIG_CXXFLAGS from here, and move to...
70 * src/Makefile.in: Regenerate.
71 * Makefile.am: ... here. Clean.
72 (OPTIMIZE_CXXFLAGS): Move up Makefile hierarchy to here.
73 (WARN_CXXFLAGS): Same.
74 (CONFIG_CXXFLAGS): Same.
75 * Makefile.in: Regenerate.
76 * libsupc++/Makefile.am: Use top-level OPTIMIZE_CXXFLAGS,
77 WARN_CXXFLAGS, CONFIG_CXXFLAGS as part of local AM_CXXFLAGS.
78 * libsupc++/Makefile.in: Regenerate.
80 Change math to libmath.
81 * math: Move to libmath, delete.
82 * libmath: New directory.
83 * libmath/*: Populate.
84 * src/Makefile.am (LIBMATH_INCLUDES): Change to libmath.
85 (libstdc___la_LIBADD): Same.
86 * src/Makefile.in: Regenerate.
87 * configure.in: Add AC_OUTPUT for libmath/Makefile.
88 * configure: Regenerate.
89 * Makefile.am (SUBDIRS): Add libmath.
90 * Makefile.in: Regenerate.
91 * README (file): Change name.
93 2000-10-06 Benjamin Kosnik <bkoz@cygnus.com>
94 Richard Henderson <rth@cygnus.com>
95 Alexandre Oliva <aoliva@redhat.com>
97 * libsupc++: New directory.
98 * libsupc++/*: Populate.
99 * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
100 eh-common.h, gansidecl.h.
101 * configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
102 * configure: Regenerate.
103 * Makefile.am (SUBDIRS): Add libsupc++.
104 * Makefile.in: Regenerate.
105 * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
106 * src/Makefile.in: Regenerate.
107 * libio/Makefile.am: Remove extraneous, confusing bits.
108 * libio/Makefile.in: Regenerate.
110 2000-10-05 Brent Verner <brent@rcfile.org>
112 * bits/istream.tcc [basic_istream::get(basic_streambuf&)]: Removed
113 test for _M_gcount < in_avail(), as in_avail() only reports info
114 for current buffer, causing method to return at end of buffer.
115 * testsuite/27_io/istream_unformatted.cc [test07()]: New test.
116 * testsuite/27_io/istream_unformatted-3.txt: New file.
117 * testsuite/27_io/istream_unformatted-3.tst: New file.
119 2000-10-05 Benjamin Kosnik <bkoz@fillmore.constant.com>
121 * README (file): Adjust directory structures.
122 * mkcheck.in (INC_PATH): Adjust for header changes.
124 2000-10-05 Phil Edwards <pme@sources.redhat.com>
126 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Tweaks to message texts
127 for public relations purposes.
128 * aclocal.m4: Regenerated.
129 * configure: Regenerated.
131 * docs/ext/howto.html: Additional explanation about hashing.
133 2000-10-05 Benjamin Kosnik <bkoz@cygnus.com>
135 * include: New directory.
136 * include/backward: New directory.
137 * include/bits: New directory.
138 * include/ext: New directory.
139 * include/std: New directory.
140 * include/*/*: Populate.
142 * backwards: Move to include/backwards, delete.
143 * bits: Move to include/bits, delete.
144 * ext: Move to include/ext, delete.
145 * std: Move to include/std, delete.
147 * src/complex.cc: Adjust include of mathconf.
149 * mkc++config (BASE_H): Add include.
151 * src/Makefile.am: Support for topleve sources include directory.
152 (INCLUDES): Add LIBMATH_INCLUDE.
153 * src/Makefile.in: Regenerate.
154 * math/Makefile.am (INCLUDES): Append /include.
155 * math/Makefile.in: Regenerate.
156 * libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
157 * libio/Makefile.in: Regenerate.
159 2000-10-04 Benjamin Kosnik <bkoz@gnu.org>
161 * libio/_G_config.h : Re-guard the __mbstate_t declaration.
163 2000-10-03 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
165 * docs/22_locale/howto.html: Add link to proto-documentation on
167 * docs/documentation.html: Rename links for clarity.
169 * src/Makefile.am (headers): Remove unistd.h, wrap_unistd.h. Add
170 fcntl.h, iolibio.h, libioP.h, pthread.h, iconv.h.
171 * src/Makefile.in: Regenerate.
173 2000-10-02 Steven King <sxking@uswest.net>
175 * mkcshadow: Fixed script to output proper include guard.
176 * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
177 * libio/_G_config.h: Hacked to make work with shadow heraders.
178 * shadow/*: Hacked to make shadow headers work.
180 2000-10-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
182 Self-compile with shadow headers.
183 * acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
184 like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
185 it becomes the default way the library is built.
186 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
187 * config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
188 * config/gnu-linux/ctype.cc (ctype): Use it.
190 * src/localename.cc (locale::_Impl::_M_replace_categories): Remove
192 * src/locale.cc: Explicitly cast mbstate_t to void* in calls to
193 memset. This should not be necessary, but an ambiguous overload
196 * shadow/bits/std_cwchar.h: Fix.
197 * shadow/wchar.h: Fix.
199 * config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
200 enums into namespace std:: for ctype_base enum. Other OS types
201 will have to do this as well.
202 * config/gnu-linux/ctype.cc (ctype): Inject ctype data into
203 namespace std, in particular __ctype_toupper, __ctype_tolower,
206 * shadow/iolibio.h: New file.
207 * shadow/bits/wrap_iolibio.h: New file.
208 * shadow/libioP.h: New file.
209 * shadow/bits/wrap_libioP.h: New file.
210 * shadow/bits/wrap_fcntl.h: New file.
211 * shadow/fcntl.h: New file.
212 * shadow/iconv.h: New file. Inject iconv names into the global
213 namespace, unmangled for the moment.
214 * shadow/bits/wrap_iconv.h: New file.
215 * shadow/unistd.h: Remove. Useless.
216 * shadow/bits/wrap_unistd.h: Remove.
218 * src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
219 * src/Makefile.in: Regenerate.
221 * config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.
223 * shadow/libio.h: Fix.
224 * shadow/bits/wrap_libio.h: Fix.
226 * shadow/bits/std_clocale.h: Remove typedef struct construct,
227 which will not compile.
228 * shadow/bits/std_ctime.h: Same.
230 * shadow/pthread.h: New file. Put pthreads types and functions
231 into global scope, which is probably not the correct long-term
232 solution but has to be done at the moment before libio wrappers
234 * shadow/bits/wrap_pthread.h: New file.
236 * bits/std_ios.h: Formatting tweak.
237 * shadow/bits/std_cstdio.h: Format. Remove extraneous bits.
239 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
240 tests for compiler features.
241 * aclocal.m4: Regenerate.
242 * configure: Regenerate.
244 * config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
246 * libio/libioP.h: Comment out fcntl.h include.
248 * shadow/math.h: Add in float and long declarations, as per ISO C9X.
250 * bits/c++config: Define _ISOC99_SOURCE.
252 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
253 CSHADOWFLAGS, as well as _ISOC99_SOURCE.
254 * aclocal.m4: Regenerate.
255 * configure: Regenerate.
256 * src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
257 (CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
258 (CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
259 std or shadow directories.
260 (LTCXXCOMPILE): Same.
261 (INCLUDES): Add $(top_builddir) before $(top_srcdir).
262 (AC_CXXFLAGS): Add CSHADOWFLAGS.
263 * src/Makefile.in: Regenerate.
265 * src/complex.cc (FCT): Change ::name to name.
266 * src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
267 * src/complexf.cc (FCT): Same.
269 * src/complexf.cc: Remove FCT define, as things are properly
270 overloaded in the std namespace with the shadow headers.
271 * src/complexl.cc: Same.
272 * src/complex.cc: Same.
274 2000-09-25 Phil Edwards <pme@sources.redhat.com>
276 * docs/documentation.html: Add link to...
277 * docs/ext/howto.html: ...this. New dir/file, describing library
278 extensions (both ours and SGI's).
279 * docs/faq/index.html: Small updates.
280 * docs/faq/index.txt: Regenerate.
282 2000-09-25 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
284 * bits/basic_file.h (_M_open_mode): Remove extra qualifier.
286 2000-09-25 Levente Farkas <lfarkas@mindmaker.hu>
288 * ext/stl_hashtable.h (_M_copy_from): Change __copy to __local_copy.
290 2000-09-19 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
292 * src/localename.cc (locale::_Imp) : Remove typedefs.
293 * bits/localefwd.h (locale::locale(const locale& __other, _Facet*
294 __f): Consistency check, call _Imp ctor with reference argument
296 * bits/localefwd.h: Change _S_num_categories to
297 _S_categories_num. Add new data member, _S_facets_num, which is
298 the number of standard facets.
300 2000-09-19 Phil Edwards <pme@sources.redhat.com>
302 * docs/21_strings/howto.html: Fix editor lossage from last commit.
304 2000-09-19 Phil Edwards <pme@sources.redhat.com>
306 * docs/thanks.html: More thanks.
307 * docs/18_support/howto.html: Fix thinko.
308 * docs/21_strings/howto.html: Minor tweaks and updates to URLs.
309 Redo the string transformation notes and link to...
310 * docs/22_locale/howto.html: ...here.
312 2000-09-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
314 * src/locale-inst.cc: Add time_put_byname and
315 time_get_byname instantiations.
316 * bits/locale_facets.h: Correct default, private derivation to
317 public derivation in _byname declarations.
318 * src/locale.cc (locale::classic()): Simplify.
319 * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
320 const string& __name, category __cat, size_t __refs): Re-work for
322 (_M_normalize_category_names): Remove.
324 * testsuite/22_locale/global_templates.cc (test01): Tweaks.
325 * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
327 2000-09-18 Yuri V. Baskakov <yuribsk@lab.sun.mcst.ru>
329 * bits/std_bitset.h (operator>>): Change to char_type.
331 2000-09-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
333 * src/locale.cc (locale::locale(const char* __name)): Consolidate
334 name setting. Add checks for NULL __name pointers. Remove calls to
335 _S_initialize() as initial locale initialization can either be
336 assumed, or needs to be made consistent throughout locale
338 (locale::locale(const locale& __other, const char* __name,
339 category __cat): Add checks for NULL name. Add checks for
341 * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
342 const string& __name, category __cat, size_t __refs)): Set correct
343 name, has_name values.
344 * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
345 * docs/22_locale/locale.html: New file, more unfinished docs...
347 2000-09-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
349 * src/locale.cc (locale::name()): Implement.
350 (_Impl(size_t __numfacets, size_t __refs, bool __namep = false,
351 string __name = "*")): Change signature.
352 (locale::classic): Initialize the "C" locale as a named locale.
353 * bits/localefwd.h (locale): Change _M_num_references to
354 _M_references. Eliminate _M_cached_name_ok. Rename _M_cached_name
356 * bits/localefwd.h: Tweaks.
357 * src/localename.cc: Tweaks.
358 * testsuite/22_locale/ctor_copy_dtor.cc (test01): Add tests.
361 * bits/basic_string.h: Consistency check, change _M_state ->
364 2000-09-14 Brendan Kehoe <brendan@zen.org>
366 * bits/string.tcc (_Rep::_S_max_size): Use typename for its size_type
369 * src/Makefile.an (headers): Also install backward/fstream.h.
370 * src/Makefile.in: Regenerate.
372 * bits/char_traits.h (char_traits<_CharT>::get_state,
373 char_traits<char>::get_state, char_traits<wchar_t>::get_state): Pass
374 argument in by reference, not by value. Uglify to _S_get_state.
375 (char_traits<*>::__eos): Uglify to _S_eos.
376 * bits/std_ostream.h (ends(basic_ostream<_CharT, _Traits>& __os)):
377 Change __eos to _S_eos.
379 2000-09-13 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
381 * testsuite/22_locale/static_members.cc: New file.
382 * testsuite/22_locale/ctor_copy_dtor.cc: New file.
383 * src/locale.cc: Minor formatting tweaks.
385 2000-09-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
387 * testsuite/22_locale/global_templates.cc (test01): Add negative
390 * bits/localefwd.h (locale::operator()): Minor tweaks.
391 * bits/locale_facets.tcc (locale::operator()): Same.
392 * testsuite/22_locale/operators.cc: New file.
394 * testsuite/22_locale/facet.cc (output_iterator): Remove
395 gnu_input_iterator, gnu_output_iterator.
397 2000-09-11 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
399 * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
400 * aclocal.m4: Regenerate.
401 * configure: Regenerate.
403 * bits/c++config (__GLIBCPP__): Update, in the hopes of making a
404 snapshot release soon.
405 (_GNU_SOURCE): Define this in the header files, as ISO C99 support
406 is pretty much assumed.
408 * testsuite/22_locale/global_templates.cc: New file. Add tests for
409 use_facet and has_facet.
411 * bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
412 Modify/correct iconv signatures for glibc2.2.
414 2000-09-10 Branko Cibej <branko.cibej@hermes.si>
416 * acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Replace "grep -q" with
419 2000-09-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
421 * bits/localefwd.h (locale::_Impl): Scope out types to public.
422 (locale): Make _Impl declaration public.
424 2000-09-08 Felix Natter <fnatter@gmx.net>
426 * docs/17_intro/porting-howto.html: New version.
428 2000-09-07 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
430 * config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
432 * config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
433 * config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.
435 2000-09-07 Phil Edwards <pme@sources.redhat.com>
437 Add bits for --enable-maintainer-mode:
438 - turns on enable_debug
439 (doing "--enable-maint --disable-debug" will DTRT)
440 - turns on -Werror, now off by default
441 * acinclude.m4: Add bits.
442 * aclocal.m4: Regenerate.
443 * configure.in: Add defaults for GLIBCPP_ENABLE_DEBUG.
444 * configure: Regenerate.
446 2000-09-07 Benjamin Kosnik <bkoz@cygnus.com>
448 * bits/std_cwctype.h: Remove yesterday's hacks.
450 2000-09-07 Brad Garcia <bgarcia@laurelnetworks.com>
452 * bits/stl_tree.h: Make operators !=, == type safe for map, set.
453 * testsuite/23_containers/set_operators.cc: New file. Should not
455 * testsuite/23_containers/map_operators.cc: New file. Ditto.
457 2000-09-06 Richard Henderson <rth@cygnus.com>
458 Benjamin Kosnik <bkoz@cygnus.com>
460 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
461 * aclocal.m4: Regenerate.
462 * configure: Regenerate.
463 * config/cpu/ia64: New directory.
464 * config/cpu/ia64/bits: New directory.
465 * config/cpu/ia64/bits/atomicity.h: New file.
467 2000-09-06 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
469 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
470 to no, so that libstdc++-v3's libio will be built on glibc-2.2
472 * aclocal.m4: Regenerate.
473 * configure: Regenerate.
474 * */Makefile.in: Regenerate.
476 * bits/std_cwctype.h: Put in temporary hack to work around -O2 +
477 glibc 2.1.x unsigned errors. Or disable -Werror by default...
479 * testsuite/23_containers/vector_element_access.cc: New file.
480 * bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.
482 2000-09-06 Levente Farkas <lfarkas@mindmaker.hu>
484 * bits/string.tcc: Fix up more parameter names.
486 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
488 * configure: Rebuilt with new libtool.m4.
490 2000-09-01 Benjamin Kosnik <bkoz@cygnus.com>
492 * src/locale-inst.cc: Remove pre-instantiation of unicode
493 codecvt types. Now unnecessary, as locale header now correct.
495 2000-08-31 Benjamin Kosnik <bkoz@cygnus.com>
497 * bits/locale_facets.tcc (_S_build_float_format): Move ...
498 * src/locale.cc: Here.
499 * bits/locale_facets.tcc (num_get::_M_extract): Clean up generic
500 definition. Move specialization to ...
501 * src/locale.cc: Here.
502 * bits/locale_facets.tcc: Move _Format_cache specializations to ...
503 * src/locale.cc: Here.
504 * bits/locale_facets.tcc: Move use_facet<ctype> specializations to ...
505 * src/locale.cc: Here.
507 * bits/std_locale.h: Note that locale_facets.tcc should be
508 included here, for standards conformance. It may increase
509 compile times though. For the time being, enable.
510 * testsuite/22_locale/facet.cc: New file, some parts commented out
513 * mkcheck.in: Append total time to test summary file.
515 * bits/sbuf_iter.h : Formatting tweaks.
517 Clean up static const data member definitions.
518 * src/locale.cc: Add definitions for all missing locale,
519 locale::_Imp, and locale::id static data members.
520 (ctype<char>): Add table_size define.
521 (money_base): Add _S_default_pattern, uglify.
522 * bits/localefwd.h: Add definitions for static members of _Count_ones.
523 * bits/locale_facets.h: Tweaks.
524 * bits/locale_facets.tcc: Tweaks.
525 * bits/string.tcc: Add definition for npos.
526 * bits/ios_base.h: Tweaks.
527 * bits/ios_base.h (ios_base::Init::_M_ios_base_init): Change to
529 * src/ios.cc: And here. Add _S_local_words definition.
530 Add definitions for __ios_flags const static data.
531 * src/codecvt.cc: Same for __enc_traits.
532 * src/locale-inst.cc: Remove money_base data member definition
535 2000-08-30 Benjamin Kosnik <bkoz@redhat.com>
537 * testsuite/22_locale/ctype_wchar_t_members.cc (test01): New file.
539 * docs/22_locale/codecvt.html: Re-number.
540 * docs/22_locale/howto.html: Add entry for ctype
541 documentation. Add entry for Nathan's introduction to locales
543 * docs/22_locale/ctype.html: New file. In progress...
545 * docs/22_locale/codecvt.html: Formatting cleanups.
546 * src/locale.cc (ctype<wchar_t>::do_is): Fix thinko.
548 2000-08-30 Phil Edwards <pme@sources.redhat.com>
550 * docs/22_locale/codecvt.html: Behind-the-scenes ASCII->HTML
551 tweaks for certain browsers.
553 2000-08-29 Benjamin Kosnik <bkoz@redhat.com>
555 * bits/locale_facets.h (ctype<char>): Remove __table_type.
556 Add include for bits/std_cwctype.h, for wctype_t.
557 * src/locale.cc (ctype<wchar_t>): Implement.
558 * config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
559 typedef, instead name enum.
560 * config/gnu-linux/bits/ctype_specializations.h: Tweak.
561 * config/gnu-linux/ctype.cc: Tweak.
562 * testsuite/22_locale/ctype.cc: Tweak.
564 * bits/codecvt.h (__enc_traits): Uglify names.
566 2000-08-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
568 * docs/22_locale/codecvt.html: Add more bits, format.
569 * bits/codecvt.h: Add copy ctor, rename types.
570 * testsuite/22_locale/codecvt_unicode_char.cc: Tweak.
572 * libio/iofwide.c: Tweak.
574 2000-08-28 Phil Edwards <pme@sources.redhat.com>
576 * docs/configopts.html: Mention new options.
577 * docs/install.html: Formatting changes for platform-specific
578 pre-reqs, previously only Cygwin.
579 * docs/mail.html: Fix new link.
580 * docs/thanks.html: A couple more people.
581 * docs/26_numerics/howto.html: Fix typo.
583 2000-08-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
585 * docs/22_locale/howto.html: Add notes on codecvt implementation.
586 * docs/22_locale/codecvt.html: New file. In progress.
588 2000-08-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
590 * acconfig.h: Revert.
591 * acinclude.m4: Revert.
592 * libio/_G_config.h: Revert.
593 * libio/libio.h: Revert.
595 2000-08-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
597 * bits/codecvt.h: Tweaks.
598 * testsuite/22_locale/codecvt_unicode_wchar_t.cc (test01): Fix up
599 initial string literals for UCS4.
601 2000-08-23 Phil Edwards <pme@sourceware.cygnus.com>
603 * acconfig.h: _GLIBCPP_USING_THREADS and some workaround types added.
604 * acinclude.m4: New macro, GLIBCPP_ENABLE_WCHAR. Set the threads
605 definition as well, and some minor spelling/spacing fixes. If
606 building libio, check for certain typedefs.
607 * libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
608 Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
610 * libio/libio.h: In the null case, _IO_lock_t can't just be void.
611 * src/string-inst.cc: Use _GLIBCPP_USE_WCHAR_T.
613 * configure.in: Update the cache a bit more often.
615 * mkcheck.in: For check-install, also need to -I the testsuite dir.
617 2000-08-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
619 * src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
620 __enc_traits> instantiations for has_facet and use_facet.
621 * testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
622 testing two-byte unicode encodings converted to four-byte UCS4
625 * bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
626 * testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
627 correct state/encoding information.
629 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
630 mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
632 Add checks for langinfo.h, nl_langinfo function call.
633 * libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.
635 2000-08-22 Richard B. Kreckel <Richard.Kreckel@Uni-Mainz.DE>
637 * config/cpu/alpha/bits/atomicity.h: Change __attribute__
638 ((unused)) to __attribute__ ((__unused__)).
639 * config/cpu/arm/bits/atomicity.h: Same.
640 * config/cpu/generic/bits/atomicity.h: Same.
641 * config/cpu/i386/bits/atomicity.h: Same.
642 * config/cpu/i486/bits/atomicity.h: Same.
643 * config/cpu/powerpc/bits/atomicity.h: Same.
644 * config/cpu/sparc/sparc32/bits/atomicity.h: Same.
645 * config/cpu/sparc/sparc64/bits/atomicity.h: Same.
647 2000-08-22 Levente Farkas <lfarkas@mindmaker.hu>
649 * bits/basic_string.h: Fix up parameter names.
651 2000-08-22 Brent Verner <brent@rcfile.org>
653 * src/Makefile.am (INCLUDES): Put $(CSHADOW_INCLUDES) before
655 * src/Makefile.in: Regenerate.
657 2000-08-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
659 * bits/codecvt.h: Implement codecvt<wchar_t, char, mbstate_t>. Fix
660 up __enc_traits template so as to be marginally useful.
661 * src/codecvt.cc: And here.
662 * bits/char_traits: Tweak.
663 * bits/locale_facets.h: Tweak.
664 * bits/locale_facets.tcc: Tweak.
665 * bits/localefwd.h: Tweak.
666 * src/locale-inst.cc: Add use_facet/has_facet instantiations here.
667 * testsuite/22_locale/codecvt_wchar_t_cc.cc: New file.
668 * testsuite/22_locale/codecvt_char_char.cc: New file.
669 * testsuite/22_locale/codecvt_unicode_char.cc: New file.
671 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
673 * bits/std_cmath.h (std::abs): Overload for int and long.
675 2000-08-20 Benjamin Kosnik <bkoz@gnu.org>
677 * src/string-inst.cc: Tweak instantiations for new-gxx-abi.
679 2000-08-19 Gabriel Dos Reis <gdr@codesourcery.com>
681 * bits/valarray_array.h (__valarray_min, __valarray_max): Fix
682 thinko. Diagnostic messages really need to be improved for
683 template argument deduction.
685 2000-08-18 Benjamin Kosnik <bkoz@gnu.org>
687 * bits/valarray_meta.h: Fix typos...
689 2000-08-18 Gabriel Dos Reis <gdr@codesourcery.com>
691 * bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
692 _Expr<>::apply): Implement.
694 2000-08-18 Gabriel Dos Reis <gdr@codesourcery.com>
696 * bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.
698 * bits/valarray_array.h (__valarray_min, __valarray_max): New
701 2000-08-17 Mark Mitchell <mark@codesourcery.com>
703 * bits/localefwd.h (std::locale): Use explicit `class' specified
704 when declaring friends.
705 * bits/std_fstream.h (std::basic_filebuf): Likewise.
707 2000-08-16 Alexandre Oliva <aoliva@redhat.com>
709 * src/Makefile.am (libstdc++.INC): Renamed from INCLUDES.
710 * src/Makefile.in: Regenerate.
712 2000-08-15 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
714 * bits/codecvt.h: New file.
715 * src/codecvt.cc: New file.
716 * bits/std_locale.h: Add include here.
717 * src/Makefile.am (headers): Add codecvt.h
718 (sources): Add codecvt.cc.
719 * src/Makefile.in: Regenerate.
720 * bits/locale_facets.h (codecvt): Re-implement. Rename _Codecvt to
721 __codecvt_abstract_base in an attempt to point some light this way...
722 Move __enc_traits and codecvt bits to codecvt.h.
723 * src/locale-inst.cc: Remove codecvt<wchar_t, wchar_t, mbstate_t>
724 explicit instantiation. Separate out codecvt instantations, simplify.
725 * src/locale.cc: Move codecvt bits to codecvt.cc
727 2000-08-15 Alexandre Oliva <aoliva@redhat.com>
729 * src/Makefile.am (INCLUDES): New target file, with all -I flags.
730 * src/Makefile.in: Regenerate.
732 2000-08-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
745 * config/c_io_libio.cc (__basic_file): Add hacky casts to
746 ((struct _IO_FILE_plus *) in ctors.
747 (__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
748 * libio/Makefile.am: Fix copyright. Remove cleanup.c.
749 * libio/cleanup.c: Remove.
750 * libio/filedoalloc.c (_IO_file_doallocate): Don't call
751 _IO_cleanup_registration_needed, even if not libc.
753 * testsuite/27_io/stringstream.cc (test02): Fix.
755 2000-08-14 Brent Verner <brent@rcfile.org>
757 * testsuite/debug_assert.h: new file
758 * testsuite/*/*.cc: s/test\s*&=([^;]+);/VERIFY($1);/g
759 changed conditional #include <c?assert.?h?> to
760 unconditional #include <debug_assert.h>
761 * mkcheck.in: added $SRC_DIR/testsuite to include search path
762 for testsuite compile command.
764 2000-08-14 Levente Farkas <lfarkas@mindmaker.hu>
766 * bits/std_fstream.h: Remove duplicate typdefs for ofstream and
767 wofstream, filebuf, wfilebuf, fstream, wfstream.
768 * bits/std_streambuf.h: Same for streambuf, wstreambuf.
769 * bits/std_sstream.h: Same for stringstream and wstringstream.
770 Same for stringbuf, wstringbuf, istringstream, wistringstream,
771 ostringstream, wostringstream.
773 * testsuite/26_numerics/valarray.cc: Add test.
775 2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
777 * configure: Regenerate after change to ../libtool.m4.
779 2000-08-10 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
781 * bits/locale_facets.tcc: Formatting tweaks.
782 * bits/locale_facets.h (__enc_traits): Start integrating this
783 into codecvt, ctype. Formatting tweaks.
785 2000-08-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
787 Preliminary wchar_t implementation, with trivial encodings.
788 * docs/configopts.html: Add bits about canonical configure option
791 * testsuite/27_io/iostream_objects.cc: Replace this file (which
792 has newly-declared-illegal mixing of wide/narrow stdstreams) with...
793 * testsuite/27_io/narrow_stream_objects.cc: New file.
794 * testsuite/27_io/wide_stream_objects.cc: New file.
796 * bits/fstream.tcc (underflow): Temporarily hack a solution
797 together that writes from the external file to the internal
798 buffers. This removes codecvt from the loop, and is incorrect.
799 (_M_really_overflow): Same here.
801 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
803 2000-08-08 Benjamin Kosnik <bkoz@cygnus.com>
804 Ulrich Drepper <drepper@cygnus.com>
806 * config/c_io_libio.h: Tweak.
807 * config/c_io_libio_codecvt.c: New file.
808 * libio/Makefile.am: Add c_codecvt.c.
809 * libio/Makefile.in: Regenerate.
810 * libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
811 stream is not orientated.
813 * acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
814 encoding gets fleshed out.
816 * bits/basic_file.h: Add specialization declarations.
817 * config/c_io_libio.cc: Add specializations for pbackfail, uflow.
819 * config/c_io_libio.h: Add __c_wfile_type.
820 * bits/basic_file.h: Add _M_wfile.
822 * config/c_io_libio.cc (__basic_file<char>): Initialize the
823 streams without setting the orientation of the underlying FILE to
824 either wide or narrow.
825 (__basic_file<wchar_t>)): Enable tricky wchar_t io bits.
827 2000-08-07 Felix Natter <fnatter@gmx.net>
829 * docs/17_intro/porting-howto.html: New version.
831 2000-08-03 Mark Mitchell <mark@codesourcery.com>
833 * bits/locale_facets.h (ctype::ctype): Don't name unused
836 2000-08-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
838 * docs/install.html: Edit bits about requiring a special version
841 2000-07-31 Benjamin Kosnik <bkoz@cygnus.com>
843 * libio/fileops.cc: Update to current glibc sources.
844 * libio/genops.c: Same.
845 * libio/iofwide.c: Same.
846 * libio/libio.h: Same.
847 * libio/libioP.h: Same.
848 * libio/wfiledoalloc.c: Same.
849 * libio/wgenops.c: Same.
851 2000-07-28 Alexandre Oliva <aoliva@redhat.com>
853 * acinclude.m4: Include ../libtool.m4.
854 * aclocal.m4, configure: Rebuilt.
856 2000-07-26 Phil Edwards <pme@sourceware.cygnus.com>
858 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Test for GNU ld
859 before trying to use any of its options.
860 (CHECK_MATH_DECL*,CHECK_BUILTIN_MATH_DECL*): Cache tests.
861 * aclocal.m4: Regenerate.
862 * configure.in: Having found GNU make, name it.
863 * configure: Regenerate.
864 * docs/install.html: Mention possible problems with caching.
865 * src/Makefile.am (CXXLINK): Use new OPT_LDFLAGS.
866 * src/Makefile.in: Regenerate.
867 * libio/Makefile.in: Regenerate.
868 * math/Makefile.in: Regenerate.
869 * Makefile.in: Regenerate.
871 2000-07-26 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
873 * src/misc-inst.cc (std): Remove instantiations.
875 * acinclude.m4: Add forward-looking bits for autoconf.
876 * aclocal.m4: Regenerate.
878 * bits/ostream.tcc (ostream::operator<<): Fix const char* case.
880 2000-07-25 Benjamin Kosnik <bkoz@gnu.org>
882 * configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
883 it back for current versions of maintainer-tools...
884 * acinclude.m4: Some cleanups...
885 * aclocal: Regenerated.
886 * configure: Regenerated.
888 * src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
889 optimizing/adapting the hash table using GNU ld.
890 * src/Makefile.in: Regenerate.
892 2000-07-24 H.J. Lu <hjl@gnu.org>
894 * src/Makefile.am (LIBIO_INCLUDES): Set to -I$(top_srcdir)/libio
895 even if GLIBCPP_NEED_LIBIO is false. The installed glibc header
896 files don't include private libio header files needed by
898 * src/Makefile.in: Rebuild.
900 2000-07-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
902 * bits/std_fstream.h: Parameterize __basic_file.
903 * config/c_io_libio.cc: Add wchar_t methods for parameterization.
904 * bits/basic_file.h: Same here.
906 * bits/istream.tcc (getline): Tweaks.
908 * bits/fstream.tcc: Shorten __retval to __ret.
909 * bits/ostream.tcc: Same.
910 * bits/sbuf_iter.h: Same.
911 * bits/sstream.tcc: Same.
912 * bits/streambuf.tcc: Same.
913 * bits/std_fstream.h: Same.
914 * src/string-inst.cc: Same.
916 * config/c_io_libio.cc: Same.
917 * bits/string.tcc: Same.
918 * bits/std_streambuf.h: Same.
920 2000-07-23 Brent Verner <brent@rcfile.org>
922 * bits/istream.tcc: istream::getline(char_type*, streamsize,
923 char_type) make compliant
924 * testsuite/27_io/istream_unformatted.cc: test for compliant behavior
926 2000-07-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
928 * acinclude.m4 (enable_cshadow_headers): Fix problems with blddir
929 and srcdir used to define CSHADOW_INCLUDES..
931 * configure.in: For consistency, change .sanity_warned to
934 * acinclude.m4: Tweak formatting.
935 * Makefile.am (check): Call mkcheck with full pathname for build
937 (check-install): And here.
938 * Makefile.in: Regenerate.
940 2000-07-22 Gabriel Dos Reis <gdr@codesourcery.com>
942 Line up with libstdc++-v2 version of valarray.
943 * bits/valarray_array.h (__valarray_product): Make inline.
944 * src/valarray-inst.cc (__valarray_product): Remove explicit
947 2000-07-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
949 * src/stl-inst.cc: Change __sink_unused_warning to unsigned int
952 * testsuite/26_numerics/complex_inserters_extractors.cc (testall):
953 Change return type to void.
954 * testsuite/25_algorithms/lower_bound.cc: Add return values.
955 * testsuite/17_intro/header_ciso646.cc: Modify.
956 * bits/locale_facets.h: Add return values for the generic cases.
958 2000-07-21 H.J. Lu (hjl@gnu.org)
960 * acinclude.m4: Include <features.h> for glibc testing.
961 * aclocal.m4: Likewise.
963 * configure: Rebuild.
965 2000-07-20 H.J. Lu (hjl@gnu.org)
967 * acinclude.m4: Change "#pragma system_header" to
968 "#pragma GCC system_header".
969 * aclocal.m4: Likewise.
970 * bits/std_cmath.h: Likewise.
971 * bits/std_cassert.h: Likewise.
972 * bits/std_cctype.h: Likewise.
973 * bits/std_cerrno.h: Likewise.
974 * bits/std_cfloat.h: Likewise.
975 * bits/std_climits.h: Likewise.
976 * bits/std_clocale.h: Likewise.
977 * bits/std_cwchar.h: Likewise.
978 * bits/std_csetjmp.h: Likewise.
979 * bits/std_csignal.h: Likewise.
980 * bits/std_cstdarg.h: Likewise.
981 * bits/std_cstddef.h: Likewise.
982 * bits/std_cstdio.h: Likewise.
983 * bits/std_cstdlib.h: Likewise.
984 * bits/std_cstring.h: Likewise.
985 * bits/std_ctime.h: Likewise.
986 * bits/std_cwctype.h: Likewise.
987 * bits/std_exception.h: Likewise.
988 * bits/std_new.h: Likewise.
989 * bits/std_typeinfo.h: Likewise.
990 * shadow/bits/std_cassert.h: Likewise.
991 * shadow/bits/std_cctype.h: Likewise.
992 * shadow/bits/std_cerrno.h: Likewise.
993 * shadow/bits/std_cfloat.h: Likewise.
994 * shadow/bits/std_climits.h: Likewise.
995 * shadow/bits/std_clocale.h: Likewise.
996 * shadow/bits/std_cmath.h: Likewise.
997 * shadow/bits/std_csetjmp.h: Likewise.
998 * shadow/bits/std_csignal.h: Likewise.
999 * shadow/bits/std_cstdarg.h: Likewise.
1000 * shadow/bits/std_cstddef.h: Likewise.
1001 * shadow/bits/std_cstdio.h: Likewise.
1002 * shadow/bits/std_cstdlib.h: Likewise.
1003 * shadow/bits/std_cstring.h: Likewise.
1004 * shadow/bits/std_ctime.h: Likewise.
1005 * shadow/bits/std_cwchar.h: Likewise.
1006 * shadow/bits/std_cwctype.h: Likewise.
1007 * shadow/bits/wrap_libio.h: Likewise.
1008 * shadow/bits/wrap_unistd.h: Likewise.
1009 * shadow/sys/cdefs.h: Likewise.
1011 * configure: Rebuild.
1013 2000-07-20 Jakub Jelinek <jakub@redhat.com>
1015 * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
1016 Use extended word instructions to match 64bit _Atomic_word.
1017 (__atomic_add): Likewise.
1018 * math/clog10l.c (clog10l): Use M_PIl if defined.
1019 * math/c_logl.c (c_logl): Likewise.
1020 * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
1021 * math/mathconf.h (ieee_quad_double_shape_type): New type.
1022 (GET_LDOUBLE_MSW64): New define.
1024 2000-07-20 Benjamin Kosnik <bkoz@cygnus.com>
1026 * bits/std_streambuf.h: Add bits for pback buffers here, so that
1027 in_avail, etc can use them.
1028 * bits/std_fstream.h: Ditto.
1029 * bits/fstream.tcc: Ditto.
1030 * testsuite/27_io/filebuf.cc: Tweaks.
1031 * testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.
1033 2000-07-19 Benjamin Kosnik <bkoz@cygnus.com>
1035 * src/localename.cc: Same.
1036 * src/locale.cc: Same.
1037 * bits/localefwd.h: _M_init_facet to _M_facet_init.
1039 * bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.
1041 * bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.
1043 * bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
1044 * bits/std_fstream.h: Same.
1046 * bits/basic_string.h: Tweaks.
1048 2000-07-19 Phil Edwards <pme@sourceware.cygnus.com>
1050 * docs/18_support/howto.html: Update.
1052 2000-07-19 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
1054 Internal consistency checks.....
1055 * bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
1058 * bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
1059 * bits/basic_ios.tcc: Same.
1061 * bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
1062 Change _M_fctype_buf to _M_buf_fctype.
1063 * bits/fstream.tcc: Same.
1065 * bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
1066 Change _M_locale_set to _M_buf_locale_init.
1067 * bits/streambuf.tcc: Same.
1068 * bits/sstream.tcc: Same.
1069 * bits/fstream.tcc: Same.
1071 * bits/std_streambuf.h: Make typedefs consistent.
1072 (_M_buf_bump): Be more careful with input sequence.
1074 * bits/std_sstream.h: Same.
1075 * bits/std_fstream.h: Same.
1077 2000-07-18 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1079 * acinclude.m4: Tweaks.
1080 * config/c_io_libio.cc: Tweaks.
1081 * bits/sstream.tcc (stringbuf::pbackfail): Simplify.
1082 * libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
1083 * libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
1084 * libio/iofclose.c iofopen.c, stdio.c: New files.
1085 * libio/Makefile.am: Add files, add flags, etc.
1086 * src/Makefile.am (sources): Add filebuf.cc.
1087 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
1088 (GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
1090 2000-07-17 Phil Edwards <pme@sourceware.cygnus.com>
1092 * acinclude.m4: Import CHECK_GNU_MAKE from autoconf macro archive.
1093 * configure.in: Use it. Also print reminders one time.
1094 * aclocal.m4: Regenerate.
1095 * configure: Regenerate.
1097 2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
1099 * bits/valarray_array.h (__valarray_get_storage): New function.
1100 (_Array<>::Array): Use it.
1101 * bits/std_valarray.h (valarray<>::valarray): Likewise.
1102 (valarray<>::resize): Likewise. Tweak.
1103 * src/valarray-inst.cc (__valarray_product): Tweak.
1105 2000-07-11 Phil Edwards <pme@sourceware.cygnus.com>
1107 * docs: Update sourceware->sources in every HTML file. Minor updates.
1109 2000-07-07 Benjamin Kosnik <bkoz@soma.redhat.com>
1111 Clean up configure/build longstanding issues.
1112 * src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
1113 (CXXLINK): Add here, instead.
1115 * Makefile.am (check-install): Make sure mkcheck has execute privs.
1117 * configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.
1119 * configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
1120 c_io_libio.cc instead of copying.
1121 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.
1123 * configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
1124 c++threads.h instead of copying.
1125 * acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.
1128 * config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
1129 * bits/basic_file.h: Declare.
1131 * mkcheck.in (TESTS_FILE): Use -v instead of --version.
1133 2000-07-07 brent verner <brent@rcfile.org>
1135 * testsuite/27_io/istream_unformatted.cc (test05): New test.
1137 2000-07-07 Benjamin Kosnik <bkoz@gnu.org>
1139 * bits/istream.tcc (istream::getline): Minor tweaks.
1141 2000-07-07 Phil Edwards <pme@sourceware.cygnus.com>
1143 * docs/download.html: Mention gcc_update.
1144 * docs/configopts.html: Minor updates.
1145 * docs/gccrebuild.html: Ditto.
1146 * docs/18_support/howto.html: More tips, explanations, and reminders.
1147 * docs/19_diagnostics/howto.html: Ditto.
1148 * docs/21_strings/howto.html: Ditto.
1149 * docs/24_iterators/howto.html: Ditto.
1150 * docs/25_algorithms/howto.html: Ditto.
1151 * docs/26_numerics/howto.html: Ditto.
1153 2000-07-05 brent verner <brent@rcfile.org>
1155 * testsuite/27_io/ifstream_members.cc (test01): Add tests.
1156 * testsuite/27_io/ofstream_members.cc (test01): Add tests.
1157 * config/c_io_libio.cc (__basic_file::open): Unset
1158 ~_IO_DELETE_DONT_CLOSE.
1160 2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
1162 * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
1163 bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
1164 Do not paste anything after 'operator' keyword.
1166 2000-07-03 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1168 * bits/std_memory.h: Revert.
1170 2000-07-03 Brendan Kehoe <brendan@zen.org>
1172 * bits/std_complex.h: Fix parens. Format.
1174 2000-07-03 scott snyder <snyder@fnal.gov>
1176 * bits/locale_facets.tcc (_M_extract): Only figure out the base
1177 from the input if base == 0.
1178 * testsuite/27_io/istream_extractor_arith.cc: Test reading a
1179 number with a leading `0' in hex mode.
1181 * shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.
1183 * mkinclosure: Change `==' to `=' in test.
1185 2000-07-03 Chip Salzenberg <chip@valinux.com>
1187 * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
1189 * src/Makefile.in: Regenerate.
1191 2000-07-01 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1192 Ulrich Drepper <drepper@purist.soma.redhat.com>
1194 Sync libio to glibc-2.2 current CVS.
1195 * libio/_G_config.h: New file.
1196 * libio/wfileops.c: New file.
1197 * libio/wfiledoalloc.c: New file.
1198 * libio/wgenops.c: New file.
1199 * libio/iofwide.c: New file.
1200 * libio/Makefile.am: Tweaks.
1201 * libio/Makefile.in: Regenerate.
1202 * libio/gen-params: Remove. Generic replacement for this yet undone.
1203 * libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
1204 libioP.h, stdfiles.c]: Update.
1205 * config/c_io_libio.cc: Tweaks.
1206 * acinclude.m4: Complete hacks to test wide io.
1207 * aclocal.m4: Regenerate.
1208 * configure: Regenerate.
1209 * src/Makefile.am: Update.
1210 * src/Makefile.in: Regenerate.
1212 * math/cargl.c: Remove underscores.
1214 * bits/locale_facets.h: Tweaks. Start adding iconv details
1216 * bits/locale_facets.tcc: Tweaks.
1217 * bits/std_cwchar.h: Tweaks.
1219 2000-06-29 scott snyder <snyder@fnal.gov>
1221 * bits/concept_checks.h
1222 (__less_then_comparable_requirement_violation): Only check for <.
1223 * testsuite/25_algorithms/lower_bound.cc: New file.
1225 2000-06-29 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1227 * testsuite/27_io/ostream_manip.cc (test02): Add tests.
1228 * bits/ostream.tcc: Tweak.
1229 * bits/std_fstream.h (basic_filebuf::setbuf): Reset
1230 _M_buf_size_opt too.
1231 * bits/std_streambuf.h (basic_streambuf::~basic_streambuf): Zero
1232 out _M_buf_size_opt.
1233 * bits/std_sstream.h (basic_stringbuf::_M_init_stringbuf): Set
1234 _M_buf_size_opt out here.
1235 * bits/char_traits.h (char_traits::eos): Non standard member
1236 function, uglify to __eos. Return char_type().
1237 * bits/std_ostream.h: Change.
1239 * testsuite/27_io/ostream_seeks.cc: New file.
1240 * testsuite/27_io/ostream_seeks-1.tst: New file.
1241 * testsuite/27_io/istream_unformatted.cc (main): Move test04 and
1243 * testsuite/27_io/istream_seeks.cc: New file.
1245 2000-06-29 Branko Cibej <branko.cibej@hermes.si>
1247 * bits/std_memory.h (auto_ptr_ref): Reworked and defined only if
1248 _GLIBCPP_RESOLVE_LIB_DEFECTS.
1249 (auto_ptr): _M_ptr changed to void*.
1250 (suto_ptr::get): Cast _M_ptr to element type.
1251 (auto_ptr::auto_ptr(auto_ptr<Tp1>)): Test implicit convetsion.
1252 (auto_ptr::~auto_ptr): Use this->get() instead of _M_ptr.
1253 (auto_ptr::operator*): Likewise.
1254 (auto_ptr::operator->): Likewise.
1255 (auto_ptr::release): Likewise.
1256 (auto_ptr::reset): Likewise.
1257 (auto_ptr::auto_ptr(auto_ptr_ref)): Initialize from __ref._M_release.
1258 (auto_ptr::operator auto_ptr_rev<_Tp1>): Updated.
1259 Define nested auto_ptr_ref unless _GLIBCPP_RESOLVE_LIB_DEFECTS.
1260 Define operator=(auto_ptr_ref) if _GLIBCPP_RESOLVE_LIB_DEFECTS.
1262 2000-06-28 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1264 * testsuite/27_io/filebuf.cc: Tweak.
1265 * testsuite/27_io/filebuf_members.cc (test_01): Fix.
1266 * config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
1268 (__basic_file::basic_file): Clean, add calls similar to
1270 (__basic_file::open): Clean.
1271 (__basic_file::sys_open): Clean.
1273 * bits/std_fstream.h: Revert.
1274 * bits/fstream.tcc (filebuf::close()): Revert.
1275 (filebuf::basic_filebuf()): Revert.
1277 2000-06-27 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1279 Update to SGI STL 3.3
1280 * ext/hash_map, ext/hash_set, ext/slist, ext/stl_bvector.h,
1281 ext/stl_rope.h, ext/ropeimpl.h: Update.
1282 * bits/std_bitset.h, bits/std_map, bits/std_memory.h,
1283 bits/stl_algo.h, bits/stl_algobase.h, bits/stl_alloc.h,
1284 bits/stl_config.h, bits/stl_construct.h, bits/stl_deque.h,
1285 bits/stl_function.h, bits/stl_heap.h, bits/stl_iterator.h,
1286 bits/stl_iterator_base.h, bits/stl_list.h, bits/stl_map.h,
1287 bits/stl_multimap.h, bits/stl_multiset.h, bits/stl_numeric.h,
1288 bits/stl_queue.h, bits/stl_set.h, bits/stl_stack.h,
1289 bits/stl_string_fwd.h, bits/stl_threads.h, bits/stl_three.h,
1290 bits/stl_uninitialized.h, bits/stl_vectory.h: Update.
1292 * src/Makefile.am (headers): Add new files.
1293 * src/Makefile.in: Regenerate.
1294 * src/stl-inst.cc (std): Add instantiation for __sink_unused_warning.
1295 * bits/concept_checks.h: New file.
1296 * bits/container_concepts.h: New file.
1297 * bits/sequence_concepts.h: New file.
1299 2000-06-27 H.J. Lu <hjl@gnu.org>
1300 Loren J. Rittle <ljrittle@acm.org>
1302 * mkcheck.in: Add support to print standard flags needed to
1303 test g++ in build tree. Enhance command line error checking.
1305 2000-06-27 Phil Edwards <pme@sourceware.cygnus.com>
1307 * docs/install.html: Fix minor typo as reported.
1309 2000-06-26 Brent Verner <brent@rcfile.org>
1311 * bits/string.tcc (string::rfind): Fix.
1312 * testsuite/21_strings/rfind.cc: New file.
1314 2000-06-26 Anthony Williams <anthony@anthonyw.cjb.net>
1316 * testsuite/21_strings/ctor_copy_dtor.cc: Fixed logic error.
1318 2000-06-26 Branko Cibej <branko.cibej@hermes.si>
1320 * testsuite/27_io/filebuf_members.cc (test_01): Fixed typos.
1322 * mkcheck.in: Make the *.txt and *.tst files writable after
1323 copying them to $TEST_DIR.
1325 * testsuite/27_io/ostream_inserter_arith.cc: Renamed
1326 __TEST_NUMPUT_VERBOSE to TEST_NUMPUT_VERBOSE. Define
1327 TEST_NUMPUT_VERBOSE only if DEBUG_ASSERT.
1329 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1331 * bits/fstream.tcc (basic_filebuf::basic_filebuf(fd)): Use it.
1332 (basic_filebuf::close): Use it.
1333 * bits/std_fstream.h (basic_filebuf): Remove default arguments for
1335 (basic_filebuf): Add _M_fileno_based data member.
1336 As reported by brent verner <brent@rcfile.org>
1337 * testsuite/27_io/filebuf_members.cc: New file.
1338 * testsuite/27_io/filebuf_members-1.tst: New file.
1340 * bits/std_fstream.h: Formatting tweaks.
1341 * testsuite/27_io/ofstream_members.cc: New file.
1342 * testsuite/27_io/ofstream_members-1.tst: New file.
1343 * testsuite/27_io/ifstream_members.cc: New file.
1344 * testsuite/27_io/ifstream_members-1.tst: New file.
1346 2000-06-23 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1347 Ulrich Drepper <drepper@cygnus.com>
1349 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Add -D_GNU_SOURCE, so
1350 that all the freaky stuff like sincos will be around...
1352 2000-06-22 Branko Cibej <branko.cibej@hermes.si>
1354 * Makefile.am (AM_MAKEFLAGS): Added WERROR to list of flags.
1356 2000-06-22 Steven King <sxking@uswest.net>
1358 * acinclude.m4: Check for sinl, _sinl using 1 parameter.
1360 2000-06-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1362 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Redo. Use the
1363 same approach as GLIBCPP_CHECK_MATH_SUPPORT, only don't try to
1364 link against libm and don't use -fno-builtins...
1365 * math/mathconf.h: Change up builtin macros to new schema.
1366 * bits/std_cmath.h: And here. Wheee!
1367 * shadow/bits/std_cmath.h: And here.
1368 * acconfig.h: Change up builtin macros here.
1369 * math/cosf.c: Remove.
1370 * math/fabsf.c: Likewise.
1371 * math/sinf.c: Likewise.
1372 * math/sqrtf.c: Likewise.
1373 * math/Makefile.am (EXTRA_DIST): Remove those four files.
1374 * math/Makefile.in: Regenerate.
1376 2000-06-22 Anthony Williams <anthony@anthonyw.cjb.net>
1378 * testsuite/21_strings/find.cc: Patch.
1380 2000-06-22 Benjamin Kosnik <bkoz@soma.redhat.com>
1382 * acinclude.m4 (GLIBCPP_CHEC_LINKER_FEATURES): Use gcc + -x c++ as
1383 an easy way to get at g++ without having to link in libstdc++.
1385 2000-06-21 Benjamin Kosnik <bkoz@soma.redhat.com>
1387 Fix alpha, powerpc build failures.
1388 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Substantially
1389 re-write. Need to check for both proper declaration when using a
1390 c++ compiler, and "C" linkage when linking. Do both, and if both
1391 exist, then define the HAVE_* bits in config.h.
1392 (GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE): New, uber-macro. Does all.
1393 (GLIBCPP_CHECK_LINKER_FEATURES): Actually link and run this
1396 2000-06-20 Anthony Williams <anthony@anthonyw.cjb.net>
1398 * bits/string.tcc: Fix find.
1399 * testsuite/21_strings/find.cc: Patch.
1401 2000-06-20 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1403 * docs/install.html: Update where to get automake, where to get
1405 * acinclude.m4: Need -fno-builtins too, so gcc doesn't recognize
1408 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
1410 * acinclude.m4 ((GLIBCPP_CHECK_MATH_SUPPORT): Revert last change.
1411 Add -Werror-implicit-function-declaration instead.
1413 Regenerate with fixed maintainer-tools.
1414 * aclocal.m4: Regenerate.
1415 * configure: Regenerate.
1416 * libio/Makefile.in: Regenerate.
1417 * src/Makefile.in: Regenerate.
1419 2000-06-19 Russell Davidson <russell@ehess.cnrs-mrs.fr>
1421 * testsuite/27_io/istream_extractor_arith.cc: Patch.
1422 * bits/locale_factets.tcc: Tweak.
1424 2000-06-19 Raja R Harinath <harinath@cs.umn.edu>
1426 * src/Makefile.am: change @WERROR@ to $(WERROR) so that this can
1427 be overridden on the command line for individual files.
1429 2000-06-19 Benjamin Kosnik <bkoz@soma.redhat.com>
1431 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Can't use
1432 AC_LANG_CPLUSPLUS as this tries to link in libstdc++, which we are
1433 building. Use -x c++ instead, which does not attempt to link
1436 * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Actually check for
1437 not coring when we hit a try/throw block, which was the problem
1438 with the linker support...
1440 * docs/17_intro/contribute.html: Add bits about getting to the LWG
1442 * docs/documentation.html: Rename link to make more accurate and scary.
1443 * docs/gccrebuild.html: Edit for clarity as these are no longer
1445 * docs/install.html: Add bits about binutils for
1446 -ffunction-sections, -fdata-sections, -Wl,--gc-sections
1448 * configure.in: Add call for GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
1449 * math/Makefile.am (EXTRA_DIST): Change USE_LONG_DOUBLE to
1450 USE_COMPLEX_LONG_DOUBLE.
1451 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Break into
1452 GLIBCPP_CHECK_MATH_SUPPORT and GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT.
1453 Works around irregularies in powerpc "C" compiler, but a good idea
1456 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT):
1457 New. Merge both old compiler bug checks for complex into this.
1459 2000-06-19 Anthony Williams <anthony@anthonyw.cjb.net>
1461 * testsuite/21_strings/find.cc: Empty strings can be found at all
1462 positions. Modified.
1464 2000-06-19 Branko Cibej <branko.cibej@hermes.si>
1466 * testsuite/20_utilities: New directory.
1467 * testsuite/20_utilities/auto_ptr.cc: New file.
1469 2000-06-14 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1471 * src/Makefile.am (string_sources): Simplify, assuming that with
1472 -ffunction-sections, -fdata-sections, -Wl,--gc-sections, all this
1473 hacking is not necessary.
1474 (wstring_sources): Same.
1475 (OPTIMIZE_CXXFLAGS): Enable -fdata-sections -ffunction-sections
1477 * src/string-inst.cc: Remove macro blocks.
1478 * mkcheck.in (CXX_FLAG): Add bits here.
1480 * src/string-inst.cc: Remove iostream-related string instantiations.
1481 * src/misc-inst.cc: Add here.
1483 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Change FMTFLAGS
1485 * aclocal.m4: Regenerate.
1486 * configure.in: Change up.
1487 * configure: Regenerate.
1489 2000-06-13 Steven King <sxking@uswest.net>
1491 * acinclude.m4: Fixup some of the builtin math tests and add tests for
1492 __builtin_fmod* and test libm for fmodf, fmodl or _fmodf, _fmodl.
1493 * acconfig.h: Add entries for fmod*.
1495 2000-06-13 Branko Cibej <branko.cibej@hermes.si>
1497 * bits/std_cmath.h: Fix typos in tests (*_FMODFF -> *_FMODF).
1498 Test *_MODFF not *_MODF for modf(float, float*).
1499 (modf(float, float*)): Remove reference to _C_legacy.
1501 2000-06-13 Benjamin Kosnik <bkoz@redhat.com>
1503 * acinclude.m4 (enable_cshadow_headers): Change CSHADOWFLAGS to
1504 _GNU_SOURCE instead of _ISOC9X_SOURCE, as _GNU_SOURCE is the
1505 superset, and already defined at top level.
1506 * aclocal.m4: Regenerate.
1507 * configure: Regenerate.
1509 * docs/17_intro/contribute.html: Plead with people to use -cp.
1511 2000-06-13 Anthony Williams <anthony@anthonyw.cjb.net>
1513 * testsuite/23_containers/bitset_ctor.cc: Qualify reverse wth std::.
1515 * testsuite/27_io/filebuf.cc: Changed calls to
1516 fpos<>._M_position() to implicit calls to operator streamoff().
1517 * testsuite/27_io/iostream_objects.cc: Removed #include <ciso646>,
1518 as not needed. Revert, as part of standard.
1519 * testsuite/27_io/ostream_inserter_arith.cc: Replaced explicit
1520 call to numpunct<>._M_init() with overrides of the appropriate
1523 * testsuite/27_io/stringstream.cc: Removed unnecessary char *
1524 pointers from test01, so no need to call base(), which isn't
1525 guaranteed to be implemented as iterators may themselves be pointers
1526 * testsuite/27_io/stringbuf.cc: Removed unnecessary calls to
1527 _M_position() - use implicit conversion to streamoff instead
1529 2000-06-13 Thomas Holenstein <thomas@hex.ch>
1531 * bits/stl_iterator.h: Added inline to operators == to >=.
1533 2000-06-13 Brent Verner <brent@rcfile.org>
1535 * bits/streambuf.tcc: repaired _S_copy_streambufs()
1536 * testsuite/27_io/ostream_inserter_other.cc (test03): Added testcase.
1538 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1540 * bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
1542 * src/locale.cc: Add cwchar include here. Remove incorrect
1543 definitions, and stub them out.
1544 * config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
1545 * config/solaris/solaris2.7/ctype.cc (ctype): Same.
1546 * config/solaris/solaris2.5/ctype.cc (ctype): Same.
1547 * config/newlib/ctype.cc: Same.
1548 * config/gnu-linux/ctype.cc: Same.
1549 * config/bsd/ctype.cc: Same.
1550 * config/aix/ctype.cc: Same.
1552 2000-06-12 Branko Cibej <branko.cibej@hermes.si>
1554 * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
1555 towupper and towlower to convert wide characters.
1557 2000-06-12 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1559 * mkcheck.in: Clean up confusion regarding NAME, PRE_NAME.
1561 2000-06-08 Branko Cibej <branko.cibej@hermes.si>
1563 * acinclude.m4 (GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT): Check for
1564 sinf, cosf, fabsf, and sqrtf; add to LIBMATHOBJS if missing.
1565 * aclocal.m4: Regenerate.
1566 * configure: Regenerate.
1567 * math/cosf.c: New file.
1568 * math/fabsf.c: Likewise.
1569 * math/sinf.c: Likewise.
1570 * math/sqrtf.c: Likewise.
1571 * math/Makefile.am (EXTRA_DIST): Add those four files.
1572 * math/Makefile.in: Regenerate.
1574 2000-06-08 Phil Edwards <pme@sourceware.cygnus.com>
1576 * testsuite/26_numerics/complex_inserters_extractors.cc: Need cmath.
1578 2000-06-06 Steven King <sxking@uswest.net>
1580 * acconfig.h: Added defines for HAVE_BUILTIN math functs for float,
1581 double and long double. Added defines for HAVE libm math functs for
1582 float and long double.
1583 * aclocal.m4: Added configure checks for builtin math funcs and libm
1584 support for float and long double versions of the math functions.
1585 * config.h.in: Added undefs for math functs.
1586 * configure: Regenerate.
1587 * math/mathconf: Changed the _GLIBCPP_HAS_BUILTIN_* to
1588 _GLIBCPP_HAVE_BUILTIN_*.
1589 * bits/std_cmath.h: Added long double support. Use builtins for
1590 float, double and long if available, otherwise, use libm versions if
1591 availible, otherwise, punt.
1592 * shadow/bits/std_cmath.h: ditto
1594 2000-06-02 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1596 * bits/locale_facets.h: Tweak.
1597 * src/locale.cc (codecvt<wchar_t>): Tweak.
1599 * bits/locale_facets.h (_Format_cache): _S_ecks -> _S_x.
1600 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix for hex.
1602 * bits/basic_string.h: Move data member up.
1603 * src/string-inst.cc: Fix instantiations.
1604 * bits/string.tcc: Fix types.
1606 2000-06-02 Anthony Williams <anthony@anthonyw.cjb.net>
1608 * testsuite/21_strings/replace.cc (test01): Qualify find with std::.
1610 2000-06-01 Benjamin Kosnik <bkoz@gnu.org>
1612 * bits/std_cwctype.h: Clean.
1613 * bits/std_cwchar.h: Clean, remove cruft.
1615 * acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Re-work, add bits
1616 for beginning iconv support.
1617 Remove _GLIBCPP_HAS_WCHAR_MIN_MAX, roll into _GLIBCPP_USE_WCHAR_T
1619 * acconfig.h: Remove _GLIBCPP_HAS_WCHAR_MIN_MAX.
1620 * bits/limits_generic.h: Remove.
1621 * src/gen-num-limits.cc: Same.
1623 * src/locale.cc: Tweaks.
1625 * bits/char_traits.h: Tweaks.
1627 2000-05-31 Russell Davidson <russell@ehess.cnrs-mrs.fr>
1629 * bits/locale_facets.tcc (num_get<char>::_M_extract): Fix signage,
1630 exponent, scientific formatting issues.
1631 * testsuite/27_io/istream_extractor_arith.cc (test09): Add tests.
1633 2000-05-31 Branko Cibej <branko.cibej@hermes.si>
1635 * bits/limits_generic.h (numeric_limits<wchar_t>): Use WCHAR_MIN
1636 and WCHAR_MAX instead of WCHART_MIN and WCHART_MAX.
1638 2000-05-31 Nathan Myers <ncm@cantrip.org>
1640 * docs/thanks.html: edit own credits
1642 2000-05-31 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1644 * bits/generic_shadow.h: Remaining _C_Shadow -> _C_shadow fix.
1646 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Add strtoull checks...
1648 * mkcheck.in (SH_FLAG): Add in -Wl,--rpath -Wl,$LIB_PATH. Tweaks.
1650 2000-05-31 Steven King <sxking@uswest.net>
1652 * shadow/time.h: fix typo
1653 * shadow/wchar.h: ifdef __USE_GNU for wcsdup
1654 * shadow/bits/std_cwchar.h: ditto
1655 * shadow/bits/std_cstdlib.h: add overloads of abs and div for long
1658 2000-05-26 Phil Edwards <pme@sourceware.cygnus.com>
1660 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): If strtoll isn't
1661 available, force --disable. Need to flesh this out; make smarter.
1662 * aclocal.m4: Regenerate.
1663 * configure: Regenerate.
1665 * mkcheck.in: Minor tweaks.
1666 * docs/download.html: Fix typo.
1668 2000-05-25 Benjamin Kosnik <bkoz@milou.soma.redhat.com>
1670 * inclosure: Change to...
1671 * mkinclosure: This.
1673 * mkcshadow: Fix paths to bash.
1675 * src/Makefile.am: Tweaks. Do cshadow header trickery at build time.
1676 * src/Makefile.in: Regnerate.
1677 * acinclude.m4 (GLIBCPP_COMPILER_VERSION): Fix typo.
1678 (GLIBCPP_ENABLE_SHADOW): Do a less gross hack.
1679 * aclocal.m4: Regenerate.
1680 * mkcheck.in (INC_PATH): Tweak.
1682 * configure.in: Enable long long by default.
1683 * configure: Regenerate.
1685 * mkcheck.in (LIB_PATH): Revert.
1687 2000-05-24 Nathan "I don't write ChangeLog Entries" Myers <ncm@cantrip.org>
1689 * config/cpu/i486: New directory.
1690 * config/cpu/i486/bits: New directory.
1691 * config/cpu/i486/bits/atomicity.h: New file.
1692 * config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
1694 * acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.
1696 2000-05-24 Loren J. Rittle <ljrittle@acm.org>
1698 * backward/alloc.h (__default_alloc_template): Only expose
1699 implementation-specific symbol, if it exists in the
1701 * backward/iostream.h (ends): Expose symbol.
1702 * backward/strstream.h: New file.
1703 * backward/stream.h: New file.
1704 * backward/ostream.h: New file.
1705 * backward/istream.h: New file.
1706 * backward/fstream.h: New file.
1707 * backward/complex.h: New file.
1708 * backward/iomanip.h: New file.
1710 * mkcheck.in (LIB_PATH): Add -R bits.
1712 * math/carg.c (carg): Replace __atan2 with atan2.
1714 2000-05-24 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1716 * Makefile.am (TAGS): Construct.
1717 * Makefile.in: Rengerate.
1718 * src/Makefile.am: Tweak.
1719 * src/Makefile.in: Tweak.
1720 * configure.in: Tweak.
1722 * bits/c++config.h: Rename to ...
1723 * bits/c++config: This.
1724 * mkc++config: Adjust.
1727 * m4/lc_message.m4: Merge into acinclude.m4.
1728 * m4/mathfcts.m4: Same.
1729 * m4/stringfcts.m4: Same.
1730 * acinclude.m4: Add here.
1731 * configure: Regnerate.
1733 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): Remove
1734 OPTLEVEL. Add FMTFLAGS.
1735 * aclocal.m4: Regenerate.
1736 * src/Makefile.am (AC_CXXFLAGS): Take out OPTLEVEL, as this has
1737 been disabled due to higher-level Makefiles running amuck over
1738 this bit, and add in FMTFLAGS so that formatting is clear.
1739 * src/Makefile.in: Regenerate.
1740 * configure: Regenerate.
1742 * src/ios.cc (ios_base::sync_with_stdio): Clean up buffers from
1745 * docs/download.html: Remove references to Cygwin-specific bits,
1746 as this can now be built natively.
1747 Update with current information.
1749 2000-05-24 Phil Edwards <pme@sourceware.cygnus.com>
1751 * acinclude.m4 (GLIBCPP_CHECK_COMPILER_VERSION): If we can use
1752 -fdiagnostics-show-location=once, do so. Expand AC_LANG_* to
1753 enclose other tests in this macro, including future ones.
1754 * aclocal.m4: Regenerate.
1755 * configure: Regenerate.
1757 * docs/faq/index.html: Update location of libg++ FAQ.
1758 * docs/faq/index.txt: Regenerate.
1760 2000-05-22 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
1762 * docs/17_intro/libstdc++-assign.txt: Change Cygnus to FSF.
1764 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
1766 * mkcheck.in: Tweak for Solaris 8. Additional minor output comment.
1768 2000-05-22 Phil Edwards <pme@sourceware.cygnus.com>
1770 * acinclude.m4: If the new pragma isn't supported, don't kill -Werror;
1771 keep -Werror and add -Wno-unknown-pragma. -Werror Is Good.
1772 * aclocal.m4: Regenerate.
1773 * configure: Regenerate.
1775 2000-05-19 Nathan C. Myers <ncm@cantrip.org>
1777 * bits/generic_shadow.h: s/swamp/legacy/
1779 2000-05-19 Phil Edwards <pme@sourceware.cygnus.com>
1781 * acinclude.m4: Clean up comments on newer checks.
1782 (GLIBCPP_CHECK_COMPILER_VERSION): Check for system_header
1783 pragma support. Remove WERRORSUPPRESS variable, add WERROR.
1784 * aclocal.m4: Regenerate.
1785 * configure: Regenerate.
1786 * Makefile.in: Regenerate.
1787 * libio/Makefile.in: Regenerate.
1788 * math/Makefile.in: Regenerate.
1789 * src/Makefile.am: Tell make's WERROR to depend on configure's WERROR.
1790 * src/Makefile.in: Regenerate.
1791 * docs/configopts.html: Document changes to --enable names.
1793 2000-05-18 Chip Salzenberg <chip@valinux.com>
1795 * bits/ostream.tcc (_S_pad_char): Function template should not be
1797 * bits/streambuf.tcc (_S_copy_streambufs): Likewise.
1798 * src/string-inst.cc (__destroy_aux): Instantiate for string*.
1800 2000-05-18 Nathan C. Myers <ncm@cantrip.org>
1802 * mkcshadow: Change C_Swamp to C_legacy.
1804 * shadow/bits/*: Same.
1805 s/C_Swamp/C_legacy/g
1809 2000-05-18 Anthony Williams <anthony@anthonyw.cjb.net>
1811 * bits/locale_facets.tcc (num_get::_M_extract): Change char* to
1813 * src/string-inst.cc (string::_S_find): Same.
1815 2000-05-18 Benjamin Kosnik <bkoz@gnu.org>
1817 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
1818 --enable-cshadow-headers. Add output messages.
1819 (GCC_ENABLE_LONG_LONG): Change to --enable-long-long, no
1820 underscores (like the rest of the enable options.) Add output messages.
1821 * aclocal.m4: Regenerate.
1822 * configure: Regenerate.
1823 * configure.in: Touch.
1825 2000-05-17 Benjamin Kosnik <bkoz@cygnus.com>
1827 * mkcheck.in: Enable shared library testing.
1829 2000-05-17 Nathan C. Myers <ncm@cantrip.org>
1831 * bits/std_cmath.h: fix sqrt(float)
1833 2000-05-16 Loren J. Rittle <ljrittle@acm.org>
1835 * bits/std_cassert.h: Use system_header pragma.
1836 * bits/std_cctype.h: Likewise.
1837 * bits/std_cerrno.h: Likewise.
1838 * bits/std_cfloat.h: Likewise.
1839 * bits/std_climits.h: Likewise.
1840 * bits/std_clocale.h: Likewise.
1841 * bits/std_cmath.h: Likewise.
1842 * bits/std_csetjmp.h: Likewise.
1843 * bits/std_csignal.h: Likewise.
1844 * bits/std_cstdarg.h: Likewise.
1845 * bits/std_cstddef.h: Likewise.
1846 * bits/std_cstdio.h: Likewise.
1847 * bits/std_cstdlib.h: Likewise.
1848 * bits/std_cstring.h: Likewise.
1849 * bits/std_ctime.h: Likewise.
1850 * bits/std_cwchar.h: Likewise.
1851 * bits/std_cwctype.h: Likewise.
1852 * bits/std_exception.h: Likewise.
1853 * bits/std_new.h: Likewise.
1854 * bits/std_typeinfo.h: Likewise.
1855 * shadow/bits/std_cassert.h: Likewise.
1856 * shadow/bits/std_cctype.h: Likewise.
1857 * shadow/bits/std_cerrno.h: Likewise.
1858 * shadow/bits/std_cfloat.h: Likewise.
1859 * shadow/bits/std_climits.h: Likewise.
1860 * shadow/bits/std_clocale.h: Likewise.
1861 * shadow/bits/std_cmath.h: Likewise.
1862 * shadow/bits/std_csetjmp.h: Likewise.
1863 * shadow/bits/std_csignal.h: Likewise.
1864 * shadow/bits/std_cstdarg.h: Likewise.
1865 * shadow/bits/std_cstddef.h: Likewise.
1866 * shadow/bits/std_cstdio.h: Likewise.
1867 * shadow/bits/std_cstdlib.h: Likewise.
1868 * shadow/bits/std_cstring.h: Likewise.
1869 * shadow/bits/std_ctime.h: Likewise.
1870 * shadow/bits/std_cwchar.h: Likewise.
1871 * shadow/bits/std_cwctype.h: Likewise.
1872 * shadow/bits/wrap_libio.h: Likewise.
1873 * shadow/bits/wrap_unistd.h: Likewise.
1874 * shadow/sys/cdefs.h: Likewise.
1876 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
1878 It appears that gcc-2.96 supports the keyword "and" now.
1879 * bits/std_ciso646.h: remove.
1881 * testsuite/17_intro/header_ciso646.c: enable testing.
1882 * src/Makefile.am, src/Makefile.in: remove mention of
1885 2000-05-16 Nathan C. Myers <ncm@cantrip.org>
1887 * mkcshadow: fix typo s/_C_Swamp_/_C_Swamp/.
1889 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
1891 * acinclude.m4: Fix typo, switch to decaf...
1892 * aclocal.m4: Regenerate.
1893 * configure: Regenerate.
1895 2000-05-16 Phil Edwards <pme@sourceware.cygnus.com>
1897 * acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro, stub.
1898 * aclocal.m4: Regenerate.
1899 * configure.in: Call.
1900 * configure: Regenerate.
1901 * docs/configopts.html: Stub documentation.
1903 2000-05-14 Nathan Myers <ncm@cantrip.org>
1905 * mkcshadow: build in more-correct directory, create cshadow/
1906 directory if needed, report progress.
1908 2000-05-14 LLeweLLyn Reese <llewelly@dbritsch.dsl.xmission.com>
1910 * src/Makefile.am: Fix tr commands.
1911 * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
1912 * src/string-inst.cc: Remove extra instantiation of
1913 S::basic_string(S::size_type, C, S::allocator_type const&);
1914 * src/string-inst.cc: Remove extra template keyword.
1916 2000-05-14 Loren J. Rittle <ljrittle@acm.org>
1918 * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
1919 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
1920 * aclocal.m4: Regenerate.
1921 * configure: Regenerate.
1922 * */Makefile.in: Regenerate.
1924 2000-05-11 Phil Edwards <pme@sourceware.cygnus.com>
1926 * acinclude.m4: Fix minor typo with ctypes, add more sanity to
1927 enable-cxx-flags, and remove GLIBCPP_ENABLE_NAMESPACES altogether.
1928 * aclocal.m4: Regenerate.
1929 * configure.in: Non-blank arguments break fewer Linuxes.
1930 * configure: Regenerate.
1931 * src/Makefile.am: Re-order AC_CXXFLAGS components.
1932 * src/Makefile.in: Regenerate.
1934 2000-05-10 Benjamin Kosnik <bkoz@redhat.com>
1936 * bits/std_cmath.h: Tweaks.
1937 * math/mathconf.h: Tweaks and fixes for HP-UX 11.
1938 (sqrtf): Define away iff !builtin and !in <math.h>.
1942 At some point this directory should be converted to c++, the
1943 autoconf tests should be run by the c++ compiler (not c), and
1944 <cmath> should be used instead of math.h.
1945 Move declaration of nan() here.
1946 * math/complex-stub.h (cabsl): Remove nan() declaration.
1948 Finish up FreeBSD4.0 support.
1949 * config/bsd/ctype.cc: Scope out toupper, tolower calls.
1950 * config/generic/ctype.cc: And here.
1951 * testsuite/21_strings/char_traits.cc (test02): Guard with
1952 _GLIBCPP_USE_WCHAR_T.
1954 via Phil Edwards <pme@sourceware.cygnus.com>
1955 * bits/std_cctype.h: Remove _GLIBCPP_USE_NAMESPACES.
1956 * acconfig.h: And here.
1957 * acinclude.m4: Same.
1958 * testsuite/27_io/istream.cc: And here.
1959 * testsuite/27_io/ostream.cc: And here.
1961 2000-05-09 Benjamin Kosnik <bkoz@gnu.org>
1963 * acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
1965 * src/Makefile.am: Disable ENABLE_CXX_FLAGS stuff for the moment.
1967 * config/generic/bits/ctype_specializations.h (ctype<char>::is):
1970 * config/bsd: New directory.
1971 * config/bsd/ctype.cc: New.
1972 * config/bsd/bits/ctype_base.h (ctype_base): New.
1973 * config/bsd/bits/ctype_specializations.h: New.
1974 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.
1976 2000-05-09 Phil Edwards <pme@sourceware.cygnus.com>
1978 * acinclude.m4: New macro, GLIBCPP_ENABLE_CXX_FLAGS.
1979 * configure.in: Call.
1980 * src/Makefile.am: Append results of macro to AC_CXXFLAGS.
1981 * aclocal.m4: Regenerate.
1983 * src/Makefile.in: Ditto.
1984 * docs/configopts.html: Document.
1985 * docs/download.html: Fix typo (close quote).
1986 * docs/footer.html: Update.
1988 2000-05-09 Loren J. Rittle <ljrittle@acm.org>
1990 * backward/iostream.h: Expose endl. Guard wide types.
1991 * src/Makefile.am (headers): Update list to match files.
1992 * src/Makefile.in: Regenerate.
1994 2000-05-09 Vadim Egorov <egorovv@mailandnews.com>
1995 Benjamin Kosnik <bkoz@gnu.org>
1996 Nathan Myers <ncm@cantrip.org>
1997 Dietmar Kuehl <dietmar_kuehl@yahoo.com>
1999 * bits/streambuf.tcc (basic_streambuf::xsgetn): Fix uflow case.
2000 (basic_streambuf::xsputn): Make consistent.
2001 * testsuite/27_io/filebuf.cc: Add tests.
2003 2000-05-08 Steven King <sxking@uswest.net>
2005 * bits/char_traits.h: Use wchar_t utility functions for
2006 char_traits<wchar_t> methods.
2007 * testsuite/21_string/char_traits.cc: New (test02): test
2008 char_traits<wchar_t>
2010 2000-05-08 Benjamin Kosnik <bkoz@cygnus.com>
2012 * acinclude.m4 (GLIBCPP_CXXFLAGS): Add bits for solaris2.8.
2014 * bits/fstream.tcc (filebuf::_M_init_filebuf): Don't set
2015 _M_buf_size based on macro, instead use _M_buf_size_opt.
2016 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_size_opt.
2017 (basic_streambuf()): Set _M_buf_size_opt.
2018 * testsuite/27_io/filebuf.cc (filebuf): Use _M_buf_size_opt
2019 instead of _M_buf_size.
2021 2000-05-04 Branko Cibej <branko.cibej@hermes.si>
2023 * src/complex_io.cc: Don't instantiate inserters and extractors
2024 for wide-character streams unless _GLIBCPP_USE_WCHAR_T is defined.
2026 2000-05-03 Phil Edwards <pme@sourceware.cygnus.com>
2027 Felix Natter <fnatter@gmx.net>
2029 * docs/footer.html: Update to see if it takes effect.
2030 * docs/thanks.html: More people.
2031 * docs/17_intro/headers_cc.txt: Copy from testsuite, since that can't
2032 be seen from the web pages. Rename for browser-friendliness...
2033 * docs/17_intro/howto.html: ...and update here.
2034 * docs/17_intro/porting-howto.html: Changes from Felix.
2035 * docs/gccrebuild.html: Mention v3->egcs move.
2036 * docs/faq/index.html: Ditto. Also misc tweaks and URL updates.
2037 * docs/faq/index.txt: Regenerate.
2039 2000-05-01 Benjamin Kosnik <bkoz@redhat.com>
2041 * config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
2044 2000-05-01 Vadim Egorov <egorovv@@mailandnews.com>
2046 * bits/char_traits.h: Fix parameter types.
2047 * bits/string.tcc: Avoid traits_type::move.
2049 2000-05-01 Benjamin Kosnik <bkoz@haight.constant.com>
2051 * src/Makefile.am (AC_CXXFLAGS): Add CPUFLAGS here.
2052 * src/Makefile.in: Regenerate.
2053 * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Revert.
2055 2000-04-30 Steven King <sxking@uswest.net>
2057 * bits/locale_facets.h: Fix syntax error.
2058 * bits/std_fstream.h: ditto
2060 2000-04-30 Benjamin Kosnik <bkoz@gnu.org>
2062 * config/cpu/powerpc/bits/atomicity.h (__compare_and_swap): Fix typo.
2064 * mknumeric_limits (trait_name): Fix copyright notice.
2065 * src/gen-num-limits.cc: Explicitly instantiate epsilon and
2066 round_error data members of struct value. This works around
2067 weak-linking issues on AIX, HPUX.
2069 2000-04-29 Phil Edwards <pme@sourceware.cygnus.com>
2071 * docs/download.html: Add link to list of mirror sites.
2073 2000-04-28 Loren J. Rittle <ljrittle@acm.org>
2075 * mkcheck.in: Rely on exit status instead of the presence of a
2076 core file. Added comments on how/where to save core and exe
2077 files. Move shell wildcards outside quotes and fix core path.
2079 2000-04-27 scott snyder <snyder@fnal.gov>
2081 * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
2084 2000-04-26 Nathan C. Myers <ncm@cantrip.org>
2086 * bits/basic_string.h: include <bits/atomicity.h> instead
2087 of <atomicity.h>, and use the uglified names.
2088 * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
2089 uglify names, eliminate dependence on <inttypes.h>.
2090 * src/Makefile.in, src/Makefile.am: refer to correct place
2091 for atomicity.h header.
2093 2000-04-25 Steven King <sxking@uswest.net>
2095 * bits/basic_string.h: Fix syntax error.
2097 2000-04-25 Benjamin Kosnik <bkoz@redhat.com>
2099 * acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
2101 (GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
2102 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
2103 versions to this as copysignl is needed anyway for these targets.
2104 * math/Makefile.in: Regenerate.
2106 * bits/streambuf.tcc (streambuf::xsgetn): Tweak.
2107 * bits/fstream.tcc (underflow): Cast to libio types.
2108 * bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
2109 * config/c_io_libio.cc (seekoff): And here.
2111 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
2113 * mkcheck.in: Report compiler version used for test. Find
2114 the built _G_config.h instead of any old installed version.
2116 2000-04-24 Loren J. Rittle <ljrittle@acm.org>
2118 * config/generic/ctype.cc (do_toupper): Remove dependence on
2119 non-portable/non-existent lookup table.
2122 2000-04-24 Nathan Myers <ncm@cantrip.org>
2124 * src/string-inst.cc: More fixing.
2126 2000-04-24 Benjamin Kosnik <bkoz@gnu.org>
2128 * bits/stl_iterator.h: Pedantic fixing.
2129 * bits/std_sstream.h: And here.
2130 * bits/string.tcc: And here.
2132 2000-04-24 Felix Natter <fnatter@gmx.net>
2134 * docs/17_intro/howto.html: Add bits.
2135 * docs/17_intro/porting-howto.html: New file.
2137 2000-04-24 Branko Cibej <branko.cibej@hermes.si>
2139 * acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Expand
2140 @libinst_wstring_la@ to libinst-wstring.la when specializing for
2141 wchar_t, to empty string otherwise.
2142 * src/Makefile.am: (EXTRA_LTLIBRARIES): New.
2143 (sources): Remove $(string_sources) and $(wstring_sources).
2144 (libstdc___la_LIBADD): Add libinst-string.la and @libinst_wstring_la@.
2145 (libstdc___la_DEPENDENCIES): New.
2146 (libinst_string_la_SOURCES, libinst_wstring_la_SOURCES): New.
2148 2000-04-20 Benjamin Kosnik <bkoz@redhat.com>
2150 * bits/std_sstream.h: Tweak formatting.
2151 * bits/std_fstream.h: Make types public.
2153 * testsuite/27_io/streambuf.cc: Fix for alpha.
2155 Brad Garcia <bgarcia@laurelnetworks.com>
2156 * bits/locale_facets.h (numpunct::numpunct(size_t)): Fix bool
2158 * testsuite/27_io/ios_manip_fmtflags.cc (test02): Add test for
2161 2000-04-19 Nathan Myers <ncm@cantrip.org>
2163 * src/string-inst: consolidate _S_create,
2164 destroy, leak, clone members into stringMAIN and stringMUTATE
2166 * src/Makefile.am: Above, and eliminate dependence on
2168 * src/wstring-inst.cc: Remove.
2170 2000-04-18 Benjamin Kosnik <bkoz@redhat.com>
2172 * src/Makefile.am (AC_CXXFLAGS): Activate debugging code, again.
2173 Add flags for specialized rules dealing with instantiations.
2175 * src/string-inst.cc: Add instantiations missing from shared
2176 libraries--see stringEQ, stringCONSC.
2177 * src/Makefile.am (wstring_sources): Add.
2178 (string_sources): Same.
2179 * src/Makefile.in: Regenerate.
2181 * stl/*: Integrate contents of this directory into top-level
2183 * ext/bvector hash_map hash_set rope ropeimpl.h slist
2184 stl_bvector.h stl_hash_fun.h stl_hashtable.h stl_rope.h tree: Add.
2185 * bits/pthread_allocimpl.h std_algorithm.h std_bitset.h
2186 std_deque.h std_functional.h std_iterator.h std_list.h std_map.h
2187 std_memory.h std_numeric.h std_queue.h std_set.h std_stack.h
2188 std_stdexcept.h std_strstream.h std_utility.h std_vector.h
2189 stl_algo.h stl_algobase.h stl_alloc.h stl_config.h stl_construct.h
2190 stl_deque.h stl_function.h stl_heap.h stl_iterator.h
2191 stl_iterator_base.h stl_list.h stl_map.h stl_multimap.h
2192 stl_multiset.h stl_numeric.h stl_pair.h stl_pthread_alloc.h
2193 stl_queue.h stl_range_errors.h stl_raw_storage_iter.h stl_relops.h
2194 stl_set.h stl_stack.h stl_string_fwd.h stl_tempbuf.h stl_threads.h
2195 stl_tree.h stl_uninitialized.h stl_vector.h type_traits.h: Add.
2196 * backward/algo.h algobase.h alloc.h bvector.h defalloc.h deque.h
2197 function.h hash_map.h hash_set.h hashtable.h heap.h iterator.h
2198 list.h map.h multimap.h multiset.h pair.h rope.h set.h slist.h
2199 stack.h tempbuf.h tree.h vector.h: Add.
2200 * README (file): Update.
2201 * docs/documentation.html: README not being found.
2202 * src/Makefile.am (sources): Take out stl directory.
2203 * mkcheck.in (SRC_DIR): And here.
2204 * src/Makefile.in: Regenerate.
2206 2000-04-18 Levente Farkas <lfarkas@mindmaker.hu>
2208 * stl/bits/stl_function.h: Add bits so that const and non-const
2211 2000-04-18 scott snyder <snyder@fnal.gov>
2213 * stl/bits/stl_map.h (class map): Fix default for _Alloc template
2214 parameter. Get rid of use of __STL_DEFAULT_ALLOCATOR and
2215 __STL_LIMITED_DEFAULT_TEMPLATES macros.
2216 * stl/bits/stl_multimap.h (class multimap): Likewise. Get rid of
2217 use of __STL_DEPENDENT_DEFAULT_TMPL macro.
2219 2000-04-18 scott snyder <snyder@fnal.gov>
2221 * stl/bits/stl_config.h (__STL_DEPENDENT_DEFAULT_TMPL): Deleted
2224 * stl/ext/hash_map (class hash_map, class hash_multimap): Get rid
2225 of use of __STL_DEPENDENT_DEFAULT_TMPL macro.
2226 * stl/ext/hash_set (class hash_set, class hash_multiset):
2228 * stl/bits/stl_function.h (struct constant_unary_fun, struct
2229 constant_binary_fun): Likewise.
2230 * stl/bits/stl_queue.h (class queue, class priority_queue): Likewise.
2231 * stl/bits/stl_stack.h (class stack): Likewise.
2232 * stl/bits/stl_set.h (class set): Likewise.
2233 * stl/bits/stl_multiset.h (class multiset): Likewise.
2235 * stl/bits/stl_iterator.h (class reverse_bidirectional_iterator,
2236 class reverse_iterator): Get rid of use of
2237 __STL_LIMITED_DEFAULT_TEMPLATES macro.
2239 * stl/bits/stl_config.h (__STL_DEFAULT_ALLOCATOR): Deleted this
2242 * stl/bits/stl_deque.h (class deque): Get rid of use of
2243 __STL_DEFAULT_ALLOCATOR macro.
2244 * stl/bits/stl_list.h (class list): Likewise.
2245 * stl/bits/stl_multiset.h (class multiset): Likewise.
2246 * stl/bits/stl_set.h (class set): Likewise.
2247 * stl/bits/stl_string_fwd.h (class basic_string): Likewise.
2248 * stl/bits/stl_tree.h (class _Rb_tree, class rb_tree): Likewise.
2249 * stl/bits/stl_vector.h (class vector): Likewise.
2250 * stl/ext/ropeimpl.h (rotate): Likewise.
2251 * stl/ext/hash_map (class hash_map, class hash_multimap):
2253 * stl/ext/hash_set (class hash_set, class hash_multiset):
2255 * stl/ext/slist (class slist): Likewise.
2256 * stl/ext/stl_bvector.h (class bit_vector): Likewise.
2257 * stl/ext/stl_rope.h (class rope): Likewise.
2258 * src/locale.cc (_Impl): Likewise.
2259 * src/localename.cc (_Impl): Likewise.
2260 * bits/localefwd.h (_Impl): Likewise.
2262 2000-04-18 Phil Edwards <pme@sourceware.cygnus.com>
2264 * docs/install.html: Cleanup, minor changes.
2265 * docs/17_intro/howto.html: Ditto.
2267 2000-04-18 Nathan Myers <ncm@cantrip.org>
2269 * bits/basic_string.h: Remove "inline" from member _S_find.
2271 * src/string-inst.cc: Rewrite to reflect non-inline template
2272 instantiations in string.tcc.
2274 * src/stringADDCS.cc, stringADDPS.cc, stringADDSC.cc, stringADDSP.cc,
2275 stringADDSS.cc, stringBIST.cc, stringBOST.cc, stringCHTR.cc,
2276 stringEQPS.cc, stringEQSP.cc, stringEQSS.cc, stringEXTRA.cc,
2277 stringGEPS.cc, stringGESP.cc, stringGESS.cc, stringGETLI.cc,
2278 stringGTPS.cc, stringGTPS.cc, stringGTSP.cc, stringGTSS.cc,
2279 stringINSER.cc, stringLEPS.cc, stringLESP.cc, stringLESS.cc,
2280 stringLESP.cc, stringLTPS.cc, stringLTPS.cc, stringLTSP.cc,
2281 stringLTSS.cc, stringMAIN.cc, stringNEPS.cc, stringNESP.cc,
2282 stringNESS.cc, stringSCOPY.cc: Remove.
2283 * src/wstringADDCS.cc, etc: Remove.
2285 Benjamin Kosnik <bkoz@haight.constant.com>
2286 * src/Makefile.am: Modify to reflect above.
2287 * src/Makefile.in: Regenerate.
2289 2000-04-17 Benjamin Kosnik <bkoz@cygnus.com>
2291 * docs/install.html (--enable-libstdcxx-v3): Clean up install docs.
2293 2000-04-13 Benjamin Kosnik <bkoz@haight.cygnus.com>
2295 * bits/std_fstream.h (filebuf::sync): Need to use the abstracted
2296 io interface here instead of the libio particulars.
2298 * config/threads-posix.h: Consistency with stl_config.h.
2300 * mkcheck.in (CXX_FLAG): Add DDEBUG_ASSERT back in.
2302 2000-04-13 Loren J. Rittle <ljrittle@acm.org>
2304 * mknumeric_limits: Rename generic type template parameter name
2306 * stl/bits/type_traits.h: Ditto.
2308 2000-04-06 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2310 * mkcheck.in (SRC_DIR): Change default mkcheck behavior, so that
2311 it is more useful for --enable-libstdcxx-v3. Use the built
2312 compilers with v3, instead of compilers in PATH, and don't
2313 re-include include directories for checking the install.
2315 2000-04-05 Benjamin Kosnik <bkoz@cygnus.com>
2317 * src/Makefile.am (AM_CXXFLAGS): Disable NAMESPACES, as this is on
2318 by default when using --enable-libstdcxx-v3.
2319 * src/Makefile.in: Regenerate.
2320 * configure.in: Disable GLIBCPP_ENABLE_NAMESPACES,
2321 GLIBCPP_ENABLE_RELIBGCC for --enable-libstdcxx-v3 flag.
2322 * configure: Regenerate.
2323 * mkcheck.in: Deal with NAMESPACES.
2325 2000-04-05 Petter Urkedal <petter@matfys.lth.se>
2327 * src/cmath.cc: New file...
2328 (pow(*, int)): Define functions...
2329 * src/Makefile.am (sources): ...register file.
2330 * src/Makefile.in: Regenerate.
2331 * bits/std_cmath.h (pow): ...declare functions here, and remove
2334 2000-04-04 Benjamin Kosnik <bkoz@redhat.com>
2336 * acinclude.m4 (GCC_OBJDIR): Tweaks
2338 2000-04-03 Benjamin Kosnik <bkoz@redhat.com>
2340 * acinclude.m4 (GLIBCPP_CHECK_CPU): Add arm configure bits.
2341 * config/cpu/arm: New directory.
2343 Jesper Skov <jskov@redhat.com>
2344 * config/cpu/arm/atomicity.h: New file.
2346 2000-03-31 Benjamin Kosnik <bkoz@redhat.com>
2348 * stl/bits/stl_config.h: Make _STL_THREADS depend on _REENTRANT.
2349 Remove unused bits. Clean.
2351 2000-03-29 Benjamin Kosnik <bkoz@cygnus.com>
2353 * testsuite/25_algorithms: New directory.
2354 * testsuite/25_algorithms/min_max.cc: New file.
2356 2000-03-29 scott snyder <snyder@fnal.gov>
2358 * bits/locale_facets.tcc (do_put): Allow a couple extra digits of
2359 precision beyond that which we get from numeric_limits::digits10.
2361 * stl/bits/stl_algobase.h (max, min): Don't use comparison
2364 * testsuite/23_containers/bitset_shift.cc: Fix.
2366 * testsuite/27_io/ios_manip_fmtflags.cc (test01): Don't give a
2367 temporary to imbue().
2369 * bits/std_fstream.h (sync): Resync libio's idea of the current
2370 file position with the external file.
2372 2000-03-28 Benjamin Kosnik <bkoz@cygnus.com>
2374 * testsuite/27_io/istream_extractor_arith.cc.cvs: Fix merge
2377 * bits/std_fstream.h (filebuf::is_open): Check for _M_file before
2378 attempting calls to it.
2379 * bits/fstream.tcc (ctors): Don't call _M_init_filebuf in
2380 ctors. Instead, call _M_init_filebuf ...
2381 (open): Here, as suggested by 27.8.1.3.
2382 * src/ios.cc (ios_base::Init::Init()): Clean up default filebufs
2383 properly when initializing cout/cin/cerr.
2385 2000-03-27 Russell Davidson <russell@ehess.cnrs-mrs.fr>
2387 * testsuite/23_containers/multiset.cc (main): Clean up for namespaces.
2388 * testsuite/22_locale/ctype_char_members.cc: And here.
2389 * testsuite/27_io/streambuf.cc (streambuf): And here.
2390 * testsuite/27_io/ostream_inserter_char.cc (test06): And here.
2391 * testsuite/27_io/istream_unformatted.cc (test05): And here.
2392 * testsuite/27_io/istream_extractor_arith.cc: And here.
2393 * testsuite/27_io/ios_manip_basefield.cc (test02): And here.
2394 * testsuite/27_io/ios_base_members_static.cc: And here.
2395 * bits/std_climits.h (_CPP_CLIMITS): Fix typo.
2397 2000-03-27 Chris Faylor <cgf@cygnus.com>
2399 * configure.in: Remove setting of CXX if canadian cross.
2400 * configure: Regenerate.
2402 2000-03-27 Nathan Myers <ncm@zembu.com>
2404 * bits/sstream.tcc: Optimize.
2405 * bits/basic_string.h(string::append): Don't inline.
2406 * bits/string.tcc: Move out-of-line.
2408 2000-03-27 Phil Edwards <pme@sourceware.cygnus.com>
2410 * acinclude.m4: (GLIBCPP_CHECK_COMPILER_VERSION) When using <2.96,
2411 define WERRORSUPPRESS so that the inlining warnings won't kill us.
2412 * aclocal.m4: Regenerate.
2413 * configure: Regenerate.
2414 * src/Makefile.am: Use WERRORSUPPRESS for the files that need it.
2415 * src/Makefile.in: Regenerate.
2417 * docs/install.html: Almost complete rewrite.
2419 2000-03-25 Phil Edwards <pme@sourceware.cygnus.com>
2421 * docs/install.html: Explain -Werror problem at "#Werror" mark.
2422 * docs/faq/index.html: Testsuite will die horribly if new libgcc.a
2424 * docs/faq/index.txt: Regenerate.
2426 2000-03-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
2428 * src/Makefile.am (libio_headers_install): Fix.
2429 * src/Makefile.in: Regenerate.
2431 2000-03-24 Benjamin Kosnik <bkoz@cygnus.com>
2433 * docs/17_intro/RELEASE-NOTES: Fix typos.
2434 * docs/index.html: Update.
2435 * docs/17_intro/BUGS: Update.
2436 * docs/status.html: Update for 2.90.8 release.
2438 2000-03-23 Phil Edwards <pme@sourceware.cygnus.com>
2440 * Makefile.am: Better error message when missing libgcc2.ready.
2441 * Makefile.in: Regenerate.
2442 * acinclude.m4: Fastidious nitpicking reformatting.
2443 * aclocal.m4: Regenerate.
2444 * configure: Regenerate.
2445 * mkcheck.in: Must use same namespace settings as the library being
2446 tested. Also log ST_FLAG, since it's being passed.
2447 * docs/install.html: Add brief chunk on configuration.
2448 * docs/17_intro/RELEASE-NOTES: Fix minor Cygwin typo.
2449 * docs/23_containers/howto.html: Mention MT-safe string.
2450 * docs/faq/index.html: Minor updates.
2451 * docs/faq/index.txt: Regerarate.
2453 2000-03-22 Benjamin Kosnik <bkoz@cygnus.com>
2455 * bits/sstream.tcc (seekoff): Fix for gptr() null cases.
2457 * bits/fstream.tcc (seekoff): Sync.
2459 * testsuite/27_io/ostream_unformatted.cc: New file.
2460 * testsuite/27_io/stringbuf.cc: Fix.
2461 * testsuite/27_io/istream_unformatted.cc (test04): Fix.
2463 * config/newlib/bits/ctype_base.h (ctype_base): Fix.
2464 * config/newlib/ctype.cc (ctype): Change __ctype -> _ctype_.
2466 * src/complex_io.cc (operator>>complex): Tweak.
2468 * config/cpu/alpha/atomicity.h: Explicitly typedef uint32_t, int32_t if
2469 <inttypes.h> does not exist.
2470 * config/cpu/sparc/sparc64/atomicity.h: Same.
2471 * config/cpu/sparc/sparc32/atomicity.h: Same.
2472 * config/cpu/powerpc/atomicity.h: Same.
2473 * config/cpu/i386/atomicity.h: Same.
2474 * config/cpu/generic/atomicity.h: Same.
2475 * configure.in: Check for inttypes.h.
2476 * configure: Regnerate.
2478 2000-03-21 Benjamin Kosnik <bkoz@cygnus.com>
2480 * bits/std_sstream.h (_M_init_stringbuf): Set initial ate position
2482 * testsuite/27_io/ostream_inserter_char.cc (test06): Add tests for ate.
2484 * docs/17_intro/RELEASE-NOTES (New): Add bits.
2486 * configure.in: Move AC_CHECK_HEADERS to a point where we know we
2487 are compiling natively.
2489 * libio/*: Update to CVS libio from egcs.
2491 2000-03-21 Phil Edwards <pme@sourceware.cygnus.com>
2493 * docs/download.html: Document use of -z9 for CVS.
2494 * docs/index.html: Add target date (no link) for future snapshot.
2496 2000-03-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2498 * bits/slice_array.h: Rename generic type template parameter name
2500 * bits/mask_array.h: Ditto
2502 2000-03-20 Benjamin Kosnik <bkoz@cygnus.com>
2504 * *: Change copyright holder from "Cygnus Solutions" to "Free
2505 Software Foundation, Inc."
2507 * docs/configopts.html: Explain what "hella versions" means.
2508 * docs/install.html: Some tweaks--nice job on this Phil.
2509 * docs/documentation.html: Add a direct link to configuration options.
2511 * src/Makefile.am (OPTIMIZE_CXXFLAGS): Add in extras.
2512 * docs/17_intro/RELEASE-NOTES (New): Add.
2513 * bits/c++config.h (__GLIBCPP__): Bump version.
2515 * config/c_io_libio.cc (__basic__file(__c_lock*)): Change argument
2516 type to match prototype.
2518 2000-03-20 Phil Edwards <pme@sourceware.cygnus.com>
2520 * docs/install.html: Update for new funky build procedure. Move
2521 description of 'configure' options to...
2522 * docs/configopts.html: ...here. New file.
2523 * docs/17_intro/howto.html: Updates for new snapshot.
2524 * docs/20_util/howto.html: Ditto.
2525 * docs/21_strings/howto.html: Ditto.
2526 * docs/21_strings/stringtok_std_h.txt: Fix example typos.
2527 * docs/22_locale/howto.html: Ditto.
2528 * docs/23_containers/howto.html: Ditto.
2529 * docs/faq/index.html: Ditto.
2531 2000-03-18 Petter Urkedal <petter@matfys.lth.se>
2532 Benjamin Kosnik <bkoz@gnu.org>
2534 * acinclude.m4 (GLIBCPP_CHECK_COMPLEX_SUPPORT): Move code for main
2536 * aclocal.m4: Regenerate.
2537 * configure: Regenerate.
2539 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
2540 scott snyder <sss@karma.fnal.gov>
2542 * config/c_io_libio.h: Add __c_lock.
2543 * config/threads-no.h: Same here.
2544 * config/threads-posix.h: Add __mutext_type typedef.
2545 * config/c_io_libio.cc: basic_file ctor takes lock arg.
2546 * bits/basic_file.h: Ctor takes lock arg.
2547 * bits/std_fstream.h: Add _M_lock.
2548 * bits/fstream.tcc: Supply it to basic_file ctor.
2550 * mkcheck.in (resultstext): Change [[ to [.
2552 * testsuite/27_io/ostream_inserter_char.cc (test06): Tweak.
2554 * bits/locale_facets.h: Tweak.
2556 * stl/bits/stl_config.h: Fix defines.
2558 2000-03-16 Benjamin Kosnik <bkoz@cygnus.com>
2560 * mkcheck.in (INC_PATH): Add paths from cpu_include_dir to find
2562 * configure: Regenerate.
2563 * aclocal.m4: Regnerate.
2565 2000-03-16 Nathan Myers <ncm@zembu.com>
2567 * bits/string.tcc: Add MT support.
2568 * bits/basic_string.h: Same.
2570 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
2572 * configure.in: Make --enable-namespaces and -libgcc-rebuild=../..
2574 * configure: Regenerate.
2576 * config/solaris/solaris2.7/ctype.cc: Fix unsigned/signed comparison.
2578 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
2580 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): If Sol2.5 ctype is found, keep
2581 checking for 2.[67]. (GLIBCPP_ENABLE_RELIBGCC): No longer ignore
2582 any defaults passed in.
2583 * aclocal.m4: Regenerate.
2585 2000-03-16 Phil Edwards <pme@sourceware.cygnus.com>
2587 * mkcheck.in: Report total successes and failures.
2589 2000-03-15 Benjamin Kosnik <bkoz@cygnus.com>
2591 * config/cpu: New directory, intended to be used to provide
2592 cpu-specific configuration files. In particular, assembly language
2593 primitives for thread safety.
2594 * config/cpu/alpha: Populate.
2595 * config/cpu/alpha/atomicity.h: New file.
2596 * config/cpu/arm: Populate.
2597 * config/cpu/generic: Populate.
2598 * config/cpu/generic/atomicity.h: New file.
2599 * config/cpu/hppa: Populate.
2600 * config/cpu/i386: Populate.
2601 * config/cpu/i386/atomicity.h: New file, take from i486.
2602 * config/cpu/m68k: Populate.
2603 * config/cpu/mips: Populate.
2604 * config/cpu/powerpc: Populate.
2605 * config/cpu/powerpc/atomicity.h: New file.
2606 * config/cpu/sparc: Populate.
2607 * config/cpu/sparc/sparc32: Populate.
2608 * config/cpu/sparc/sparc64: Populate.
2609 * config/cpu/sparc/sparc32/atomicity.h: New file.
2610 * config/cpu/sparc/sparc64/atomicity.h: New file.
2612 * src/Makefile.am (myinstallheaders): Add install routines.
2613 * acinclude.m4 (GLIBCPP_CHECK_CPU):Add configuration for the
2615 * configure.in: Add.
2617 * config/default: Adopt glibc naming conventions, and so move to
2618 * config/generic: Here.
2619 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Modify default case to generic.
2621 2000-03-15 Bill Thompson <billt@toast.net>
2623 * testsuite/27_io/ostream_inserter_char.cc (test06): Add test.
2625 2000-03-14 Phil Edwards <pme@sourceware.cygnus.com>
2627 * docs/17_intro/howto.html: Add missing "TOC" entry, and new section.
2629 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Fixup.
2630 * aclocal.m4: Regenerate.
2631 * configure: Regenerate.
2633 2000-03-13 scott snyder <snyder@fnal.gov>
2634 Jason Merrill <jason@cygnus.com>
2636 * bits/locale_facets.h (class ctype, class ctype<char>, class
2637 ctype<wchar_t>): More mask fixes.
2638 * testsuite/22_locale/ctype.cc: Test for the problem.
2640 2000-03-13 Benjamin Kosnik <bkoz@cygnus.com>
2642 * acconfig.h: Add bits.
2643 * configure.in: Move AM_PROG_LIBTOOL up in file.
2644 Tweak cross compiling info.
2645 * configure: Regenerate.
2647 * mknumeric_limits (XCOMPILE): Echo compilation line for
2650 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add aix checks.
2651 * aclocal.m4: Regenerate.
2652 * configure: Regenerate.
2653 * config/aix/ctype.cc (ctype): Tweak.
2654 * config/aix/bits/ctype_base.h (ctype_base): Tweak.
2655 * config/aix/bits/ctype_specializations.h: New file.
2657 2000-03-10 scott snyder <snyder@fnal.gov>
2659 * stl/bits/stl_vector.h (_M_assign_aux): Fix for __normal_iterator
2661 * testsuite/23_containers/vector_modifiers.cc (test01): Add a
2662 regression test for the problem.
2664 2000-03-09 Benjamin Kosnik <bkoz@fidel.cygnus.com>
2666 * testsuite/27_io/streambuf.cc (class testbuf): Same here.
2667 * bits/fpos.h: And here.
2668 * bits/std_ostream.h: Same here.
2669 * bits/std_istream.h: Same here.
2670 * bits/basic_ios.h: Same here.
2671 * bits/std_fstream.h: Same here.
2672 * bits/sbuf_iter.h (std): Here too.
2673 * bits/std_sstream.h: Make types public.
2675 * src/misc-inst.cc: Use size_t instead of unsigned int.
2676 * bits/locale_facets.tcc (_S_format): For now, cast to char. I
2677 suppose this should be ctype::narrow... all the ctype<wchar_t>
2678 stuff needs to be cleaned up.
2680 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
2682 * docs/gentop: Remove entire directory, finally.
2684 2000-03-09 scott snyder <snyder@fnal.gov>
2686 * bits/std_cmath.h (modf): Fix pointer overrun.
2687 * testsuite/26_numerics/c_math.cc (test04, main): Add a regression
2688 test for the problem.
2690 2000-03-09 Phil Edwards <pme@sourceware.cygnus.com>
2692 Looks like changes to the #include'd files must be followed by a
2693 change to the #include'ing files to take effect. Caveat emptor.
2694 * docs/header.html: New file, for server-side include.
2695 * docs/footer.html: New file, for server-side include.
2696 * docs/documentation.html: Change to use SSI.
2697 * docs/download.html: Ditto.
2698 * docs/index.html: Ditto.
2699 * docs/mail.html: Ditto.
2700 * docs/status.html: Ditto.
2701 * docs/thanks.html: Ditto, plus minor updates.
2702 * docs/how.html: Remove.
2704 2000-03-09 Benjamin Kosnik <bkoz@gnu.org>
2706 Preliminary alpha-linux support.
2707 * src/locale.cc (ctype<wchar_t>): Use correct types...
2708 * bits/locale_facets.h (ctype<char>): Add __table_type typedef.
2709 (ctype<wchar_t>): Same.
2710 * bits/locale_facets.h (ctype<wchar_t>): Have char and wchar_t
2711 types match for table_size (size_t).
2713 * config/gnu-linux/ctype.cc (ctype): Change char_type to wchar_t
2714 as per char specialization.
2715 * config/*/ctype.cc: Same.
2717 2000-03-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2719 * bits/locale_facets.h (_Ctype<>::mask): Import from base class
2720 _Ctype_nois<>. Template base classes are never examinated in
2721 first-phase name-lookup.
2723 2000-03-08 Benjamin Kosnik <bkoz@gnu.org>
2725 Add Solaris 2.5.1 support.
2726 * config/solaris/solaris2.5/bits/ctype_base.h (ctype_base): And here.
2727 * config/solaris/solaris2.5/ctype.cc: Fixup.
2728 * config/solaris/solaris2.5/bits/ctype_specializations.h: Add.
2729 * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bits for solaris2.5.1.
2730 * aclocal.m4: Regenerate.
2731 * configure: Regenerate.
2733 * config/default/ctype.cc (ctype): Fixup.
2735 2000-03-07 Benjamin Kosnik <bkoz@blues.cygnus.com>
2737 * testsuite/27_io/filebuf.cc: Activate init code from yesterday...
2738 * testsuite/27_io/ostream_inserter_arith.cc (testcases): Fix for
2741 2000-03-07 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2743 * bits/cpp_type_traits.h: Expand on this file purpose.
2745 2000-03-06 Benjamin Kosnik <bkoz@gnu.org>
2747 * bits/locale_facets.h (ctype<char>): Remove static members, and
2748 re-work initialization code.
2749 (ctype<wchar_t>): Same.
2750 Move _S_touppper to _M_toupper and initialize in ctor.
2751 Move _S_tolower to _M_tolower and initialize in ctor.
2752 Move _S_table to _M_ctable and intialize in ctor.
2753 * bits/locale_facets.h (std): And here.
2754 * src/locale.cc (std): Tweak.
2755 * config/gnu-linux/ctype.cc: Change initialization here.
2756 * config/newlib/ctype.cc: And here.
2757 * config/solaris/solaris2.7/ctype.cc: And here.
2758 * config/solaris/solaris2.6/ctype.cc: And here.
2760 * bits/localefwd.h: Tweak.
2761 * bits/std_streambuf.h: Tweak formatting.
2763 * testsuite/27_io/filebuf.cc: Remove BUFSIZ dependancies.
2765 2000-03-05 Chip Salzenberg <chip@valinux.com>
2767 * src/misc-inst.cc (basic_iostream<>): Instantiate.
2769 2000-03-02 Phil Edwards <pme@sourceware.cygnus.com>
2770 Kevin Atkinson <kevinatk@home.com>
2772 Initial grab of SGI's strstream implementation with minor
2774 * src/strstream.cc: New file.
2775 * std/strstream: New file.
2776 * stl/bits/std_strstream.h: New file.
2777 * bits/std_streambuf.h: Add public access.
2778 * src/Makefile.am: Add strstream sources to list of dependancies.
2779 * src/Makefile.in: Regenerate.
2781 2000-03-03 2000 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2783 * bits/valarray_meta.h: Fix typo.
2785 2000-03-02 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
2786 Chip Salzenberg <chip@valinux.com>
2787 Petter Urkedal <petter@matfys.lth.se>
2789 * src/Makefile.am (myinstallheaders): Hack to avoid
2791 * src/Makefile.in: Regenerate.
2793 2000-03-02 Chip Salzenberg <chip@valinux.com>
2795 * libio/Makefile.an, math/Makefile.an, src/Makefile.am
2796 (LINK): Put quotes around "$(CC)" for libtool link mode,
2797 so libtool will use "-B" options during GCC bootstrap.
2798 * */Makefile.in: Regenerate.
2800 2000-03-02 Petter Urkedal <petter@matfys.lth.se>
2802 * config/c_io_libio.h: Enclose it all in ::std.
2803 * bits/basic_string.h (basic_string<>): Make types and
2805 * mkc++config: Truncate output file before writing.
2807 2000-03-01 Benjamin Kosnik <bkoz@gnu.org>
2809 * math/cabsf.c (__mycabsf): Rename to cabsf.
2810 * math/cabs.c (__mycabs): Rename to cabs.
2812 2000-02-29 LLeweLLyn Reese <llewelly@198.dsl.xmission.com>
2814 * bits/basic_string.h: Move declarations of __out_of_range(),
2815 __length_error() and accompanying macros ...
2816 * bits/exception_support.h: here. (Newly created file).
2817 * bits/basic_string.h: #include <bits/exception_support.h>
2818 * stl/bits/stl_vector.h: #include <bits/exception_support.h>
2819 * src/Makefile.am (headers): Add.
2820 * src/Makefile.in: Regenerate.
2822 2000-02-29 Benjamin Kosnik <bkoz@cygnus.com>
2824 * bits/cpp_type_traits.h: Rename structs so they don't clash with
2826 * bits/valarray_array.h: Synch. Fix typos.
2828 * libio/Makefile.am: Change to only compile source files that
2829 config/c_io_libio.cc actually needs.
2830 * libio/Makefile.in: Regnerate.
2831 * libio/PlotFile.hes SFile.h builtinbuf.h editbuf.h floatconv.c
2832 floatio.h fstream.h indstream.h iofclose.c iofdopen.c iofeof.c
2833 ioferror.c iofflush.c iofgetpos.c iofgets.c iofopen.c iofprintf.c
2834 iofputs.c iofread.c iofscanf.c iofsetpos.c ioftell.c iofwrite.c
2835 iogetc.c iogetdelim.c iogetline.c iogets.c ioignore.c iomanip.h
2836 iopadn.c ioperror.c iopopen.c ioprims.c ioprintf.c ioputc.c
2837 ioputs.c ioscanf.c ioseekoff.c ioseekpos.c iosetbuffer.c
2838 iosetvbuf.c iosprintf.c iosscanf.c iostream.h iostrerror.c
2839 ioungetc.c iovfprintf.c iovfscanf.c iovsprintf.c iovsscanf.c
2840 istream.h list.out ostream.h outfloat.c parsestream.h peekc.c
2841 pfstream.h procbuf.h stdiostream.h stream.h streambuf.h strfile.h
2842 strops.c strstream.h: Delete.
2844 * bits/basic_file.h: Stub out or delete unused bits in this
2846 (filepos_beg): Remove.
2847 (filepos_cur): Remove.
2848 (filepos_valid): Remove.
2849 * config/c_io_libio.cc: Resynch with the changes to basic_file.
2851 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2853 * bits/cpp_type_traits.h: Correct typo.
2855 2000-02-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
2857 * bits/cpp_type_traits.h: New file.
2859 * bits/valarray_array.h: Tweak. #include <bits/cpp_type_traits.h>
2860 Improve array construction.
2861 (_Array_default_ctor): New dispatcher class.
2862 (__valarray_default_construct): New function.
2863 (_Array_copy_ctor): New dispatcher class.
2864 (__valarray_copy_construct): New function.
2865 (_Array<>::free_data): Remove.
2867 * src/Makefile.am (headers): Add cpp_type_traits.h
2868 * src/Makefile.in: Regenerate.
2870 2000-02-28 Benjamin Kosnik <bkoz@cygnus.com>
2872 Prune libio directory to match files in libio/Makefile.
2873 * libio/PlotFile.cc,indstream.cc, isgetsb.cc, sbform.cc,
2874 stream.cc, SFile.cc, ioassign.cc, isscan.cc, sbgetline.cc,
2875 streambuf.cc, builtinbuf.cc, ioextend.cc, osform.cc, sbscan.cc,
2876 strstream.cc, editbuf.cc, iomanip.cc, parsestream.cc,
2877 stdiostream.cc, filebuf.cc, iostream.cc, pfstream.cc,
2878 stdstrbufs.cc, fstream.cc, isgetline.cc, procbuf.cc,
2879 stdstreams.cc: Remove.
2880 * libio/floatio.h, iolibio.h, iostdio.h, iostreamP.h: Remove.
2881 * libio/iofflush_u.c: Remove.
2883 * libio/dbz: Remove.
2884 * libio/include: Remove.
2885 * libio/stdio: Remove.
2886 * libio/tests: Remove.
2887 * libio/testsuite: Remove.
2889 * config/c_io_libio.cc: Add fcntl.h include for Solaris.
2891 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add bits.
2892 * configure.in: Replace 'grep -e' with 'grep' for Solaris.
2893 * configure: Regenerate.
2895 2000-02-25 Benjamin Kosnik <bkoz@gnu.org>
2897 Abstract out the underlying "C" io bits.
2898 * bits/std_new.h: Remove <stl_config> include, as well as <cstddef>.
2899 * stl/bits/stl_string_fwd.h: Remove <stddef> include.
2900 * bits/std_cwchar.h: Wrap with _GLIBCPP_USE_WCHAR_T guards. Don't
2902 * stl/bits/stl_config.h: Don't include _G_config.h.
2904 * bits/basic_file.h: Allow for non-inheritance based __basic_files.
2905 * config/c_io_libio.h (_GLIBCPP_BASIC_FILE_INHERITANCE): Define.
2906 * config/c_io_libio.cc: Tweak.
2908 * src/Makefile.am (TOPLEVEL_INCLUDES): Add includedir.
2909 * src/Makefile.in: Regenerate.
2910 * Makefile.am (AM_MAKEFLAGS): Define includedir so that
2911 prefix/include files will be picked up.
2912 * Makefile.in: Regenerate.
2913 * math/Makefile.am (TOPLEVEL_INCLUDES): And here.
2914 * libio/Makefile.am (TOPLEVEL_INCLUDES): And here.
2916 * bits/std_ios.h: Include <bits/c++io.h> instead of libio.
2917 * bits/fpos.h: And here.
2918 * bits/basic_file.h (get_fileno): Move definition from ...
2919 * src/basic_file.cc (std): To here.
2920 * bits/fpos.h: Move types for streamoff, streampos to..
2921 * bits/basic_file.h: Move __c_file_type and fpos typedefs to...
2922 * config/c_io_libio.h: ...here.
2923 (_GLIBCPP_[BOOLALPHA, HEX, DEC, FIXED, INTERNAL, LEFT, OCT, RIGHT,
2924 SCIENTIFIC, SHOWBASE, SHOWPOINT, SHOWPOS, SKIPWS, UNITBUF,
2925 UPPERCASE, ADJUSTFIELD, BASEFIELD, FLOATFIELD, BADBIT, EOFBIT,
2926 FAILBIT, GOODBIT, APP, ATE, BINARY, IN, OUT, TRUNC): New macros to
2927 abstract out bits in ios_base.
2928 * bits/ios_base.h: Re-macrofy.
2929 * src/basic_file.cc : Rename, move to
2930 * config/c_io_libio.cc: Here.
2931 * config/c_io_libio.h: New file. Include libio.
2932 * bits/c++config.h: Don't define _GLIBCPP_USE_LIBIO.
2933 * configure.in (blddir): Add enabling bits for GLIBCPP_ENABLE_CSTDIO.
2934 * configure: Regenerate.
2935 * src/Makefile.am (sources): Take out basic_file.cc and add c++io.cc.
2936 (generated_headers): Add c++io.h
2937 * acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New function to select
2938 underlying "C" io library.
2939 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Roll functionality into
2940 GLIBCPP_ENABLE_CSTDIO.
2942 * configure.in: Add configure bits for cross compiling non-newlib
2944 GLIBCPP_CHECK_COMPILER_VERSION: Take out this test for this
2945 target, as we assume g++ support is not the limiting factor.
2946 GLIBCPP_CHECK_LIBIO: Same, know we don't need libio.
2947 * configure: Regenerate.
2949 2000-02-22 Benjamin Kosnik <bkoz@cygnus.com>
2951 * Makefile.am (INTERFACE): Define.
2952 * Makefile.in: Regenerate.
2953 * libio/ChangeLog: Add entry.
2955 2000-02-21 Benjamin Kosnik <bkoz@cygnus.com>
2957 * docs/install.html: Update install directions.
2959 * docs/status.html: Fix sidebar to be consistent.
2960 * docs/thanks.html: Same.
2961 * docs/links.html: Same.
2962 * docs/mail.html: Same.
2963 * docs/download.html: Same.
2965 * testsuite/27_io/filebuf.cc: Change BUFSIZ to buffer_size, and
2966 kill the macro BUFSIZ. I think the solaris fails lie elsewhere
2967 however, in the ctype_char_members.cc fail (for instance.)
2968 * testsuite/17_intro/headers.cc: Remove extraneous fails for hosts
2969 that do not have wchar_t enabled.
2970 * testsuite/27_io/ostream_inserter_arith.cc (struct _TestCase):
2972 * testsuite/27_io/iostream_objects.cc: And here.
2974 * libio/gen-params (CONFIG_NM): Specifically add in nm as the
2977 2000-02-18 Benjamin Kosnik <bkoz@haight.constant.com>
2978 Tom Tromey <tromey@cygnus.com>
2980 * configure.in: Manually add MULTISUBDIR.
2981 * configure: Regenerate.
2982 * src/Makefile.am (MULTISUBDIR): Add the lesser evil of Tom's two
2983 "Eww" hacks to get multilib installs working correctly.
2984 ($(headers): Test for MULTISUBDIR before installing.
2985 * Makefile.am (AM_MAKEFLAGS): Don't define MULTISUBDIR, instead
2986 have configure hack it in.
2987 * Makefile.in: Regenerate.
2988 * acinclude.m4 (GLIBCPP_CXXFLAGS): Tweak wording.
2989 Add enabling bits for native Cygwin ctypes, and other newlib-based
2992 2000-02-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
2994 * mkc++config (OUT_H): Remove EOF in cygwin.
2995 * acinclude.m4 (LIBS): Tweaks to allow cygwin to configure.
2997 Tom Tromey <tromey@cygnus.com>
2998 * src/Makefile.am: Tweaks for installing multilibs.
3000 2000-02-17 Benjamin Kosnik <bkoz@cygnus.com>
3003 (toolexeclib_LTLIBRARIES): Use this instead of lib_LTLIBRARIES.
3004 Add USE_LIBDIR bits here, not...
3005 * src/Makefile.in: Regenerate.
3006 * Makefile.am: ...here.
3007 * Makefile.in: Regenerate.
3009 2000-02-17 Benjamin Kosnik <bkoz@gnu.org>
3011 * acinclude.m4 (LIBS): Fix typos.
3012 * configure.in: _GLIBCPP_BUGGY_FLOAT_COMPLEX,
3013 _GLIBCPP_BUGGY_COMPLEX for crosses.
3014 * src/Makefile.am (std_headers): Add libio.h as install include,
3016 * src/Makefile.in: Regenerate.
3018 * mkcheck.in: Add bits to set CXX to cross compiler.
3020 * src/complex_io.cc: Tweak.
3021 * configure.in: _GLIBCPP_BUGGY_COMPLEX for crosses.
3022 * configure: Regenerate.
3024 * config/newlib/ctype.cc: Tweaks.
3025 * config/newlib/bits/ctype_base.h (ctype_base): Set mask to char,
3027 * src/complex_io.cc (operator>>(istream, complex): Define out if
3030 2000-02-16 Benjamin Kosnik <bkoz@cygnus.com>
3032 * config/newlib/bits/ctype_base.h: Correct _S_table.
3034 Reconfigure ctype support for "C" libraries that don't use arrays.
3035 * testsuite/22_locale/ctype_char_members.cc: New file. Test for
3036 basic ctype<char> functionality.
3037 * src/locale.cc: Move host-specific ctype functions that are not
3038 inlines to config/*/ctype.cc files.
3039 (ctype<char>::do_tolower): For instance.
3040 (ctype<char>::do_toupper): For instance.
3041 (ctype<wchar_t>::do_tolower): For instance.
3042 (ctype<wchar_t>::do_toupper): For instance.
3043 * config/gnu-linux/ctype.cc: Modify.
3044 * config/default/ctype.cc: Modify.
3045 * config/newlib/ctype.cc: Modify.
3046 * config/solaris/solaris2.6/ctype.cc: Modify.
3047 * config/solaris/solaris2.7/ctype.cc: Modify.
3049 * bits/locale_facets.h (ctype<char>::is): Mark inline, move
3051 (ctype<char>::scan_is): Here too.
3052 (ctype<char>::scan_not): Here too.
3053 Move out of line defs to config/*/bits/ctype_specializations.h.
3054 * config/gnu-linux/bits/ctype_specializations.h: ...here. New file.
3055 * config/default/bits/ctype_specializations.h: ...here. New file.
3056 * config/newlib/bits/ctype_specializations.h: ...here. New file.
3057 * config/solaris/solaris2.6/bits/ctype_specializations.h: New file.
3058 * config/solaris/solaris2.7/bits/ctype_specializations.h: New file.
3059 * src/Makefile.am (headers): Add ctype_specializations.h.
3060 * src/Makefile.in: Regenerate.
3062 Aaron Weiss <weiss@clearway.com>
3063 * Makefile.am (AM_MAKEFLAGS): Add NM_FOR_BUILD, NM_FOR_TARGET, and
3064 CONFIG_NM for Solaris builds.
3065 * Makefile.in: Regenerate.
3067 * src/locale.cc: Tweak formatting.
3069 2000-02-15 Benjamin Kosnik <bkoz@cygnus.com>
3071 Jim Parsons <parsons@clearway.com>
3072 * testsuite/27_io/istream_unformatted.cc (test06): Add test.
3073 * bits/istream.tcc (read): Set failbit if !good(). Don't increment
3077 Michel Decima <michel.decima@cnet.francetelecom.fr>
3078 * testsuite/27_io/streambuf.cc: Add test.
3079 * bits/streambuf.tcc (xsgetn): Don't test for valid mode.
3082 * src/Makefile.am (AM_CXXFLAGS): Pass down AC_CXXFLAGS,
3083 OPTIMIZE_CXXFLAGS, etc. So --enable-debug and --enable-namespaces
3084 will work correctly, for instance.
3085 * src/Makefile.in: Regenerate.
3087 * bits/locale_facets.h: Fix merge error.
3088 (num_put::put(unsigned long long): And here.
3089 * mknumeric_limits (trait_name): Same.
3091 2000-02-15 Chip Salzenberg <chip@valinux.com>
3093 Support 'configure --enable-long-long'.
3094 * bits/c++config.h (_GLIBCPP_USE_LONG_LONG): Remove.
3095 * stl/bits/stl_config.h (__STL_LONG_LONG): Remove '#if 0'.
3096 * acconfig.h (_GLIBCPP_USE_LONG_LONG): Add. Default to undef.
3097 * acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Define flag macro.
3098 * configure.in (GLIBCPP_ENABLE_LONG_LONG): Use it.
3100 * aclocal.m4: Regenerate.
3101 * config.h.in: Regenerate.
3102 * configure: Regenerate.
3104 2000-02-15 Chip Salzenberg <chip@valinux.com>
3106 Improve (complete?) 'long long' support.
3107 * mknumeric_limits: Call $CXX with $CPPFLAGS. Define statics
3108 for {,unsigned} long long if the limits header declares them.
3109 * src/gen-num-limits.cc: Include <bits/c++config.h> early.
3110 (__USE_GNU, _GNU_SOURCE): Define if _GLIBC_USE_LONG_LONG.
3111 (long long, unsigned long long): Gen limits if _GLIBC_USE_LONG_LONG.
3112 * bits/locale_facets.h (num_get<>::get(..., long long &)): Define.
3113 (num_put<>::put(..., long long)): Likewise.
3114 (num_put<>::put(..., unsigned long long)): Likewise.
3115 * bits/locale_facets.tcc (_S_format): Rename from _S_format_long.
3116 Templatize last parameter to support 'long long'.
3117 (num_put<>::put(...)): Call _S_format with new name.
3118 (num_put<>::put(..., long long)): Define.
3119 (num_put<>::put(..., unsigned long long)): Likewise.
3120 * src/locale-inst.cc (_S_format): Instantiate under new name.
3122 2000-02-15 Petter Urkedal <petter@matfys.lth.se>
3124 * src/complex.cc (operator<<, operator>>): Moved from here...
3125 * src/complex_io.cc: ...to new file.
3126 (operator>>): Stub replaced by the real thing.
3127 * src/Makefile.am (sources): Inserted complex_io.cc.
3128 * src/Makefile.in: Regenerate.
3129 * testsuite/26_numerics/complex_inserters_extractors.cc: Check it.
3131 2000-02-14 Benjamin Kosnik <bkoz@gnu.org>
3133 Add in ctype information for newlib "C" libraries.
3134 * config/newlib: New directory
3135 * config/newlib/bits/ctype_base.h: New file.
3136 * config/newlib/ctype.cc: New file.
3138 * ctype/config/linux/*: Rename, move to...
3139 * ctype/config/gnu-linux/*: Here.
3141 Finish off multilib work.
3142 * configure.in: Don't set CXX if not Canadian cross.
3143 * configure: Regenerate.
3144 * acinclude.m4 (GLIBCPP_CHECK_LIBIO): Tweak messages.
3145 * aclocal.m4: Regenerate.
3146 * config.h.in: Regenerate.
3148 * install-sh: Remove, as AC_CONFIG_AUX_DIR(..) picks this out of
3149 the top-level gcc directory now.
3150 * mkinstalldirs: Remove.
3153 * ltmain.sh: Remove.
3154 * config.guess: Remove.
3155 * config.sub: Remove.
3157 2000-02-13 Benjamin Kosnik <bkoz@cygnus.com>
3159 * configure.in (glibcpp_basedir): Add glibcpp_basedir.
3160 * Makefile.am: Move mutlilib stuff to src/Makefile.am.
3161 * Makefile.in: Regenerate.
3162 * src/Makefile.am: Add multilib bits.
3163 * src/Makefile.in: Regenerate.
3165 2000-02-12 Benjamin Kosnik <bkoz@cygnus.com>
3167 * configure.in: Clean, add some multilib support.
3168 * configure: Regenerate.
3169 * configure.host: New file.
3171 * acinclude.m4: GLIBCPP_CHECK_LIBIO. Take bits from configure.in and
3172 roll a new function, checks for presence of libio.
3173 GLIBCPP_CHECK_COMPILER_VERSION: Same.
3174 GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT: Same.
3175 GLIBCPP_CHECK_MATH_SUPPORT: Same.
3176 GLIBCPP_CHECK_WCHAR_T_SUPPORT: Same.
3177 GLIBCPP_CHECK_LIBIO: Same.
3178 GLIBCPP_CHECK_CTYPE: Same.
3179 * aclocal.m4: Regenerate.
3180 * config.h.in: Regenerate.
3182 * Makefile.am: Tweaks.
3183 * Makefile.in: Regenerate.
3185 2000-02-11 Benjamin Kosnik <bkoz@cygnus.com>
3187 * configure.in: Make outputing the libio/Makefile
3188 conditional. Haha, yeah right. Anyway, we instead do this thing
3189 where if libio is found, then we build a null library, as there is
3190 no point in duplicating the found libio.
3191 * Makefile.am: Tweak.
3192 * Makefile: Regenerate.
3193 * libio/Makefile.am: Add _G_config.h stuff. Now cross compilers
3194 are happy happy happy.
3195 * libio/Makefile.am: Regenerate.
3196 * libio/gen-params: New file.
3197 * src/Makefile.am: Make libio.la non-conditional, as it is now a
3198 null library if it's not needed. At least we are being consistent,
3199 if not as elegant as we could be.
3200 * src/Makefile: Regenerate.
3202 2000-02-10 Benjamin Kosnik <bkoz@gnu.org>
3204 * Makefile.am (SUBDIRS): Add libio again.
3205 * Makefile.in: Regenerate.
3206 * configure.in (BUILD_LIBIO_INCLUDE): And here.
3207 (AC_OUTPUT): Generate libio/Makefile again.
3208 * configure: Regnerate.
3209 * src/Makefile.am (libstdc___la_LIBADD): Change path so that
3210 libio.la is referring back to the libio subdir again.
3211 (LIBIO_INCLUDES): And here.
3212 * src/Makefile.in: Regenerate.
3214 2000-02-09 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3216 * math/complex-stub.h: Missed one. Change __mycabs* to cabs*.
3218 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3220 * bits/valarray_array.h (<bits/std_new.h>): #include.
3221 (__valarray_get_memory): New function.
3222 (__valarray_release_memory): Likewise.
3223 (__valarray_default_construct): New functions.
3224 (__valarray_fill_construct): New function.
3225 (__valarray_copy_construct): New funstions.
3226 (__valarray_destroy_elements): New function.
3228 * bits/valarray_array.tcc (__valarray_copy_construct): New
3231 * bits/std_valarray.h (valarray<>::valarray): Use
3232 __valarray_get_memory and __valarray_fill_construct,
3233 __valarray_copy_construct, __valarray_default_construct to
3234 properly construct valarrays.
3235 (valarray<>::~valarray): Use __valarray_destroy_elements to
3236 destroy elements and __valarray_release_memory to return memory.
3237 (valarray<>::shift): Tweak.
3238 (valarray<>::cshift): Likewise.
3239 (valarray<>::resize): Robustify.
3241 2000-02-09 Benjamin Kosnik <bkoz@cygnus.com>
3243 * mknumeric_limits (XCOMPILE): Add support for cross compiling.
3244 * bits/limits_generic.h: New file, defaults.
3245 * src/limits_generic.cc: New file, defaults.
3246 * configure.in (LIBS): Run mknumeric_limits at configure time.
3247 * acconfig.h: Remove PACKAGE VERSION HAVE_COMPLEX
3248 HAVE_LC_MESSAGES, tidy, clean, etc.
3249 * src/Makefile.am (geberated_sources): Remove.
3251 * bits/fpos.h: Use _GLIBCPP_USE_LIBIO guards for libio typenames
3252 (_IO_off_t, _IO_ssize_t)
3254 * src/complex.cc: Use glibc's <complex.h> if
3255 possible. . . apparently this was not being done before. Include
3257 (abs): Enable cabs if it's around, instead of mycabs.
3258 * src/complexf.cc (FCT): Add global scope to match complex.cc.
3259 * src/complexl.cc (FCT): Same.
3260 * math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Change mycabsl to cabsl.
3261 (libmath_la_SOURCES): And here.
3262 * math/(mycabs.c, mycabsf.c, mycabsl.c): Move to. . .
3263 * math/(cabs.c, cabsf.c, cabsl.c): . . . Here.
3264 * math/complex-stub.h: Move c_log declarations into. . .
3265 * math/mathconf.h: Here. This is because glibc's <complex.h>
3266 declares cclog, not c_log. The case of the dueling standards. . .
3267 * math/mathconf.h: Add _GLIBCPP_HAVE_* to macros.
3268 * math/Makefile.am: Change.
3269 * math/nan.c (nan): Change signature.
3270 * math/mathconf.h (NAN): Same.
3271 * math/complex-stub.h (nan): And here.
3273 * Makefile.am (rebuild-stamp): Remove libio and libio
3274 dependancies. Plan to take out libio subdir and just merge with
3275 libio in top level gcc directory. Of course, this assumes there is
3276 a libio in the top level directory (ie ../src_dir). This will
3277 probably change the way this library is configured by default.
3280 2000-02-09 Chip Salzenberg <chip@valinux.com>
3282 * localefwd.h (locale): Make public: facet, id, category.
3284 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3286 * testsuite/26_numerics/buggy_complex.cc: Fix Origin:.
3288 * acinclude.m4: Patch only once!
3290 2000-02-09 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3292 * testsuite/26_numerics/buggy_complex.cc: New file.
3294 2000-02-05 Petter Urkedal <petter@matfys.lth.se>
3296 * acinclude.m4: New GLIBCPP_CHECK_COMPLEX_SUPPORT macro. Based
3297 on the 1999-11-21 entries by Mumit Khan.
3298 * configure.in: Use.
3299 * acconfig.h: New _GLIBCPP_BUGGY_COMPLEX macro.
3300 * bits/std_complex.h: Use.
3302 2000-02-04 Philip Martin <pm@corris.dircon.co.uk>
3304 * stl/bits/stl_algobase.h: Add traits based dispatch for
3305 __normal_iterator in the copy_backward()algorithm
3306 * stl/bits/stl_vector.h: Reduce use of __normal_iterator
3309 2000-02-04 Mumit Khan <khan@xraylith.wisc.edu>
3311 * src/gen-num-limits.cc (signal_handler): Work around signal
3312 handling problem on Cygwin.
3313 Thanks to Chris Faylor <cgf@cygnus.com>.
3315 2000-02-03 Benjamin Kosnik <bkoz@cygnus.com>
3317 * configure.in: Add (preliminary) support for cross compiles and
3319 Remove AC_C_BIGENDIAN tests. Why is this necessary? Cross
3320 compilation freaks on this.
3321 * configure: Regenerate.
3322 * src/Makefile.am: Add support for cross compiles.
3323 * src/Makefile: Regenerate.
3324 * Makefile.am: Add support for cross compiles.
3325 * Makefile.in: Regenerate.
3327 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
3329 * configure.in (LIBS): Remove unused subdirs.
3330 * configure: Regenerate.
3331 * Makefile.am (SUBDIRS): And here.
3332 * Makefile.in: Regenerate.
3333 * src/Makefile.am (sources): And here.
3334 * src/Makefile.in: Regenerate.
3337 * generic/*: Remove.
3339 * mkcheck.in (INC_PATH): Include $BUILD_DIR before any source dirs.
3341 * libtool: Update to libtool-1.3.4.
3345 * config.guess: Same.
3347 2000-02-02 Benjamin Kosnik <bkoz@cygnus.com>
3348 Alexandre Petit-Bianco <apbianco@cygnus.com>
3350 * mkc++config: New file. Put autoconf macros into _GLIBCPP_
3351 namespace instead of polluting global namespace with duplicate
3353 * configure.in (AC_OUTPUT): Don't need to generate bits/config.h
3355 (AC_OUTPUT_COMMANDS): Make it here.
3356 * configure: Regenerate.
3357 * bits/c++config.h.in (_CPP_CPPCONFIG): Change. Tweak. Remove
3358 endif, as now we will add it manually.
3359 Move to this file. . .
3360 * bits/c++config.h: New file. Same as old c++config.h.in except
3361 the ending macro guard is now appended manually.
3363 * bits/locale_facets.tcc: Change HAVE_* macros to _GLIBCPP_HAVE_*.
3364 * bits/std_cmath.h: Same here.
3365 * bits/std_cwchar.h: And here.
3366 * src/locale.cc: And here.
3367 * src/complexl.cc: And here.
3368 * math/mathconf.h: Change to include "config.h" instead of
3371 2000-02-01 Benjamin Kosnik <bkoz@gnu.org>
3373 * configure.in: Add support for threads. Try a model closer to
3374 libjava, as hopefully if the thread bits are added carefully
3375 enough, the source code will not have gross hacks. Besides, the
3376 libstdc++-v2 model could be easily emulated without the necessity
3377 of linking files in (as currently done)--all that needs to be done
3378 is AC_DEFINE(-D_PTHREADS) etc. However, let's try something
3379 new. . . and see if we arrive at a more elegant solution.
3380 * configure: Regenerated.
3381 * config/threads-no.h: New file.
3382 * config/threads-posix.h: New file.
3383 * src/Makefile.am (myinstallheaders): Install c++threads.h.
3384 * src/Makefile.in: Regenerated.
3386 2000-01-31 Benjamin Kosnik <bkoz@gnu.org>
3388 META-QUESTION: Can we just make a "header.html" file and a
3389 "footer.html" and just include them in all the doc sub-pages. The
3390 duplication of the header info is kind of gross, and weak
3391 considering that if you change order or layout then all this stuff
3392 has to be changed in all the sub-files.
3394 * docs/17_intro/contribute.html: Take out duplicate file info.
3395 * README: Should just contain a link to the docs/index.html
3396 page. Duplicate information removed.
3397 * docs/faq/index.html: Remove indexes into HOWTOS.
3398 * docs/17_intro/howto.html: Make intro and docs part more
3399 centralized. Move intro stuff to documentation.html.
3400 * docs/how.html: Tweak. Does this file need to exist? What calls it?
3401 * docs/README.html: Move documentation files to
3402 documentation.html. Should this file be renamed
3403 "config_and_install.html" as that is what is apparently covered
3405 * docs/install.html: Yes. New file, moved and renamed README.html.
3406 * docs/documentation.html: New file. This is the index file for
3408 * docs/index.html: Edit sidebar order. Insert new link to new
3409 documentation spine, documentation.html.
3411 2000-01-31 Scott Snyder <snyder@fnal.gov>
3413 * bits/istream.tcc (operator>>(istream&, string&)): Set failbit if
3414 we don't extract any characters.
3415 * testsuite/21_strings/inserters_extractors.cc (main): New tests.
3417 2000-01-31 Anders Widell <awl@hem.passagen.se>
3419 * stl/bits/std_bitset.h (_M_do_left_shift): Handle case when shift
3420 step is a multiple of the word size.
3421 (_M_do_right_shift): Same.
3422 * testsuite/23_containers/bitset_shift.cc: New file.
3424 2000-01-31 Nathan Myers <ncm@zembu.com>
3426 * README (Documentation): Add path info, fix typos.
3428 2000-01-26 Benjamin Kosnik <bkoz@redhat.com>
3430 * bits/locale_facets.tcc (num_get::_M_extract): Add the freaking
3431 crazy group checking for numpunct, for real this time. At some
3432 point, the local variable __grp should probably get replaced a
3433 char array, or something a bit more lightweight.
3434 (num_get::do_get(bool)): Simplify. Don't set bool reference to
3435 parsed value unless err isn't failbit.
3436 (num_get::do_get(*)): Same, make consistent.
3438 Nathan Myers <ncm@zembu.com>
3439 Jim Parsons <parsons@clearway.com>
3440 * testsuite/27_io/istream_extractor_arith.cc (test08): Add
3441 more grouping tests, tweak, scold, wine.
3443 2000-01-24 Benjamin Kosnik <bkoz@gnu.org>
3445 * testsuite/27_io/istream_extractor_arith.cc (test07): Add
3447 * bits/locale_facets.tcc (num_get::_M_extract): Change to fix
3448 grouping bugs. Only allow thousands_sep if _M_use_groupings is
3451 via <llewelly@198.dsl.xmission.com>
3452 * stl/bits/stl_vector.h (vector::_M_range_check): Throw
3453 out_of_range instead of range_error.
3455 2000-01-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3457 * bits/std_iomanip.h (setw): Fix typo.
3459 2000-01-14 Benjamin Kosnik <bkoz@gnu.org>
3461 * testsuite/27_io/istream_extractor_arith.cc: Fix.
3462 * bits/locale_facets.tcc (do_get(...void)): Change to strtoul.
3463 * testsuite/27_io/istream_unformatted.cc (test04): Tweak.
3465 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
3467 * docs/README.html: Reformat, more installation instructions.
3468 * docs/gccrebuild.html: New file.
3469 * docs/faq/index.html: Update for new testsuite output filenames.
3470 * docs/faq/index.txt: Regenerate.
3472 2000-01-14 Phil Edwards <pme@sourceware.cygnus.com>
3474 * Makefile.am (rebuild-stamp, all-local): New targets.
3475 * Makefile.in: Regenerated.
3476 * acinclude.m4: New macro, GLIBCPP_ENABLE_RELIBGCC.
3477 * aclocal.m4: Regenerated.
3478 * configure.in: Call new macro. Also do some sanity checks
3479 for combinations of --enable's that may not make sense.
3480 * configure: Regenerated.
3482 2000-01-13 Benjamin Kosnik <bkoz@cygnus.com>
3484 * testsuite/27_io/istream_extractor_arith.cc: Add checks for void*.
3485 * bits/locale_facets.tcc (do_get::(...void)): Set fmtflags
3486 correctly for hex-formatted input.
3488 * testsuite/27_io/istream_manip.cc (test01): Fix, as per setting
3489 eofbit instead of eofbit | failbit.
3490 * testsuite/27_io/istream_unformatted.cc (test04): Fix, as
3491 ifstreams now are opened or'd with ios_base::in (as is correct).
3492 * bits/fstream.tcc (filebuf::seekoff): Simplify.
3493 * testsuite/27_io/ios_base_members_static.cc (test01): Fix thinko.
3495 2000-01-12 Benjamin Kosnik <bkoz@gnu.org>
3497 * bits/std_fstream.h: Add ios_base as a friend to basic_filebuf.
3498 * bits/basic_file.h (basic_file::filepos_cur): Remove incorrect
3500 (__basic_file::filepos_valid): Same.
3501 (__basic_file::filepos_beg): Same.
3502 (__baseic_file::get_fileno): New function.
3503 * bits/ios_base.h (ios_base::sync_with_stdio): Implement, including
3504 feedback from LWG 49.
3505 * src/ios.cc: Move definition here.
3506 * testsuite/27_io/ios_base_members_static.cc (test01): Add tests.
3508 * bits/std_sstream.h (_M_really_sync): Simplify argument list. Set
3509 output part of internal buffer based on string size, so that
3510 _M_out_end is set consistently with filebufs. Correct comments.
3511 * bits/sstream.tcc (stringbuf::overflow): Update here too.
3512 * testsuite/27_io/stringbuf.cc: Changes.
3514 2000-01-11 Benjamin Kosnik <bkoz@gnu.org>
3516 * bits/sstream.tcc (seekoff): Set based on end of written buffer,
3518 * testsuite/27_io/stringbuf.cc: Add tests for seekoff(end).
3520 * bits/std_fstream.h (ifstream::open): Add ios_base::in to openmode.
3521 (ofstream::open): Add ios_base::out to openmode.
3523 * bits/locale_facets.tcc (_M_extract): Have consistency between
3524 istream::sentry and extractors, where failbit | eofbit is
3525 set. Don't change this, but instead change. . (do some formatting
3527 * bits/istream.tcc (istream::sentry): Only set eofbit.
3529 2000-01-10 Benjamin Kosnik <bkoz@gnu.org>
3531 * testsuite/27_io/istringstream_members.cc: New file.
3533 2000-01-09 Benjamin Kosnik <bkoz@gnu.org>
3535 * bits/istream.tcc (istream::sentry): Flush.
3537 * configure.in (AC_OUTPUT_COMMANDS): Simplify.
3538 * configure: Regenerate.
3539 * src/Makefile.am (generated_headers): Remove bits/c++config.h so
3540 that make clean will not delete it.
3541 * src/Makefile: Regenerate.
3543 2000-01-07 Phil Edwards <pme@sourceware.cygnus.com>
3545 * mkcheck.in: Use host-specific invocation of size(1);
3546 GNU binutils isn't necessarily there (more's the pity).
3548 2000-01-06 Benjamin Kosnik <bkoz@cygnus.com>
3550 * configure.in (LIBS): Better tests for solaris2.6.
3551 * configure: Regenerate.
3553 <vakatov@ncbi.nlm.nih.gov>
3554 * bits/std_sstream.h: As per libstdc++20.
3556 2000-01-06 Benjamin Kosnik <bkoz@gnu.org>
3558 Break out configuration on solaris.
3559 * configure.in (ctype_solaris): Add in bits for solaris2.6 and 2.7.
3560 * config/solaris/ctype.cc: Delete and move to proper version.
3561 * config/solaris/bits: Same.
3562 * config/solaris/solaris2.5: Add this directory, with subdir bits
3563 and file ctype.cc. Probably doesn't work.
3564 * config/solaris/solaris2.6: Same.
3565 * config/solaris/solaris2.7: Same, as per specs via Phil Edwards.
3567 * Makefile.am: Change paths to mkcheck.
3568 * Makefile: Regenerate.
3569 * configure.in (AC_OUTPUT_COMMANDS): Build mkcheck here.
3570 * configure: Regenerate.
3571 * src/Makefile.am (generated_headers): Add bits/c++config.h.
3573 * mkcheck: Now autogenerated by configure and renamed. . .
3574 * mkcheck.in (INC_PATH): Add glue for ctype_include_dir.
3575 Have longer-style dates.
3576 Raja R Harinath <harinath@cs.umn.edu>
3577 * mkcheck: Change path to #!/usr/clocal/bin/bash.
3579 * docs/README.html: Correct links, maybe. FAQ, install notes, and
3580 general documentation need to be organized around each other, not
3581 fight against each other. . .
3583 2000-01-04 Phil Edwards <pme@sourceware.cygnus.com>
3584 Nicolai Josuttis <nicolai.josuttis@braunschweig.netsurf.de>
3586 * README: Add a note referring to README.html.
3587 * docs/README.html: New file from Nicolai.
3588 * docs/faq/index.html: Move "how to get a copy" to here.
3589 * docs/gentop/footchunk.html: Update.
3590 * docs/gentop/headchunk.html: New links according to
3591 bkoz's idea for "How to..." stuff.
3592 * docs/gentop/thanks: Actually put people here.
3593 * docs/download.html: Regenerated.
3594 * docs/index.html, docs/links.html, docs/mail.html,
3595 docs/status.html, docs/thanks.html, docs/faq/index.txt: Ditto.
3596 * docs/how.html: Ditto. (This file should go away soon.)
3598 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
3600 * docs/gentop/status: Add snapshot version column, update
3602 * docs/status.html: Regenerated.
3604 1999-12-26 Phil Edwards <pme@sourceware.cygnus.com>
3606 * docs/faq/index.html: Turn README and RELEASE-NOTES into links
3607 from installation FAQ, and specify location of text files.
3608 * docs/faq/index.txt: Regenerated.
3610 1999-12-23 Phil Edwards <pme@sourceware.cygnus.com>
3612 * docs/gentop/download: Add links to prebuilds for Cygwin/Mingw32.
3613 * docs/download.html: Regenerated.
3615 1999-12-22 Phil Edwards <pme@sourceware.cygnus.com>
3617 * docs/faq/index.html: Update 'what works' for .7 snapshot,
3618 clean up various links.
3619 * docs/faq/index.txt: Regenerated.
3620 * docs/gentop/gentop: Smarter regeneration script.
3621 * docs/gentop/{head,foot}chunk.html: Updated with new
3622 contributors link and mod date.
3623 * docs/gentop/index: Snapshot relase date.
3624 * docs/gentop/thanks: New contributors page added.
3625 * docs/{download,how,index,links,mail,status,thanks}.html:
3626 Regenerated from gentop; thanks.html created.
3628 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3630 * bits/c++config.h.in (__GLIBCPP__): 19991221.
3631 * docs/index.html: Add correct information.
3633 * config/irix: New directory.
3634 * config/irix/ctype.cc: Add irix-6.5 info. Not tested.
3635 * config/irix/bits/ctype_base.h: And here.
3637 * config/aix: New directory.
3638 * config/aix/ctype.cc: Add aix-4.2 info. Not tested.
3639 * config/aix/bits/ctype_base.h: And here.
3641 1999-12-21 Philip Martin <pm@corris.dircon.co.uk>
3643 * bits/basic_string.h: Add special case handling for integral
3645 * bits/std_string.h: include type_traits.h
3646 * testsuite/21_strings/ctor_copy_dtor.cc: Tweak.
3648 1999-12-21 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
3650 * bits/fstream.tcc (seekoff): Output buffer based on _M_*_in and
3652 * bits/std_fstream.h (sync): And here.
3653 * testsuite/27_io/filebuf.cc: Revisions.
3654 * testsuite/27_io/filebuf-2.tst: Correct, remove weird character
3655 at the end of the file.
3656 * testsuite/27_io/filebuf-3.tst: Correct.
3658 1999-12-21 Phil Edwards <pedwards@jaj.com>
3660 * docs/gentop/index: Hold off on .7 announcement date.
3661 * docs/index.html: Regenerate.
3663 1999-12-21 Benjamin Kosnik <bkoz@kcygnus.com>
3665 * bits/std_fstream.h (sync): Move _M_file->sync() to
3666 _M_really_overflow().
3667 * bits/fstream.tcc (seekoff): Call sync, not _M_really_overflow so
3668 as to get the _M_file->sync action, which forces the external
3669 buffer to update itself.
3670 (underflow): Same here.
3672 1999-12-21 Phil Edwards <pedwards@jaj.com>
3674 * bits/c++config.h.in: Uncomment _GLIBCPP_USE_NAMESPACES and move...
3675 * acconfig.h: ...to here.
3676 * config.h.in: Regenerate from aclocal.
3677 * acinclude.m4: Add GLIBCPP_ENABLE_DEBUG, GLIBCPP_ENABLE_NAMESPACES.
3678 * aclocal.m4: Regenerate from acinclude.
3679 * configure.in: Use ENABLE macros here.
3680 * configure: Regenerate.
3681 * src/Makefile.am: Use results from ENABLE macros.
3682 * src/Makefile.in: Regenerate.
3684 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
3686 * mkcheck (SRC_DIR): Now have to include config/* dir if "make
3687 check" and not "make check-install." Temporarily hack in linux
3690 * bits/std_streambuf.h: Tweaks.
3691 * bits/streambuf.tcc (xsgetn): Tweaks.
3692 * bits/std_fstream.h (sync): Make _M_really_overflow consistent.
3693 * bits/fstream.tcc (filebuf::underflow): Simplify.
3694 * bits/std_sstream.h (streambuf::underflow): Minor change to make
3695 checks for read position precisely implement the standard.
3696 * bits/basic_file.h (filepos_cur): Base this on _offset.
3697 * testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.
3698 * testsuite/27_io/filebuf.cc: Tweak.
3700 1999-12-20 Benjamin Kosnik <bkoz@cygnus.com>
3702 * docs/17_intro/RELEASE-NOTES: Fix typos.
3704 * bits/locale_facets.h (ctype): Modify, use __to_type to abstract
3705 out platform-specific bits.
3706 * config/default/ctype.cc: And here.
3707 * config/defaults/bits/ctype_base.h: And here.
3708 * config/linux/ctype.cc: And here.
3709 * config/linux/bits/ctype_base.h (ctype_base): And here.
3710 * config/solaris/bits/ctype_base.h (ctype_base): Add
3711 __to_type. Comment, as it looks like this is for solaris2.6 and
3712 above: solaris2.5.1 doesn't seem to have the same definitions.
3713 * config/solaris/ctype.cc: And here.
3715 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
3716 Ulrich Drepper <drepper@cygnus.com>
3718 * acconfig.h: Remove _GLIBCPP_USE_CTYPE_ISBIT.
3720 * src/locale.cc: Take out platform-specific hacks.
3721 * config/linux/ctype.cc: Put here.
3722 * config/solaris/ctype.cc: Put here.
3723 * config/default/ctype.cc: Put here.
3725 * bits/locale_facets.h: Take out platform-specific hacks.
3726 * config/linux/bits/ctype_base.h: Put here.
3727 * config/solaris/bits/ctype_base.h: Put here.
3728 * config/default/bits/ctype_base.h: Put here.
3730 * configure.in: Bump version.
3731 Add tests for top-level config directory.
3732 * configure: Regenerated.
3733 * src/Makefile.am (INCLUDES): Add platform-specific dir.
3734 * src/Makefile: Regenerate.
3736 1999-12-19 Benjamin Kosnik <bkoz@cygnus.com>
3737 Ulrich Drepper <drepper@cygnus.com>
3739 * bits/locale_facets.h: Hack in solaris support.
3740 * src/locale.cc: Here too.
3742 1999-12-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3744 * docs/17_intro/TODO: Update
3745 * docs/17_intro/RELEASE-NOTES (New): Update.
3747 1999-12-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
3749 * bits/c++config.h.in (__GLIBCPP__): Bump.
3750 * docs/17_intro/RELEASE-NOTES: Update, Gaby please add your stuff.
3751 * docs/17_intro/TODO: Update.
3753 * bits/locale_facets.h: Touch this too.
3754 * bits/localefwd.h: Add typedefs for loooooong vector names.
3755 * bits/locale_facets.tcc (locale::operator()): Need parens.
3756 (has_facet): Simplify.
3757 * src/locale-inst.cc: Add instantiations.
3758 * src/locale.cc: Tweaks.
3760 * bits/std_streambuf.h: Move indeterminates into. .
3761 * bits/std_fstream.h: Here.
3762 * bits/fstream.tcc (underflow): Rewind just for ios_base::out
3764 * bits/sstream.tcc: Very minor formatting tweaks.
3765 * bits/std_streambuf.h (_M_set_determinate): If exclusively an
3766 input buffer, set _M_buf to offset.
3767 * bits/istream.tcc (std): Tweaks.
3768 * testsuite/27_io/istream_unformatted.cc (test05): More tweaks,
3770 * testsuite/27_io/filebuf.cc: Tweaks.
3772 1999-12-17 Phil Edwards <pedwards@jaj.com>
3774 * configure.in: Add OPTLEVEL, -O2 for gcc 2.96+, nothing otherwise.
3775 * configure: Regenerate.
3776 * src/Makefile.am: Use OPTLEVEL in CXXFLAGS.
3777 * src/Makefile.in: Regenerate. Also picks up OTHER_CXXFLAGS rename
3778 to OPTIMIZE_CXXFLAGS from a previous revision (1.96) to Makefile.am.
3780 1999-12-17 Phil Edwards <pedwards@jaj.com>
3782 * docs/21_strings/stringtok_std_h.txt: New algorithm
3783 suggested by Chris King.
3784 * docs/21_strings/howto.html: Link to new version.
3786 1999-12-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3788 * bits/valarray_array.h (__valarray_sum): Use operator+=, not
3790 * docs/17_intro/TODO: Update.
3792 1999-12-15 Phil Edwards <pme@sourceware.cygnus.com>
3794 * docs/gentop/footchunk.html: Updated, fixed CRLFs.
3795 * docs/gentop/gentop: Ditto.
3796 * docs/gentop/headchunk.html: Ditto.
3797 * docs/*.html: Regenerated from gentop.
3798 * docs/*/howto.html: Updated as test.
3799 * docs/faq/index.html: Updated, fixed CRLFs.
3800 * docs/faq/index.txt: Regenerated.
3802 1999-12-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3804 * mknumeric_limits (OUT_C): restart only if $OUT_C is present.
3806 * bits/std_complex.h
3807 (complex<float>::complex(const complex<double>&),
3808 complex<float>::complex(const complex<long double>&)): Define.
3810 * docs/17_intro/TODO: Update.
3812 1999-12-13 Benjamin Kosnik <bkoz@cygnus.com>
3814 * bits/istream.tcc (seekg): Don't set _M_gcount.
3816 * bits/fstream.tcc (filebuf::underflow): Re-sync
3817 external byte sequence's input buffer only. . .
3818 * testsuite/27_io/istream_unformatted.cc (test04): New tests for
3819 tellg, seekg and filebufs.
3820 (test05): Same for stringbufs.
3821 * testsuite/27_io/istream_unformatted-2.tst: New file.
3822 * testsuite/27_io/istream_unformatted-1.tst: New file.
3823 * testsuite/27_io/istream_unformatted-1.txt: New file.
3824 * testsuite/21_strings/inserters_extractors.cc (test05): Change
3827 1999-12-13 Phil Edwards <pedwards@jaj.com>
3829 * docs/gentop/*: New directory, containing bits for the homepages.
3830 * docs/*.html: Regenerated from gentop.
3831 * docs/*/*.html: Entries added and regenerated.
3833 1999-12-13 Benjamin Kosnik <bkoz@gnu.org>
3835 Efforts to get -O2 to work with -Winline -Werrors.
3836 * bits/valarray_array.h (__valarray_fill(_Tp*, size_t, const
3837 _Tp&): Remove inline declaration, as cannot be inlined and
3838 -Winline -Werror complains. An interesting question is why this
3839 cannot be inlined, as I can see no real reason to disqualify it.
3840 (__valarray_product(const _Tp*, const _Tp*)): Same here.
3841 * bits/std_valarray.h (valarray::operator[](size_t)): Same here.
3843 * docs/17_intro/TODO: Update.
3845 1999-12-12 Benjamin Kosnik <bkoz@gnu.org>
3847 * bits/std_fstream.h (seekpos): Tweaks, fixes. Move definition to
3849 * bits/basic_file.h (filepos_cur()): Make pointers themselves be
3850 the resultant position.
3851 * bits/fstream.tcc (seekoff): Explicitly set return value to
3852 resultant external byte sequence position, not value returned from
3853 _M_file->seekoff. Need to make
3854 (seekpos): New definition.
3856 * bits/istream.tcc (seekg): As per Library Issues List 136, set to
3857 just istream. Necessary, or else tellg will give an invalid stream
3858 position, but seekg will return a valid stream position, which is
3859 not groovy: see testcase addition.
3860 * bits/ostream.tcc (seekp): Same.
3862 * bits/streambuf.tcc (_S_copy_streambufs): Simplify.
3863 * bits/sstream.tcc: Tweaks.
3864 * bits/locale_facets.tcc: Tweaks.
3865 (num_put::do_put(iter_type, ios_base, char_type, const void*)):
3866 Re-write in a way that is easier for the inliner to work with.
3867 * bits/ios_base.h: Use explicit static_cast<int>(...) notation.
3869 1999-12-10 Benjamin Kosnik <bkoz@cygnus.com>
3871 * bits/locale_facets.tcc: Tweaks.
3872 * bits/locale_facets.h (use_facet): Can't inline, remove inline
3874 * bits/localefwd.h: And here.
3875 * bits/std_ostream.h: Tweaks, sentry ctor can't be inlined.
3876 * bits/ostream.tcc: Put here.
3878 Frank Ch. Eigler <fche@cygnus.com>
3879 * src/Makefile.am: Adjust CXXFLAGS, add AM_CXXFLAGS.
3881 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
3883 * bits/sstream.tcc (stringbuf::seekoff): Long overdue revamp. Make
3884 in and out buffers update independantly.
3886 * bits/basic_ios.h: Minor formatting.
3887 * bits/fstream.tcc (std): Fix indentation.
3889 1999-12-08 Chip Salzenberg <chip@valinux.com>
3891 * bits/char_traits.h (char_traits<>): Move not_eof() functions
3892 after corresponding eof() functions, so they're easier for the
3894 * bits/locale_facets.h (money_base::__default_pattern): Move
3895 static variable out of inline functions.
3896 (_Moneypunct<>::do_{pos,neg}_format): Use it.
3897 * src/locale-inst.cc (money_base::__default_pattern): Define it.
3899 1999-12-08 Benjamin Kosnik <bkoz@cygnus.com>
3901 * bits/std_fstream.h (filebuf::open): Tweak.
3902 * bits/fstream.tcc (filebuf::seekoff): Simplify, fix.
3903 * bits/std_ios.h: Minor tweaks for headers.
3905 1999-12-06 Benjamin Kosnik <bkoz@gnu.org>
3907 * bits/c++config.h.in (_GLIBCPP_FULLY_COMPLIANT_HEADERS): New macro.
3908 * src/string-inst.cc: Add guards . . .
3909 * src/misc-inst.cc: And here.
3910 * bits/std_sstream.h: And here.
3911 * bits/std_fstream.h: And here.
3912 * bits/std_streambuf.h: And here.
3913 * bits/std_istream.h: And here.
3914 * bits/std_ostream.h: And here.
3916 1999-12-06 Scott Snyder <snyder@fnal.gov>
3918 * bits/istream.tcc (basic_istream::read): Try to handle __n == 0
3920 (basic_istream::readsome): And here as well.
3921 * testsuite/27_io/istream_unformatted.cc: Test a zero-length
3924 1999-12-06 Mumit Khan <khan@xraylith.wisc.edu>
3926 * bits/istream.tcc (basic_istream::ignore): streamsize is not
3927 necessarily an `int'.
3929 1999-12-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
3931 * mknumeric_limits: Don't use $CXXFLAGS when building
3932 gen-num-limits. It's definitely wrong to use it since $CXXFLAGS
3933 generally instructs the compiler not to emit template
3934 instantiations and we end up with undefined symbols. Sigh.
3936 1999-12-05 Benjamin Kosnik <bkoz@gnu.org>
3938 * bits/locale_facets.tcc: Tweak.
3939 (_S_format_long): Adjust showpos formatting for hex and oct.
3940 * bits/std_ostream.h (operator<<(short)): Correctly deal with hex
3941 and oct by formatting as unsigned.
3942 (operator<<(int)): Same here.
3943 * bits/ostream.tcc (operator<<(long)): Same.
3944 (operator<<(long long)): Same.
3945 (_S_pad_char): Actually treat ios_base::internal as something
3946 worth doing correctly. Remove const designation on ios argument.
3947 * testsuite/27_io/ios_manip_basefield.cc (test02): Add tests.
3948 * testsuite/27_io/ostream_inserter_arith.cc (test03): Add tests.
3950 1999-12-04 Benjamin Kosnik <bkoz@gnu.org>
3952 * bits/std_sstream.h (streambuf::underflow): Check for mode == in.
3954 1999-12-03 Benjamin Kosnik <bkoz@gnu.org>
3956 * bits/locale_facets.tcc (num_put::do_put(bool): Fix.
3958 * bits/sstream.tcc (streambuf::seekoff): Add parens.
3959 * bits/istream.tcc (istream::get(sb)): Handle exceptional events.
3960 (operator>>(istream, _CharT*)): Change streamsize to int_type.
3961 (operator>>(istream, _CharT&)): Fix typedef'd type to be _CharT.
3962 * bits/ostream.tcc (ostream::operator<<(const char*)): Stub out
3964 (ostream::operator<<(_CharT)): Fix.
3966 * bits/std_sstream.h: Temporarily disable including sstream.tcc to
3967 see if this will increase compile speed.
3968 * bits/std_ostream.h: Likewise. . .
3969 * bits/std_istream.h: And here.
3970 * bits/std_fstream.h: And here.
3971 * src/misc-inst.cc: Add relevant header file includes for
3972 instantiation purposes.
3973 * src/string-inst.cc: And here.
3974 * testsuite/27_io/ostream_inserter_arith.cc: Add test case.
3976 1999-12-02 Benjamin Kosnik <bkoz@gnu.org>
3978 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
3979 * bits/istream.tcc (get(streambuf)): More fixes.
3980 (istream::ignore): Get specific about numeric_limits<int>::max()
3983 * bits/fstream.tcc (filebuf::open): Tweaks for _M_last_overflowed.
3984 (filebuf::close): Same.
3985 * testsuite/27_io/filebuf.cc: Add tests for ios_base::ate.
3987 1999-12-01 Phil Edwards <pedwards@jaj.com>
3989 * mkcheck: Support for compilation/execution timing.
3990 * testsuite/printnow.c: New file.
3992 1999-12-01 Phil Edwards <pedwards@jaj.com>
3994 * bits/std_cwchar.h: Test for _GLIBCPP_USE_WCHAR_T.
3995 * configure.in: Test for presence of wchar.h before testing
3996 for any of its features.
3997 * configure: Regenerate.
3999 1999-11-30 Benjamin Kosnik <bkoz@gnu.org>
4001 Preliminary istream validations complete.
4002 * bits/istream.tcc (istream::getline): Fixes. Tweaks to make
4003 formatting more consistent. Removal of if-statements inside of for
4008 * bits/std_istream.h: Same.
4009 * bits/sstream.tcc (stringbuf::pbackfail): Fix.
4010 * testsuite/27_io/stringbuf.cc: Tweak.
4011 * testsuite/27_io/istream_unformatted.cc (test02): Mo' tests.
4013 * bits/ostream.tcc (ostream::operator<<(arith)): Set badbit, not
4014 failbit on failure, as per 27.6.2.5.2.
4016 * stl/bits/std_vector.h: Allow bool specializations. Should move
4017 ext/std_bvector to bits, not ext, maybe.
4019 1999-11-30 Mumit Khan <khan@xraylith.wisc.edu>
4021 * configure.in: Fix checks for mbstate_t and WCHAR_MIN/MAX.
4022 * configure: Regenerate.
4024 999-11-29 Benjamin Kosnik <bkoz@gnu.org>
4026 * bits/istream.tcc (get(streambuf, char)): Fix.
4027 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
4029 1999-11-29 Scott Snyder <snyder@fnal.gov>
4031 * bits/basic_string.h (append(const _Char*, size_type)): The
4032 length of the appended string is given exactly by the second arg,
4033 regardless of the data in the character array.
4034 * bits/string.tcc (basic_string(const _CharT*, size_type, const
4035 _Alloc&)): Likewise.
4036 * testsuite/21_strings/append.cc (test01): Remove erroneous test
4037 of basic_string::append.
4039 1999-11-29 Chip Salzenberg <chip@valinux.com>
4041 * Makefile.in: Tweaks for CXXFLAGS.
4042 * */Makefile.in: Same.
4044 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
4046 * conficd bgure.in: Check for wide character support.
4047 * bits/c++config.h.in (_GLIBC_USE_WCHAR_T): Move from here ...
4048 * acconfig.h (_GLIBC_USE_WCHAR_T): to here.
4049 * bits/string.tcc (wstring::_S_find): Guard wchar_t specialization.
4051 1999-11-29 Mumit Khan <khan@xraylith.wisc.edu>
4053 * acinclude.m4: Fix typo.
4054 * src/complex.cc: Fix macro line continuation.
4056 1999-11-29 Petter Urkedal <petter@matfys.lth.se>
4058 * src/Makefile.am (CXXFLAGS): Add -Wno-format to allow non-
4059 string literals in format, as used in locale-facets.tcc.
4061 1999-11-28 Benjamin Kosnik <bkoz@gnu.org>
4063 * testsuite/27_io/istream_unformatted.cc (test03): Add tests.
4064 * bits/istream.tcc (istream::get): Extract to argument minus one.
4065 Various tweaks and fixes.
4067 1999-11-22 Mumit Khan <khan@xraylith.wisc.edu>
4069 * bits/locale_facets.tcc: Workaround for compiler crash on
4072 1999-11-21 Mumit Khan <khan@xraylith.wisc.edu>
4074 * acinclude.m4: New file. New _GLIBCPP_CHECK_FLOAT_SUPPORT macro.
4075 * configure.in: Use.
4076 * acconfig.h: New _GLIBCPP_BUGGY_FLOAT_COMPLEX macro.
4077 * src/complexf.cc: New _GLIBCPP_FLOAT_SPECIALIZATION macro.
4078 * bits/std_complex.h: Use.
4079 * src/complex.cc: Use.
4081 1999-11-19 Mumit Khan <khan@xraylith.wisc.edu>
4083 * testsuite/18_support/numeric_limits.cc: Add missing std:: prefix.
4084 * testsuite/21_strings/inserters_extractors.cc: Likewise.
4085 * testsuite/22_locale/ctype.cc: Likewise.
4086 * testsuite/23_containers/multiset.cc: Likewise.
4087 * testsuite/23_containers/vector_ctor.cc: Likewise.
4088 * testsuite/26_numerics/binary_closure.cc: Likewise.
4089 * testsuite/27_io/fpos.cc: Likewise.
4090 * testsuite/27_io/ios_base_callbacks.cc: Likewise.
4091 * testsuite/27_io/istream_extractor_arith.cc: Likewise.
4092 * testsuite/27_io/istream_extractor_char.cc: Likewise.
4093 * testsuite/27_io/istream_extractor_other.cc: Likewise.
4094 * testsuite/27_io/istream_sentry.cc: Likewise.
4095 * testsuite/27_io/ostream_inserter_char.cc: Likewise.
4096 * testsuite/27_io/ostream_inserter_other.cc: Likewise.
4097 * testsuite/27_io/streambuf.cc: Likewise.
4098 * testsuite/27_io/stringstream.cc: Likewise.
4100 1999-11-19 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4102 * bits/valarray_meta.h: Don't forget to define tanh
4104 1999-11-18 Philip Martin <pm@corris.dircon.co.uk>
4106 * src/stl-inst.cc: Use typedef to refer to iterator
4107 * stl/bits/stl_algobase.h: Add traits based dispatch for
4108 __normal_iterator in the copy()algorithm
4109 * stl/bits/type_traits.h: Add _Is_normal_iterator trait support
4111 1999-11-18 Kevin Ediger <kediger@licor.com>
4113 * src/locale.cc (locale::_Imp::_Imp): Use auto_ptr to make
4114 constructors for locale::_Impl exception safe.
4116 1999-11-18 Scott Snyder <snyder@fnal.gov>
4118 * stl/bits/stl_queue.h: The C++ standard gives the default for the
4119 _Sequence template argument of priority_queue<> as vector<>, not
4122 1999-11-18 Benjamin Kosnik <bkoz@gnu.org>
4124 * bits/std_sstream.h (stringbuf::_M_really_sync): Add __iend as a
4126 * bits/sstream.tcc: Adjust here too.
4128 1999-11-17 Benjamin Kosnik <bkoz@gnu.org>
4130 * bits/sbuf_iter.h (istreambuf_iter::equal): Tweak.
4131 * bits/istream.tcc (operator>>): Replace iostate(0) with
4132 iostate(ios_base::goodbit), which is the same thing, but hopefully
4134 * bits/locale_facets.tcc (do_get(bool)): Streamline, deal with
4135 libraries issue list 17.
4136 (do_gets): Don't set goodbit explicitly, instead only set on
4137 failures as good bit is the default setting.
4138 * bits/ios_base.h (setf): Set correctly.
4139 * bits/fstream.tcc: Tweak.
4140 * bits/std_sstream.h (_M_really_sync): Fix ibuffer positioning for
4141 in|out bufs that are empty. . .
4142 * testsuite/27_io/istream_extractor_arith.cc (test03): Add.
4144 1999-11-16 Benjamin Kosnik <bkoz@gnu.org>
4146 * testsuite/27_io/streambuf.cc (class testbuf): Don't set _M_buf_size.
4147 * bits/std_streambuf.h (setp): Set _M_buf_size, _M_mode.
4148 Add comments "all about _M_buf."
4149 (setg): Set _M_mode.
4151 1999-11-16 Kevin Ediger <kediger@licor.com>
4153 * bits/locale_facets.tcc (_S_build_float_format): New function.
4154 (_S_output_float): New function.
4155 (num_put::do_put(double)): Use 'em.
4156 (num_put::do_put(long double)): Use 'em.
4157 * testsuite/27_io/ostream_inserter_arith.cc: New file.
4159 1999-11-15 Scott Snyder <snyder@fnal.gov>
4161 * bits/basic_file.h: Type of __off parm should be __c_streampos, to
4162 match how libio is calling us.
4163 * src/basic_file.cc (sys_seek): Likewise.
4164 * bits/std_fstream.h (basic_filebuf::sync): Restore sync call.
4166 1999-11-15 Benjamin Kosnik <bkoz@gnu.org>
4168 * docs/17_intro/contribute.html: Add link to assignment form.
4169 * docs/17_intro/libstdc++-assign.txt: New file.
4171 * mkcheck (TESTS_FILE): Move a copy of test files as well as
4174 * bits/std_streambuf.h (_M_buf_bump): New function.
4175 * bits/streambuf.tcc: Mods to support _M_buf_bump.
4176 (xsputn): Here. Also add checks for output valid.
4177 (xsgetn): Add checks for input valid.
4179 (sgetc): Set _M_in_end to _M_buf + _M_buf_end.
4180 * bits/std_sstream.h (_M_really_sync): Set _M_buf.
4181 Set _M_out_end to variable-length-end.
4182 * bits/sstream.tcc (overflow): Use _M_buf_bump.
4185 * bits/fstream.tcc (std): Tweak formatting.
4186 (filebuf::overflow): Simplify.
4187 (filebuf::showmanyc): Same.
4188 (filebuf::underflow): Same.
4189 * testsuite/27_io/filebuf.cc: Fix.
4190 * testsuite/27_io/ostream_inserter_other.cc: Fix.
4191 * testsuite/27_io/ostream_inserter_other-2.tst: New file.
4192 * testsuite/27_io/stringbuf.cc: Tweak.
4193 * testsuite/27_io/streambuf.cc: Tweak.
4194 * testsuite/27_io/istream_extractor_other.cc: Fix.
4196 1999-11-11 Matthias Klose <doko@cs.tu-berlin.de>
4198 * stl_deque.h: Use static_casts<size_type>(signed_type).
4200 1999-11-11 Benjamin Kosnik <bkoz@gnu.org>
4202 Cleanups for callbacks, more regression hunting. Remaining
4203 failures (1) due to last unresolved stringstream issues, not
4205 * bits/std_fstream.h: Revert. Disable call to _M_file->sync as
4206 killing 27_io/filebuf.cc tests. . . need another solution.
4208 * bits/streambuf.tcc (_S_copy_streambufs): Fix.
4209 * testsuite/27_io/istream_extractor_other.cc: Tweak comments.
4211 * bits/basic_ios.h: Add cached facets here. UGH. The standard
4212 foils all attempts at a graceful, minimal implementation.
4213 * bits/basic_ios.tcc: Tweaks.
4214 * bits/istream.tcc: Fix.
4215 * bits/ostream.tcc: Fix.
4216 * bits/std_istream.h: Fix.
4217 * bits/std_ostream.h: Fix.
4218 * src/ios.cc (ios_base::imbue): Set _M_locale_ios before calling
4220 * bits/locale_facets.tcc (std): Minor, minor formatting tweak.
4221 (_S_pad_numeric): Make comprehensible.
4223 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
4225 * bits/std_ostream.h: Add callbacks for _M_fnumput.
4226 (_S_ostream_fcache): New function.
4227 Move functions out-of-line.
4228 * bits/ostream.tcc: Put here.
4230 * bits/std_istream.h: Add callbacks for _M_fnumget.
4231 (_S_istream_fcache): New function.
4232 Move functions out-of-line.
4233 * bits/istream.tcc: Put here.
4235 * bits/basic_ios.tcc (basic_ios::imbue): Tweaks, remove call to
4236 _M_call_callbacks(), as ios_base::imbue does this already.
4237 * src/ios.cc (register_callback): Clean.
4238 (_M_call_callbacks): Same.
4239 * bits/ios_base.h: Callback work.
4240 * testsuite/27_io/ios_base_callbacks.cc (test01): New file.
4242 1999-11-10 Benjamin Kosnik <bkoz@cygnus.com>
4243 Matthias Klose <doko@cs.tu-berlin.de>
4245 * stl/ext/stl_rope.h: Fix initialization order.
4247 1999-11-09 Scott Snyder <snyder@fnal.gov>
4249 * bits/std_fstream.h (basic_filebuf::sync): Unconditionally call
4250 _M_file->sync() so that redirection works correctly.
4252 1999-11-09 Benjamin Kosnik <bkoz@gnu.org>
4254 * bits/istream.tcc: Re-order.
4255 * bits/std_istream.h: Fix getline problems.
4256 * testsuite/27_io/istream_unformatted.cc: New tests.
4258 Clean up regressions.
4259 * bits/std_sstream.h: Set initial stringbufs correctly.
4261 1999-11-09 Scott Snyder <snyder@fnal.gov>
4263 * stl_vector.h (_M_range_insert): Fix mixing pointers and
4265 * testsuite/23_containers/vector_modifiers.cc (test01): New file,
4268 1999-11-09 Benjamin Kosnik <bkoz@cygnus.com>
4270 * src/Makefile.am (CXXFLAGS): Add -Winline.
4271 * src/Makefile.in: Regenerate.
4273 1999-11-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4275 * bits/valarray_meta.h (_DEFINE_EXPR_UNARY_FUNCTION): When
4276 building meta-expressions don't forget to take the contained
4279 1999-11-02 Benjamin Kosnik <benjamin@cygnus.com>
4281 * configure: Regenerate.
4283 1999-11-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4285 * bits/valarray_meta.h (_Expr<>::sum): Tweak. Use copy-initialization
4287 * bits/valarray_meta.h (min): Likewise.
4288 * bits/valarray_meta.h (max): Likewise.
4290 1999-11-01 Benjamin Kosnik <bkoz@cygnus.com>
4292 * bits/std_sstream.h (_M_really_sync): Take into account in | out bufs.
4293 * bits/std_streambuf.h (_S_copy_streambufs): New function.
4294 * bits/streambuf.tcc: Define.
4295 * bits/istream.tcc (istream::operator>>(streambuf)): Rewrite.
4296 * bits/ostream.tcc (ostream::operator<<(streambuf)): Rewrite.
4297 * testsuite/27_io/ostream_inserter_other.cc: Add tests.
4298 * testsuite/27_io/ostream_inserter_other-1.tst: New file.
4300 * bits/basic_string.h: Explicitly cast npos to unsigned type,
4301 reported by Richard Atterer.
4302 * bits/char_traits.h: For consistency's sake, here too.
4304 * configure.in: Bump version to 2.90.7.
4306 1999-10-31 Benjamin Kosnik <bkoz@cygnus.com>
4308 * testsuite/27_io/ostream_inserter_char-1.tst: Check file output.
4309 * testsuite/27_io/ostream_inserter_char.cc (test05, test01): Add tests.
4310 * bits/streambuf.tcc (xsputn): Treat--size const char for long loops.
4312 * bits/sstream.tcc (seekpos): Tricks, mostly: check _M_mode before
4313 writing into buffer.
4316 1999-10-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4318 * bits/valarray_array.h (__valarray_sum): New function.
4319 * bits/valarray_array.h (__valarray_product): Same.
4321 * bits/std_valarray.h (valarray<T>::product): Comment out.
4322 * bits/std_valarray.h (valarray<T>::sum): Use __valarray_sum
4323 instead of accumulate.
4325 * src/valarray-inst.cc: Remove explicit intantiation of
4326 class multiplies<size_t>, accumulate, valarray<size_t>::product.
4327 * src/valarray-inst.cc (__valarray_product): Instantiate
4329 * src/valarray-inst.cc (__valarray_product(const
4330 valarray<size_t>&)): New function.
4331 * src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't use
4332 valarray<size_t>::product. Use __valarray_product instead.
4335 1999-10-25 Benjamin Kosnik <bkoz@cygnus.com>
4337 * bits/std_ostream.h (ostream.inserters.char): Correctly pad output.
4338 (_S_pad_char): New function. Not done: ios_base::internal.
4339 * bits/ostream.tcc: Clean for above.
4340 * bits/locale_facets.tcc (_S_fill): Remove ostreambufiterator
4341 specialization that was commented out, as ostreams now have to
4342 correctly deal with padding.
4343 * testsuite/27_io/ostream_inserter_char.cc (main): Add tests.
4345 * testsuite/21_strings/ctor_copy_dtor.cc(test02): Add test case
4346 from mailing list. This is a bug, and should be fixed.
4347 * testsuite/21_strings/inserters_extractors.cc (main): Tweak, fix typo.
4349 1999-10-22 Petter Urkedal <petter@matfys.lth.se>
4351 * stl/bits/stl_numeric.h (__power): Replaced argument name `__opr'
4352 to avoid conflict with gcc name mangling.
4353 * stl/bits/stl_algo.h (__transform): Same.
4355 1999-10-21 Benjamin Kosnik <bkoz@cygnus.com>
4357 * bits/ios_base.h: Change argument names.
4358 * docs/17_intro/BADNAMES: Add __opr.
4360 1999-10-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4362 Work on compilation slowdowns from 10-5 to 10-12, which are
4363 related to the _Callback_list inlining/merge-ifcation, which is
4364 still a pending issue, but this stuff is necessary cleanup anyway.
4366 * src/ios.cc: Re-arrange.
4367 * bits/ios_base.h: Tweak.
4368 * bits/basic_ios.tcc: Move out of line definitions here, move
4369 small out-of-line definitions inline.
4370 * bits/basic_ios.h: From here.
4372 * bits/streambuf.tcc (pbackfail, overflow): Move back inline.
4373 * bits/std_streambuf.h: From here.
4375 1999-10-19 Benjamin Kosnik <bkoz@cygnus.com>
4377 * testsuite/27_io/istream_extractor_char.cc: Add tests.
4378 * bits/std_istream.h: Tweaks--set eofbit on eof condition.
4379 * bits/istream.tcc (operator>>(istream&, string&): Remove
4380 vestigial issspace hacks and use ctype::is instead.
4381 (getline): Remove unnecessary loops, fortify and pasteurize.
4384 1999-10-18 Benjamin Kosnik <bkoz@cygnus.com>
4386 * bits/istream.tcc (operator>>): Tweak.
4387 * bits/std_istream.h: Fix according to library issues list 68.
4390 * bits/locale_facets.h: Fix table_size to be non-zero.
4392 1999-10-18 Vadim Egorov <egorovv@HotPOP.com>
4394 * src/basic_file.cc: ifdef instead of comment for binary mode
4396 1999-10-18 Russell Davidson <russell@qed.econ.queensu.ca>
4398 * bits/std_sstream.h: Stringbuf initialization based on actual,
4399 not allocated, size.
4400 * testsuite/21_strings/inserters_extractors.cc (test06): Add test
4403 1999-10-17 Benjamin Kosnik <bkoz@cygnus.com>
4405 * testsuite/26_numerics/c_math.cc (test03): Tweak.
4406 * testsuite/27_io/istream_manip.cc (test01): Corrections due to
4408 * testsuite/21_strings/inserters_extractors.cc (test01): Same.
4410 1999-10-14 Benjamin Kosnik <bkoz@cygnus.com>
4412 * bits/std_istream.h: Tweaks.
4413 * bits/istream.tcc (istream::sentry::sentry()): Simplify, correct
4414 as per issues list addition--set failbit, eof on empty buffers.
4415 * testsuite/27_io/istream_sentry.cc: New file.
4417 1999-10-12 Chris Prince <prince@wcug.wwu.edu>
4419 * bits/std_cstdio.h: Remove Solaris hacks.
4421 1999-10-12 Phil Edwards <philip.edwards@sn.wpafb.af.mil>
4423 * docs/index.html: Fix minor typos and tweaks.
4424 * docs/17_intro/contribute.html: Ditto.
4425 * docs/*/howto.html: Ditto. More "EGCS"->"GCC" conversion, notes on
4426 thread safety and binary I/O, links to external sites.
4427 * docs/faq/index.html: EGCS/GCC cleanup, new entries for Cygwin
4430 1999-10-12 Petter Urkedal <petter@matfys.lth.se>
4432 * bits/std_cmath.h (abs(float)): When ::absf is not present, call
4433 ::fabs(double) rather than ::abs(int).
4435 1999-10-11 Benjamin Kosnik <bkoz@milou.cygnus.com>
4437 * bits/std_streambuf.h: Fix minor blip--should explicitly return
4438 *gptr(), not the result of underflow.
4439 (pbackfail): Conform to default behavior.
4441 * bits/streambuf.tcc: Add out-of-line streambuf members.
4444 * testsuite/27_io/streambuf.cc: New file.
4445 * testsuite/27_io/filebuf.cc: Correct test.
4447 1999-10-08 Benjamin Kosnik <bkoz@haight.constant.com>
4449 * bits/std_cmath.h: Correctly cast int to double.
4450 * testsuite/26_numerics/c_math.cc: Add test.
4452 * mknumeric_limits (OUT_C): Tweaks.
4453 * src/gen-num-limits.cc: Checks for WCHAR_MIN, WCHAR_MAX before
4454 trying to instantiate type_traits<wchar_t>.
4455 * acconfig.h: Add _GLIBCPP_HAS_WCHAR_MIN_MAX.
4456 * configure.in (LIBS): Plus checks for WCHAR_MIN, WCHAR_MAX.
4457 * configure: Regenerate.
4459 1999-10-06 Benjamin Kosnik <bkoz@milou.cygnus.com>
4461 * bits/streambuf.tcc (streambuf::xsgetn): Rewrite.
4462 (streambuf::xsputn): Put in break.
4463 Aiming for parity between these two (mostly) similar functions.
4464 Need to re-write tests.
4466 * bits/ios_base.h (ios_base::_M_copy_base): Remove declaration.
4467 Make data members protected, not private.
4468 * src/ios.cc (ios_base::_M_copy_base): Move _Callback_list into
4469 ios_base.h. As called only once, collapse into . . .
4470 * bits/basic_ios.h (basic_ios::copyfmt): Fix.
4471 (basic_ios::clear): Throw ios_base::failure on occasion.
4472 (basic_ios::exceptions): Fix.
4473 * testsuite/27_io/ios_members.cc (test02): Add tests.
4475 * bits/fpos.h: Default initialize.
4476 * testsuite/27_io/fpos.cc (test03): Add test.
4478 1999-10-04 Russell Davidson <russell@qed.econ.queensu.ca>
4480 * src/basic_file.cc: Fix open modes.
4482 1999-10-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4484 * bits/locale_facets.tcc (num_get<>::do_get): Fix typo.
4486 1999-09-23 Benjamin Kosnik <bkoz@milou.cygnus.com>
4488 * bits/streambuf.tcc: Yea. Fix this for real.
4489 * testsuite/27_io/ostream_inserter_other.cc: Add file.
4490 * src/Makefile.*: Regenerate.
4492 1999-09-22 Benjamin Kosnik <bkoz@milou.cygnus.com>
4494 * bits/std_cstdlib.h: Add more linux-specif hacks to the header
4495 files so that stdtof and strtold will be declared. Some hacks
4496 already exits in bits/std_cctype.h -- these should all be removed
4498 * bits/locale_facets.tcc: Add cstring.h include.
4499 _S_format_long: Use long, not int.
4500 Add std_limits.h include, for numeric_limits.
4501 * testsuite/27_io/istream.cc: Make instantiations work when using
4503 * testsuite/27_io/ostream.cc: Same.
4505 1999-09-21 Benjamin Kosnik <bkoz@milou.cygnus.com>
4507 * bits/fpos.h (fpos::operator streamoff): Make const, don't return
4508 a reference. Same for operators == and !=.
4509 * testsuite/27_io/fpos.cc: Add tests.
4511 1999-09-21 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4513 * bits/valarray_array.h: Fix typo.
4515 * mknumeric_limits: Make sure we are regenerating things from
4516 scratch. Otherwise things get redefined. Not good.
4518 1999-09-20 Benjamin Kosnik <bkoz@milou.cygnus.com>
4520 * bits/std_ostream.h: Fix typo.
4521 * bits/std_istream.h: Same.
4522 * bits/std_iomanip.h: Same.
4524 * bits/istream.tcc (sentry::sentry()): Remove optional tie with
4525 ostream, as happens with underflow anyway.
4526 * testsuite/27_io/istream.cc (main): New file.
4527 * testsuite/27_io/ostream.cc (main): New file.
4528 * testsuite/27_io/istream_unformatted.cc: Add tests.
4530 * src/Makefile.am (headers): Add new file.
4531 * src/Makefile.in (headers): Regenerated.
4533 * bits/basic_ios.h: Remove local-related files.
4534 * bits/basic_ios.tcc: New file, add locale-related items.
4535 * src/misc-inst.cc: Add include of basic_ios.tcc, as a hack for now.
4536 * testsuite/27_io/ios_members_static.cc: Change to
4537 * testsuite/27_io/ios_base_members_static.cc: This.
4538 * testsuite/27_io/ios_members.cc: New file.
4539 * testsuite/27_io/stdios_basefield_manip: Change to
4540 * testsuite/27_io/ios_manip_basefield.cc: This.
4541 * testsuite/27_io/stdios_fmtflags_manip: Change to
4542 * testsuite/27_io/ios_manip_fmtflags.cc: This.
4544 * bits/fpos.h: Fix discarding qualifiers on this when
4545 using _M_position with a const fpos.
4546 * bits/std_iosfwd.h: Tweak.
4547 * testsuite/27_io/fpos.cc: New file.
4549 1999-09-17 Benjamin Kosnik <bkoz@milou.cygnus.com>
4551 * bits/streambuf.tcc (streambuf::xsputn): Tweak.
4552 * bits/ostream.tcc: Tweak.
4553 * testsuite/21_strings/inserters_extractors.cc (test04, test05):
4554 Add new regressions.
4556 1999-09-16 Benjamin Kosnik <bkoz@milou.cygnus.com>
4558 * bits/basic_ios.h: Inline, tweak.
4559 * bits/fstream.tcc (basic_filebuf::_M_really_overflow): Tweak,
4560 pass back accurate return value to basic_filebuf::overflow.
4561 * bits/streambuf.tcc (streambuf::xsputn): Fix overflow accounting.
4562 This fixes sstream problems reported in libstdc++/9, but screws up
4563 filebufs. That solution is pending.
4565 1999-09-15 Vadim Egorov <egorovv@1c.ru>
4567 * bits/streambuf.tcc (basic_streambuf::xsputn): Add check for
4569 * testsuite/21_strings/inserters_extractors.cc (test01): Add test.
4571 1999-09-08 Benjamin Kosnik <bkoz@milou.cygnus.com>
4573 * bits/c++config.h.in: Add emacs hints.
4575 * stl/bits/stl_range_errors.h: Don't define here, for now define
4576 in stdexcept.cc along with string inlines __length_error, etc.
4577 * src/stdexcept.cc: Define here.
4578 * stl/bits/stl_config.h (__STL_CAN_THROW_RANGE_ERRORS): Enable, so
4579 at(size_t) will be declared/defined.
4580 (__STL_THREADS): Fix mess surrounding use of this, enable.
4582 1999-08-31 Benjamin Kosnik <bkoz@milou.cygnus.com>
4584 * testsuite/27_io/istream_extractor_arith.cc: Fix.
4585 * src/localename.cc: Tweak formatting, fix assignment to
4586 const compiler errors.
4588 1999-08-25 Benjamin Kosnik <bkoz@cygnus.com>
4590 * acconfig.h: Add absf, cosf.
4591 * configure.in (use_builtin_sinf): Same.
4592 * configure: Regenerate.
4593 * bits/std_cmath.h: Add mess of defines.
4594 * testsuite/26_numerics/modf_float.cc: Change to
4595 * testsuite/26_numerics/c_math.cc: This.
4597 * src/locale.cc: Change.
4598 * bits/locale_facets.h: Fix.
4599 * testsuite/22_locale/ctype.cc: Add temporary tests.
4601 1999-08-24 Benjamin Kosnik <bkoz@cygnus.com>
4603 * bits/fpos.h: Test.
4605 * docs/index.html: Add powerpc-linux-gnu results with gcc-2.95.1.
4606 Fix database name for "libstdc++".
4608 1999-08-23 Benjamin Kosnik <bkoz@cygnus.com>
4610 * mknumeric_limits (numeric_limits): Add default definitions to
4612 * testsuite/18_support/numeric_limits.cc: New file.
4614 1999-08-18 Benjamin Kosnik <bkoz@cygnus.com>
4616 * bits/std_istream.h: Correct initialization.
4617 * bits/std_ostream.h: Likewise.
4618 * bits/std_sstream.h: Likewise.
4619 * bits/std_fstream.h: Likewise.
4620 * testsuite/27_io/stringstream.cc: Add test case.
4622 * bits/std_sstream.h: Replace ____string_type with __string_type.
4623 * bits/basic_ios.h (basic_ios::rdbuf(sb*): Call clear(), as required.
4624 * bits/std_ostream.h: Tweak dtor.
4626 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4628 * src/Makefile.am (CXXFLAGS): Add -O2.
4629 * src/Makefile.in: Likewise.
4631 * src/gen-num-limits.cc: Conditionally allow wchar_t. See what
4633 * mknumeric_limits (numeric_limits): Uglify.
4635 * bits/std_istream.h: Fix warnings.
4636 * bits/locale_facets.tcc: Collateral damage from
4637 char_traits<char>::int_type change.
4639 * testsuite/27_io/istream_extractor_char.cc: Terminate strings.
4641 1999-08-17 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4643 * docs/index.html: Add mailing list form.
4644 * docs/27_io/howto.html: Add link to iostreams_hierarchy.pdf.
4646 1999-08-16 Benjamin Kosnik <bkoz@cygnus.com>
4648 * bits/streambuf.tcc (streambuf::xsputn): Allow copies to continue
4649 if overflow successfully allocates more space.
4650 * bits/std_sstream.h: Adjust comments.
4651 * bits/sstream.tcc (stringbuf::overflow): Copy buffer into string
4652 before overflow forces a resize.
4653 * testsuite/27_io/ostream_inserter_char.cc: New file.
4655 * bits/std_fstream.h: Remove declaration.
4656 * bits/fstream.tcc: Move uflow.
4657 * bits/std_streambuf.h: To here.
4658 * bits/streambuf.tcc: Make consistent.
4660 * src/Makefile.am (WERROR): Enable.
4661 * src/Makefile.in: Regenerate.
4662 * bits/sbuf_iter.h: Tweak.
4663 * bits/char_traits.h: (char_traits<wchar_t>::eof): Use WEOF.
4664 Use unsigned int as char_traits<char>::int_type.
4666 * bits/ostream.tcc (ostream::putc(char)): Tweak.
4667 * testsuite/27_io/iostream_objects.cc: Terminate string.
4668 Move cin::operator>>(char*) test to extractor_char.cc.
4669 * testsuite/27_io/stringstream.cc: Add stringstream instantiation.
4670 * bits/std_istream.h (basic_iostream): Make explicit definition
4672 * bits/std_sstream.h: Fix typos.
4673 * bits/fstream.tcc (_M_init_filebuf): Set to indeterminate for
4674 basic_filebuf ctor with fileno open arguments. Thus, filebufs are
4675 initialized in a consistent manner, no matter if the underlying
4676 FILE/bit bucket is a tty or a text file or some other imaginary
4677 construct. This and setting _M_buf_size to 1 for cin allows
4678 istream::get(char) to work in a manner consistent with what others
4681 * docs/index.html: Link Stroustrup's C++ page.
4683 1999-08-12 Michael Cook <cook@sightpath.com>
4685 * bits/fstream.tcc: Fix signed/unsigned -Wall warning.
4686 * bits/istream.tcc: ditto.
4687 * bits/sbuf_iter.h: ditto.
4688 * bits/std_istream.h: ditto.
4689 * src/Makefile.am: Add -Wall to CXXFLAGS.
4690 * src/Makefile.in: ditto.
4692 1999-08-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4693 Russell Davidson <russell@ehess.cnrs-mrs.fr>
4695 * bits/locale_facets.tcc (_M_extract): Finish off patch from yesterday.
4696 * src/Makefile.am (myinstallheaders): Tweak, remove PHONY.
4698 1999-08-11 Benjamin Kosnik <bkoz@tintin.cygnus.com>
4700 * testsuite/27_io/istream_unformatted.cc: New file.
4702 * testsuite/27_io/istream_extractor_arith.cc (test02): Add more
4703 elaborate tests for int types with noskipws.
4705 * testsuite/27_io/istream_extractor_other-1.txt: New file.
4706 * testsuite/27_io/istream_extractor_other-1.tst: New file.
4707 * testsuite/27_io/istream_extractor_other-2.tst: New file.
4708 * testsuite/27_io/istream_extractor_other.cc: Add tests.
4709 * bits/istream.tcc: Fix operator>>(streambuf*).
4711 * testsuite/23_containers/vector_ctor.cc (test01): Add.
4713 * docs/index.html: Remove references to egcs.
4714 * docs/17_intro/DESIGN: Same.
4715 * docs/17_intro/contribute.html: Same.
4716 * docs/17_intro/RELEASE-NOTES: Ditto.
4717 * docs/17_intro/howto.html: Same here.
4719 Russell Davidson <russell@ehess.cnrs-mrs.fr>
4720 * stl/bits/stl_vector.h (_M_insert_aux):
4721 * bits/locale_facets.tcc (_M_extract): Tweaks for preliminary
4722 decimal/floating point support.
4723 * bits/locale_facets.h: Change _M_extract prototype.
4724 * bits/char_traits.h (char_traits::to_int_type): Cast to unsigned.
4725 * bits/std_istream.h (istream::read(char_type, streamsize)): Fix.
4727 1999-08-10 Michael Cook <cook@sightpath.com>
4729 * bits/fstream.tcc: Fix for unused variable warning (-Wall).
4730 * bits/ios_base.h: ditto.
4731 * bits/istream.tcc: ditto.
4732 * bits/locale_facets.h: ditto.
4733 * bits/locale_facets.tcc: ditto.
4734 * bits/std_streambuf.h: ditto.
4735 * src/basic_file.cc: ditto.
4736 * src/locale.cc: ditto.
4737 * src/localename.cc: ditto.
4739 1999-08-10 Kirat Singh <singhki@jany.gs.com>
4741 * bits/std_iomanip.h: Inline.
4743 1999-08-10 Alfred Minarik <a8601248@unet.univie.ac.at>
4745 * bits/std_streambuf.h: Correct member initialization order.
4746 * src/ios.cc: Add definitions for ios_base data members.
4748 1999-08-06 Phil Edwards <pedwards@ball.com>
4750 * docs/index.html: Seventh snapshot updates. Minor tweaks.
4751 * docs/faq/index.html: Ditto. Removed bugs sections that have
4752 been fixed for a long time... Lots of "egcs" references still
4754 * docs/faq/index.txt: Regenerated.
4756 1999-08-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4757 Andreas Amann <amann@physik.tu-berlin.de>
4759 * testsuite/26_numerics/binary_closure.cc (main): new test.
4761 1999-07-29 Andreas Amann <amann@physik.tu-berlin.de>
4763 * bits/valarray_meta.h: (_BinClos<>::_Binclos): fix typo causing
4766 1999-08-04 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4768 * docs/index.html (host): Put in testing status.
4770 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
4772 * docs/index.html: Update for libstdc++-2.90.6 release.
4773 * docs/17_intro/RELEASE-NOTES (New): Update.
4774 * docs/17_intro/BUGS: Update.
4775 * bits/c++config.h.in (__GLIBCPP__): Bump version number.
4776 * README (file): Update.
4778 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
4780 * src/Makefile.am (generated_headers): Remove bits/c++config.h as
4782 ($(generated_headers)): Same.
4783 * src/gen-c++config.cc: Remove, rename to
4784 * bits/c++config.h.in: New file. Bump version number.
4785 * configure.in: Generate bits/c++config.h at configure time.
4786 * math/mathconf.h: include bits/c++config.h, not config.h.
4788 * bits/std_cmath.h: Fix remaining link error for solaris shared
4789 builds. _GLIBCPP_HAS_BUILTIN_SINF has to be disabled for the time
4790 being, as on Solaris this silently calls sinf, which does not
4793 * src/complex.cc: More tweaks.
4795 1999-08-03 Benjamin Kosnik <bkoz@cygnus.com>
4797 * src/complex.cc: Same.
4798 * math/complex-stub.h: Change.
4799 * math/c_log10*.c: Change back to clog10*.c.
4801 * configure.in (NEED_C_LOG10): Delete.
4802 * configure: Regenerate.
4803 * math/Makefile.am: Change.
4805 1999-07-30 Benjamin Kosnik <bkoz@cygnus.com>
4807 * math/Makefile.am: Fix, for real.
4808 * configure.in (use_builtin_sinf): Ok, make autoconf solution.
4809 * math/clog.c: Move to c_log.c.
4810 * math/clog*: Ditto.
4811 * math/c_log10l.c (c_log10l): Change function name.
4812 * math/c_log10f.c (c_log10f): Change function name.
4813 * math/c_log10.c (c_log10): Change function name.
4815 * math/complex-stub.h: Change to c_log* variants.
4816 * src/complex.cc: And here.
4818 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
4820 * testsuite/27_io/istream_extractor_other.cc: Correct last test.
4821 * bits/sstream.tcc (stringbuf::overflow): Don't update the input
4822 sequence, just the output sequence.
4823 * bits/std_sstream.h (stringbuf::str()): Only in stringbufs return
4824 the original string, all others use complicated heuristic.
4826 * src/complex.cc: Assume c_log10.
4827 * math/Makefile.am (EXTRA_yes): Fix c_log/c_logf unresolved
4828 symbols in shared libraries by making c_log/c_log10 part of the
4829 "must cmpile" sources. This may not work on solaris, must check.
4831 1999-07-29 Benjamin Kosnik <bkoz@cygnus.com>
4833 * bits/istream.tcc (operator>>(streambuf*)): Re-do.
4834 * bits/std_istream.h: Fix char extractors.
4835 * testsuite/27_io/istream_extractor_char.cc: Change.
4836 * testsuite/27_io/istream_extractor_other.cc: Add tests.
4838 1999-07-28 Benjamin Kosnik <bkoz@cygnus.com>
4840 * bits/std_cctype.h: Fix for solaris2.6 builds.
4842 * bits/istream.tcc: Fix, thanks Alfred.
4843 * bits/std_istream.h: Formatting changes.
4845 * libio/Makefile.am (libio_la_SOURCES): Remove cleanup.c, so that
4846 _IO_cleanup will not be undefined.
4847 * libio/*: Regenerate.
4849 * bits/basic_string.h: More namespace-safety stuff.
4850 * testsuite/27_io/istream_extractor_char.cc: Fix.
4851 * testsuite/27_io/istream_extractor_arith.cc: Fix.
4852 * testsuite/27_io/iostream_objects.cc: Fix.
4853 * testsuite/27_io/ios_ctor.cc: Fix.
4854 * testsuite/27_io/istream_manip.cc: Make namespace safe.
4855 * testsuite/27_io/istream_extractor_other.cc: New file.
4857 * mkcheck (TESTS_FILE): Tweaks.
4859 1999-07-27 Benjamin Kosnik <bkoz@cygnus.com>
4861 * src/gen-c++config.cc: Note here, change version.
4862 * acconfig.h( _GLIBCPP_USE_CTYPE_ISBIT): New macro.
4863 * src/locale.cc: Used here.
4864 * configure.in (use_builtin_sinf): Check for _ISBit using autoconf.
4866 * aclocal.m4: Regenerate by running `aclocal -I m4.`
4868 * bits/istream.tcc: Fix.
4869 * bits/std_istream.h: More changes to extractors.
4871 * testsuite/27_io/istream_extractor_char.cc: More.
4872 * testsuite/21_strings/inserters_extractors.cc (test01): Fix logic
4873 error in testsuite construction.
4875 * bits/std_istream.h: Partially revert.
4876 * bits/std_ostream.h: Same.
4877 * bits/std_sstream.h: Revert.
4879 1999-07-26 Benjamin Kosnik <bkoz@cygnus.com>
4881 * bits/std_sstream.h: Change initialization.
4882 * bits/std_ostream.h: Make default ctor/assign/operator= private.
4883 * bits/std_istream.h: Same, also correct sentry args.
4884 * bits/istream.tcc: Add correct sentry args.
4886 * testsuite/27_io/istream_extractor_char.cc: New file.
4887 * testsuite/27_io/istream_extractor_arith.cc: New file, old file,
4888 name changes making me dizzy.
4890 1999-07-26 Ulrich Drepper <drepper@happy.cygnus.com>
4891 Benjamin Kosnik <bkoz@cygnus.com>
4893 * aclocal.m4, config.guess, config.sub, ltconfig ltmain.sh: Update
4896 1999-07-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4898 * bits/std_complex.h: Tweak. Make the primary template class
4899 complex work with user-defined numerical types. Provide member
4900 definitions. Restructure.
4901 (class complex<float>): Uglify. Remove __value(). Rename __val
4902 to _M_value. Rename __complex_value_type to _ComplexT. Make it
4903 private. Remove dependency on __value(). Fix various explicit
4904 specialization syntax. Declare a some functions friend. Now the
4905 implementation is nearly comforming.
4906 (class complex<double>): Likewise.
4907 (class complex<long double>): Likewise.
4909 * src/complex.cc: Tweak. Remove dependency on complex::__value().
4910 (sin, sinh, tan, than): Fix call to corresponding C9x function
4913 1999-07-24 Benjamin Kosnik <bkoz@fidel.cygnus.com>
4915 * bits/istream.tcc (ws): Fix error with failbit being set.
4917 Disabled due to egcs/gcc-2_95 internal compiler errors.
4918 * src/Makefile.am (CXXFLAGS): Add -fsquangle -fhonor-std
4919 -fnew-exceptions. Compiling with namespaces enabled will now be
4921 * mkcheck (CXX_FLAG): Same.
4922 * src/gen-c++config.cc (_GLIBCPP_USE_NAMESPACES): Yup. New macro.
4923 * bits/std_cctype.h: Not enough to just define in namespace std if
4924 ctype-isms are macros. Need to also define in namespace std:: if
4925 the C functions are just plain functions.
4927 * src/gen-num-limits.cc: Fix spelling inconsistencies.
4929 1999-07-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
4931 * docs/18_support/howto.html: Start documentation. Need to keep
4932 track of the ongoing discussion in th LWG reflector.
4934 * src/gen-num-limits.cc: Tweak.
4935 (class predicate): New class.
4936 (class value): Likewise.
4937 Make the whole machinery more flexible. Add comments.
4939 1999-07-23 Benjamin Kosnik <bkoz@fidel.cygnus.com>
4941 * bits/ios_base.h: Move state/exception functions into basic_ios.
4942 * bits/basic_ios.h: Same.
4943 * src/ios.cc: And here. Callbacks don't attempt to reset
4946 * bits/std_streambuf.h: Separate ios and streambuf locale data
4947 members and cached facets. Using this convention: _M_locale_buf for
4948 the streambuf-related classes, and _M_locale_ios for the ios
4950 * bits/fstream.tcc: And here.
4951 * bits/basic_ios.h: And here. Also, add cached ctype.
4952 * src/ios.cc: Ditto.
4953 * bits/ios_base.h: Ditto.
4954 * bits/std_istream.h: Use cached ctype facet.
4955 * docs/27_io/iostreams_hierarchy.pdf: Update for new data member
4958 * testsuite/27_io/ios_ctor.cc: New file.
4959 * src/ios.cc: Move _M_state init to basic_ios::init().
4960 * bits/basic_ios.h: To here.
4962 Attempt for some consistency in naming for testsuite/27_io/*.cc.
4963 * testsuite/27_io/boolfmt.cc: Rename to stdios_fmtflags_manip.cc
4964 * testsuite/27_io/octfmt.cc: Rename to stdios_basefield_manip.cc
4965 * testsuite/27_io/istream_manip.cc: Rename to istringstream_manip.cc.
4966 * testsuite/27_io/ostream_manip.cc: Rename to ostringstream_manip.cc.
4968 1999-07-22 Benjamin Kosnik <bkoz@fidel.cygnus.com>
4970 * src/ios.cc: Tweak initializations of standard iostream
4971 objects to closely match the standard. Tie cin/wcin, set flags on
4973 * bits/char_traits.h: Change from size_t to int_type, as per
4974 standard. As per wide streams.
4975 * bits/basic_ios.h: Infect with __ctype_type, as a preparation
4976 for caching a bunch of ctype info. For instance, ctype_base::space
4977 info needs to be stored somewhere, somehow.
4978 * bits/std_istream.h: Also here.
4979 * bits/std_ostream.h: Ditto.
4980 * bits/std_istream.h (operator>>(istream, char): Aggh. Fixup.
4981 * testsuite/27_io/iostream_objects.cacc (test01): Oh yeah. Fix
4984 * bits/istream.tcc (ws): Fix.
4985 * testsuite/27_io/istream_manip.cc: New file, test ws.
4986 * testsuite/27_io/ostream_manip.cc: New file, test endl, ends, flush.
4988 * bits/basic_string.h: Provide a specialized member function for
4989 _S_find<char> using strchr.
4990 * src/string-inst.cc: Put specializations here.
4991 * bits/string.tcc: Small fix for find, remove typo.
4992 * testsuite/21_strings/find.cc (test01): Add tests to catch this
4995 1999-07-20 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
4997 * bits/basic_ios.h: Put into basic_ios namespace.
5000 1999-07-19 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5002 * bits/std_sstream.h (stringbuf::sync): Change to _M_really_sync,
5003 adjust _M_*_cur pointers inside the function, so callee doesn't
5005 * bits/sstream.tcc (stringbuf::overflow): Tweak.
5007 * mkcheck: Tweak. Add execution time field, even though it is not
5008 implemented yet. Simplify pass/fail status notation.
5010 1999-07-18 Mumit Khan <khan@xraylith.wisc.edu>
5012 * configure.in: Check for float.h and underscored version of
5014 * acconfig.h: Add @BOTTOM@ section for handling underscored
5016 * configure: Regenerate.
5017 * config.h.in: Regenerate.
5018 * math/mathconf.h (float.h): Include conditionally.
5019 (M_PI): Define conditionally.
5020 (INFINITE_P): Define for Mingw.
5021 * bits/locale_facets.tcc: Workaround for compiler crash on
5023 * bits/std_cwchar.h (bits/std_cstddef.h): Include.
5024 * src/locale.cc (bits/std_istream.h): Include.
5025 (bits/std_ostream.h): Likewise.
5027 1999-07-18 Phil Edwards <pedwards@ball.com>
5029 * docs/faq/index.html: Updated __black_count notes, fixed typos.
5030 * docs/faq/index.txt: Regenerated.
5032 1999-07-15 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5034 * testsuite/27_io/stringbuf.cc: Cccchanges, latent bugs.
5036 * bits/sstream.tcc (stringbuf::overflow): Modify accounting of
5037 newly-allocated buffer.
5038 * bits/streambuf.tcc (streambuf::xsgetn): Aaaaaah. Fix final
5039 overflow condition bits.
5041 1999-07-14 Benjamin Kosnik <bkoz@cygnus.com>
5043 * bits/std_sstream.h (stringbuf::_M_init_stringbuf): Set
5044 _M_buf_size to initial _M_string.size(), even though for
5045 ostringstreams it is pretty pointless. It's necessary for
5047 (stringbuf::str()): Adjust.
5048 (stringbuf::str()): Adjust, call _M_init_stringbuf.
5049 * bits/streambuf.tcc (streambuf::xsgetn): Adjust return value for
5050 overflow's possible success.
5051 (streambuf::xsputn): Adjust.
5053 * testsuite/27_io/filebuf.cc: Adjust for the xsgetn re-write from
5055 * testsuite/27_io/stringbuf.cc: Tweak.
5056 * testsuite/21_strings/inserters_extractors.cc (test01): Remove
5058 * testsuite/23_containers/vector_cons.cc: Rename to be consistent
5059 with other constructor tests to. . .
5060 * testsuite/23_containers/vector_ctor.cc: New file.
5062 1999-07-14 Alfred Minarik <a8601248@unet.univie.ac.at>
5064 * testsuite/*: Changes to make the testsuit compilable with
5065 -fhonor-std. Contains direct qualification of library names with
5068 1999-07-13 Benjamin Kosnik <bkoz@decepticon.cygnus.com>
5070 * bits/streambuf.tcc: Tweaks.
5071 (streambuf::xsputn): Optimize, fix for sstreams.
5072 (streambuf::xsgetn): Same.
5073 * bits/sstream.tcc (stringbuf::overflow): Adjust _M_buf_size
5074 correctly, handle overflow/reallocate conditions correctly.
5075 * bits/std_sstream.h: Fix typo.
5076 _M_init_stringbuf(): Fix _M_buf_size initialization.
5077 (stringbuf::str()): Construct return string if output has occurred.
5079 * bits/basic_string.h: Fix typo from yesterday's patch.
5081 1999-07-12 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5083 * bits/string.tcc: _M_mutate - clear _M_state again.
5084 * bits/basic_string.h: In the three functions that return
5085 an iterator set _M_state to -1 before return.
5086 Also optimized two cases of operator+.
5088 1999-07-12 Phil Edwards <pedwards@ball.com>
5090 * docs/index.html: Expand egcs-1.1.2 notes/links.
5091 * docs/faq/index.html: And here. Add links to LWG issues-list.
5092 * docs/faq/index.txt: Regenerate. (lynx rocks)
5093 * docs/21_strings/howto.html: Fix notes on case conversion.
5094 * docs/21_strings/stringtok_h.txt: Goodly spelling...
5095 * docs/23_containers/howto.html: Stub for bitmasks.
5096 * docs/27_io/howto.html: Add section on buffering, stub binary.
5098 1999-07-12 Nathan Myers <ncm@cantrip.org>
5100 * stl/bits/stl_tree.h (__black_count): Optimize.
5102 1999-07-09 Vadim Egorov <egorovv@1c.ru>
5104 * src/basic_file.cc: Cleanup in __basic_file destructor.
5106 1999-07-08 Benjamin Kosnik <bkoz@cygnus.com>
5108 * bits/std_streambuf.h: Changes. . .
5109 * bits/streambuf.tcc: Merge xsputn from filebuf into xsputn in
5110 basic_streambuf, to be used for both filebufs and streambufs.
5111 * bits/std_fstream.h (_M_init_filebuf): New function.
5112 Take out specialized xsputn, put into basic_streambuf.
5113 * bits/fstream.tcc: Define, call from both ctors.
5114 * bits/std_sstream.h (_M_init_stringbuf): New function.
5115 * bits/sstream.tcc: Tweak.
5117 * docs/27_io/iostreams_heirarchy.pdf: New file.
5119 * docs/17_intro/CHECKLIST (basic_string<char>): Validation and
5120 acceptance. Wooo-hoo!
5122 * bits/char_traits.h: Change int_type for char_traits general
5123 template, so that 21_strings/capacity.cc will compile.
5124 * testsuite/21_strings/capacity.cc: Add operators.
5126 * bits/string.tcc (string::compare): Clean up, re-implement.
5127 * testsuite/21_strings/compare.cc: Tweak.
5129 * bits/string.tcc (string:_M_mutate): Keep leaked value in
5130 _M_state, which means that whenever begin() or end() has been
5131 called, the string is unshareable, period. By doing this, insert
5132 and erase member functions that return iterators can remain
5133 footloose and fancy free.
5134 * testsuite/21_strings/invariants.cc: Update.
5136 * bits/basic_string.h (string::append): Fix self-referential
5137 problems, ie when "this" is also an argument to a member function.
5138 * bits/string.tcc: Tweak, same.
5139 * testsuite/21_strings/append.cc: New file.
5141 1999-07-07 Benjamin Kosnik <bkoz@cygnus.com>
5143 * bits/char_traits.h: Tweaks.
5144 * bits/basic_string.h: Tweak.
5145 * bits/fstream.tcc: Remove warning for _M_buf_size assignment.
5147 1999-07-06 Benjamin Kosnik <bkoz@cygnus.com>
5149 * bits/std_streambuf.h: Absorb/acquire data members previously
5150 working in basic_filebuf.
5151 * bits/streambuf.tcc: Tweaks.
5152 * bits/fstream.tcc: Adjust.
5153 * bits/std_fstream.h: Move and rename the following functions:
5154 _M_set_ideterminate, _M_is_indeterminate, _M_set_determinate are
5155 now declared and defined in the base class, basic_streambuf. Oh
5156 fuck it, move data members _M_buf, and _M_buf_size into
5157 basic_streambuf as well.
5159 * bits/ostream.tcc: Tweak.
5160 * bits/locale_facets.tcc: Fix typo in comments.
5162 * testsuite/21_strings/inserters_extractors.cc (test01): Change
5163 state from good to not good, as eof() is set.
5165 1999-07-05 Benjamin Kosnik <bkoz@cygnus.com>
5167 * bits/char_traits.h (char_traits::compare). Fix.
5169 * config.guess, config.sub: Update.
5171 1999-07-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5173 * bits/string.tcc: Check the __res_arg for a length error.
5175 1999-07-01 Benjamin Kosnik <bkoz@nabi.net>
5177 * bits/std_streambuf.h: Tweaks. Need to move _M_is_indeterminate
5178 and related functions into basic_streambuf, from basic_filebuf to
5179 take care of ostringstreams and empty strings. So that's groovy,
5181 * bits/std_istream.h: Tweaks.
5182 * bits/istream.tcc: Implement ws, getline, operator>> for string.
5183 * bits/std_ostream.h: And here.
5184 * bits/ostream.tcc: Same.
5185 * src/misc-inst.cc: Add instantiations for ws.
5187 * src/string-inst.cc: Add instantiations for inserters and
5188 extractors (operators << and >>, getline).
5190 * testsuite/21_strings/inserters_extractors.cc: Amazingly enough,
5191 a testcase for getline and operators << and >>. Ostream tests are
5192 failing right now, but istream tests should work. . .
5194 * bits/string.tcc: Change _S_max_size, as GNU malloc won't budge.
5195 * bits/std_sstream.h: Revert.
5197 * testsuite/17_intro: header_[iosfwd, ios, iostream, iomanip,
5198 istream, ostream, streambuf, fstream, sstream].cc: New files.
5200 1999-06-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5202 * bits/std_sstream.h (stringbuf::sync): Don't use string::begin()
5205 * bits/basic_string.h (basic_string<>::_S_copy_chars): Add
5206 specializations for _CharT*, iterator and const_iterator.
5207 * src/string-inst.cc: Remove explicit instantiation, as
5208 now explicitly specialized.
5210 * bits/basic_string.h: Add a size_type parameter to _M_clone with
5211 a default value set to 0.
5212 * bits/string.tcc: In _M_clone by the call of _S_create add the
5213 value of the new parameter to _M_length. In reserve check
5214 _M_state and use _M_clone instead of _M_mutate.
5216 1999-06-30 Benjamin Kosnik <bkoz@happy.cygnus.com>
5218 * bits/basic_string.h: Fix _S_max_size.
5219 * bits/string.tcc: Add def here.
5220 * testsuite/21_strings/insert.cc: Fix.
5222 * bits/sbuf_iter.h: Remove detritus.
5223 * testsuite/24_iterators/istreambuf_iterator.cc: Add tests.
5225 * src/locale-inst.cc: Elaborate iterator/locale instantiations
5226 to resolve alpha-osf4 build problems.
5228 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
5230 * bits/string.tcc: Fix signed/unsigned issues in compares.
5231 * stl/bits/stl_deque.h: And here.
5232 * stl/bits/stl_string_fwd.h: Remove __get_c_string.
5234 1999-06-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5236 * bits/string.tcc: New implementation and interface of _M_mutate.
5237 Adapt the change in all functions that call _M_mutate.
5238 * bits/basic_string.h: And here.
5240 1999-06-29 Benjamin Kosnik <bkoz@happy.cygnus.com>
5242 * testsuite/21_strings/capacity.cc (test01): Fix.
5244 1999-06-29 Phil Edwards <pedwards@ball.com>
5246 * mknumeric_limits: Exit script if gen-num-limits isn't built.
5248 1999-06-29 Andreas Gruenbacher <agruenba@pent224.infosys.tuwien.ac.at>
5250 * stl/bits/stl_vector.h: Fix.
5251 * testsuite/23_containers/vector_cons.cc: Add.
5253 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5255 * mknumeric_limits (LDFLAGS): fix.
5257 1999-06-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5259 * mknumeric_limits (LDFLAGS): set it according to the system.
5261 * math/mathconf.h (NAN): Check whether host is running under
5262 Cygwin and make the appropriate definition.
5263 * math/complex-stub.h (nan): protect declaration.
5265 1999-06-28 Benjamin Kosnik <bkoz@haight.constant.com>
5267 * bits/sbuf_iter.h: Rename internal data structure to prevent
5268 confusion between basic_ios and istreambuf_iterators internal
5269 basic_streambuf data member.
5270 * testsuite/24_iterators/istreambuf_iterator.cc: New file.
5272 * bits/basic_string.h: Remove conditionals, add input_iterator
5273 version of S_construct again.
5274 * bits/string.tcc: Same.
5275 * src/string-inst.cc: And add explicit instantiation here.
5277 * src/gen-c++config.cc (_GNU_SOURCE): Take out both _GNU_SOURCE
5278 and __USE_GNU macro defines, as single __USE_GNU use leading to
5279 confusion on glibc2.1 systems (ie, RedHat 6.0).
5281 * src/Makefile.am (headers): Add std_utility to installed headers.
5283 1999-06-25 John Potter <jpotter@eagle.lhup.edu>
5285 * stl/bits/stl_tree.h (insert_unique): Revert, just fix insert_equal.
5287 1999-06-25 Gilles Zunino <Gilles.Zunino@hei.fr>
5289 * mknumeric_limits (LDFLAGS): Swap -lc and -lgcc.
5291 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5293 * src/gen-c++config.cc (_GLIBCPP_*): Change all
5294 macros to include _GLIBCPP as a distinct namespace.
5298 * stl/bits/std_stdexcept.h: Forward-declare __Named_exception ctor.
5299 * bits/basic_string.h: Remove __get_c_string.
5300 * src/stdexcept.cc: Define ctor here.
5301 * bits/ios_base.h: And fix ios_base::failure as well.
5302 * src/ios.cc: Define here.
5304 * bits/std_streambuf.h: Add a private copy ctor and assignment
5305 operator wrapped in _G_RESOLVE_LIB_DEFECTS.
5306 * bits/ios_base.h: And here too.
5308 * bits/basic_string.h: Tweak.
5309 * testsuite/21_strings/nonmember.cc: Add operator+ tests.
5311 * src/valarray.cc: Rename to. . .
5312 * src/valarray-inst.cc: This.
5313 * src/Makefile.am (sources): Change here.
5314 * src/Makefile.in: Regenerated.
5316 1999-06-24 Vadim Egorov <egorovv@1c.ru>
5318 * bits/string.tcc(basic_string<>::_Rep::_S_create): Fixed
5321 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5322 Tom Tromey <tromey@cygnus.com>
5324 * configure.in (use_glibc2): Eek, correct for non-glibc systems.
5325 Use AM_CONDITIONAL to get us out of this jam. .
5326 * libio/Makefile.am: Same.
5327 * */Makefile: Regenerated.
5329 1999-06-24 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5330 John Potter <jpotter@eagle.lhup.edu>
5332 * stl/bits/stl_tree.h (insert_equal): Fix.
5333 * testsuite/23_containers/multiset.cc: New file.
5335 1999-06-23 Benjamin Kosnik <bkoz@cygnus.com>
5337 * configure.in (test for glibc2): Correct AC_TRY_COMPILE so that
5338 this works correctly on glibc-2 systems. This should allow
5339 simplified linking on these systems, and successful linking on Red
5341 * configure, Makefile: Regenerate.
5343 * bits/std_cwctype.h: Add missing 'w' to _S_iswpunct_helper name.
5345 * testsuite/ext: New directory.
5346 * testsuite/ext/headers.cc: New file.
5348 1999-06-23 Vadim Egorov <egorovv@1c.ru>
5350 * stl/ext/hash_set: include missing headers
5351 * stl/ext/hash_map: Same
5352 * stl/ext/slist: Same
5354 1999-06-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5356 * bits/std_cmath.h: comment out modf. Kills build on hpux10.20
5358 1999-06-15 Benjamin Kosnik <bkoz@cygnus.com>
5360 * src/Makefile.am (sources): Regenerate.
5361 * mkcheck: Add TESTS_FILE as a way of controlling what testcases
5364 1999-06-14 Benjamin Kosnik <bkoz@cygnus.com>
5366 * src/string-inst.cc: Change _S_construct signature, to
5367 track requested allocation size versus valid input iterator range.
5368 * bits/basic_string.h: Here too.
5369 * bits/string.tcc: And here.
5371 1999-06-12 Benjamin Kosnik <bkoz@cygnus.com>
5373 * mkcheck (LOG_FILE): Correctly append errors.
5375 * stl/bits/stl_iterator.h: Revert previous, delirious, change.
5377 * bits/basic_string.h: Change _Rep::_M_data to _Rep::_M_refdata,
5378 to clarify differences between basic_string::_M_data() calls and
5379 _Rep::_M_data() calls.
5380 * bits/std_string.h: Fix.
5381 Put in check for out_of_range in substr.
5382 * bits/string.tcc: Fix for _S_find.
5384 * testsuite/21_strings/compare.cc: Add tests.
5385 * testsuite/21_strings/find.cc: New file.
5386 * testsuite/21_strings/substr: New file.
5387 * testsuite/21_strings/replace.cc: New file.
5389 1999-06-11 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5391 * bits/valarray_array.h: __restrict__ify pointers.
5393 * bits/std_valarray.h: Tweak.
5394 (valarray<T>::cshift, valarray<T>::shift): use __builtin_alloca.
5396 * bits/gslice_array.h: Tweak. Reflect changes in bits/gslice.h
5398 * bits/gslice.h: Tweak.
5399 (class gslice::_Indexer): new class.
5400 (gslice::gslice(const gslice&)): implement copy-ctor to support
5402 (gslice::operator=(const gslice&)): support ref-counted index.
5403 (gslice::_M_convert_to_index): delete.
5405 * src/valarray.cc: New file.
5406 (__gslice_to_index): turn a gslice into a valarray<size_t>
5407 (ctor gslice::_Indexer::_Indexer): implement.
5409 * src/Makefile.am (sources): add valarray.cc
5410 * src/Makefile.in: regenerate.
5412 1999-06-08 Benjamin Kosnik <bkoz@cygnus.com>
5414 * stl/bits/stl_iterator.h (__normal_iterator::const_iterator
5415 ctor): Put in a const_cast.
5417 * testsuite/21_strings/invariants.cc: New file.
5419 * testsuite/21_strings/insert.cc: Add exception handling bits.
5420 * testsuite/21_strings/ctor_copy_dtor.cc: Same.
5422 * src/wstring-inst.cc: Add c++config.h include.
5424 * bits/basic_string.h: Fix const operator[] for size == pos.
5425 Add _M_leak for rbegin, non-const.
5426 Add _M_leak for rend, non-const.
5427 Make member function at standards conformant.
5428 Add _S_terminal to _Rep for operator[] const, add this into
5430 * bits/string.tcc: Add static member definition here,
5433 * testsuite/21_strings/element_access.cc: Add tests.
5435 1999-06-08 Vadim Egorov <egorovv@1c.ru>
5437 * bits/fstream.tcc (_M_really_overflow): Fixed size of
5440 1999-06-08 Phil Edwards <pedwards@ball.com>
5442 * bits/fstream.tcc (basic_filebuf::xsputn): Fix off-by-one count
5443 caused when __testinit is true.
5444 * bits/ostream.tcc (basic_ostream::op<<(streambuf*)): Write buffer
5445 using rdbuf()->sputn rather than _M_fnumput->put.
5447 1999-06-08 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5449 * testsuite/23_containers/bitset_ctor.cc: New file.
5450 * stl/bits/std_bitset.h (__BITSET_WORDS): Fix integration bug.
5452 1999-06-08 Phil Edwards <pedwards@ball.com>
5454 * bits/fstream.tcc (basic_filebuf::underflow): Fix, rename local vars.
5456 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5458 * testsuite/21_strings/element_access.cc: Finish off these tests.
5459 * testsuite/21_strings/insert.cc (test01): Uncomment.
5460 * testsuite/21_strings/ctor_copy_dtor.cc (test01): Finish off ctors.
5461 * bits/basic_string.h: Tweak, okay, fix for real this time.
5462 * bits/string.tcc: Same.
5463 * bits/char_traits.h: Tweak.
5465 1999-06-07 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5467 * bits/std_cmath.h: Example of how to use the generated macro.
5468 * acconfig.h: Add macro for sinf here.
5469 * configure.in (LIBS): Add test for builtin math function sinf.
5470 * configure: Regenerated.
5472 * bits/basic_string.h: Fix _S_max_size.
5474 1999-06-06 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5476 * bits/basic_string.h: Fixes for out-of-memory segv for large strings.
5477 Remove _S_construct signature for forward_iterator_tag and
5480 * src/string-inst.cc: Same, tweaks.
5481 * bits/string.tcc: Same, tweaks.
5483 * testsuite/21_strings/ctor_copy_dtor.cc: Add/clarify tests.
5484 * mkcheck (LOG_FILE): Fix filebuf-[2,3].tst checks.
5485 * mknumeric_limits (LD_FLAGS): Add -nodefaultlibs -lc -lgcc as per
5488 * src/locale.cc: Final separation for char/wchar_t bits.
5490 1999-06-05 Phil Edwards <pedwards@ball.com>
5492 * docs/index.html: Added link to book upon request'n'agreement.
5493 * docs/23_containers/wrappers_h.txt: Added.
5494 * docs/{23_containers,27_io}/howto.html: Added sections.
5496 * bits/std_fstream.h: Tweak.
5498 1999-06-05 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5500 * src/ios.cc: Same here.
5501 * bits/std_iosfwd.h: More wchar_t defines.
5503 * bits/basic_string.h: Tweaks.
5504 * bits/string.tcc: Tweak. Fix _S_construct to check for max_size
5505 when doing error checking, as per LWG defect #83.
5507 * src/gen-c++config.cc: Fix comment.
5509 * testsuite/21_strings/ctor_copy_dtor.cc: New file, checks ctors,
5511 * testsuite/21_strings/element_access.cc: New file, checks for
5512 operator[], at(...).
5513 * testsuite/21_strings/insert.cc: New file, tests string::insert.
5514 * testsuite/21_strings/char_traits.cc: New file, tests
5515 for char_traits<char>.
5517 * bits/utility.h: Remove, again.
5518 * src/Makefile.am (std_headers): Remove utility.h.
5519 * src/Makefile.in (std_headers): Regenerate.
5521 Alfred Minarik <a8601248@unet.univie.ac.at>
5522 * bits/basic_string.h: Move __out_of_range and __length_error into
5525 1999-06-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5527 * testsuite/26_numerics/modf_float.cc: New file.
5529 * bits/std_cmath.h (modf(float, float*)): Fix signature. Correct
5530 typo: use ::modff, not ::modf.
5532 1999-06-03 Vadim Egorov <egorovv@1c.ru>
5534 * bits/string.tcc (basic_string::_M_mutate): Fixed memory
5536 * testsuite/21_strings/capacity.cc (test01): Test.
5538 1999-06-03 Phil Edwards <pedwards@ball.com>
5540 * bits/fstream.tcc: Re-order inits to stop warnings. Comment/move
5541 unused variables to within #if 0 blocks to do the same.
5542 * bits/std_fstream.h: Fix typos (one prevents compilation).
5544 1999-06-03 Benjamin Kosnik <bkoz@pacifica.cygnus.com>
5546 * src/wstring-inst.cc: Fix.
5548 1999-06-02 Benjamin Kosnik <bkoz@madcow.cygnus.com>
5550 * bits/char_traits.h: Add _G_USE_WCHAR_T macro guards.
5551 * stl/bits/stl_string_fwd.h: Same.
5552 * bits/locale_facets.h: Same.
5553 * bits/locale_facets.tcc: Same.
5554 * src/wstring-inst.cc: And here.
5556 * src/gen-c++config.cc: Comment _G_USE_WCHAR_T. Leading to
5557 problems on HPUX 10.20.
5558 * your-build-directory-here/bits/c++config.h: Just kidding, do it
5559 here as a temporary hack till the compiler/host problems get
5562 * bits/locale_facets.tcc (num_get::do_get): Change from ifdef
5563 HAVE_STRTOLD to HAVE_STRTOLD && !(__hpux). Apparently, problems
5564 converting "long double" to struct long_double. Probably should be
5565 done with one macro (HAVE_STRTOLD) at configure time.
5567 * bits/std_cmath.h: Comment out pow(double, int) defintion as
5568 gives re-declaration under hpux10.20. Revert previous change, as
5569 kills linux/x86, solaris 2.7, hpux builds. These should be done
5570 using autoconf, see std_cctype.h and the solutions started in
5571 configure.in (see config.h for the generated file.)
5573 * mknumeric_limits (LDFLAGS): Remove '-nodefaultlibs -lc', as
5574 -nodefaultlibs prevents linking under HPUX 10.20 as __main is not
5577 * docs/index.html: Add some useful links.
5578 * docs/17_intro/contribute.html: Fix broken links.
5580 1999-06-02 Benjamin Kosnik <bkoz@rhino.cygnus.com>
5582 * mkcheck (LOG_FILE): Add !/bin/bash instead of cygnus-style
5583 paths. The rest of the world should be able to run this script
5586 * src/Makefile.am ($(generated_headers)): Remove comment.
5587 * Makefile*: Regenerate.
5589 * bits/std_locale.h: Remove detritus.
5590 * bits/localefwd.h: Add <cctype> include to undefine the isspace
5593 1999-06-01 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5595 * src/gen-c++config.cc: New file. Making c++config.h at configure
5596 time by catting this file (nee bits/config.h) with the build
5597 directories config.h. This is not a complete or perfect solution
5598 but is better than what was in place previously.
5599 * bits/c++config.h: Rename/move to above.
5600 * src/Makefile.am (headers): Remove c++config.h.
5601 (myinstallheaders). Add.
5602 * Makefile*: Regenerated.
5604 * bits/std_cwchar.h: Add include of c++config.h for HAVE_*
5605 definitions, so that wmemcmp, wcslen, wmemchr, etc are properly
5606 declared only if not present in the host's wchar.h.
5608 * bits/locale_facets.tcc (std): Change _G_USE_STRTO* to HAVE_STRTO*.
5610 * bits/std_cmath.h: Define out, for the moment. Linux has no
5611 __buitin_fsqrtl? Probably need some kind of configure trickery
5614 * src/Makefile.*: Regenerate.
5615 * bits/c++config.h: Add config.h include.
5617 * bits/std_cwchar.h: Remove remaining #error guard.
5619 * acconfig.h: Add bits for HAVE_LC_MESSAGES.
5621 * configure.in (LIBS): Replace previous effort for mbstate_t and
5622 strtold/strtof with this implementation.
5624 1999 06-01 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5626 * bits/std_cmath.h: Tweak. Add more functions. Use __builtin_xxx
5629 1999-05-28 Benjamin Kosnik <bkoz@cygnus.com>
5631 * bits/locale_facets.tcc (std): Eek: this left in. Autoconf bits
5632 for determining mbstate_t differences across various hosts not
5635 1999-05-26 Benjamin Kosnik <bkoz@nabi.net>
5637 * bits/locale_facets.tcc: Change to ifdef.
5639 * bits/std_sstream.h (stringbuf::setbuf): Remove dynamic_cast.
5640 * bits/std_fstream.h (filebuf::setbuf): Same.
5642 * bits/std_istream.h: Add ws declaration.
5643 * bits/istream.tcc: Stub out definition.
5645 * docs/index.html: Fix broken link for design.txt.
5647 * configure.in: Test for mbstate_t. If wchar.h doesn't have it,
5648 then set _G_NEED_MBSTATE_T.
5649 * configure: Regenerate.
5650 * bits/c++config.h: Move mbstate_t define.
5651 * bits/std_cwchar.h: To here.
5653 1999-05-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5655 * bits/std_sstream.h:
5656 basic_stringbuf<>::basic_stringbuf: fix.
5657 basic_stringbuf<>::setbuf:
5658 remove the temporary __string_type object,
5659 remove the unnecessary dynymic_cast in the return value,
5660 change the type of the returned value from __streambuf_type*
5661 to basic_stringbuf<_CharT, _Traits, _Alloc>*.
5663 1999-05-25 Phil Edwards <pedwards@ball.com>
5665 * bits/std_streambuf.h (streambuf::setbuf): Always return streambuf*.
5667 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5669 * bits/std_cmath.h: Tweak. Add float versions of the math functions
5670 in <math.h>. <cmath> still incomplete and incorrekt.
5672 1999-05-24 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5674 * mknumeric_limits (LDFLAGS): set appropriate link flags.
5676 1999-05-23 Phil Edwards <pedwards@ball.com>
5678 * docs/17_intro/howto.html: Added links to text docs,
5680 * docs/21_strings/howto.html: Updated sections and links.
5681 * docs/21_strings/{gotw29a.txt,stringtok_h.txt}: Added.
5682 * docs/faq/index.html: Updated what-works for sixth
5683 snapshot. Also a number of "internal" links have been
5684 fixed, now that the web pages are the docs directory...
5685 * docs/faq/index.txt: Regenerated.
5687 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5689 * bits/basic_string.h: Add Nathan's documentation on the string class.
5691 * testsuite/27_io/ios_members_static.cc: New file, for testing
5692 ios_base::sync_with_stdio.
5694 1999-05-21 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5696 * bits/std_locale.h: Simplify includes.
5697 * bits/loccore.h: Delete.
5698 * bits/localefwd.h: Renamed, trimmed.
5699 * bits/locfacets.h: Delete.
5700 * bits/locale_facets.h: Rename, expanded.
5701 * bits/loccore.tcc: Deleted.
5702 * bits/locfacets.tcc: Deleted.
5703 * bits/locale_facets.tcc: Resultant merge.
5704 * bits/std_fstream.h: Modify include.
5705 * bits/ostream.tcc: Same.
5706 * bits/istream.tcc: Same.
5708 * src/locale-inst.cc: And here.
5709 * src/locale.cc: Ditto.
5710 * src/Makefile.am: Updated.
5711 * src/Makefile.in: Rengenerated.
5713 * bits/std_istream.h: Move istream::sentry ctor definition.
5714 * bits/istream.tcc: Move istream::sentry ctor here.
5715 Add more detailed locale include here for ctype member functions.
5716 * bits/ostream.tcc (std): And here.
5718 * bits/sbuf_iter.h: Include std_streambuf.h
5720 * bits/locfacets.h: Start separating this into a localeimp.h file.
5721 * bits/loccore.h: Start separating this into a localefwd.h file.
5722 Add std_climits for CHAR_BIT.
5724 * bits/ios_base.h (ios_base::sync_with_stdio): Stub in.
5726 * bits/char_traits.h: Tweak.
5728 * bits/ios_base.h: Remove INT_MAX, use 1<<16.
5730 * bits/std_ostream.h: Remove c++config.h include.
5731 * bits/std_istream.h: Same.
5732 * bits/std_streambuf.h: Same.
5733 * bits/std_fstream.h: Same.
5734 * bits/std_sstream.h: And here.
5736 * bits/std_iosfwd.h: Add _G_RESOLVE_LIB_DEFECTS here for streampos.
5737 * bits/char_traits.h: Add include of std_cwchar.h for mbstate_t.
5738 * bits/fpos.h: Tweak, format.
5740 * std/ciso646: New file.
5741 * bits/std_ciso646.h: New file.
5742 * src/Makefile.am (std_headers): Add ciso646.
5743 (headers): Add bits/std_ciso646.h.
5744 * src/Makefile.in: Regenerate.
5745 * testsuite/17_intro/header_ciso646.cc: New file, disable
5748 * bits/fpos.h: Remove libio.h include.
5749 * bits/basic_file.h: And here.
5750 * bits/std_ios.h: Put here.
5752 * src/ios.cc: Simplify includes, tweak.
5753 * bits/std_ios.h: Simplify include order.
5754 * bits/ios_base.h: Modify ios_base::failure.
5756 * stl/bits/std_numeric.h: Change include from stl_iterator to
5759 1999-05-19 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5761 * std/iostream: Remove static member __ioint.
5762 * bits/std_iostream.h: Put here.
5764 * stl/bits/std_numeric.h: Remove unneccessary std_iostream.h include.
5765 * stl/bits/stl_algobase.h: Same.
5766 * testsuite/27_io/iostream_objects.cc: Regression tests.
5767 * testsuite/27_io/hello.cc: Remove, subset of above.
5769 1999-05-19 Phil Edwards <pedwards@ball.com>
5771 * docs/index.html: Tweak, update.
5773 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5775 * docs/17_intro/RELEASE-NOTES: remove outdated
5776 documentation about numeric_limits. Correct CXXINCLUDE setting
5779 1999-05-18 Phil Edwards <pedwards@ball.com>
5781 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
5782 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
5783 27_io}/howto.html: Created, with some initial entries.
5784 * docs/faq/index.html: Fixed some links.
5785 * docs/faq/index.txt: Regenerated.
5787 1999-05-18 Benjamin Kosnik <bkoz@tintin.cygnus.com>
5789 * bits/c++config.h (__GLIBCPP__): Set version to 19990518.
5791 * docs/17_intro/RELEASE-NOTES: Update.
5792 * docs/index.html: Correct link to mailing list help page, update News.
5793 * docs/faq/index.html: Change fifth to sixth for snapshot.
5795 * src/Makefile.am (myinstallheaders): Bring over Gaby's changes to
5796 install $(top_builddir)/bits/std_limits.h into
5797 $(myincludepfx)/bits. This was mistakenly omitted from yesterday's
5798 Makefile.am changes.
5799 * *Makefile*: Regenerate using automake.
5801 * mkcheck (LOG_FILE): Fix filebuf directory oddness.
5802 * testsuite/27_io/filebuf.cc: Same.
5804 1999-05-18 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5806 * docs/17_intro/CHECKLIST: update.
5807 * docs/17_intro/TODO: update.
5809 1999-05-17 Phil Edwards <pedwards@ball.com>
5811 * docs/{17_intro,18_support,19_diagnostics,20_util,21_strings,
5812 22_locale,23_containers,24_iterators,25_algorithms,26_numerics,
5813 27_io}/howto.html: Created, with some initial entries.
5814 * docs/faq/index.html: Fixed some links.
5815 * docs/faq/index.txt: Regenerated.
5817 1999-05-17 Benjamin Kosnik <bkoz@unhappy.cygnus.com>
5819 * src/Makefile.am (myinstallheaders): Missed removing missing.h.
5820 * Makefile.in*: Regenerate.
5822 1999-05-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
5824 * bits/std_streambuf.h: Same.
5826 * bits/loccore.h (_Bad_use_facet): Remove bits warned about.
5827 * bits/locfacets.h (std): Same.
5828 * bits/sstream.tcc: Same.
5829 * testsuite/27_io/stringstream.cc: Tweak.
5831 * testsuite/27_io/filebuf.cc: Adjust.
5832 * testsuite/21_strings/capacity.cc (test01): Add more
5833 string::reserve tests.
5835 * bits/c++config.h: Remove broken CCTYPE.
5836 * bits/std_cctype.h: Tweak, remove de-macroization, enable
5837 sequestered topper implementation.
5838 * bits/std_cwctype.h: Same.
5840 * bits/missing.h: Remove.
5841 * bits/std_locale.h: Remove missing.h include.
5843 * stl/bits/std_bitset.h (bitset::bitset(string): Tweak to compile.
5845 * src/Makefile.am (headers): Add bits/std_cwctype.h.
5846 INCLUDES: Add top_builddir.
5847 * src/Makefile.in: Regenerate.
5849 * Makefile.am: Add check and check-install as new targets.
5850 * testsuite/make_check_libfree++: Move to. . .
5852 * configure.in: Tweak versions.
5853 * mknumeric_limits: Set paths correctly.
5855 1999-05-17 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5857 * src/Makefile.in (myinstallheaders): add rule to install
5860 * bits/slice.h (class slice): don't const-qualify data members
5861 since the copy and assignment operator is implicitly used. The
5862 valarray specification is definitively a bad one.
5864 * Makefile.in (generate-limits-sources): fix typo.
5866 * docs/text/TODO: update.
5867 * docs/text/CHECKLIST: update.
5869 * bits/gslice.h (gslice): fix bugglet.
5870 (gslice::gslice): set _M_index_size to 0 whenever given lengths
5873 * src/Makefile.am (libstdc___la_SOURCES): add gen-num-limits.
5874 * src/Makefile.in (libstdc___la_SOURCES): keep in sync.
5875 [Note: **/Makefile.in should be generated from the corresponding
5876 Makefile.am. The current situation is a litte chaotic. ]
5878 1999-05-16 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5880 * mknumeric_limits: tweak.
5882 * Makefile.in (all): add target generate-limits-sources.
5883 (generate-limits-sources): make a directory bits/ in top_builddir
5884 where the generated std_limits.h is put; generate limitsMEMBERs.cc
5885 directly under $(top_builddir)/src. Remains to put the appropriate
5886 rule for installing std_limits.h.
5888 * src/Makefile.in (headers): remove bits/std_limits.h to this list.
5889 (INCLUDES): add -I$(top_builddir) for bits/std_limits.h which is
5890 now generated at build-time in the build directory
5891 (libstdc___la_SOURCES): remove limitsMEMBERS.cc form this list
5892 * src/Makefile.am: reflect changes in src/Makefile.in
5894 1999-05-12 Phil Edwards <pedwards@ball.com>
5896 * docs/faq/index.html: Add more entries (5.4,5.5), finish
5897 all but one empty entry. Add links for HOWTOs, but no files yet.
5898 (Corrected HOWTO links are for bkoz's new scheme.)
5899 * docs/faq/index.txt: Regenerated.
5901 1999-05-12 Benjamin Kosnik <bkoz@happy.cygnus.com>
5903 * testsuite/17_intro/headers.cc: New file.
5904 * stl/bits/std_queue.h: Change stl_bvector.h include path.
5905 * bits/std_cwctype.h: New file.
5907 * testsuite/27_io/filebuf.cc: Need to tweak directory structure.
5909 1999-05-11 Benjamin Kosnik <bkoz@loony.cygnus.com>
5911 * stl/bits/stl_config.h (__USE_MALLOC): Change underlying allocator.
5912 Check __USE_MALLOC before defining specializations containing
5913 __default_alloc_template.
5914 * src/stl-inst.cc: Here too.
5916 * bits/basic_string.h: Change.
5918 * testsuite/make_check_libfree++: More tweaks.
5919 * testsuite/21/capacity.cc: New file.
5921 * src/string.cc: Rename to be consistent with other inst files.
5922 Rename to string-inst.cc.
5923 * src/string*.cc: Change include.
5924 * src/wstring.cc: Rename to wstring-inst.cc.
5925 * src/wstring*.cc: Ditto.
5926 * src/Makefile.in: Also here.
5927 * src/Makefile.am: Ditto.
5929 * src/traits.cc: Remove.
5930 * src/wtraits.cc: Same.
5932 Try a new way of organizing documentation, one with synchronicity
5933 between testsuites and docs subdirectories, and see who yelps.
5934 * docs/html: Remove, use chapter and subject specific directories
5935 instead of forcing things immediately into format of
5939 * docs/faq/text, docs/faq/html: Remove, put in the docs/faq
5940 directory and sort by filename and extension.
5941 * docs/17_intro, 18_support, 19_diagnostics, 20_util, 21_strings,
5942 22_locale, 23_containers, 24_iterators, 25_algorithms,
5943 26_numerics, 27_io: Add.
5944 * docs/17_intro/*: Populate with all the text files. . .
5945 * docs/index.html: Construct.
5947 * testsuite/*: Update with same names as the docs subdir.
5948 * testsuite/results: Where to stash conformance results for the
5949 different snapshots, so that progress/size/speed issues can be
5952 1999-05-10 Benjamin Kosnik <bkoz@loony.cygnus.com>
5954 * src/string.cc: Add _S_copy_chars instantiation, as well as
5955 string::binary operators !=, ==, etc.
5957 * src/Makefile.am (CXXFLAGS): Remove -fvtable-thunks.
5958 * src/Makefile.in (CXXFLAGS): Same here.
5959 * testsuite/make_check_libfree++ (CXX_FLAG): And here.
5961 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
5963 * src/string.cc: Add missing member functions to instantiation list.
5965 1999-05-07 Benjamin Kosnik <bkoz@cygnus.com>
5967 * src/misc-inst.cc: Remove unused string instantiations.
5969 * bits/string.tcc: Tweak, fix.
5970 * bits/basic_string.h: Format. Fix reported error with c_str().
5972 * testsuite/make_check_libfree++: Tweak for shared builds.
5973 * testsuite/21/operations.cc: New file for testing c_str() etc.
5975 1999-05-06 Benjamin Kosnik <bkoz@cygnus.com>
5976 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
5978 * stl/bits/stl_vector.h: Fix the code of vector<> for usage with
5979 an iterator class. Delineate pointer versus iterator differences
5981 * 23/vector_capacity.cc: New file, tests for above.
5983 1999-05-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
5985 * mknumeric_limits: Fix typo. 'unsigned lont' should read
5987 * src/Makefile.am (libstdc___la_SOURCES): add limitsMEMBERS.cc,
5988 generated by mknumeric_limits to the list. Now std_limits.h is
5990 * src/Makefile.in (generate-numeric-limits): new target to handle
5991 automatic generation of bits/std_limits.h and src/limitsMEMBERS.cc.
5992 (all): add target generate-numeric-limits.
5993 (libstdc___la_OBJECTS): add limitsMEMBERS.lo
5994 (libstdc___la_SOURCES): add limitsMEMBERS.cc
5996 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
5999 * bits/c++config.h (_G_USE_CTYPE_ISBIT): Defines new macro for
6000 mask values in ctype_base. Move hacks for _ISBit to locfacets.h.
6001 * bits/locfacts.h: Here.
6003 1999-05-05 Benjamin Kosnik <bkoz@cygnus.com>
6004 Ulrich Drepper <drepper@cygnus.com>
6006 Solaris build issues.
6007 * bits/c++config.h: Define new macros, _G_USE_STRTOF and
6010 * bits/locfacets.tcc (num_get::do_get): Tweak long double and
6011 float overloads to use the above macros. Account for the lack of
6012 strtold on some systems, and revert back to using sscanf.
6014 1999-05-04 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6016 * bits/locfacets.tcc (num_get::do_get): Check the errno variable.
6017 Use strtoul/strtoull for unsigned types. Check the ranges for
6018 short/unsigned short and if necessary for int/unsigned int.
6020 1999-05-04 Benjamin Kosnik <bkoz@cygnus.com>
6022 * src/gen-num-limits.cc (round_style): Need to use mknumericlimits
6023 to generate bits/std_limits.h now, as the SGI std_limits.h is
6024 being depricated. Not done, but should be done immediately: need
6025 to make sure this script is run as part of the configuration
6026 process, because without it "make" in a configured build directory
6027 will fail. Also tweaked: added a space for float_round_style, and
6028 used static_cast of zero to default-initialize, which should be ok
6029 according to the standard. (see 8.5 p5 and 20.1.3).
6030 * mknumeric_limits (OUT_C): Need this for x86 long
6033 * bits/basic_file.h: Include libio.h, not libioP.h.
6034 * src/basic_file.cc: And add libioP.h include here, so that
6035 _IO_init, et. al are well-declared.
6037 * testsuite/make_check_libfree++ (LIB_PATH): Test installed
6038 headers, not source directory headers.
6040 * src/Makefile.am (headers): Add stl_range_errors.h, also adjust
6041 for ext/*. Also add basic_file.h.
6042 * src/Makefile.in (headers): Same.
6044 * bits/std_string.h: Reduce dependencies for faster
6045 pre-processing. Move istream and ostream specific defines into
6046 istream.tcc and ostream.tcc respectively.
6047 * bits/string.tcc: And here.
6048 * bits/basic_string.h: Move getline inline out-of-line, and to
6050 * bits/istream.tcc: Move string::getline and operator>> here.
6051 * bits/ostream.tcc: And here too.
6053 * bits/utility.h: Remove, as clashes with a standard header. Put
6054 __OUTOFRANGE and __LENGTHERROR macros into string.tcc for the time
6055 being, until this can be combined with SGI's approach.
6056 * bits/string.tcc: Add macros, as above.
6057 * bits/loccore.h: Add _Count_ones defines.
6058 * bits/std_string.h: And here too.
6059 * bits/std_locale.h: And here.
6060 * bits/std_ios.h: Take out include here.
6061 * src/Makefile.am (headers): Remove utility.h
6062 * src/Makefile.in (headers): Remove utility.h
6064 * stl/bits/*: Update to SGI STL 3.20.
6065 * stl/ext/pthread_alloc: Delete this file.
6067 1999-05-04 Phil Edwards <pedwards@ball.com>
6069 * docs/faq/html/index.html: Add more entries
6070 * docs/faq/html/index.txt: regenerated.
6072 1999-05-04 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6074 * src/gen-num-limits.cc (DO_DEFINE_MIN_MAX): fix typo.
6076 1999-04-29 Benjamin Kosnik <bkoz@haight.cygnus.com>
6078 * bits/locfacets.tcc (num_get::do_get): Re-implement, with input
6079 from Ulrich and Nathan. Remove extraneous string class usage,
6080 tweak, clean, simplify and consolidate with a eye towards removing
6081 duplcate code. Use strto[l, ll, f, d, ld] instead of sscanf.
6082 Not done: dealing with leading zeros, wchar_t work.
6083 * bits/locfacets.h: And here too.
6087 1999-04-29 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6090 * docs/faq/: New directory.
6091 * docs/faq/html/: Likewise.
6092 * docs/faq/text/: Likewise.
6093 * docs/faq/html/index.html: New file.
6094 * docs/faq/html/index.txt: Likewise. Generated from
6095 docs/faq/html/index.html by lynx.
6097 1999-04-28 Benjamin Kosnik <bkoz@happy.cygnus.com>
6098 Ryszard Kabatek and Branko Cibej
6100 * bits/locfacets.tcc: Modify.
6102 1999-04-27 Benjamin Kosnik <bkoz@happy.cygnus.com>
6104 * bits/sbuf_iter.h: Clean, fix istreambuf_iterator, make
6105 conformant to 14882, wrap non-standard extensions with
6106 _G_RESOLVE_LIB_DEFECTS, remove detritus and cruft, rennovate.
6107 * bits/locfacets.tcc (num_get::do_get(bool)): Return correct iterator.
6109 * testsuite/27/istringstream_formatted.cc: Add tests.
6111 * bits/locfacets.h: Remove cruft from _Format_cache, continue
6112 commenting, simplify.
6113 * bits/locfacets.tcc: Same.
6115 1999-04-27 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6116 * bits/locfacets.tcc (num_get::do_get):
6117 Fix the sscanf format parameter
6118 for long long 'll' (as in C9X) instead of 'l'.
6119 Fix the order of sscanf format parameters: "%dl" --> "%ld".
6120 Change the type of the local variable '__conv' from 'string'
6121 to 'const char*' and adapt the change.
6123 1999-04-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
6125 * bits/locfacets.h: Document _Format_cache, and name data members
6126 after the corresponding functions in numpunct. For instance:
6127 _M_grsep -> _M_thousands_sep, and _M_decsep -> _M_decimal_point.
6128 Break apart _M_boolnames{2] into _M_truename and _M_falsename.
6129 * bits/locfacets.tcc: Same.
6131 * bits/locfacets.h (num_get::_M_extract): Don't allow groupings to
6132 stop parsing--store for later analysis.
6133 * testsuite/27/istringstream_formatted.cc: Add cases.
6135 1999-04-25 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6137 * bits/valarray_meta.h: tweak.
6138 (_UnFunBase, _BinFunBase, _BinFunBase1, _BinFunBase2, _BinBase1,
6139 _BinFunBase2): rename typedef-name _Tp to _Vt to keep the compiler
6140 happy -- boggus warning.
6141 * bits/std_valarray.h: Fix.
6142 (valarray<T>::shift): Fix. Update comment.
6143 (valarray<T>::cshift): Fix.
6145 1999-04-23 Benjamin Kosnik <bkoz@cygnus.com>
6147 * testsuite/27filebuf-2.txt: Delete.
6148 * testsuite/27/filebuf.cc: Put output files directly into the
6149 correct subdirectory (27).
6151 Alexandre Petit-Bianco <apbianco@cygnus.com>
6152 * testsuite/make_check_libfree++: Check generated (*.txt) file
6153 against stored results file (*.tst).
6155 1999-04-22 Benjamin Kosnik <bkoz@nabi.net>
6157 * bits/locfacets.tcc: Fix.
6159 * bits/fstream.tcc (filebuf::seekoff): Output current out pointer.
6160 (filebuf::overflow): Simplify.
6161 (filebuf::xsputn): Correctly handle indeterminate state.
6163 * testsuite/27/istringstream_formatted.cc: Tweak.
6164 * testsuite/27/filebuf.cc: Tweak.
6165 * testsuite/27/filebuf-3.tst: Correct: this is the canonical
6166 results file, please use this in the future to guarantee filebuf
6167 positioning accuracy.
6168 * testsuite/27/filebuf-2.tst: Same.
6170 1999-04-21 Benjamin Kosnik <bkoz@cygnus.com>
6172 * bits/fstream.tcc (filebuf::xsputn): Add.
6173 * bits/std_fstream.h: Declare.
6175 * src/basic_file.cc (__basic_file::open): Add O_CREAT to open
6176 calls using ios_base::trunc.
6178 * bits/sstream.tcc (streambuf::overflow): Fix crasher.
6180 * testsuite/make_check_libfree++ (LOG_FILE): Ugh. Another fix.
6181 * testsuite/27/27stringstream.cc: Same.
6182 * testsuite/27/27stringbuf.cc: More tweaks.
6183 * testsuite/27/27filebuf-2.txt: Remove.
6185 * testsuite/27/27filebuf-1.tst: Append, to force byte size over
6186 BUFSIZE so that overflows/underflow can be tested with default
6188 * testsuite/27/27filebuf-1.tst: Add.
6190 * testsuite/*/*: Remove pre-pended chapter names, as they
6191 duplicate the chapter info contained in the enclosing directory
6194 1999-04-20 Benjamin Kosnik <bkoz@cygnus.com>
6196 * bits/streambuf.tcc (streambuf::xsputn): Re-implement to conform
6197 to sputc conditions.
6199 * bits/ios_base.h: Define here.
6200 * src/ios.cc (ios_base::_M_clear): Remove hack.
6201 * bits/basic_ios.h: Fix rdstate().
6203 * bits/sstream.tcc (streambuf::seekoff): Fix.
6204 * bits/fstream.tcc (filebuf::seekoff): Tweak comments.
6206 * testsuite/make_check_libfree++ (LOG_FILE): More c-c-c-changes.
6207 * testsuite/24/24iterator.cc: Add/Fixes for DEBUG_ASSERT.
6208 * testsuite/27/27stringstream.cc: Same.
6209 * testsuite/27/27stringbuf.cc: Same.
6210 * testsuite/27/27istringstream_formatted.cc: Same.
6211 * testsuite/27/27filebuf.cc: Same.
6213 * bits/locfacets.h: Remove specializations for messages<char> and
6214 messages<wchar_t> ctors. Same for moneypunct. Not required, not used.
6215 * src/locale.cc: Remove definitions for above.
6216 * src/misc-inst.cc: Revert, take out iomanip.h include.
6217 * bits/std_iomanip.h: Tweak, format.
6219 1999-04-19 Benjamin Kosnik <bkoz@cygnus.com>
6221 * bits/loccore.h: Format, move inline.
6222 * bits/locfacets.tcc: Same.
6223 * bits/locfacets.h: Same.
6225 Ulrich Drepper <drepper@cygnus.com>
6226 * aclocal.m4: Re-generate.
6227 * configure, configure.in: Same.
6228 * m4/lc_messages.m4: New file.
6230 1999-04-18 Benjamin Kosnik <bkoz@cygnus.com>
6232 * bits/std_ostream.h: Fix typedef for wchar_t instantiations.
6233 * bits/sstream.tcc: Tweak.
6235 * std/iostream: Put __ioinit inside macro guards.
6237 * src/stlinst.cc: Delete and move to . . .
6238 * src/stl-inst.cc: New file, plus wrapping in namespace std.
6239 * src/Makefile.in: Change.
6240 * src/Makefile.am: Same.
6241 * src/misc-inst.cc: Add istringstream/ostringstream instantiations.
6243 * testsuite/make_check_libfree++: Efficiently format for minimal
6244 space. Enforce stricter execution tests by enabling
6247 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
6249 * docs/text/RELEASE-NOTES: Fix include typo.
6251 * src/Makefile.am (headers): Add istream.tcc.
6252 * src/Makefile.in (headers): Add istream.tcc.
6254 * ltconfig, ltmain.sh, libtool: Update to libtool-1.2g.
6256 1999-04-16 Benjamin Kosnik <bkoz@cygnus.com>
6258 * bits/locfacets.tcc (num_get::do_get(long)): Finish roughing in.
6259 * bits/locfacets.h (num_get::_M_extract): New functin:
6260 consolidate logic for do_get(...) members.
6262 * bits/sbuf_iter.h (istreambuf_iterator::operator++()): Fix.
6263 * testsuite/27/27istringstream_formatted.cc: Add.
6265 1999-04-16 Martin v. Loewis <martin@mira.isdn.cs.tu-berlin.de>
6267 * src/basic_file.cc (__basic_file::open): Fix thinko in
6268 _G_HAVE_IO_FILE_OPEN bits.
6269 * bits/std_istream.h (sentry::sentry(istream, bool)): Fix isspace bug.
6270 * bits/std_cmath.h: Add stdlib.h include for ldiv_t.
6271 * src/complex.cc (FCT): Qualify all functions with global namespace.
6272 * src/locale.cc: Don't qualify memcpy and setlocale.
6273 * src/stdexcept.cc (__out_of_range): Qualify out_of_range with std::.
6274 (__length_error): Likewise, for length_error.
6275 * src/stlinst.cc: Qualify instantiations with std::.
6277 1999-04-15 Benjamin Kosnik <bkoz@cygnus.com>
6279 * C++STYLE: Add ChangeLog guidelines for member functions.
6282 * BADNAMES, BUGS, C++STYLE, CHECKLIST, COPYING,
6283 DESIGN, HEADER_POLICY, PROBLEMS, RELEASE-NOTES, TODO: Moved into
6284 docs/text and made less strident.
6286 * bits/fstream.tcc: Change non-standard ctor to match Sun's sematics.
6287 * bits/std_fstream.h: Same.
6290 * bits/locfacets.h: Touch.
6292 1999-04-15 Ulrich Drepper <drepper@cygnus.com>
6294 * math/cexp.c (cexp): Use NAN instead of nan("").
6295 Reported by joel reed <joelreed@yahoo.com>.
6297 * libio/libioP.h: Define _IO_seek_fpos_t and _IO_seek_off_t based on
6298 _G_IO_IO_FILE_VERSION. Use these types in the prototypes.
6299 * libio/fileops.c: Use _IO_seek_fpos_t and _IO_seek_off_t types
6300 instead of #if cascades.
6301 * libio/genops.c: Likewise.
6302 * libio/ioseekoff.c: Likewise.
6303 * libio/ioseekpos.c: Likewise.
6304 * libio/strops.c: Likewise.
6305 Patch by Chip Salzenberg <chip@perlsupport.com>.
6307 1999-04-15 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6309 * docs: New directory.
6310 * docs/html: Likewise.
6311 * docs/text: Likewise.
6312 * docs/image: Likewise.
6314 * bits/std_cmath.h: Add new functions.
6315 (abs): overload for long and double.
6316 (div): overload for long.
6318 * bits/valarray_array.h: Fix.
6319 * bits/gslice.h: Adjust friend.
6320 * bits/slice_array.h: likewise.
6321 * bits/valarray_meta.h: likewise.
6323 1999-04-13 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6325 * bits/locfacets.h: More changes, for num_get for insertion
6326 operators for integral types. Comment fields in _Format_cache.
6327 * bits/locfacets.tcc: And here too: add preliminary long version.
6328 * testsuite/27/27istringstream_formatted.cc: Add cases.
6330 1999-04-13 Mark Elbrecht <snowball3@usa.net>
6332 * configure.in: Add locale.h to AC_CHECK_HEADERS argument. Call
6333 AC_LC_MESSAGES macro.
6334 * aclocal.m4 (AC_LC_MESSAGES): New. Determines if a target
6335 supports LC_MESSAGES.
6336 * config.h.in: Add entry for HAVE_LC_MESSAGES.
6337 * src/locale.cc (locale::_S_normalize_category): Use the
6338 HAVE_LC_MESSAGES macro to check for LC_MESSAGES support instead of
6339 _G_NO_CLOCALE_HAS_MESSAGES.
6340 * aclocal.m4 (AM_PROG_LD): For DOS style paths, simplify test to
6341 '?:' from '?:\\' so any path beginning with a drive name matches.
6343 1999-04-12 Mark Elbrecht <snowball3@usa.net>
6345 * src/basic_file.cc(sys_open) [O_BINARY]: Declare __testb.
6347 1999-04-12 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6349 * bits/locfacets.h: Tweak.
6350 * bits/locfacets.tcc(do_get): Clean/fix bool method.
6352 * testsuite/21/21nonmember.cc: Same.
6353 * testsuite/21/21compare.cc: Fix license.
6354 * testsuite/27/27istringstream_formatted.cc: New file.
6356 1999-04-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6358 * bits/valarray_meta.h: _BinFunBase1, _BinFunBase2, _BinBase1,
6359 _BinBase2: new template classes; put in there to work around a
6360 compiler limitation. The whole valarray architecture is now
6363 1999-04-08 Benjamin Kosnik <bkoz@haight.constant.com>
6365 * bits/locfacets.tcc: Fix, format.
6366 * bits/locfacets.h: Fix.
6367 * src/locale.cc: Same, plus format.
6369 * bits/basic_string.h: Re-add definition here.
6370 * src/string.cc: Take out.
6372 1999-04-08 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6374 * bits/std_valarray.h: tweak.
6375 * bits/valarray_array.h tweak. use _Expr.
6376 * bits/slice_array.h: likewise.
6377 * bits/gslice_array.h: likewise.
6378 * bits/mask_array.h: likewise.
6379 * bits/indirect_array.h: likewise.
6380 * bits/valarray_meta.h: tweak.
6381 _UnFunBase, _UnFunClos, _BinFunBase, _FunBase, _ValFunClos,
6382 _RefFunClos, _UnBase, _UnClos, _BinBase, _BinClos, _SClos, _GClos,
6383 _IClos: new template classes.
6384 _Meta: renamed to _Expr. Made template with args.
6385 _Constant: made template with two args.
6387 1999-04-05 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6389 * bits/valarray_array.h: tweak.
6391 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
6393 * bits/basic_string.h: Whoops--fix blip.
6395 1999-04-06 Benjamin Kosnik <bkoz@cygnus.com>
6397 Update to SGI STL 3.13
6398 * bits/basic_string.h: Add __get_c_string definition.
6399 * stl/bits/stl_range_errors.h: New file.
6400 * stl/bits/std_bvector.h: Same.
6401 * stl/bits/*: Update.
6403 1999-04-04 1999 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6405 * bits/slice_array.h: tweak.
6406 * bits/gslice_array.h: tweak.
6407 * bits/mask_array.h: tweak.
6408 * bits/indirect_array.h: tweak.
6409 * bits/valarray_array.h: tweak.
6410 (__valarray_copy): replace copy with memcpy.
6411 * bits/std_valarray.h: use __valarray_copy whenever possible.
6412 use __valarray_fill instead of fill.
6414 1999-04-02 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6416 * src/gen-num-limits.cc: new file
6417 * mknumeric_limits: Ditto.
6419 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
6421 * bits/locfacets.tcc: Do a stub version of num_get for short, int,
6423 * bits/locfacets.h: Add num_get::get methods overloaded for int
6424 and short, to resolve ambiguous overloads in istream insertion
6427 1999-03-30 Benjamin Kosnik <bkoz@cygnus.com>
6429 * bits/std_istream.h: Fix.
6430 * bits/istream.tcc: Fix.
6432 1999-03-30 Philip Martin <pm@corris.dircon.co.uk>
6434 * testsuite/24/24iterator.cc: fix ++/-- tests
6436 1999-03-29 Benjamin Kosnik <bkoz@cygnus.com>
6438 * bits/std_ostream.h: Looks like this, actually: Fix up eh-isms.
6439 * bits/ostream.tcc: Same.
6441 * bits/std_istream.h: Bring over ostream changes, implement member
6442 functions. Baseline.
6443 * bits/istream.tcc: New file.
6445 1999-03-26 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6447 * bits/gslice.h (class gslice): fix friends template.
6449 1999-03-23 Benjamin Kosnik <bkoz@cygnus.com>
6451 * bits/std_ostream.h: Fix sentry objects, implement seekp, tellp,
6453 * bits/ostream.tcc: Same.
6455 * bits/std_istream.h: Minor tweaks.
6457 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
6459 * src/locale-inst.cc: Remove duplicate instantiations.
6460 * bits/locfacets.tcc: Tweak definitions of static member.
6462 1999-03-18 Benjamin Kosnik <bkoz@cygnus.com>
6464 * bits/std_fstream.h: Format: prepend "__" in front of
6465 non-standard typedefs.
6466 * bits/fstream.tcc: Match.
6467 * bits/std_streambuf.h: Format: prepend "__" in front of
6468 non-standard typedefs.
6470 * bits/sstream.tcc: Match.
6471 * bits/std_istream.h: Format.
6472 * src/locale-inst.cc: Add num_get instantiations.
6474 * bits/std_sstream.h: Fix crash in stringstreams. Remove member
6475 _M_sb, a basic_stringbuf object, and use the basic_ios pointer
6476 _M_streambuf instead. Make initializations sane. Fix
6477 allocation/deallocation of _M_streambuf.
6478 * bits/std_ostream.h: Fix initialization code.
6479 (ctor): Eliminate redundant this->init(), let base class initialize.
6480 (default ctor): New. Assume base classes already initialzed.
6481 * bits/std_istream.h: Parallel work to ostream.
6482 (ctor): Eliminate redundant this->init(), let base class initialize.
6483 (default ctor): New. Assume base classes already initialzed.
6484 Fix initialization of basic_iostream.
6486 * bits/std_fstream.h: While we're at it, make initializations sane
6487 here too. Now matches sstream.h.
6489 * bits/string.tcc: Fix crash in basic_string::compare.
6490 * bits/basic_string.h: And here.
6491 * bits/c++config.h: Add comment about _G_USE_EXCEPTIONS.
6493 * testsuite/make_check_libfree++: Check shared as well.
6494 * testsuite/27/27stringstream.cc: Add bits.
6495 * testsuite/27/27boolfmt.cc: Add bits.
6496 * testsuite/27/27octfmt.cc: Add bits.
6498 1999-03-17 Benjamin Kosnik <bkoz@happy.cygnus.com>
6500 * configure.in (USE_LONG_DOUBLE): signbitl link error.
6502 * bits/locfacets.h: Fix errors that cause build problems
6503 with current egcs (template parameters have class scope).
6504 * bits/locfacets.tcc: Same.
6505 * src/locale-inst.cc: Same, clean.
6506 * src/misc-inst.cc: Same, clean.
6508 1999-03-17 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6510 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
6511 standard. Re-apply this previous patch.
6513 1999-03-17 Philip Martin <pm@corris.dircon.co.uk>
6515 * bits/basic_string.h: Use __normal_iterator<> for iterators.
6516 * bits/std_sstream.h: Support __normal_iterator<> iterators.
6517 * bits/string.tcc: Ditto.
6518 * src/misc-inst.cc: Ditto.
6519 * src/locale-inst.cc: Ditto.
6520 * stl/bits/stl_iterator.h: Add __normal_iterator<>.
6521 * stl/bits/stl_vector.h: Use __normal_iterator<> for iterators.
6522 * testsuite/24/24iterator.cc: Add test cases for basic_string and
6525 1999-03-16 Benjamin Kosnik <bkoz@cygnus.com>
6527 * bits/locfacets.tcc: Remove macro hack.
6528 * bits/locfacets.h: Tweaks.
6529 * src/misc-inst.cc: Weed out locale-related instantiations.
6530 * src/locale-inst.cc: Same.
6532 * RELEASE-NOTES: Make more changes.
6533 * bits/c++config.h: Bump version number.
6535 * testsuite/make_check_libfree++: Collect diagnostics.
6537 * bits/std_ostream.h: Fix ostream initialization/destruction
6538 problem, related to dtor cleanup and new cached facets, agggggggh.
6539 * bits/ostream.tcc: Tweak.
6540 * bits/locfacets.h: Remove all friends of iostream classes.
6541 * bits/ios_base.h: Same.
6542 * bits/streambuf.tcc: Tweak.
6543 * bits/std_streambuf.h: Tweak.
6544 * bits/std_fstream.h: Tweak.
6545 * bits/fstream.tcc: Tweak.
6546 * src/stdstreams.cc: Tweak.
6547 * src/ios.cc: Close streams.
6549 * math/Makefile.in: Add missing files for shared link errors.
6550 * math/Makefile.am: Same.
6552 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
6554 * src/locale-inst.cc: More wchar_t instantiations.
6555 * src/misc-inst.cc: Missed a few bits.
6556 * testsuite/make_check_libfree++: Add static and shared runs.
6557 * src/ios.cc: Add clarity to ios_base::Init::~Init().
6559 1999-03-15 Benjamin Kosnik <bkoz@cygnus.com>
6561 * bits/std_ostream.h: Format, expunge, simplify. Add cached
6562 facets. Resolve link errors.
6563 * bits/ostream.tcc: Same.
6564 * src/misc-inst.cc: Add ostream, wostream instantiations.
6565 * src/Makefile.am: Add missing bits for stdstreams.cc.
6566 * src/Makefile.in: Same.
6567 * bits/std_iosfwd.h: Format.
6568 * bits/locfacets.h (num_put): Add basic_ostream as a friend to
6569 num_put so that cached _M_fnumput pointer can be deleted in
6570 basic_ostream's dtor. Now everybody plays nice.
6572 1999-03-12 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
6574 * bits/gslice.h (class gslice): Make friends valarray,
6575 gslice_array and _GliceExpression.
6577 1999-03-11 Benjamin Kosnik <bkoz@cygnus.com>
6579 * RELEASE-NOTES: Update.
6580 * src/ios.cc: Use do proper init.
6581 * bits/std_streambuf.h: Tweak.
6582 * bits/std_iostream.h: Take out static member.
6583 * std/iostream: Put here.
6584 * bits/std_ostream.h: Non-default ctor shouldn't smash _M_streambuf.
6585 * bits/std_istream.h: Ditto.
6586 * bits/basic_ios.h: Format.
6587 * bits/ostream.tcc(write): Fix.
6588 * bits/fstream.tcc: Fix stdstreams ctor to do a proper
6589 initialization of the fstream class.
6590 * src/stdstreams.cc: I'm baaaaaaaack.
6592 1999-03-10 Benjamin Kosnik <bkoz@rhino.cygnus.com>
6594 * bits/ios_base.h: Correct comments. Add ios_base::init()
6595 functionality. Format, tweak, expunge, clean, bathe, and hang to dry.
6596 * src/misc-inst.cc: Add instantiations here.
6597 * src/ios.cc: Clean.
6598 * bits/std_iostream.h: Add wrappers, global ios_base::Init object.
6599 * src/stdstreams.cc: Delete this file, as now unnecessary.
6600 * bits/fstream.tcc: Add missing initialization bits for ctor.
6601 * src/Makefile.am (libstdc___la_SOURCES): Delete here as well.
6602 * src/Makefile.in (libstdc___la_OBJECTS): And here.
6604 * bits/streambuf.tcc: Tweak.
6605 * bits/sstream.tcc: Here too.
6607 * bits/fstream.tcc: And change definition as well.
6608 * bits/std_fstream.h: Change ctor.
6609 * src/basic_file.cc (sys_open): Add call that opens a specific fileno.
6610 * bits/basic_file.h: Add declarations.
6612 * testsuite/27/27hello.cc: New file.
6614 * bits/std_ostream.h: Move flush() inline.
6615 * bits/ostream.tcc: From here.
6617 * bits/char_traits.h: Add include of fpos.h for streamoff/streampos.
6618 * bits/std_ios.h: Change include libio to only when necessary.
6619 * bits/fpos.h: Like here.
6620 * ios_base.h: And here.
6622 * bits/locfacets.h: Change _Iostate to _Ios_Iostate.
6623 * bits/locfacets.tcc: Same.
6624 * bits/std_locale.h: Include std_ios.h not std_iosfwd.h.
6625 * bits/std_iosfwd.h: Move _Ios_Iostate to ios_base.h
6627 1999-03-09 Benjamin Kosnik <bkoz@rhino.cygnus.com>
6629 * bits/basic_ios.h: Change _M_ctype to _M_fctype.
6631 * bits/std_streambuf.h: Clean, tweak.
6632 * bits/std_fstream.h: Same.
6633 * bits/std_sstream.h: Same.
6634 * bits/streambuf.tcc: Move most member functions out-of-line.
6635 * bits/fstream.tcc: Same.
6636 * bits/streambuf.tcc: Same.
6638 * bits/basic_file.h(filepos_cur): Set correctly.
6639 (filepos_beg): Same.
6640 (seekpos): Change to __c_streampos.
6641 * src/basic_file.cc (std): Change to __c_streampos.
6643 * testsuite/27/27filebuf.cc: Round one is finished.
6644 * testsuite/27/27filebuf-2.tst: New file, final output should match.
6645 * testsuite/27/27filebuf-3.tst: Same.
6647 1999-03-08 Benjamin Kosnik <bkoz@rhino.cygnus.com>
6649 * bits/basic_file.h: Fix typo, add comments about what to expect
6650 from the various member functions in __basic_file.
6652 * bits/std_fstream.h: Re-do sync/underflow to work
6653 together. Change from sys_read to xsgetn and from sys_write to
6654 xsputn. As it should have been from the beginning. . .
6656 1999-03-06 Benjamin Kosnik <bkoz@haight.constant.com>
6658 * bits/c++config.h (__GLIBCPP__): Add versioning macro.
6660 * bits/basic_file.h(file_beg): New function.
6663 * testsuite/27/27filebuf.cc: Test in, out, in | out.
6664 * bits/std_fstream.h: More _M_mode refinements.
6665 (synch): Add bits for out mode only.
6666 * bits/std_streambuf.h(xsputn): Correct for filebufs.
6667 * bits/std_sstream.h: Ditto.
6669 1999-03-03 Benjamin Kosnik <bkoz@cygnus.com>
6671 * bits/std_fstream.h: Fix _M_mode AND with ios_base::openmode.
6672 * testsuite/27/27filebuf.cc: Modify.
6673 * bits/c++config.h: Fix.
6675 1999-03-02 Benjamin Kosnik <bkoz@tintin.cygnus.com>
6677 * bits/c++config.h: New macro, _G_RESOLVE_LIB_DEFECTS, used to put
6678 code in place that diverges from the final standard, but has been
6679 brought up on the library mailing list.
6681 * bits/std_fstream.h(underflow): Position all three internal
6682 buffer pointers at the same initial position. Re-implement with
6683 basic_filebuf abstraction.
6687 * bits/std_sstream.h: Move _M_mode down into base class
6689 * bits/sstream.tcc: Ditto.
6690 * bits/std_streambuf.h: Ditto.
6692 * testsuite/27/27filebuf.cc: Tweak.
6694 1999-02-27 Benjamin Kosnik <bkoz@slap-happy.cygnus.com>
6696 * bits/std_sstream.h: Ditto.
6697 * bits/std_fstream.h: Fix blip.
6699 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
6701 * C++STYLE: Add cases.
6702 * bits/std_fstream.h: Format.
6703 * bits/std_streambuf.h: Ditto.
6704 * bits/std_sstream.h: Ditto.
6706 * src/basic_file.cc(sys_seek): Fix stack delirium, by keeping
6707 return type for _IO_file_seek and __basic_file::seek the same size.
6708 * bits/basic_file.h: Ditto.
6710 1999-02-26 Benjamin Kosnik <bkoz@happy.cygnus.com>
6712 * bits/fstream.tcc: Add include guards.
6713 * src/misc-inst.cc: Add instantiations for shared libes.
6714 * src/locale-inst.cc: Add instantiaions for use_facet.
6715 * bits/loccore.h: Remove specialization foward decls for
6716 use_facet<ctype>: perhaps add the whole lot of them later on.
6717 * bits/std_fstream.h: Fix.
6718 * bits/locfacets.h: Ditto.
6719 * src/stdstreams.cc: Disable wide streams for now.
6721 * src/Makefile.am (CXXFLAGS): Change up.
6722 * src/Makefile.in (CXXFLAGS): Ditto.
6724 1999-02-25 Benjamin Kosnik <bkoz@happy.cygnus.com>
6726 * src/basic_file.cc: Change to ios_base::seekdir from int.
6727 * bits/basic_file.h: Ditto.
6728 * bits/locfacets.h : Fix blip with new guard macros.
6730 1999-02-25 Benjamin Kosnik <bkoz@cygnus.com>
6732 * stl/bits/stl_config.h (__STL_USE_STD_ALLOCATORS): Minor tweaking.
6733 * bits/c++config.h: Clean. Remove _G_NO_STREAMBUF_ITERATORS and
6735 * amm1/locale: Remove unused defines.
6736 * generic/locale: Ditto.
6737 * src/ios.cc: Ditto.
6738 * src/locale.cc: Ditto.
6739 * src/locale-inst.cc: Ditto.
6740 * src/localename.cc: Ditto.
6741 * src/stdstreams.cc: And here.
6743 * bits/c++config.h (_G_USE_WCHAR_T): Fix.
6744 * bits/loccore.h: Simplify, clean, add wchar_t guards.
6745 * bits/loccore.tcc: Ditto.
6746 * bits/locfacets.h: Ditto.
6747 * src/locale-inst.cc: Ditto.
6748 * bits/locfacets.tcc: Add do_put long long here.
6750 1999-02-24 Benjamin Kosnik <bkoz@cygnus.com>
6752 * bits/std_streambuf.h: Add cached ctype facet, _M_ctype.
6753 * bits/basic_ios.h: Clean. Replace _M_strbuf with
6754 _M_streambuf. Use cached _M_cvt in basic_streambuf.
6755 * bits/std_istream.h: Replace _M_strbuf with _M_streambuf.
6756 * bits/std_fstream.h: Tweak.
6758 * bits/char_traits.h: Remove fpos definitions from here. . .
6759 * bits/fpos.h: New file, put them here. Eventually, this may allow
6760 the severing of char_traits and fpos dependancies.
6761 * src/Makefile.in: Add fpos.h.
6762 * src/Makefile.am: Ditto.
6763 * bits/std_string.h: Add fpos.h include here.
6764 * bits/std_ios.h: And here.
6766 * bits/std_streambuf.h: Change _M_init to _M_initialized.
6767 * bits/ios_base.h: Remove cstdio include.
6768 * bits/std_ios.h: ... Place here.
6770 1999-02-23 Benjamin Kosnik <bkoz@loony.cygnus.com>
6772 * src/Makefile.in (CXXFLAGS): Re-add -fvtable-thunks.
6773 * src/Makefile.am (CXXFLAGS): Re-add -fvtable-thunks.
6775 * bits/basic_file.h: Comment, adjust arguments.
6776 * src/basic_file.cc: Ditto.
6778 * bits/std_fstream.h(seekoff): Error is of fpos type, not integral
6779 type: check and convert accordingly. Re-interpet "resultant stream
6780 position" to indicate external byte sequence location, not internal
6783 1999-02-22 Benjamin Kosnik <bkoz@loony.cygnus.com>
6785 * mkcshadow: And change copyright here.
6786 * src/Makefile.am (CXXFLAGS): Add -g -O2. Add new header
6787 dependencies for stl_pthread_alloc.h, pthread_allocimpl.h,
6788 stl_thread.h, and stl_iterator_base.h.
6789 * src/Makefile.in (CXXFLAGS): Ditto.
6790 * stl/backward/pthread_alloc.h: Remove.
6792 1999-02-19 Benjamin Kosnik <bkoz@loony.cygnus.com>
6794 * bits/std_streambuf.h (sungetc): Use standard defs for putback
6796 * bits/std_fstream.h (pbackfail): Correct.
6798 (seekoff): Implement.
6800 * testsuite/27/27filebuf.cc: Add test cases.
6802 1999-02-18 Benjamin Kosnik <bkoz@loony.cygnus.com>
6804 * bits/std_fstream.h: Go with basic_file's interfaces for dealing
6805 with the external buffers, and stop mucking around with setting
6806 and re-setting the external buf's pointers. Aka, clarity and
6807 simplicity rule the day.
6808 * src/locale.cc: Use memcpy in codecvt::do_in and codecvt::do_out.
6809 Remove partial result and support code.
6811 1999-02-18 Ulrich Drepper <drepper@cygnus.com>
6813 * configure.in: Add hypot, hypotf, atan2f, expf, and copysignf to
6814 list of function which have to be replaced.
6815 Remove expf from list of functions to test for.
6816 Define USE_LONG_DOUBLE in case the libm has partial support for long
6818 * Makefile.in: Regenerated.
6819 * config.h.in: Likewise.
6820 * configure: Likewise.
6821 * libio/Makefile.am (LIBIO_SRCS): Add missing backslash.
6822 * libio/Makefile.in: Regenerated.
6823 * src/Makefile.in: Regenerated.
6824 * string/Makefile.in: Regenerated.
6825 * math/Makefile.am (EXTRA_DIST): Add hypot.c, hypotf.c, hypotl.c,
6826 atan2f.c, expf.c, and $(EXTRA_yes).
6827 (EXTRA_yes): Add signbitl.c mycabsl.c.
6828 (libmath_la_LIBADD): Add $(EXTRA_$(USE_LONG_DOUBLE)).
6829 (libmath_la_SOURCES): remove long double versions.
6830 * math/Makefile.in: Regnerated.
6831 * math/atan2f.c: New file.
6832 * math/copysignf.c: New file.
6833 * math/expf.c: New file.
6834 * math/hypot.c: New file.
6835 * math/hypotf.c: New file.
6836 * math/hypotl.c: New file.
6837 * math/cargf.c: Use correct function and macro names.
6838 * math/ccos.c: Likewise.
6839 * math/ccosh.c: Likewise.
6840 * math/ccoshf.c: Likewise.
6841 * math/ccoshl.c: Likewise.
6842 * math/cexp.c: Likewise.
6843 * math/cexpf.c: Likewise.
6844 * math/cexpl.c: Likewise.
6845 * math/clog.c: Likewise.
6846 * math/clog10.c: Likewise.
6847 * math/clog10f.c: Likewise.
6848 * math/clog10l.c: Likewise.
6849 * math/clogf.c: Likewise.
6850 * math/clogl.c: Likewise.
6851 * math/copysignf.c: Likewise.
6852 * math/csin.c: Likewise.
6853 * math/csinf.c: Likewise.
6854 * math/csinh.c: Likewise.
6855 * math/csinhf.c: Likewise.
6856 * math/csinhl.c: Likewise.
6857 * math/csinl.c: Likewise.
6858 * math/csqrt.c: Likewise.
6859 * math/csqrtf.c: Likewise.
6860 * math/csqrtl.c: Likewise.
6861 * math/ctan.c: Likewise.
6862 * math/ctanf.c: Likewise.
6863 * math/ctanh.c: Likewise.
6864 * math/ctanhf.c: Likewise.
6865 * math/ctanhl.c: Likewise.
6866 * math/ctanl.c: Likewise.
6868 1999-02-17 Benjamin Kosnik <bkoz@cygnus.com>
6870 * testsuite/27/27filebuf.cc: Add cases.
6871 * testsuite/27/27filebuf-1.txt: Remove inadvertent garbage.
6872 * bits/std_streambuf.h: Simplify, always have one return statement.
6873 * bits/std_fstream.h: Tweak comments in underflow.
6875 1999-02-17 Ulrich Drepper <drepper@cygnus.com>
6877 * ltmain.sh: Update from libtool 1.2d and fix Solaris problems.
6878 * ltconfig: Likewise.
6880 1999-02-16 Christophe Pierret <cpierret@businessobjects.com>
6882 * src/locale.cc: Fix assert.
6884 1999-02-16 Benjamin Kosnik <bkoz@cygnus.com>
6886 FIXME: Still need some kind of solution for undefined math symbols.
6887 * src/Makefile.in (locale-inst.lo): Compile with
6888 -fimplicit-templates to fix Solaris link problem.
6889 * src/Makefile.am: Ditto.
6890 * libio/Makefile.in: Add stdfiles.c so that _IO_list_all is defined.
6891 * libio/Makefile.am: Ditto.
6892 * src/locale.cc: Provide some kind of def for _S_tolower.
6893 * bits/locfacets.h: Fix declarations of ctype<wchar_t> to
6894 match ctype<char> for _S_tolower, _S_toupper, _S_table.
6896 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
6898 * bits/loccore.tcc: Move member-template ctor inline...
6899 * bits/loccore.h: ...here.
6900 * src/locale-inst.cc: Add instantiation here.
6902 * testsuite/27/27stringstream.cc: Tweak.
6904 * bits/ostream.tcc: Include sbuf_iter.h.
6906 * bits/ostream.tcc: Convert *this to ostreambuf_iterator before
6907 passing to num_put, as num_put's first argument is an interator,
6910 * testsuite/make_check_libfree++: New file, runs through the
6911 existing test files in the testsuite directory and makes sure
6914 1999-02-10 Brendan Kehoe <brendan@cygnus.com>
6916 * testsuite/21/21compare.cc: Fix typo.
6917 * src/locale.cc (ctype<wchar_t>::_S_{toupper,tolower,table}):
6918 Don't try to provide non-linux versions, since it's impossible to
6919 initialize their const references with the integer 0, no matter
6920 how we try to cast it.
6922 1999-02-10 Benjamin Kosnik <bkoz@cygnus.com>
6924 * bits/std_locale.h: Move std_vector.h dependency.
6925 * bits/std_ios.h: ...from here.
6926 * bits/std_string.h: ...and here.
6927 * src/locale.cc: ..to here.
6928 * bits/loccore.h: Ditto, add vector forward declaration,
6929 make locale::_Impl data members pointers not containers.
6930 * bits/loccore.tcc: Move out-of-line for now.
6931 * bits/locfacets.h: Move vector dependency from here...
6932 * bits/locfacets.tcc: ...to here.
6933 * src/localename.cc: ..and here.
6934 * src/locale-inst.cc: Add include of locfacets.tcc here.
6936 * stl/bits/stl_string_fwd.h: Make __get_c_string non-static.
6937 * bits/basic_string.h: Can't use sizeof on an incomplete type.
6938 * bits/string.tcc: Tweak.
6939 * src/string.cc: And add __get_c_string def here.
6941 * bits/std_fstream.h: Yeah, comment the fill_n idea out as impractical.
6943 * src/stlinst.cc: Add include of stl_config.h.
6945 1999-02-09 Benjamin Kosnik <bkoz@cygnus.com>
6947 * stl/bits/std_bitset.h: Update to SGI STL 3.12.
6948 * stl/bits/stl_config.h: Tweak, update.
6949 * stl/bits/std_stdexcept.h: Ditto, change stl_exception to
6951 * stl/bits/std_memory.h: Reconstructed auto_ptr, Ditto.
6952 * stl/bits/std_functional.h: Ditto.
6954 * stl/bits/stl_string.h: New file, SGI's string
6955 implementation. For reference only, corresponding to string in
6957 * stl/bits/stl_char_traits.h: As above.
6959 * stl/bits/pthread_allocimpl.h: New file corresponding to
6961 * stl/bits/stl_pthread_alloc.h: New file corresponding to
6963 * stl/bits/stl_threads.h: New file.
6965 Note that SGI STL 3.12's file iterator.h is not used.
6966 * stl/bits/std_iterator.h: Ditto.
6967 * stl/bits/stl_iterator.h: Drop in replace.
6968 * stl/bits/stl_iterator_base.h: New file, drop in replace.
6970 * stl/bits/stl_queue.h, stl_rope.h, stl_set.h, stl_stack.h,
6971 stl_string_fwd.h, stl_tempbuf.h, stl_tree.h, stl_vector.h,
6972 stl_pair.h, stl_multimap.h, stl_multiset.h, stl_list.h,
6973 stl_hashtable.h, stl_hash_set.h, stl_hash_map.h, stl_function.h,
6974 stl_deque.h, stl_alloc.h, stl_algo.h, stl_algobase.h, ropeimpl.h:
6975 Drop-in replace (ie, stop changing __SGI_STL_* to _CPP_BITS_* for
6976 preprocessor guards, but fixup include paths and names according
6977 to new directory layout).
6979 1999-02-05 Benjamin Kosnik <bkoz@cygnus.com>
6981 * bits/std_fstream.h: Remove _M_open data member.
6982 * bits/fstream.tcc: Ditto.
6984 * src/locale.cc: Tweak.
6986 * bits/std_sstream.h: Simplify.
6988 * bits/std_streambuf.h: Simplify.
6989 (sputc): Use correct definition of "write area."
6991 * bits/std_fstream.h: Fix uflow.
6992 * src/basic_file.cc: Tweak.
6993 * testsuite/27/27filebuf.cc: Add tests.
6994 * testsuite/27/27filebuf-3.txt: Rename to *-2.txt.
6996 1999-02-02 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
6998 * bits/ios_base.h: Make protected.
7000 1999-02-01 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7002 * bits/ios_base.h: Changes in the class ios_base:
7003 Rename _M_exceptions member to _M_exceptions_data.
7004 Make the member functions rdstate(), clear(), exceptions()
7005 and exceptions(iostate) protected and add the "_M_" prefix.
7006 * src/ios.cc: Ditto.
7007 * bits/basic_ios.h: Adapt the changes from ios_base.
7009 1999-01-29 Benjamin Kosnik <bkoz@cygnus.com>
7011 * bits/std_fstream.h: Remove _M_flags, _M_equilibrate as unnecessary.
7012 * bits/fstream.tcc: Ditto.
7014 * bits/std_fstream.h (underflow): Resize deallocates memory and
7015 resets pointers in the internal cache according to new _M_buf. . dooh!
7016 * src/locale.cc: Mas changes with codecvt::do_in, do_out.
7018 1999-01-29 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7020 * stl/bits/std_memory.h: Modify auto_ptr::reset to reflect the
7023 1999-01-28 Benjamin Kosnik <bkoz@cygnus.com>
7025 * src/locale.cc (codecvt::do_in): Finer-grained tuning to take
7026 into account partial returns.
7027 (codecvt::do_out): Likewise.
7029 * bits/char_traits.h: Change streamsize to be a signed type, as
7030 required by 27.4.1 Types p 2. (Changing to _IO_ssize_t.)
7031 * bits/std_streambuf.h: Make
7032 in_avail() and showmanyc() have streamsize as return types, so
7033 that showmanyc()'s return of eof won't underflow in_avail's return
7034 value and give a bogus result.
7035 * src/misc-inst.cc: And more changes. . .
7037 * bits/std_streambuf.h (basic_streambuf): Add _M_buf_unified to keep
7038 track of joint in/out pointers into the internal buffer.
7039 (sbumpc): Add check for _M_buf_unified.
7043 * testsuite/27/27filebuf.cc: Add cases.
7044 * testsuite/27/27stringbuf.cc: Add showmanyc case.
7046 * bits/std_fstream.h (close): Fix logic error.
7047 (open): Initialize internal pointers based on _M_buf and _M_buf_size.
7048 (showmanyc): Add underflow component, to match the standard.
7050 * bits/fstream.tcc: Ditto.
7052 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
7054 * bits/basic_file.h: Match vtables w/ _IO_FILE_plus.
7055 * src/basic_file.cc: Ditto.
7056 * src/Makefile.in: Add -fvtable-thunks to CXXFLAGS: preferred
7057 format for dealing with _IO_file in libio.
7059 1999-01-27 Ulrich Drepper <drepper@cygnus.com>
7061 * src/basic_file.cc: Include fcntl.h.
7063 1999-01-27 Benjamin Kosnik <bkoz@cygnus.com>
7065 * libio/Makefile.in: Add fileops.lo, genops.lo to objects to debug
7067 * bits/std_streambuf.h: Redefine read posion.
7069 * bits/std_fstream.h: Temporary hack to get vtables working again.
7070 * bits/basic_file.h: Revert.
7071 * src/basic_file.cc: Ditto.
7072 * testsuite/27/27filebuf.cc: Tweak.
7074 1999-01-26 Benjamin Kosnik <bkoz@cygnus.com>
7076 * bits/basic_file.h: Add showmanyc, underflow. .
7077 * src/basic_file.cc: Ditto.
7079 * bits/std_fstream.h (showmanyc): Add bits to ping libio to see if more
7082 * testsuite/27/27filebuf.cc: Add testcases.
7083 * src/basic_file.cc: Add O_CREAT to open calls with
7084 ios_base::trunc as part of the open mode.
7086 1999-01-26 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7088 * bits/basic_ios.h: fix basic_ios::exceptions(iostate)
7090 1999-01-25 Benjamin Kosnik <bkoz@nabi.net>
7092 * src/ios.cc (clear): Correct typo.
7093 * bits/ios_base.h: Tweak spacing.
7095 1999-01-25 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7097 * bits/basic_ios.h: fix basic_ios::fail()
7099 1999-01-25 Benjamin Kosnik <bkoz@loony.cygnus.com>
7101 * bits/basic_file.h: Include libioP.h from libio instead of here.
7102 * bits/iolibio.h: Remove.
7103 * bits/libio.h: Remove.
7105 1999-01-22 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
7107 * bits/std_fstream.h: Tweak cvt-> in call for newer egcs compilers.
7109 1999-01-22 Ulrich Drepper <drepper@cygnus.com>
7111 * Makefile.am (SUBDIRS): Add libio.
7112 * configure.in: Add rule to test for glibc2.
7114 * src/Makefile.am (INCLUDES): Add -I to libio subdir.
7115 (libstdc___la_LIBADD): Add libio.la.
7117 1999-01-21 Benjamin Kosnik <bkoz@cygnus.com>
7119 * bits/basic_file.h: Make new abstraction for underlying C library
7120 FILE, named __basic_file.
7121 * src/basic_file.cc: New file.
7122 * bits/os_raw.h: Delete.
7123 * src/os_raw.cc: Delete.
7124 * src/Makefile.in: Tweak.
7125 * src/Makefile.am: Tweak.
7126 * bits/iolibio.h: Add this here, for the time being.
7127 * bits/libioP.h: Ditto.
7129 * bits/ios_base.h: Delete unused defines.
7130 * src/locale.cc (codecvt<char, char, mbstate_t>::do_in): Use
7131 strcpy to copy between the two buffers.
7133 * testsuite/27/27stringbuf.cc: Change license, fix in_avail tests.
7134 * testsuite/27/27filebuf.cc: New file.
7135 * testsuite/27/27filebuf-1.txt: Data file for above test.
7136 * testsuite/27/27filebuf-2.txt: Ditto.
7138 * bits/std_streambuf.h (uflow): Re-implement default.
7139 * bits/std_fstream.h: Set _M_buf_size based on cstdio's BUFSIZ.
7140 Re-implement virtual functions.
7141 * bits/fstream.tcc: Delete unused mf's.
7143 1998-12-31 Benjamin Kosnik <bkoz@lunatic.cygnus.com>
7145 * bits/fstream.tcc: Add fstream ctor for cin/cout/etc.
7146 * bits/std_fstream.h: Ditto.
7147 * src/stdstreams.cc: Ditto.
7149 * math/cpowl.c: Fix header typo with last change.
7151 1998-12-31 Benjamin Kosnik <bkoz@loony.cygnus.com>
7153 * COPYING: New file (GPL v 2).
7154 * LICENSE.STD: Remove.
7155 * ./*: Change license.
7157 1998-12-30 Benjamin Kosnik <bkoz@haight.constant.com>
7159 * bits/std_streambuf.h (std): Remove static on _M_init.
7160 * bits/streambuf.tcc (std): Ditto.
7162 * bits/std_fstream.h: Add changes as discussed with Nathan, including
7163 state_type and codecvt_type members, the allocation of an internal
7164 buffer, the streamlined codecvt calls, etc.
7166 1998-12-21 Benjamin Kosnik <bkoz@haight.constant.com>
7168 * bits/std_sstream.h: Tweak.
7169 * bits/fstream.tcc: Remove unused stubs.
7170 * bits/std_fstream.h: Tweak.
7172 1998-12-17 Benjamin Kosnik <bkoz@tintin.cygnus.com>
7174 * bits/std_streambuf.h: Move _IO_file_flags into basic_filebuf.
7175 Remove unused _IO_* members, possibly put into filebuf, which may
7177 * bits/std_fstream.h: Add _M_flag.
7178 * bits/sbuf_iter.h: Tweak.
7180 * bits/std_cstdio.h: Add SEEK_SET, SEEK_END, SEEK_CUR.
7181 * bits/ios_base.h: Use.
7183 * src/stdstreams.cc: Modify to reflect standard ctors for
7185 * src/misc-inst.cc: Ditto.
7187 * bits/os_raw.h: Wrap in std namespace. Model parameters on
7188 underlying C library calls instead of the underlying unix
7190 * src/os_raw.cc (_S_os_open): Use fopen, and compute a mode
7191 string as per p.659.
7192 (_S_os_close): Model on fopen.
7193 (_S_os_read): Model on fread.
7194 (_S_os_write): Model on fwrite.
7195 (_S_os_seek): Model on fseek.
7197 * bits/ios_base.h: Tweak.
7198 * bits/std_iosfwd.h: Wrap libio.h include with extern "C".
7199 * bits/std_sstream.h: Tweak.
7200 * bits/sstream.tcc: Remove old, uncalled code.
7201 * bits/std_fstream.h: Major reconstruction.
7202 * bits/fstream.tcc: Disable for the time being.
7204 1998-12-11 Benjamin Kosnik <bkoz@haight.constant.com>
7206 * bits/basic_string.h: Fix insert method.
7207 * stl/bits/stl_iterator.h: Remove previous hack.
7208 * bits/std_streambuf.h (sbumpc): Correct increment/return oddness.
7209 * bits/std_sstream.h: Fix more regressions.
7210 * testsuite/27/27stringbuf.C: Add (almost) complete tests.
7212 1998-12-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
7214 * bits/basic_string.h: Tweak.
7216 * stl/bits/stl_iterator.h: Specialize iterator_traits for int so
7217 that string::append can be instantiated. HACK--checkin
7218 basic_string::iterator class.
7220 1998-12-07 Benjamin Kosnik <bkoz@haight.constant.com>
7222 * bits/std_sstream.h: Tweak.
7223 * bits/sstream.tcc: Tweak ctors.
7225 FIXME invalid friend defs. . WHERE ARE THEY??
7227 * bits/sbuf_iter.h (istreambuf_iterator::equal): Change to new
7228 names for basic_streambuf data members.
7230 * bits/std_streambuf.h: Add getloc() initialization bits.
7231 basic_streambuf(): Initialize with global locale data.
7232 imbue(): Set _M_init.
7234 * bits/std_streambuf.h(seekoff, seekpos): Complete with invalid
7235 stream pos == pos_type(off_type(-1)).
7236 in_avail(): Complete default implementation.
7237 snextc, sbumpc, sputbackc, sungetc, sputc, setg, xsputn,
7238 underflow, uflow, xsgetn, showmany, sync: Ditto.
7240 * bits/std_streambuf.h: _M_snextc_helper(): Remove.
7242 * bits/streambuf.tcc (sputbackc): Temporarily remove, need to
7243 re-populate with in-line member functions that are too big. Add
7244 initialization for _M_init.
7246 1998-12-03 Benjamin Kosnik <bkoz@cygnus.com>
7248 * bits/sstream.tcc: Convert _Allocator to _Alloc. Add typedefs
7249 for basic_string and basic_streambuf. Scope _IO_buf_* pointers to
7252 * src/stdstreams.cc (std): Disable wchar_t instantiations.
7254 * bits/c++config.h (_G_DEPRICATED): Add.
7255 (_G_USE_WCHAR_T): Add.
7256 * bits/std_streambuf.h: Radical reconstruction of basic_streambuf.
7257 Take out _Streambuf_base. Put _IO_FILE data member in basic_filebuf.
7258 * bits/streambuf.tcc (sputbackc): Remove ctor anti-def, Tweak.
7259 * bits/std_fstream.h: Add comment for implementation.
7260 * src/streambuf.cc: Remove.
7261 * src/Makefile.in: Remove streambuf.lo.
7262 * src/misc-inst.cc: Tweak.
7264 1998-12-02 Benjamin Kosnik <bkoz@cygnus.com>
7266 * bits/std_sstream.h: Add const_cast to rdbuf returns.
7267 * testsuite/27stringstream.C: Modify.
7269 1998-11-25 Benjamin Kosnik <bkoz@haight.constant.com>
7271 * src/Makefile.in (libstdc___la_OBJECTS): Add streambuf.lo.
7272 (libstdc___la_SOURCES): Ditto.
7274 * bits/streambuf.tcc: Tweak.
7276 * src/streambuf.cc: New file, add out-of-line definitions for
7279 * src/misc-inst.cc: Remove _Streambuf_base instantiations.
7280 Comment out wchar_t versions of the buffer instantiations, for now.
7282 * bits/std_streambuf.h: Wrap libio.h include with extern "C".
7283 Remove template wrapper around _Streambuf_base.
7284 Move IO_* data members into _Streambuf_base.
7285 Move _Streambuf_base members into streambuf.tcc.
7287 * bits/c++config.h (_G_USE_LIBIO): Enable.
7289 1998-11-02 Nathan Myers <ncm@cantrip.org>
7291 * CHECKLIST: downgrade iterator implementations
7292 * DESIGN: fill out notes about unimplemented features
7294 1998-10-31 Nathan Myers <ncm@cantrip.org>
7296 * CHECKLIST: itemized list of all interfaces, and status of each.
7298 1998-10-30 Nathan Myers <ncm@cantrip.org>
7300 * RELEASE-NOTES: add notes about optional includes, linking, running
7301 * src/Makefile.am: handle header installs properly
7302 * src/Makefile.in: regenerate from new src/Makefile.am
7304 1998-10-30 Benjamin Kosnik <bkoz@loony.cygnus.com>
7306 * bits/basic_string.h: Revert npos pending ciso646.
7307 * src/Makefile.am: Revert CXX flags for now.
7308 * src/Makefile.in: Ditto.
7310 1998-10-30 Brendan Kehoe <brendan@cygnus.com>
7312 * bits/std_sstream.h: Re-order ctors to put base before member
7315 1998-10-30 Ryszard Kabatek <kabatek@chemie.uni-halle.de>
7317 * stl/bits/std_memory.h: Fix typo.
7319 1998-10-30 Nathan Myers <ncm@cantrip.org>
7321 * src/string[A-Z]+.cc: change back to include "string.cc".
7322 * src/Makefile.am: revert filename changes. We need a different
7323 way to keep filenames in std/ from confusing Make.
7324 * bits/basic_string.h: define _S_max_size right, return it from
7325 string::max_size(); churn definition of npos again.
7326 * bits/string.tcc: fix _S_frob_size to avoid uint overflow.
7327 * bits/ios.cc: remove #ifdef on ios_base locale member initialization
7328 * BUGS: clear cruft.
7329 * C++STYLE: Touchup for release.
7330 * CHECKLIST: Touchup for release.
7332 * LICENSE.STD: Add requirement to retain copyrights and to provide
7333 the license with any copies.
7334 * README: Update for release.
7335 * TODO: Minor touchup for release.
7336 * RELEASE-NOTES: prepare for release
7338 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
7340 * src/string[A-Z]+.cc: Include stdstring.cc, not string.cc.
7342 * src/Makefile.am (CXXFLAGS): Define _GNU_SOURCE.
7344 * src/Makefile.am (CXXLINK): New variable. Make sure we don't use
7345 CXX to generate the shared object.
7347 * src/Makefile.am (headers): Remove duplicated char_traits.h.
7349 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
7351 * bits/basic_string.h (basic_string<>::max_size): Subtract 1, not
7352 2, from npos, solving infinite loop problems.
7354 1998-10-29 18:41 Ulrich Drepper <drepper@cygnus.com>
7356 * src/Makefile.am: Add rules to install headers.
7358 1998-10-29 Nathan Myers <ncm@cantrip.org>
7360 * bits/std_ostream.h: Remove #ifdef on operator<< for long double
7361 * bits/ostream.tcc: Remove #ifdef on operator<< for long double
7364 * shadow/bits/wrap_libio.h:
7365 * shadow/bits/wrap_unistd.h: New files.
7367 1998-10-29 Brendan Kehoe <brendan@cygnus.com>
7369 * bits/ostream.tcc (operator<<): Wrap with #ifdef
7370 _G_HAVE_LONG_DOUBLE_IO, to match bits/std_ostream.h.
7372 1998-10-29 Ulrich Drepper <drepper@cygnus.com>
7374 * src/Makefile.am: Add temporarily rules to make sure misc-inst.cc
7375 is not compiled with -fno-implicit-templates in effect.
7377 * src/Makefile.am (EXTRA_SOURCES): Add string.cc and wstring.cc here.
7378 (libstdc___la_SOURCES): Add all the string*.cc and wstring*.cc files.
7379 * src/stringADDCS.cc: Wrapper around string.cc to define individual
7381 * src/stringADDPS.cc: Likewise.
7382 * src/stringADDSC.cc: Likewise.
7383 * src/stringADDSP.cc: Likewise.
7384 * src/stringADDSS.cc: Likewise.
7385 * src/stringBIST.cc: Likewise.
7386 * src/stringBOST.cc: Likewise.
7387 * src/stringCHTR.cc: Likewise.
7388 * src/stringEQPS.cc: Likewise.
7389 * src/stringEQSP.cc: Likewise.
7390 * src/stringEQSS.cc: Likewise.
7391 * src/stringEXTRA.cc: Likewise.
7392 * src/stringGEPS.cc: Likewise.
7393 * src/stringGESP.cc: Likewise.
7394 * src/stringGESS.cc: Likewise.
7395 * src/stringGETLI.cc: Likewise.
7396 * src/stringGTPS.cc: Likewise.
7397 * src/stringGTSP.cc: Likewise.
7398 * src/stringGTSS.cc: Likewise.
7399 * src/stringINSER.cc: Likewise.
7400 * src/stringLEPS.cc: Likewise.
7401 * src/stringLESP.cc: Likewise.
7402 * src/stringLESS.cc: Likewise.
7403 * src/stringLTPS.cc: Likewise.
7404 * src/stringLTSP.cc: Likewise.
7405 * src/stringLTSS.cc: Likewise.
7406 * src/stringMAIN.cc: Likewise.
7407 * src/stringNEPS.cc: Likewise.
7408 * src/stringNESP.cc: Likewise.
7409 * src/stringNESS.cc: Likewise.
7410 * src/stringSCOPY.cc: Likewise.
7411 * src/wstringADDCS.cc: Wrapper around wstring.cc to define individual
7413 * src/wstringADDPS.cc: Likewise.
7414 * src/wstringADDSC.cc: Likewise.
7415 * src/wstringADDSP.cc: Likewise.
7416 * src/wstringADDSS.cc: Likewise.
7417 * src/wstringBIST.cc: Likewise.
7418 * src/wstringBOST.cc: Likewise.
7419 * src/wstringCHTR.cc: Likewise.
7420 * src/wstringEQPS.cc: Likewise.
7421 * src/wstringEQSP.cc: Likewise.
7422 * src/wstringEQSS.cc: Likewise.
7423 * src/wstringEXTRA.cc: Likewise.
7424 * src/wstringGEPS.cc: Likewise.
7425 * src/wstringGESP.cc: Likewise.
7426 * src/wstringGESS.cc: Likewise.
7427 * src/wstringGETLI.cc: Likewise.
7428 * src/wstringGTPS.cc: Likewise.
7429 * src/wstringGTSP.cc: Likewise.
7430 * src/wstringGTSS.cc: Likewise.
7431 * src/wstringINSER.cc: Likewise.
7432 * src/wstringLEPS.cc: Likewise.
7433 * src/wstringLESP.cc: Likewise.
7434 * src/wstringLESS.cc: Likewise.
7435 * src/wstringLTPS.cc: Likewise.
7436 * src/wstringLTSP.cc: Likewise.
7437 * src/wstringLTSS.cc: Likewise.
7438 * src/wstringMAIN.cc: Likewise.
7439 * src/wstringNEPS.cc: Likewise.
7440 * src/wstringNESP.cc: Likewise.
7441 * src/wstringNESS.cc: Likewise.
7442 * src/wstringSCOPY.cc: Likewise.
7443 * src/string.cc: Remove now unneeded #defines now.
7445 1998-10-29 Nathan Myers <ncm@cantrip.org>
7447 * bits/locfacets.tcc: Define num_put::put(... const void*), improve
7449 * bits/ostream.tcc: Delete cruft, rewrite various op<< as members,
7450 add definitions for double, long double, const void*.
7451 * bits/std_ostream.h: Move op<<'s back into class ostream,
7452 define some in-line.
7453 * bits/string.tcc: fix unnecessary-copying bug in op[], typos in
7454 string construction from input iterators that Brendan reported.
7457 1998-10-28 Brendan Kehoe <brendan@cygnus.com>
7459 * stl/bits/stl_pair.h (op!=, op>, p<=, op>=): Add missing definitions.
7461 * bits/valarray_meta.h (class _Constant): Move declaration to the
7462 top, so the rest of the file can grok it.
7463 (_ApplyBinaryFunction::operator[]): Add missing parenthesis.
7465 * bits/std_sstream.h (basic_ostringstream::str): Fix typo of extra
7467 (basic_stringstream::str, both instances): Likewise.
7469 1998-10-28 Nathan Myers <ncm@cantrip.org>
7471 * bits/locfacets.h: fix num_put<>::falsename()
7472 * bits/locfacets.tcc: fix _Format_cache<>::_M_populate bool name init
7473 * testsuite/27/27octfmt.C, testsuite/27/27octfmt.C: new tests
7474 * bits/locfacets.tcc: touch up _S_group_digits.
7475 * src/misc-inst.cc: adjust _S_group_digits insts to match.
7477 1998-10-27 Nathan Myers <ncm@cantrip.org>
7479 * stl/bits/stl_config.h: Turn off long long support, for now.
7480 * src/locale-inst.cc: Instantiate num_put<> only for
7481 ostreambuf_iterator, num_get only for istreambuf_iterator.
7482 * src/misc-inst.cc: Delete duplicate locale-related instantiations,
7483 add lots of new instantiations for num_put support function templates;
7484 remove junk about __match_parallel for ostreambuf_iterator.
7486 1998-10-27 Nathan Myers <ncm@cantrip.org>
7488 * bits/locfacets.tcc: Make num_put's digit grouping work.
7489 * bits/string.tcc: More uglification.
7490 * src/ios.cc: initialize format cache right
7492 1998-10-26 Nathan Myers <ncm@cantrip.org>
7494 * bits/basic_string.h: Uglify more names.
7495 * bits/fstream.tcc: Rewrite some filebut output handling.
7496 * bits/ios_base.h: Cosmetic.
7497 * bits/locfacets.h: Changes to _Format_cache for support of num_put.
7498 Also, specialize its default ctor for optimal default case.
7499 #ifdef out "long long" prototypes for now.
7500 * bits/locfacets.tcc: Do complete, optimized num_put<>::do_put
7501 implementation for integer types. (Still needs optimized
7502 std::copy() applied to ostreambuf_iterator to be optimal.)
7503 * bits/ostream.tcc: Write operator<< for long, bool types.
7504 Make other operators<< non-members, per spec. (Many still
7505 not implemented.) Identify those that fail to create a sentry.
7506 * bits/sbuf_iter: Cosmetic.
7507 * bits/std_fstream.h: Add some filebuf members.
7508 * bits/std_locale.h: Include <limits> for use in bits/locfacets.h
7509 * bits/std_ostream.h: Make member operators<< global, per spec.
7510 (Should do the same in std_istream.h.)
7511 * bits/std_string.h: Include <limits> for use in bits/locfacets.h
7512 * bits/string.tcc: Uglify names
7513 * shadow/bits/std_cstdlib.h: Optimize std::div and std::ldiv.
7514 * src/ios.cc: Specialize _Format_cache<> for char and wchar_t,
7515 for optimal default behavior.
7517 1998-10-26 Benjamin Kosnik <bkoz@loony.cygnus.com>
7519 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc again.
7521 1998-10-21 Nathan Myers <ncm@cantrip.org>
7523 * src/locale.cc: make ctype operations actually work for glibc
7524 * CHECKLIST: add a comprehensive (i.e. huge) implementation
7525 checklist of stdlib facilities. Not filled in yet.
7527 1998-10-20 Nathan Myers <ncm@cantrip.org>
7529 * bits/string.tcc: fix patching NULs on string ends.
7531 1998-10-19 Nathan Myers <ncm@cantrip.org>
7533 * bits/std_iosfwd.h: eliminate "basic_" prefix on streambuf
7534 iterator forward declarations
7535 * bits/sbuf_iter.h: eliminate default template argument definitions
7536 on streambuf iterators (rely on <iosfwd> decls).
7537 * TODO: add note about lazy facet construction
7538 * bits/basic_ios.h: hit operator void* again. This should be the
7539 last time we need to touch it.
7540 * bits/basic_ios.h: copyfmt now returns *this.
7541 * bits/basic_string.h: fix npos again. npos cannot be defined as zero.
7542 * bits/basic_string.h: put back overloaded constructors; adjust
7543 behavior for default allocator on copy constructor.
7544 * bits/char_traits.h: make not_eof return correct type.
7545 * bits/loccore.h: remove call to bits/std_stdexcept.h; subincludes
7546 cannot be in non-standard headers or we get include loops (bad)
7547 * bits/loccore.h: delete ifdef'd out workarounds for old compiler bugs.
7548 * bits/loccore.h: add apparatus to support lazy construction of
7550 * bits/locfacets.tcc: Uglify names in __match_parallel decl.
7551 * bits/std_ios.h: add include of <typeinfo> to get bad_cast for
7552 locale use_facet<> failure.
7553 * bits/std_locale.h: same.
7554 * bits/std_string.h: same.
7555 * bits/std_stdexcept.h: change exception member __msg from a
7556 reference to a regular object.
7557 * bits/string.tcc: add pasting a NUL on the end of strings after
7558 each operation. We had already left room for it, but previously
7559 plugged it only on a call to c_str(), but the WG changed the
7560 requirement when I wasn't looking. (Can't leave them alone for
7561 a second without they break something else.)
7562 * bits/valarray_meta.h: add Gaby's changes from 981018.
7563 * src/locale.cc: add new type _Bad_use_facet to be thrown on
7564 failure of use_facet<>().
7565 * src/stdexcept.cc: remove pragma, remove bkoz's #if 0,
7566 comment out leftover member definitions
7568 1998-10-16 Ulrich Drepper <drepper@cygnus.com>
7570 * string/Makefile.am: Revert last change.
7571 * math/Makefile.am: Likewise.
7573 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
7575 * bits/std_sstream.h: Fix typo.
7577 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
7579 * src/Makefile.am (libstdc___la_SOURCES): Add misc-inst.cc.
7581 * bits/std_sstream.h: Add typedefs, member definitions. Clean.
7582 * bits/std_stdexcept.h: Remove.
7584 1998-10-15 Benjamin Kosnik <bkoz@haight.constant.com>
7586 * src/misc-inst.cc: Tweak again.
7588 * bits/std_sstream.h: Move out-of-line definitions to sstream.tcc.
7589 * bits/sstream.tcc: New file.
7591 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
7593 * configure.in: Test for machine/param.h, sys/machine.h and fp.h.
7594 Don't run AC_C_BIGENDIAN if machine/param.h or sys/machine.h are
7597 * math/mathconf.h: Include sys/machine.h, machine/param.h and fp.h
7599 (INFINITE_P): Use IS_INF macro if available.
7601 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
7603 * math/Makefile.am (EXTRA_LTLIBRARIES): Renamed from
7605 * string/Makefile.am: Likewise.
7607 1998-10-15 Ulrich Drepper <drepper@cygnus.com>
7609 * configure.in (AC_CHECK_FUNCS): Add finite, qfinite, fpclass, and
7611 (AC_CHECK_HEADERS): Add machine/endian.h. If no header specifying
7612 endianess is available run AC_C_BIGENDIAN.
7614 * math/clog10l.c: Add ugly hack around bug in Irix 6.2 header until
7615 fixincludes is fixed.
7616 * math/clogl.c: Likewise.
7617 * math/csqrtl.c: Likewise.
7618 * math/mycabsl.c: Likewise.
7620 * math/mathconf.h: Include machine/endian.h if possible. If no
7621 header describing endianess is available rely on WORDS_BIGENDIAN
7623 (FINITE_P, FINITEF_P, FINITEL_P): Use finite functino if available.
7624 (INFINITE_P, INFINITEF_P, INFINITEL_P): Use fpclass function if
7627 * src/complex.cc (polar): Don't use sincos on OSF machines.
7629 1998-10-09 Benjamin Kosnik <bkoz@loony.cygnus.com>
7631 * src/locale-inst.cc: Don't instantiate time_get for
7632 ostreambuf_iterators as time_get::do_get_weekday and
7633 time_get::do_get_monthname use __match_parallel, which is illegal
7634 for ostreambuf_iterators to use, as they don't have operator== or
7636 * bits/std_stdexcept.h: Add dtor definitions.
7637 Use stl/bits/std_stdexcept.h instead of this file?
7638 * bits/sbuf_iter.h : Tweak.
7639 * src/misc-inst.cc: Tweak.
7641 1998-10-09 Benjamin Kosnik <bkoz@haight.constant.com>
7643 * bits/std_stdexcept.h: New file.
7644 * src/stdexcept.cc: Define the following:
7646 runtime_error::what()
7648 * src/misc-inst.cc: New file.
7649 * src/Makefile.in (libstdc___la_SOURCES): Add misc-inst.cc.
7650 (libstdc___la_OBJECTS): Add misc-inst.lo.
7652 * bits/basic_string.h: Disable non-standard ctor declarations.
7653 * bits/string.tcc: Disable definitions as well.
7654 * src/string.cc: Disable <ios> dependancies.
7655 * bits/sbuf_iter.h (std): Add default to template parameter for
7656 ostreambuf_iterator and istreambuf_iterator.
7657 * bits/std_iosfwd.h: Change istreambuf_iterator to
7658 basic_istreambuf_iterator. Likewise for ostreambuf.
7659 * bits/locfacets.tcc (__match_parallel): Fix typo.
7660 * src/ios.cc (imbue): Remove the _G_HAVE_LOCALE guards around
7662 * bits/std_streambuf.h: Define _Streambuf_base::getloc().
7663 * bits/std_istream.h: Define the following:
7664 get (basic_streambuf<char_type,_Traits>& __sb, char_type __delim)
7665 get (char_type* __s, streamsize __n, char_type __delim);
7666 getline (char_type* __s, streamsize __n, char_type __delim)
7667 * bits/loccore.h : FIXME friend template code for use_facet.
7668 Add std_stdexcept.h include so that range_error will be defined.
7669 Add explicit conversion to string for range_error throws. (HACK?)
7671 1998-10-8 Ulrich Drepper <drepepr@cygnus.com>
7673 * configure.in: Check for sincos, sincosf, and sincosl.
7674 * src/complex.cc (polar): Use sincos if available.
7676 * bits/c++config.h: Fix hack to get LONG_LONG* definitions on Linux.
7677 * stl/bits/std_limits.h: Include bits/c++config.h. HACK!!!
7679 * math/clog10.c: Fix typo (FP_INIFITE_P -> INFINITE_P).
7681 * math/cpow.c: Use c_log, not clog.
7682 * math/cpowf.c: Likewise.
7683 * math/cpowl.c: Likewise.
7685 * math/cexp.c: Remove unused fpclassify calls. Use FINITE_P instead
7688 * math/mathconf.h (FINITE_P, FINITEF_P, FINITEL_P): Define using
7689 isfinite macro if it is available.
7690 (INFINITE_P, INFINITEF_P, INFINITEL_P): Define using isinf macro.
7692 * math/ccosf.c: Use appropriate test macros for this type.
7693 * math/ccoshf.c: Likewise.
7694 * math/ccoshl.c: Likewise.
7695 * math/ccosl.c: Likewise.
7696 * math/cexpf.c: Likewise.
7697 * math/cexpl.c: Likewise.
7698 * math/clog10f.c: Likewise.
7699 * math/clog10l.c: Likewise.
7700 * math/clogf.c: Likewise.
7701 * math/clogl.c: Likewise.
7702 * math/csinf.c: Likewise.
7703 * math/csinhf.c: Likewise.
7704 * math/csinhl.c: Likewise.
7705 * math/csinl.c: Likewise.
7706 * math/csqrtf.c: Likewise.
7707 * math/csqrtl.c: Likewise.
7708 * math/ctanf.c: Likewise.
7709 * math/ctanhf.c: Likewise.
7710 * math/ctanhl.c: Likewise.
7711 * math/ctanl.c: Likewise.
7713 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
7715 * bits/basic_ios.h: Fix previous change.
7717 1998-10-06 Benjamin Kosnik <bkoz@bliss.nabi.net>
7719 * bits/basic_ios.h: Add const_cast<basic_ios&>
7720 (operator void*): As per 5.2.9 p 2, make sure static_cast is
7722 * bits/char_traits.h: No _CharT for specialization, change to 0.
7723 * bits/basic_string.h: As per 9.4.2 p4, initialize with
7724 constant-initializer.
7725 * bits/locfacets.tcc: Add template parameter to initialization list.
7727 1998-10-02 Benjamin Kosnik <bkoz@loony.cygnus.com>
7729 * bits/basic_string.h: Should just be <, not <=.
7731 1998-10-01 Benjamin Kosnik <bkoz@bliss.nabi.net>
7733 * bits/string.tcc (compare): Fix for strings that are similar, but
7734 not the same length.
7736 1998-09-04 Brendan Kehoe <brendan@cygnus.com>
7738 * bits/c++config.h: For __linux__, define _GNU_SOURCE. This is
7739 required for us to get LONG_LONG_{MIN,MAX} out of gcc's limits.h.
7740 We can't check for __GLIBC__ here, since this header can be read
7741 before any system one (that would lead to features.h) being used.
7743 * stl/bits/stl_config.h (__STL_LONG_LONG): Re-enabled
7745 * stl/bits/std_limits.h [__STL_LONG_LONG]: Fix usage to use
7746 LONG_LONG_MIN, LONG_LONG_MAX, and ULONG_LONG_MAX.
7748 * stl/bits/stl_config.h: Don't do __STL_LONG_LONG, it uses
7749 LONGLONG_{MIN,MAX} which I can't find the origin of.
7751 1998-09-03 Brendan Kehoe <brendan@cygnus.com>
7753 * stl/bits/stl_iterator.h: Add extern decl of cin for now; where
7754 should this come from, if not iostream.h?
7755 (class istream_iterator): Make the new operator!= a friend also.
7757 * stl/bits/stl_config.h: Define __STL_HAS_WCHAR_T,
7758 __STL_MEMBER_TEMPLATE_CLASSES, and __STL_LONG_LONG. Don't include
7759 _G_config.h like the egcs one does.
7761 1998-09-01 Brendan Kehoe <brendan@cygnus.com>
7763 * bits/string.tcc: Call `_M_destroy' instead of `destroy'.
7765 * bits/valarray_meta.h: Throughout, rename _Expr typedefs to be
7766 _Expr1 (or _Expr_def if it's taken), and change definitions.
7767 Avoids redecl of the template parm.
7769 * bits/string.tcc (basic_string copy ctor): Fix typo in declaration.
7770 (operator>>): Initialize __ERROR with ios_base::goodbit, not 0.
7772 * bits/std_streambuf.h (_POSIX_SOURCE): Only define if it's not
7775 * src/locale-inst.cc: New file, **TOTAL HACK**. There has GOT to
7776 be a better way to do this.
7778 * src/stlinst.cc: New file.
7780 * BUGS: New file, with various discovered bugs that need to be
7783 * Makefile.in, math/Makefile.in, string/Makefile.in,
7784 src/Makefile.in: Reran automake.
7786 Workarounds, these may not all be the final fixes:
7788 * bits/basic_ios.h (class basic_ios): Make _M_strbuf be protected,
7789 not private, for basic_istream::get() in std_istream.h to be able
7791 (basic_ios::operator void*): Don't use static_cast for the false
7793 (basic_ios::copyfmt): Fix `rhs.except' to be `rhs.exceptions ()'.
7794 This appears to have been in sep94, but didn't get corrected
7797 * bits/basic_string.h (npos): Don't init here.
7798 * bits/string.tcc: Instead, do initialization here, to -1 instead
7799 of the size_type destructor.
7801 * src/traits.cc, src/wtraits.cc: New files.
7802 * bits/char_traits.h: For char_traits<char> and
7803 char_traits<wchar_t>, declare static, but define over in the src
7806 * bits/gslice.h: Comment out forward decls of _Array, valarray,
7807 gslice_array, and _GsliceExpression.
7809 * bits/std_cstdio.h [__sparc__ && __svr4__]: #undef all of
7810 clearerr, feof, ferror, getc, getchar, putc, putchar, stdin,
7811 stdout, and stderr. Note we do get unresolved refs to stdin, but
7812 that'll get fixed by the "true" solution.
7814 * bits/std_ios.h: Include <bits/std_streambuf.h> to get the
7815 definition of basic_streambuf.h, which is used in basic_ios.h to
7818 * bits/std_streambuf.h: Don't include libio.h for now.
7819 (class basic_streambuf): Define missing methods pubimbue and
7822 * src/Makefile.am (libstdc___la_SOURCES): Add stdexcept.cc,
7823 ios.cc, os_raw.cc, stdstreams.cc, locale.cc, localename.cc,
7824 locale-inst.cc, stlinst.cc, traits.cc, wtraits.cc.
7826 * src/ios.cc: Instantiate basic_ios<char> and basic_ios<wchar_t>.
7828 * src/locale.cc: Come up with munged versions of _S_toupper,
7829 _S_tolower, and _S_table instead of the glibc-specific ones, so
7830 they're at least defined, if not necessarily usable. The glibc
7831 ones on any other system will yield unresolved refs to
7832 __ctype_{b,toupper,tolower}.
7834 * src/string.cc: Define all of ADDCS, ADDPS, et al. Add
7835 basic_ios, basic_istream, basic_ostream. Don't do char_traits
7836 anymore cuz of the explicit specialization in char_traits.h.
7837 Also add _S_string_copy, but this doesn't fix it -- cf the BUGS
7838 file for the details.
7840 * stl/bits/stl_algobase.h (equal): Fix to do `! (x==y)'.
7841 * stl/bits/stl_iterator.h (__distance): Likewise.
7843 * stl/bits/stl_iterator.h: As with 8/18 set, define missing op!=,
7844 op>, op<=, and op>= for reverse_iterator. Also add op!= for
7847 1998-08-26 Brendan Kehoe <brendan@cygnus.com>
7849 * bits/string.tcc (basic_string::compare (const char*)): Fix to
7852 1998-08-25 Brendan Kehoe <brendan@cygnus.com>
7854 This should really be fixed with __asm__ directives renaming the
7855 symbol, but keeping the function.
7856 * math/clogf.c (c_logf): Renamed from `clogf'.
7857 * math/clogl.c (c_logl): Renamed from `clogl'.
7858 * math/complex-stub.h (c_logf, c_logl): Change decls.
7860 * bits/locfacets.h (class _Numeric_get): For friend decls, rename
7861 _CharT and _InIter parms, since they duplicate the enclosing ones.
7863 1998-08-19 Brendan Kehoe <brendan@cygnus.com>
7865 Deal with conflict of the iostreams `clog' and our internal
7866 complex number `clog'.
7867 * src/complex.cc: Call `c_log' instead of `clog'.
7868 * math/clog.c (c_log):: Renamed from clog.
7869 * math/complex-stub.h (c_log): Renamed from clog decl.
7871 * bits/locfacets.h (class _Numeric_get): Tweak fwd decls of the
7873 (num_put::put): #if 0 long long version, since we don't declare or
7874 define the long long version of do_put.
7876 1998-08-18 Nathan Myers <ncm@cantrip.org>
7878 * bits/basic_string.h: add basic_string<>::push_back(), fix return
7879 type of get_allocator (thanks to Ryszard Kabatek).
7880 * bits/char_traits.h: make init order of fpos<> members
7882 * bits/ios_base.h: fix decls of ios_base bitmask & enum types, add
7883 flags _S_fd_in etc. for special filebuf ctor.
7884 * bits/locfacets.h: make _Numeric_get and _Format_cache public
7885 to work around problems in friend declarations.
7886 * bits/locfacets.tcc: qualify _S_get_cache in num_get<>::get(..bool&),
7887 fix random type errors & typos
7888 * bits/std_fstream.h: major refitting to bypass libio (for now),
7889 instrument to use bits/fstream.tcc template definitions
7890 * bits/std_iosfwd.h: mess with wrappers
7891 * bits/std_istream.h: remove meaningless comment
7892 * bits/std_ostream.h: instrument to work with ostream.tcc.
7893 * bits/std_streambuf.h: instrument to work with streambuf.tcc
7894 * bits/fstream.tcc: template defs for <fstream>
7895 * bits/ostream.tcc: template defs for <ostream>
7896 * bits/streambuf.tcc: template defs for <streambuf>
7897 * bits/os_raw.h: thin OS interface wrapper, to bypass libio (for now).
7898 * Delete .cc files, replace with bits/*.tcc
7904 src/os_raw.cc: thin interface to OS, to bypass libio (for now).
7905 src/stdstreams.cc: cout, cin, etc. definitions
7906 (these still need work: must be init'd before user statics.)
7909 1998-08-18 Brendan Kehoe <brendan@cygnus.com>
7911 Sent to SGI before checkin:
7912 * stl/bits/stl_vector.h (operator!=, operator>, operator<=,
7913 operator>=): Define.
7914 * stl/bits/stl_bvector.h (vector<bool>::flip): Define method.
7915 * stl/bits/stl_deque.h (operator!=, operator>, operator<=,
7916 operator>=): Define.
7917 (operator==, operator<): Add inline.
7918 * stl/bits/stl_map.h (operator!=, operator<, operator<=,
7919 operator>=): Define.
7920 * stl/bits/stl_multimap.h (operator!=, operator<, operator<=,
7921 operator>=): Define.
7922 * stl/bits/stl_list.h (operator!=, operator<, operator<=,
7923 operator>=): Define.
7924 * stl/bits/stl_set.h (operator!=, operator<, operator<=,
7925 operator>=): Define.
7926 * stl/bits/stl_multiset.h (operator!=, operator<, operator<=,
7927 operator>=): Define.
7929 * bits/std_valarray.h (_Shift_left, _Shift_right): Inherit from
7932 1998-08-15 Nathan Myers <ncm@cantrip.org>
7934 * bits/ios_base.h: change nominal bitmask and enum types to real enums
7935 * bits/locfacets.h: make _Format_cache bool names usable by num_get
7936 * bits/locfacets.tcc: make num_get<>::get(... bool&) use _Format_cache
7937 * bits/std_fstream.h: minor cleanups: ctors delegate to open()
7938 * bits/std_iosfwd.h: more bitmask changes, for ios_base::iostate
7939 * bits/std_sstream.h: formatting cleanups
7941 1998-08-14 Nathan Myers <ncm@cantrip.org>
7943 * bits/locfacets.tcc: implement num_get<>::do_get(..., bool&)
7944 * bits/locfacets.tcc: implement time_get<>::do_get_weekday
7945 * bits/locfacets.tcc: implement time_get<>::do_get_monthname
7946 * bits/locfacets.h: fix missing argument in do_get_monthname
7947 (this is a bug in the standard, ref. 36 in my list.)
7948 * bits/locfacets.h: make month and day name caches mutable
7949 * bits/locfacets.tcc: various typos in get() functions
7950 * bits/sbuf_iter.h: fix omission in istreambuf_iterator::op++().
7951 * bits/std_streambuf.h: fix typo in sgetn (Brendan)
7953 1998-08-12 Nathan Myers <ncm@cantrip.org>
7954 * move streambuf iterators to bits/sbuf_iter.h
7955 * optimize streambuf iterators
7956 * begin generalizing streambuf
7957 * begin implementing num_get<>::get (starting with bool)
7958 * patch stl/bits/stl_config.h so that relops operators are
7959 contained properly, out of the way.
7961 1998-07-24 Nathan Myers <ncm@cantrip.org>
7962 * Fold in SGI 3.11 changes (uglified names, some algorithm
7963 improvements, very minor bug fixes.)
7964 * Uglify names elsewhere to match (s/_T/_Tp/).
7965 * Begin work on optimized streambuf
7966 * Put complex.cc in namespace std:: (thanks Martin)
7968 1998-07-17 Nathan Myers <ncm@cantrip.org>
7970 * bits/char_traits.h: add _Char_traits_match template.
7971 * bits/string.tcc: fix bugs in various find_last* members.
7972 * bits/basic_string.h: redeclare member _S_find.
7973 * stl/bits/stl_iterator.h: change member names in nonstandard
7974 templates bidirectional_reverse_iterator and
7975 random_access_reverse_iterator to match expected changes
7977 * src/string.cc: fix definitions of stream operators.
7979 1998-07-14 16:06 Ulrich Drepper <drepper@cygnus.com>
7981 * Makefile.am (SUBDIRS): Add string.
7983 * configure.in: Test for long double functions separately. Test for
7984 ISO C 89 float functions. Test for endian.h and sys/isa_defs.h.
7985 Generate string/Makefile.
7987 * bits/c++config.h: Define mbstate_t for Solaris.
7989 * bits/char_traits.h: Remove unused #if.
7991 * bits/std_cwchar.h: Declare wide char string functions.
7993 * m4/stringfcts.m4: New file.
7995 * math/complex-stub.h: Declare nan.
7996 * math/nan.c: New file.
7998 * math/mathconf.h: Hack around missing endian.h file.
7999 Handle missing NAN definition.
8000 Handle missing float math functions.
8002 * src/Makefile.am (libstdc___la_LIBADD): Add libstring.la.
8003 (libstdc___la_LDFLAGS): Set version information.
8005 * src/complexl.cc: Don't compile any code if no long double functions
8008 * string/Makefile.am: New file.
8009 * string/dummy.c: New file.
8010 * string/wmemchr.c: New file.
8011 * string/wmemcmp.c: New file.
8012 * string/wmemcpy.c: New file.
8013 * string/wmemmove.c: New file.
8014 * string/wmemset.c: New file.
8016 1998-07-14 10:45 Ulrich Drepper <drepper@cygnus.com>
8018 * configure.in: Make it work.
8019 * install-sh: New file.
8020 * missing: New file.
8021 * mkinstalldirs: New file.
8022 * m4/mathfcts.m4: New file.
8023 * math/Makefile.am: New file.
8025 * bits/std_complex.h (conj): Mark specializations as inline.
8027 * math/carg.c: New file.
8028 * math/cargf.c: New file.
8029 * math/cargl.c: New file.
8030 * math/mycabs.c: New file.
8031 * math/mycabsf.c: New file.
8032 * math/mycabsl.c: New file.
8033 * math/signbit.c: New file.
8034 * math/signbitf.c: New file.
8035 * math/signbitl.c: New file.
8037 * math/ccos.c: Avoid ISO C 9x functionality.
8038 * math/ccosf.c: Likewise.
8039 * math/ccosh.c: Likewise.
8040 * math/ccoshf.c: Likewise.
8041 * math/ccoshl.c: Likewise.
8042 * math/ccosl.c: Likewise.
8043 * math/cexp.c: Likewise.
8044 * math/cexpf.c: Likewise.
8045 * math/cexpl.c: Likewise.
8046 * math/clog.c: Likewise.
8047 * math/clog10.c: Likewise.
8048 * math/clog10f.c: Likewise.
8049 * math/clog10l.c: Likewise.
8050 * math/clogf.c: Likewise.
8051 * math/clogl.c: Likewise.
8052 * math/cpow.c: Likewise.
8053 * math/cpowf.c: Likewise.
8054 * math/cpowl.c: Likewise.
8055 * math/csin.c: Likewise.
8056 * math/csinf.c: Likewise.
8057 * math/csinh.c: Likewise.
8058 * math/csinhf.c: Likewise.
8059 * math/csinhl.c: Likewise.
8060 * math/csinl.c: Likewise.
8061 * math/csqrt.c: Likewise.
8062 * math/csqrtf.c: Likewise.
8063 * math/csqrtl.c: Likewise.
8064 * math/ctan.c: Likewise.
8065 * math/ctanf.c: Likewise.
8066 * math/ctanh.c: Likewise.
8067 * math/ctanhf.c: Likewise.
8068 * math/ctanhl.c: Likewise.
8069 * math/ctanl.c: Likewise.
8071 * math/complex-stub.h: New file.
8073 * math/mathconf.h: New file.
8075 * src/Makefile.am: New file.
8077 * src/complex.cc: Use mathconf.h instead of complex.h.
8078 Don't use cabs, always use __mycabs.
8080 1998-02-13 Brendan Kehoe <brendan@cygnus.com>
8082 * iterator (class reverse_iterator): Do some tweaks to be in sync