Commit Graph

447 Commits

Author SHA1 Message Date
Benjamin Kosnik 93b855862a std_cwchar.h: Guard.
2002-06-18  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c/std_cwchar.h: Guard. Add mbstate_t bits.
	* include/c/std_cwctype.h: Guard.

	* libsupc++/eh_alloc.cc: Tweak include order.
	* libsupc++/pure.cc: Use cstdio.
	* libsupc++/new_op.cc: Remove malloc forward declaration, as
	cstdlib brings it in. Use std::malloc.

	* src/Makefile.am (sources): Remove cmath.cc.
	* src/Makefile.in: Regenerate.
	* src/cmath.cc: Remove.

From-SVN: r54782
2002-06-19 15:19:53 +00:00
Benjamin Kosnik 497e42fdf4 [multiple changes]
2002-06-08  Paolo Carlini  <pcarlini@unitus.it>

	* testsuite/backwards/strstream_members.cc: New.

2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/backwards/strstream: Format.
	* src/strstream.cc: Format.

2002-06-08  Andreas Schwab  <schwab@suse.de>

	* src/strstream.cc (strstreambuf::overflow): Set _M_buf,
	_M_buf_size and _M_buf_size_opt to the new buffer and size.

From-SVN: r54375
2002-06-08 15:14:56 +00:00
Steve Ellcey 3522a91b80 locale-inst.cc (__codecvt_abstract_base): Put inside _GLIBCPP_USE_WCHAR_T ifdef.
* src/locale-inst.cc (__codecvt_abstract_base):
	Put inside _GLIBCPP_USE_WCHAR_T ifdef.
	* include/bits/istream.tcc (basic_istream): Ditto.
	(ws) Ditto.
	(operator>>) Ditto.
	* include/bits/ostream.tcc (basic_ostream): Ditto.
	(endl): Ditto.
	(ends): Ditto.
	(flush): Ditto.
	(operator<<): Ditto.

From-SVN: r54351
2002-06-07 22:06:38 +00:00
Loren J. Rittle 32e7bd5b88 Update last commit.
From-SVN: r54311
2002-06-06 07:43:09 +00:00
Loren J. Rittle 8b5fd4691d Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
* src/Makefile.am (AUTOMAKE_OPTIONS): Use cygnus-style generation.
	* include/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
	* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
	* src/Makefile.in: Regenerate (explicitly with --cygnus option).
	* testsuite/Makefile.in: Likewise.

From-SVN: r54310
2002-06-06 07:32:57 +00:00
Phil Edwards 7f2e0dffc6 TODO: Update.
2002-06-03  Phil Edwards  <pme@gcc.gnu.org>

	* docs/doxygen/TODO:  Update.
	* docs/doxygen/user.cfg.in (SORT_MEMBER_DOCS):  Set to off, now that
	some class members are in 14882 order.
	* docs/html/ext/howto.html:  3.1 is in the past now, not the future.

	* include/std/std_bitset.h:  Update comment.
	* src/bitset.cc:  Update comments, clean up spacing.

	* src/Makefile.am (sources):  Alphabetize for convenience.
	* src/Makefile.in:  Regenerate.

From-SVN: r54200
2002-06-03 04:45:03 +00:00
Benjamin Kosnik 248a9163e1 misc-inst.cc: Define unnecessary algorithm instantiations.
c
2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	* src/misc-inst.cc: Define unnecessary algorithm
	instantiations. Break apart instantiations into groupings below.
	* src/fstream-inst.cc: New.
	* src/io-inst.cc: New.
	* src/istream-inst.cc: New.
	* src/ostream-inst.cc: New.
	* src/streambuf-inst.cc: New.
	* src/sstream-inst.cc: New.
	* src/Makefile.am (sources): Add files.
	* src/Makefile.in: Regenerate.

	* acinclude.m4: Work around automake 1.4-p5 bug, change
	AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.

From-SVN: r53930
2002-05-27 14:55:57 +00:00
Benjamin Kosnik fb5b4dfdcb re PR libstdc++/6594 (strstreambuf leaks 16 bytes - gcc 3.0.x)
2002-05-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/6594
	* src/strstream.cc (strstreambuf): Fix leak.

From-SVN: r53486
2002-05-15 13:15:17 +00:00
Benjamin Kosnik 540f5c9b2d 2002-05-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/fstream.tcc
	(basic_filebuf::_M_allocate_internal_buffer): Remove extraneous
	try/catch blocks.
	* src/localename.cc (locale::_Impl::_M_install_facet): Same.

	* docs/html/install.html: Tweak, add bits about required locales
	for the 22_locale tests when using the gnu model.

	* testsuite/27_io/istream_sentry.cc: Tweak.

From-SVN: r53423
2002-05-13 13:58:00 +00:00
Benjamin Kosnik 5cdd50a591 stdio_filebuf.h: New file.
2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/stdio_filebuf.h: New file.
	* include/ext/enc_filebuf.h: New file.
	* config/io/basic_file_stdio.h (__basic_file::sys_open): Add fd ctor.
	* config/io/basic_file_stdio.cc: Same.
	* include/bits/fstream.tcc (filebuf::_M_allocate_internal_buffer):
	Remove _M_unbuf hacks.
	(filebuf::_M_destroy_internal_buffer): Same.
	(filebuf::filebuf(cfile, openmode, int_type): Remove definition.
	(filebuf::fd): Remove.
	* include/std/std_fstream.h (filebuf::_M_unbuf): Remove.
	(filebuf::filebuf(__c_file*, openmode, int_type)): Remove.
	(filebuf::fd): Remove.
	* src/ios.cc (ios_base::_S_ios_create): Change to use specialized
	filebufs.
	(ios_base::_S_ios_destroy): Same.
	* src/misc-inst.cc (file_filebuf<char>): Add instantiation.
	* include/Makefile.am (ext_headers): Add ext_filebuf.h,
	stdio_filebuf.h.  * include/Makefile.in: Regenerate.

From-SVN: r52961
2002-04-30 19:04:43 +00:00
Benjamin Kosnik d02475fdae re PR libstdc++/5280 (Problems with named locales and iostreams (gnulocale))
2002-04-28  Benjamin Kosnik  <bkoz@redhat.com>

        PR libstdc++/5280
        * config/io/basic_file_stdio.h (__basic_file::sys_getc): Return int.
        (__basic_file::sys_ungetc): Take int.
        * config/io/basic_file_stdio.cc (__basic_file::sys_ungetc): Same.
        * include/bits/fstream.tcc (basic_filebuf::_M_underflow_common):
        Use sys_getc for unbuffered input.
        * testsuite/27_io/narrow_stream_objects.cc (test06): New.

        * src/ios.cc (_M_grow_words): Adjust error checking.
        * testsuite/27_io/ios_base_storage.cc: Same.

From-SVN: r52879
2002-04-29 07:00:50 +00:00
Jason Merrill 5066927d9e re PR libstdc++/4150 (catastrophic performance decrease in C++ code)
PR libstdc++/4150
        * include/std/std_streambuf.h (basic_streambuf::_M_set_indeterminate):
        Move to filebuf.
        (basic_streambuf::_M_set_determinate): Likewise.
        (basic_streambuf::_M_is_indeterminate): Likewise.
        * include/bits/std_fstream.h (basic_filebuf::_M_filepos): New
        non-static data member.
        (basic_filebuf::_M_underflow_common): New non-static member function.
        (basic_filebuf::_M_underflow, _M_uflow): Call it.
        (basic_filebuf::sync): Avoid useless seeking.
        (basic_filebuf::_M_set_indeterminate): Move here from streambuf.
        Set _M_filepos.
        (basic_filebuf::_M_set_determinate): Likewise.
        (basic_filebuf::_M_is_indeterminate): Likewise.
        * include/bits/fstream.tcc (basic_filebuf::_M_really_overflow): Seek
        back to _M_out_beg if necessary.
        (basic_filebuf::seekoff): Likewise.
        (basic_filebuf::_M_underflow_common): Generalization of old
        underflow().  Don't seek back to _M_in_beg.
        * src/ios.cc: Lose _GLIBCPP_AVOID_FSEEK stuff.
        * config/os/solaris/solaris2.?/bits/os_defines.h: Likewise.
        * config/os/bsd/freebsd/bits/os_defines.h: Likewise.
        * config/os/mingw32/bits/os_defines.h: Likewise.
        * testsuite/27_io/filebuf_virtuals.cc (test05): Don't overspecify
        ungetc test.

From-SVN: r52634
2002-04-22 16:28:05 -04:00
Benjamin Kosnik 36ce7daa04 localefwd.h (locale:🆔:_M_id): Do this correctly, as type safety is important, especially on solaris.
2002-04-18  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/localefwd.h (locale:🆔:_M_id): Do this correctly,
	as type safety is important, especially on solaris.
	* include/bits/istream.tcc (istream::read): Clean.
	(istream::readsome): Same.
	* locale.cc: Wrap lines.

	* testsuite/21_strings/inserters_extractors.cc: Tweaks.
	* testsuite/27_io/instantiations.cc (test): Add bool variable...
	* testsuite/21_strings/capacity.cc: Clean.

From-SVN: r52501
2002-04-18 23:47:50 +00:00
Benjamin Kosnik 42ca0438ce concept-inst.cc (vector<locale::facet*>): Remove instantiations.
2002-04-16  Benjamin Kosnik  <bkoz@redhat.com>

	* src/concept-inst.cc (vector<locale::facet*>): Remove instantiations.
	* src/stl-inst.cc (vector::_M_insert_aux): Remove instantiation.
	(__malloc_alloc_template): Conditionalize.

	* include/bits/istream.tcc: Remove sputbackc calls.

	* testsuite/19_diagnostics/stdexceptions.cc: Fix comment.

From-SVN: r52405
2002-04-17 06:20:20 +00:00
Gabriel Dos Reis f1e888aea0 [multiple changes]
2002-04-16  Paolo Carlini <pcarlini@unitus.it>
        * testsuite/24_iterators/rel_ops.cc: New test.

2002-04-16  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>

        * include/bits/type_traits.h (__normal_iterator): Declare in
        __gnu_cxx.  Adjust use at global namespace.
        * include/bits/stl_iterator.h (__normal_iterator): Move
        definition
        into __gnu_cxx::. Add more operator overloads.  Tidy existing
        ones.
        * include/bits/basic_string.h (basic_string): Adjust use of
        __normal_iterator.
        * include/bits/stl_vector.h (_Alloc>): Likewise.
        * src/concept-inst.cc (__gnu_cxx): __normal_iterator<> is now
        here.
        * src/string-inst.cc (operator==): Instantiate in __gnu_cxx.

From-SVN: r52348
2002-04-16 02:29:22 +00:00
Benjamin Kosnik d3a193e36c re PR libstdc++/4164 (33 Memory Leak when using iostream)
2002-04-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/4164
	Valgrind fixes.
	* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
	Call close.
	(__basic_file::close): Call fflush. Correct return if fclose ok.
	(__basic_file::is_open): Make const.
	Change __c_file_type to __c_file.
	* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
	(__basic_file::is_open): Make const.
	* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
	* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
	(filebuf::_M_unbuf): Add.
	(filebuf::_M_file): Change to non-pointer.
	(filebuf::_M_allocate_pback_buffer): Remove.
	* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
	(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
	Change initialization list for _M_file change.
	(filebuf::_M_allocate_pback_buffer): Remove.
	Change _M_file usage to reflect non-pointer data member.

	* config/locale/generic/c_locale.cc
	(locale::facet::_S_create_c_locale): Add parameter.
	* config/locale/generic/collate_members.cc: Change
	_M_compare_helper to _M_compare.
	Change _M_transform_helper to _M_transform.
	* config/locale/generic/monetary_members.cc: Changeup data types.
	Add dtors.
	* config/locale/generic/numeric_members.cc: Add dtors.
	* config/locale/generic/time_members.cc: Add dtors.
	* config/locale/gnu/c_locale.cc: Add parameter.
	* config/locale/gnu/collate_members.cc:Change
	_M_compare_helper to _M_compare.
	Change _M_transform_helper to _M_transform.
	* config/locale/gnu/ctype_members.cc: Better error checking.
	* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
	* config/locale/gnu/messages_members.cc: Tweak comment.
	* config/locale/gnu/monetary_members.cc: Change data types.
	Add dtors.
	* config/locale/gnu/numeric_members.cc: Add dtors, better error
	checking.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.cc
	(locale::facet::_S_create_c_locale): Add parameter.
	* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
	bogus ctor.

	* include/bits/locale_facets.h (moneypunct): Use string literals.
	Don't define dtor.
	(numpunct): Same.
	(__timepunct): Same.
	(locale::_Impl::_M_facets): Change from vector to array.
	(locale::_Impl::_M_names): Change from array of strings to array
	of string literals.
	(locale::facet::_S_create_c_locale): Add parameter.
	(locale::locale::_S_num_facets): Move to...
	(locale::_Impl::_M_facets_size): Here.
	* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
	changes.
	* include/bits/localefwd.h: (locale:🆔:_M_id): Add member function.
	(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
	(locale::_Impl::_Impl(string, size_t)): Change to
	(locale::_Impl::_Impl(const char*, size_t)): This.

	* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
	* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
	(streambuf::_S_pback_size): This.

	* src/globals.cc: Add pre-allocations for "C" facets.
	* src/locale-inst.cc: Remove vector instantiations.
	* src/locale.cc: Remove vector include. Fixups for _M_names,
	_M_facets changes.
	* src/localename.cc: Same.

	* include/bits/stl_vector.h: Fix odd formatting.

	* include/bits/basic_string.tcc: Tweak comment.

	* libsupc++/new: Make sure parameters are uglified.
	* libsupc++/typeinfo: Same.

	* testsuite/22_locale/num_get_members_char.cc: Fixup.
	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
	* testsuite/27_io/filebuf_members.cc: Same.

From-SVN: r52345
2002-04-16 00:45:36 +00:00
Benjamin Kosnik 0dba73e0ab localefwd.h (locale::_Impl::_M_facets): Change from pointer to vector.
2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>

        libstdc++/1072
        * include/bits/localefwd.h (locale::_Impl::_M_facets): Change from
        pointer to vector.
        Remove forward declaration of vector.
        Include vector.
        * include/bits/locale_facets.tcc: Remove vector include.
        (use_locale): Adjust.
        (has_locale): Adjust.
        * src/locale.cc: Adjust.
        * src/localename.cc: Same.

From-SVN: r52095
2002-04-09 21:19:55 +00:00
Jakub Jelinek b0396e3b6c locale_facets.h (__num_base::_S_scale_hex): Remove.
2002-04-09  Jakub Jelinek  <jakub@redhat.com>

	* include/bits/locale_facets.h (__num_base::_S_scale_hex): Remove.
	(__num_base::_S_scale_oct): Remove.
	* src/locale.cc (__num_base::_S_scale_hex): Remove.
	(__num_base::_S_scale_oct): Remove.

From-SVN: r52068
2002-04-09 08:00:08 +00:00
Benjamin Kosnik 1cb7f91f86 bitset_members.cc: New test.
2002-04-09  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/6124
	* testsuite/23_containers/bitset_members.cc: New test.
	* include/std/std_bitset.h (_Bit_count::_S_bit_count): Move..
	(_S_bit_count): Here.
	(_First_one::_S_first_one): Move...
	(_S_first_one): Here.
	Format.
	* src/bitset.cc: Adjust.
	* config/linker-map.gnu: Export.

From-SVN: r52066
2002-04-09 07:35:31 +00:00
Benjamin Kosnik 40e5b28399 ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
2002-04-02  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5268
	* src/ios.cc: (ios_base::Init::_S_ios_destroy): Remove flush calls.
	* testsuite/27_io/ios_init.cc (tests04): Add test.

	libstdc++/3983
	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
	(basic_ios::_M_ios_fctype): Consistently name to _M_fctype.
	* include/bits/basic_ios.tcc: Same. Remove outdated comments.
	* include/bits/istream.tcc: Use _M_fctype, make consistent with
	ostream.
	* testsuite/27_io/ios_init.cc (tests03): Add test.

From-SVN: r51777
2002-04-03 02:32:52 +00:00
Benjamin Kosnik 501e321e0d acinclude: More extensive checks for msgfmt, --enable-nls.
2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5542
	* acinclude: More extensive checks for msgfmt, --enable-nls.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r51732
2002-04-02 02:41:50 +00:00
Phil Edwards 76f6aa8b6c linker-map.gnu: Export __verbose_terminate_handler.
2002-04-01  Phil Edwards  <pme@gcc.gnu.org>

	* config/linker-map.gnu:  Export __verbose_terminate_handler.
	* libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
	Make new LTCOMPILE variable, use it in new special build rules.
	* libsupc++/Makefile.in:  Rebuild.
	* src/vterminate.cc (__verbose_terminate_handler):  Enable use of
	runtime __cxa_demangle.

	* docs/html/install.html:  Update prereqs and instructions.
	* docs/html/19_diagnostics/howto.html:  Bring naming for
	verbose_terminate_handler into line with reality.

From-SVN: r51709
2002-04-01 21:56:42 +00:00
Benjamin Kosnik 663653eb3a basic_ios.h (basic_ios::_M_exception): Move.
2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3129
	* include/bits/basic_ios.h (basic_ios::_M_exception): Move.
	(basic_ios::_M_streambuf_state): Move.
	* include/bits/ios_base (ios_base): To here.
	* include/bits/ios_base.h (ios_base::_S_local_words): To
	_S_local_word_size.
	(ios_base::_M_word_array): To _M_local_word.
	(ios_base::_M_words_limit): To _M_word_size.
	(ios_base::_M_words): To _M_word.
	Comment.
	* include/bits/basic_ios.tcc: Adjust.
	* src/ios.cc (ios_base::_M_grow_words): Tweak.
	* testsuite/27_io/ios_base_storage.cc: Add tests.

	libstdc++/5207
	Kenny Simpson <theonetruekenny@yahoo.com>
	* include/bits/ios_base.h: Fix.

	Richard Henderson  <rth@redhat.com>
	* include/bits/ostream.tcc (ostream::operator<<(_CharT)): Correct
	last change.

	* include/bits/basic_string.h: Tweak formatting.

From-SVN: r51695
2002-04-01 18:39:37 +00:00
Benjamin Kosnik 34ff0b99c1 acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for signbit and __signbit directly.
2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
	signbit and __signbit directly.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* libmath/Makefile.am: Simplify.
	* libmath/Makefile.in: Regenerate.
	* include/c_std/std_cmath.h: Update paths for include of cmath.tcc.

	* include/Makefile.am: Clean up handling of extra "C" header files.
	Add hooks for "C" compatibility headers.
	* include/Makefile.in: Regenerate.

	* include/c/*: Formatting tweaks, cleanups.
	* include/c_std/*: Same.

From-SVN: r51220
2002-03-23 03:19:03 +00:00
Benjamin Kosnik 2ca0895384 vterminate.cc: Format, -fno-exceptions cleanup.
2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>

	* src/vterminate.cc: Format, -fno-exceptions cleanup.

From-SVN: r51185
2002-03-22 20:13:43 +00:00
Paolo Carlini 6d8e16a463 locale-inst.cc (__convert_from_v): Add an additional __size parameter in the declarations.
2002-03-19  Paolo Carlini  <pcarlini@unitus.it>
	    Ulrich Drepper  <drepper@redhat.com>

	* src/locale-inst.cc (__convert_from_v): Add an additional
	__size parameter in the declarations.
	* include/bits/locale_facets.tcc
	(__convert_from_v): When available (that is,
	_GLIBCPP_USE_C99 defined) use snprintf instead of sprintf.
	(num_put::_M_convert_float): Depending on _GLIBCPP_USE_C99
	being defined or not, call and use __convert_from_v in the
	appropriate way.
	(num_put::_M_convert_int): Same here.
	(money_put::do_put(long double)): Same here.

Co-Authored-By: Ulrich Drepper <drepper@redhat.com>

From-SVN: r51050
2002-03-19 22:33:06 +00:00
Steve Ellcey 263c6fa840 acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if...
2002-03-19  Steve Ellcey  <sje@cup.hp.com>

        * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
        GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
        --enable-libunwind-exceptions is set.
        * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
        macro to check for libunwind.
        * configure: Regenerate.
        * src/Makefile.am (libstdc___la_LDFLAGS): Add
        LIBUNWIND_FLAG to libstdc link line.
        * src/Makefile.in: Regenerate.

From-SVN: r51035
2002-03-19 19:50:30 +00:00
Benjamin Kosnik 1fa4bed7b5 c_locale_generic.cc: Move to...
2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>

	* c_locale_generic.cc: Move to...
	* generic/c_locale.cc
	* c_locale_generic.h: Move to...
	* generic/c_locale.h
	* codecvt_specializations_generic.h: Move to...
	* generic/codecvt_specializations.h
	* collate_members_generic.cc: Move to...
	* generic/collate_members.cc
	* ctype_members_generic.cc: Move to...
	* generic/ctype_members.cc
	* messages_members_generic.cc: Move to...
	* generic/messages_members.cc
	* messages_members_generic.h: Move to...
	* generic/messages_members.h
	* moneypunct_members_generic.cc: Move to...
	* generic/monetary_members.cc
	* numpunct_members_generic.cc: Move to...
	* generic/numeric_members.cc
	* time_members_generic.cc: Move to...
	* generic/time_members.cc
	* c_locale_gnu.cc: Move to...
	* gnu/c_locale.cc
	* c_locale_gnu.h: Move to...
	* gnu/c_locale.h
	* collate_members_gnu.cc: Move to...
	* gnu/collate_members.cc
	* ctype_members_gnu.cc: Move to...
	* gnu/ctype_members.cc
	* messages_members_gnu.cc: Move to...
	* gnu/messages_members.cc
	* messages_members_gnu.h: Move to...
	* gnu/messages_members.h
	* moneypunct_members_gnu.cc: Move to...
	* gnu/monetary_members.cc
	* numpunct_members_gnu.cc: Move to...
	* gnu/numeric_members.cc
	* time_members_gnu.cc: Move to...
	* gnu/time_members.cc
	* c_locale_ieee_1003.1-200x.cc: Move to...
	* ieee_1003.1-2001/c_locale.cc
	* c_locale_ieee_1003.1-200x.h: Move to...
	* ieee_1003.1-2001/c_locale.h
	* codecvt_specializations_ieee_1003.1-200x.h: Move to...
	* ieee_1003.1-2001/codecvt_specializations.h
	* messages_members_ieee_1003.1-200x.cc: Move to...
	* ieee_1003.1-2001/messages_members.cc
	* messages_members_ieee_1003.1-200x.h: Move to...
	* ieee_1003.1-2001/messages_members.h

	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Make consistent.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (sources): Change to monetary and numeric.
	* src/Makefile.in: Regenerate.
	* docs/html/configopts.html: Update to ieee_1003.1-2001.

From-SVN: r50472
2002-03-09 02:16:36 +00:00
Benjamin Kosnik 8497934433 std_limits.h: Move static const data members out of generic template...
2002-03-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/std_limits.h: Move static const data members out of
	generic template, into base class __numeric_limits_base.
	* src/limits.cc: Add definitions.
	* config/linker-map.gnu: Add __numeric_limits_base.
	* testsuite/18_support/numeric_limits.cc: Declare test in scope.

From-SVN: r50447
2002-03-08 17:59:14 +00:00
Benjamin Kosnik 41b4d44bac stl_alloc.h: Add extern implicit allocator instantiations.
2002-03-07  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_alloc.h: Add extern implicit allocator
	instantiations.
	* include/bits/basic_string.tcc: Tweak.
	* include/bits/locale_facets.tcc: Remove default args. Add
	has_facet, use_facet extern instantiations.
	* src/stl-inst.cc: Add explicit instantiation.
	* src/locale-inst.cc: Clean. Remove locale member template
	instantiations.

	* testsuite/22_locale/operators.cc (test02): Enable.

From-SVN: r50426
2002-03-08 06:05:21 +00:00
Benjamin Kosnik d3d526aca6 stl_tree.h (_S_rb_tree_red): Make enum.
2002-03-06  Benjamin Kosnik  <bkoz@redhat.com>
	    Stephen M. Webb  <stephen.webb@bregmasoft.com>

	* include/bits/stl_tree.h (_S_rb_tree_red): Make enum.
	(_S_rb_tree_black): Make enum.
	Clean. Format.
	* include/bits/stl_bvector.h (__WORD_BIT): To _M_word_bit, enum.
	* include/bits/stl_algo.h (__stl_chunk_size): _M_chunk_size, enum.
	(__stl_threshold): _M_threshold, enum.
	* src/stl-inst.cc: Same.
	* config/linker-map.gnu: Remove.

	* testsuite/23_containers/vector_bool.cc: New.

Co-Authored-By: Stephen M. Webb <stephen.webb@bregmasoft.com>

From-SVN: r50393
2002-03-07 06:53:23 +00:00
Phil Edwards 037cfe71e0 user.cfg.in: Also document deprecated entries.
2002-03-06  Phil Edwards  <pme@gcc.gnu.org>

	* docs/doxygen/user.cfg.in:  Also document deprecated entries.
	* docs/html/Makefile:  Example rule to rebuild porting-howto.html.
	* docs/html/17_intro/howto.html:  "gcc"->"GCC" changes, when
	referring to the collection as a whole.  New section on which macros
	can be redefined by the user.
	* docs/html/19_diagnostics/howto.html:  Update note for concepts.
	* docs/html/20_util/howto.html:  Update link to SGI.
	* docs/html/faq/index.html:  Update snapshot versions.  New entry
	on why g++ (but not gcc) must currently predefine certain macros.
	* docs/html/faq/index.txt:  Regenerated.

	* include/bits/basic_string.h (basic_string::_S_construct):  Fix
	names in declaration.
	(basic_string::compare):  These are no longer optional.
	* include/bits/ostream.tcc:  Tweak closing brace placement.
	* include/bits/stl_algo.h:  Lots of initial doxygen comment hooks.
	* include/std/std_sstream.h:  Fix typo in comment.
	* include/bits/locale_facets.tcc:  Remove unneeded header inclusion.
	* src/locale.cc:  Likewise.

From-SVN: r50376
2002-03-06 21:22:56 +00:00
Benjamin Kosnik 1bc59af523 ios.cc (ios_base::~ios_base): Tweak.
2002-02-25  Benjamin Kosnik  <bkoz@redhat.com>

	* src/ios.cc (ios_base::~ios_base): Tweak.
	(ios_base::_M_call_callbacks): Deal with null __p.
	(ios_base::ios_base): Set _M_callbacks.
	* include/bits/basic_ios.tcc (basic_ios::init): Adjust comment.
	* testsuite/27_io/ios_init.cc (test02): Fix.

	* mkcheck.in (static_fail): Failed links go to output file.

From-SVN: r50032
2002-02-26 04:55:48 +00:00
Benjamin Kosnik ab3bc736d9 configure.in (target_alias): Default to yes.
2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (target_alias): Default to yes.
	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
	libgcc to default case.

From-SVN: r49959
2002-02-22 11:36:26 +00:00
Benjamin Kosnik c7bbe0c45e locale.cc (moneypunct_byname): Remove definitions.
2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>

	* src/locale.cc (moneypunct_byname): Remove definitions.
	* include/std/std_streambuf.h (streambuf::operator=): Return.

From-SVN: r49799
2002-02-16 00:50:58 +00:00
Benjamin Kosnik a32e3c097e Tune for size.
2002-02-15  Benjamin Kosnik  <bkoz@redhat.com>

	Tune for size.
	* src/string-inst.cc (string::_Rep::_S_terminal): Remove redundant
	explicit instantiation.
	(string::_Rep::_S_max_size): Same.
	* include/bits/basic_string.tcc: Add extern explicit
	instantiations for string, wstring.
	* include/bits/basic_ios.tcc: Add extern explicit instantiations
	for ios, wios.
	* include/bits/streambuf.tcc: Same, for streambuf, wstreambuf.
	* include/bits/istream.tcc: Same, for istream, wistream.
	* include/bits/ostream.tcc: Same for ostream, wostream, iostream,
	wiostream.
	* include/bits/sstream.tcc: Same, for stringbuf, wstringbuf,
	istringstream, wistringstream, ostringstream, wostringstream,
	stringstream, wstringstream.
	* include/bits/fstream.tcc: Same, for filebuf, wfilebuf, ifstream,
	wifstream, ofstream, wofstream, fstream, wfstream.
	* src/misc-inst.cc: Correct comments.
	Add iomanip instantiations for wide streams.
	* include/std/std_iomanip.h: Same.
	* include/bits/locale_facets.tcc: Same.

	* include/std/std_streambuf.h: Correct
	_GLIBCPP_FULLY_COMPLIANT_HEADERS guard.
	* include/std/std_sstream.h: Same.
	* include/std/std_ostream.h: Same.
	* include/std/std_istream.h: Same.
	* include/std/std_fstream.h: Same.

	* include/std/std_streambuf.h: Add definitions for private copy
	ctor and assignment operator.
	* include/std/std_istream.h: Remove declared but undefined copy
	ctor and assignment operator. This is taken care of in ios_base,
	so adding it in the derived class as well is superfluous.
	* include/std/std_ostream.h: Same.

	* include/bits/basic_ios.h (basic_ios::clear): Don't inline.
	* include/bits/basic_ios.tcc (basic_ios::clear): Move definition here.

From-SVN: r49798
2002-02-16 00:19:13 +00:00
Benjamin Kosnik 37cea03434 linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
2002-02-14  Benjamin Kosnik  <bkoz@redhat.com>

	* config/linker-map.gnu: Change tag from GCC_3.1 to GLIBCPP_3.1.
	Add typeinfo bits. Smooth.
	* aclocal.m4: Regenerate.
	* configure: Same.
	* src/Makefile.in: Same.

From-SVN: r49780
2002-02-15 02:21:33 +00:00
Phil Edwards 530539d9d9 acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): New macro, initial revision.
2002-02-14  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  New macro, initial revision.
	* configure.in:  Call it.
	* config/linker-map.gnu:  New file, initial incomplete revision.
	* src/Makefile.am:  Optionally pass version script to the linker.
	* aclocal.m4:  Regenerate.
	* configure:  Regenerate.
	* src/Makefile.in:  Regenerate.

From-SVN: r49770
2002-02-14 18:24:13 +00:00
Benjamin Kosnik 8dba028f10 localename.cc: Remove stdexcept include.
2002-02-13  Benjamin Kosnik  <bkoz@redhat.com>

	* src/localename.cc: Remove stdexcept include.
	* src/locale-inst.cc: Same.
	* src/locale.cc: Same.
	* src/functexcept.cc: Remove string includes.
	* include/std/std_bitset.h: Remove stdexcept include.
	* testsuite/23_containers/bitset_members.cc: Add stdexcept.

From-SVN: r49740
2002-02-13 18:29:12 +00:00
Benjamin Kosnik 005326029f stl_algo (__stl_threshold): Declare external.
2002-02-11   Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_algo (__stl_threshold): Declare external.
	(__stl_chunk_size): Same.
	* include/bits/stl_bvector.h (__WORD_BIT): Same.
	* include/bits/stl_tree.h (_S_rb_tree_red): Same.
	(_S_rb_tree_black): Same.
	* src/stl-inst.cc (__stl_threshold): Define.
	(__stl_chunk_size): Same.
	(__WORD_BIT): Same.
	(_S_rb_tree_red): Same.
	(_S_rb_tree_black): Same.

	* config/io/basic_file_libio.h (__basic_file): Add declarations.
	* include/bits/basic_file.h: Remove.
	* config/io/c_io_stdio.h: Remove _GLIBCPP_BASIC_FILE_ENCAPSULATION
	Declare generic types, specialization.
        * config/io/basic_file_stdio.cc: Definitions.
	* config/io/c_io_libio.h: Remove _GLIBCPP_BASIC_FILE_INHERITANCE.
	Declare generic types.
	* include/Makefile.am (bits_headers): Remove basic_file.h.
	(extra_target_headers): Change basic_file_model.h to basic_file.h.
	(stamp-target): Same.

	* include/bits/stl_alloc.h: Tweaks.
	* include/bits/localefwd.h: Same.

From-SVN: r49697
2002-02-12 04:35:58 +00:00
Benjamin Kosnik 07814743cf std_fstream.h (filebuf::__file_type): Change to __basic_file<char>.
2002-02-07  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5286
	libstdc++/3860
	* include/std/std_fstream.h (filebuf::__file_type): Change to
	__basic_file<char>.
	(filebuf::_M_convert_to_external): Declare.
	* include/bits/fstream.tcc (filebuf::_M_convert_to_external): Define
	codecvt bits for wide streams.
	(filebuf::_M_really_overflow): Use it.
	(filebuf::underflow): Use codecvt.
	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
	(codecvt<__enc_traits>::do_out): Deal with partial.
	(codecvt<__enc_traits>::do_encoding): Return something useful.
	* src/codecvt.cc (codecvt<wchar_t>::do_encoding): Return sizeof
	wchar_t.
	* testsuite/22_locale/codecvt_members_unicode_char.cc (test01):
	Change expected encoding output.
	(test02): Same.
	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test01): Same.
	(test02): Same.

From-SVN: r49601
2002-02-08 01:34:41 +00:00
Andrew Pollard 17325050c2 ios_base.h: Use _Atomic_word for reference counts.
libstdc++/5432
	* include/bits/ios_base.h: Use _Atomic_word for reference counts.
	* include/bits/localefwd.h: Likewise.
	Also use for std::locale:🆔:_S_highwater.
	* src/ios.cc (ios_base::xalloc): Use _Atomic_word.
	* src/locale.cc: Support new usage of _Atomic_word.
	(std::locale::classic): Guard entire function against reentry.
	* src/localename.cc: Support new usage of _Atomic_word.

From-SVN: r49195
2002-01-24 21:14:41 +00:00
Benjamin Kosnik 4b9aaf6379 Audit for LANG independence.
2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	Audit for LANG independence.
	* include/bits/localefwd.h: Tweaks.
	* include/bits/locale_facets.tcc (money_get::do_get(long double)):
	Use __convert_to_v.
	(time_get::do_get_year): Same.
	(__convert_from_v): Add.
	(num_put::_M_convert_float): Use.
	(num_put::_M_convert_int): Same.
	(money_put::do_put): Same.

	* src/locale-inst.cc: Add instantiations for __convert_from_v.
	* config/locale/time_members_gnu.cc: Cleanup setlocale usage.
	* config/locale/time_members_generic.cc:
	* config/locale/messages_members_gnu.cc: Same.
	* config/locale/messages_members_gnu.h: Same.

	* testsuite/22_locale/codecvt_members_wchar_t_char.cc (test02): New.
	* testsuite/22_locale/codecvt_members_char_char.cc (test02): New.
	* testsuite/22_locale/collate_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/collate_members_char.cc (test02): New.
	* testsuite/22_locale/ctype_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/ctype_members_char.cc (test03): New.
	* testsuite/22_locale/messages_members_char.cc (test02): New.
	* testsuite/22_locale/moneypunct_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/moneypunct_members_char.cc (test02): New.
	* testsuite/22_locale/money_get_members_wchar_t.cc (test04): New.
	* testsuite/22_locale/money_get_members_char.cc (test04): New.
	* testsuite/22_locale/money_put_members_wchar_t.cc (test04): New.
	* testsuite/22_locale/money_put_members_char.cc (test04): New.
	* testsuite/22_locale/numpunct_members_wchar_t.cc (test02): New.
	* testsuite/22_locale/numpunct_members_char.cc (test02): New.
	* testsuite/22_locale/time_put_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/time_put_members_char.cc (test03): New.
	* testsuite/22_locale/time_get_members_wchar_t.cc (test07): New.
	* testsuite/22_locale/time_get_members_char.cc (test07): New.
	* testsuite/22_locale/num_get_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/num_get_members_char.cc (test03): New.
	* testsuite/22_locale/num_put_members_wchar_t.cc (test03): New.
	* testsuite/22_locale/num_put_members_char.cc (test03): New.

	* testsuite/22_locale/time_get_members_char.cc: Fixups for global
	locale issues.
	* testsuite/22_locale/time_get_members_char.cc: Same.

2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5280
	* include/bits/localefwd.h: Tweak comments.
	* include/bits/locale_facets.h (__convert_to_v): Add.
	* include/bits/locale_facets.tcc (num_get::do_get(double)): Use it.
	(num_get::do_get(float)): Same.
	(num_get::do_get(long double)): Same.
	(num_get::do_get(bool)): Same.
	(num_get::do_get(long)): Same.
	(num_get::do_get(long long)): Same.
	(num_get::do_get(unsigned int)): Same.
	(num_get::do_get(unsigned short)): Same.
	(num_get::do_get(unsigned long)): Same.
	(num_get::do_get(unsigned long long)): Same.
	* config/locale/c_locale_gnu.cc (__convert_to_v): Specialize.
	* config/locale/c_locale_generic.cc: Same.

From-SVN: r49108
2002-01-22 23:09:04 +00:00
Benjamin Kosnik 54c1bf7801 Makefile.am (std_headers): Remove cXXX from list.
2002-01-04  Benjamin  Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (std_headers): Remove cXXX from list.
	(c_base_srcdir): No bits subdirectory.
	(c_base_builddir): Same.
	(c_base_headers): Adjust names, add ciso646.
	(bits_headers): Remove std_xxx.h headers.
	* include/Makefile.in: Regenerate.

	* include/ext/iterator: Adjust includes.
	* include/ext/ropeimpl.h: Same.
	* include/ext/stl_hash_fun.h: Same.
	* include/ext/algorithm: Same.

	* include/backward/bvector.h: Adjust includes.
	* include/backward/vector.h: Same.
	* include/backward/strstream: Same.
	* include/backward/streambuf.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/set.h: Same.
	* include/backward/queue.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/map.h: Same.
	* include/backward/list.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/iostream.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/fstream.h: Same.
	* include/backward/deque.h: Same.
	* include/backward/complex.h: Same.

	* include/bits/std_algorithm.h: Move to...
	* include/std/algorithm: ...here.
	* include/bits/std_iosfwd.h, std_locale.h, std_stack.h,
	std_bitset.h, std_ios.h, std_map.h, std_stdexcept.h,
	std_complex.h, std_iostream.h, std_memory.h, std_streambuf.h,
	std_deque.h, std_istream.h, std_numeric.h, std_string.h,
	std_fstream.h, std_ostream.h, std_utility.h, std_iterator.h,
	std_queue.h, std_valarray.h, std_functional.h, std_limits.h,
	std_set.h, std_vector.h, std_iomanip.h, std_list.h, std_sstream.h:
	Same.

	* include/c_std/bits/std_cassert.h: Move to...
	* include/c_std/cassert: Here.
	* include/c_std/std_cctype.h, std_cerrno.h, std_cfloat.h,
	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
	std_cwctype.h: Same.
	* include/c_std/cmath: Adjust cmath.tcc include.
	* include/c_std/cstdlib: Adjust includes.
	* include/c_std/cwchar: Same.
	* include/c_std/ctime: Same.
	* include/c_std/cstring: Same.
	* include/c_std/cstdio: Same.
	* include/c_std/bits: Remove directory.

	* include/c/bits/std_cassert.h: Move to...
	* include/c/cassert: Here.
	* include/c/std_cctype.h, std_cerrno.h, std_cfloat.h,
	std_climits.h, std_clocale.h, std_cmath.h, std_csetjmp.h,
	std_csignal.h, std_cstdarg.h, std_cstddef.h, std_cstdio.h,
	std_cstdlib.h, std_cstring.h, std_ctime.h, std_cwchar.h,
	std_cwctype.h: Same.
	* include/c/bits: Remove directory.

	* include/std/cwctype: Remove.
	* include/std/cwchar: Remove.
	* include/std/ctime: Remove.
	* include/std/cstring: Remove.
	* include/std/cstdlib: Remove.
	* include/std/cstdio: Remove.
	* include/std/cstddef: Remove.
	* include/std/cstdarg: Remove.
	* include/std/csignal: Remove.
	* include/std/csetjmp: Remove.
	* include/std/cmath: Remove.
	* include/std/clocale: Remove.
	* include/std/climits: Remove.
	* include/std/ciso646: Remove.
	* include/std/cfloat: Remove.
	* include/std/cerrno: Remove.
	* include/std/cctype: Remove.
	* include/std/cassert: Remove.

	* include/bits/fpos.h: Adjust includes, removing <bits/std_xxx.h>
	files and subsituting <.xxx>
	* include/bits/valarray_array.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/stl_alloc.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/pthread_allocimpl.h: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/localefwd.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/boost_concept_check.h: Same.
	* include/bits/basic_file.h: Same.
	* include/std/bitset: Same.
	* include/std/complex: Same.
	* include/std/fstream: Same.
	* include/std/functional: Same.
	* include/std/ios: Same.
	* include/std/iostream: Same.
	* include/std/ostream: Same.
	* include/std/sstream: Same.
	* include/std/streambuf: Same.
	* include/std/string: Same.
	* include/std/iterator: Same.
	* include/std/valarray: Same.

	* src/ios.cc: Adjust includes.
	* src/valarray-inst.cc: Same.
	* src/string-inst.cc: Same.
	* src/stl-inst.cc: Same.
	* src/stdexcept.cc: Same.
	* src/misc-inst.cc: Same.
	* src/localename.cc: Same.
	* src/locale-inst.cc: Same.
	* src/locale.cc: Same.
	* src/limits.cc: Same.
	* src/concept-inst.cc: Same.
	* src/complex_io.cc: Same.
	* src/codecvt.cc: Same.
	* src/bitset.cc: Same.
	* src/cmath.cc: Same.

From-SVN: r48544
2002-01-04 21:27:36 +00:00
Paolo Carlini e538847e1c hash_map: Move into __gnu_cxx, tweak, add using declarations.
2001-12-31  Paolo Carlini  <pcarlini@unitus.it>

	* include/ext/hash_map:  Move into __gnu_cxx,
	tweak, add using declarations.
	* include/ext/hash_set:  Ditto.
	* include/ext/ropeimpl.h:  Ditto.
	* include/ext/stl_hash_fun.h:  Ditto.
	* include/ext/stl_hashtable.h:  Ditto.
	* include/ext/stl_rope.h:  Ditto.
	* src/ext-inst.cc: Tweak.
	* testsuite/ext/rope.cc: Tweak.

From-SVN: r48422
2001-12-31 10:22:00 +00:00
Phil Edwards 2d53d9ebe7 re PR libstdc++/3829 (missing template instantiations)
2001-12-27  Phil Edwards  <pme@gcc.gnu.org>

	PR libstdc++/3829
	* src/misc-inst.cc:  Many additional I/O-related instantiations.
	* testsuite/27_io/instantiations.cc:  New file.

From-SVN: r48324
2001-12-27 07:26:00 +00:00
Jeff Law 415f500c76 * src/locale-inst.cc: Include <bits/std_cstdlib.h>
From-SVN: r48259
2001-12-21 17:39:43 -07:00
Benjamin Kosnik def9790d51 Clean up initialization and simplfy caching of underlying "C" locale objects.
2001-12-14  Benjamin Kosnik  <bkoz@redhat.com>

	Clean up initialization and simplfy caching of underlying "C"
	locale objects.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t):
	Unconditionally create __clocale object for all named locales,
	including "C" and "POSIX".
	* config/locale/c_locale_generic.cc
	(locale::facet::_S_create_c_locale): Always set __cloc to zero.
	* config/locale/c_locale_gnu.cc: Always delete.
	* include/bits/localefwd.h (locale::facet::_S_c_locale): New.
	* src/locale.cc (locale::classic()): Initialize
	locale::facet::_S_c_locale.
	(locale::facet::_S_c_locale): Define.

	* include/bits/locale_facets.h: Add ctype_byname<wchar_t> ctor
	specialization.
	* src/locale.cc: Add definition here.
	* config/os/gnu-linux/bits/ctype_inline.h: Tweak.
	* config/os/gnu-linux/bits/ctype_noninline.h: Adjust initializations.
	* include/bits/locale_facets.h (ctype<char>::_M_c_locale_ctype): Add.
	Adjust ctors, dtors.
	(ctype<char>::_M_toupper): Remove const&.
	(ctype<char>::_M_tolower): Remove const&.
	(ctype<char>::_M_ctable): Remove const&.

	* include/bits/locale_facets.h (collate): Clean up initialization
	of _M_c_locale_collate in ctors and dtors.
	* config/locale/collate_members_gnu.cc: Always use extended
	functions.

	* include/bits/locale_facets.h (messages): Clean up inits in ctor/dtor.
	(messages_byname): Same.
	* config/locale/messages_members_generic.h (messages::~messages):
	Remove.
	* config/locale/messages_members_gnu.h: Same.

	* include/bits/localefwd.h: Clean. Move dtor definitions to
	* src/locale.cc: Here.
	* testsuite/22_locale/facet.cc: Fix spelling.

	Named locale support for ctype<wchar_t>.
        * acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add variable
        ctype_members_* bits.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * src/Makefile.am (sources): Add ctype.cc.
        * src/Makefile.in: Regenerate.
        * config/locale/ctype_members_generic.cc: New file.
        * config/locale/ctype_members_gnu.cc: New file.
        * src/locale.cc: Remove ctype<wchart_t> definitions.

From-SVN: r48034
2001-12-15 07:05:04 +00:00
Benjamin Kosnik 85230e5255 locale.cc (locale::locale(const char*)): Deal with locales named "".
2001-12-13  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3679
	* src/locale.cc (locale::locale(const char*)): Deal with locales
	named "".
	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Modify.

From-SVN: r47968
2001-12-13 11:12:56 +00:00
Benjamin Kosnik 9e5c7dba50 Named locale support for ctype<char>.
2001-12-12  Benjamin Kosnik  <bkoz@redhat.com>

	Named locale support for ctype<char>.
	* config/locale/c_locale_gnu.h (_GLIBCPP_C_LOCALE_GNU): New.
	* config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>): Add
	definitions for alternate constructor.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/newlib/bits/ctype_noninline.h (ctype): Same.
	* config/os/irix/irix6.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/irix/irix5.2/bits/ctype_noninline.h (ctype): Same.
	* config/os/hpux/bits/ctype_noninline.h (ctype): Same.
	* config/os/generic/bits/ctype_noninline.h (ctype): Same.
	* config/os/djgpp/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
	* config/os/aix/bits/ctype_noninline.h (ctype): Same.
	* include/bits/locale_facets.h (ctype<_CharT>): Remove dummy
	definitions for all virtual functions. These are now explicitly
	undefined for non-required factets, ie any non-char, non-wchar_t
	instantiations.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t): Named
	locales use alternate constructor for ctype facet.
	* include/bits/locale_facets.h (ctype<char>::ctype(__c_locale, const
	mask*, bool, size_t): Add.
	(ctype<wchar_t>::ctype(__c_locale, size_t): Add.
	* src/locale.cc (ctype<wchar_t>::ctype(__c_locale, size_t)): Add
	definition.

	* testsuite/22_locale/ctype_members_char.cc (test02): Add, mark
	XFAIL for non-gnu locale models.

From-SVN: r47953
2001-12-12 23:16:35 +00:00
Benjamin Kosnik bf3b866e31 ctype_inline.h: Remove spaces.
2001-12-11  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/generic/bits/ctype_inline.h: Remove spaces.
	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
	* include/bits/locale_facets.h (__num_base): Move double data
	members to first in class.
	* include/bits/locale_facets.tcc: Re-arrange, tweak.
	* src/locale.cc: Clean.
	*include/bits/stl_vector.h: Space typedefs.

From-SVN: r47918
2001-12-12 03:22:25 +00:00
Paolo Carlini 78bd50313e basic_string.tcc (_M_replace_safe): New function.
2001-12-10  Paolo Carlini  <pcarlini@unitus.it>
            Nathan Myers  <ncm@cantrip.org>

	* include/bits/basic_string.tcc (_M_replace_safe):  New function.
	(_M_replace(input_iterator_tag), append members):  Use it.
	(_M_replace(forward_iterator_tag)):  Remove.
	* include/bits/basic_string.h:  Adjust declarations.
	* src/string-inst.cc:  Adjust declarations.

From-SVN: r47844
2001-12-10 13:42:01 +00:00
Benjamin Kosnik 2a74463013 locale_facets.h (__num_base::_S_scale_hex): Add.
2001-12-09  Benjamin Kosnik  <bkoz@redhat.com>
	    Philip Martin <pmartin@uklinux.net>

	* include/bits/locale_facets.h (__num_base::_S_scale_hex): Add.
	(__num_base::_S_scale_oct): Add.
	* src/locale.cc: Add definitions.
	* testsuite/27_io/istream_extractor_arith.cc (main): Call test13.

	* testsuite/testsuite_hooks.h: Remove duplicate VERIFY define.

Co-Authored-By: Philip Martin <pmartin@uklinux.net>

From-SVN: r47837
2001-12-10 08:41:03 +00:00
Phil Edwards d0c250155a globals.cc: Remove __GTHREADS guard.
2001-12-07  Phil Edwards  <pme@gcc.gnu.org>

	* src/globals.cc:  Remove __GTHREADS guard.

From-SVN: r47778
2001-12-07 23:13:23 +00:00
Benjamin Kosnik 823b4f7daa [multiple changes]
2001-12-06  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3720
	* include/bits/locale_facets.tcc (num_put): Clean.
	(num_get::_M_extract_float): Change argument to string.
	(num_get::do_get(float)): Fixup.
	(num_get::do_get(double)): Same.
	(num_get::do_get(long double)): Same.
	(num_get::_M_extract_int): Add maximum length parameter, __max.
	(num_get::_M_extract_float): Correct zeros, use string.
	* include/bits/locale_facets.h (num_get::_M_extract_float): Change
	declaration here.
	* src/locale.cc (__num_base::_S_atoms): Remove x, X.
	* testsuite/27_io/istream_extractor_arith.cc (test13): Add.

2001-12-06  Philip Martin  <pmartin@uklinux.net>

	* testsuite/27_io/istream_extractor_arith.cc (test12): Add
	tests for excess input digits.

From-SVN: r47743
2001-12-07 02:58:36 +00:00
Benjamin Kosnik 5b5e609d03 [multiple changes]
2001-12-04  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (sources): Add ext-inst.cc.
	* src/Makefile.in: Regenerate.
	* src/ext-inst.cc: New file.
	* include/bits/stl_threads.h: Format.
	* src/globals.cc: Add instantiation for _S_swap_lock.

	* testsuite/18_support/numeric_limits.cc: Add numeric_limits<B>
	instantiation.

2001-12-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* testsuite/22_locale/numpunct_members_wchar_t.cc: Only compile
	and execute test01 if _GLIBCPP_USE_WCHAR_T is defined.
	* testsuite/26_numerics/complex_inserters_extractors.cc: Provide
	for explicit instantiation of class std::basic_string<char,
	gnu_char_traits, std::allocator<char> >.

From-SVN: r47622
2001-12-04 20:13:41 +00:00
Benjamin Kosnik 3acc0e7632 string-inst.cc (string::_Rep::_S_terminal): Add static data member instantiations.
2001-12-03  Benjamin Kosnik  <bkoz@redhat.com>

	* src/string-inst.cc (string::_Rep::_S_terminal): Add static data
	member instantiations.

From-SVN: r47586
2001-12-04 01:01:46 +00:00
Steve Ellcey 75940b886e configure.in: Add support for hpux cross compiles...
2001-12-03  Steve Ellcey  <sje@cup.hp.com>

        * libstdc++-v3/configure.in: Add support for hpux cross compiles,
        combine common linux/hpux/generic cross compile support to reduce
        redundent lines.
        * libstdc++-v3/configure: Regenerate.

From-SVN: r47564
2001-12-03 22:28:57 +00:00
Loren J. Rittle bd8fd826dd howto.html: Update commentary.
* docs/html/ext/howto.html: Update commentary.
	* include/bits/c++config: Update threading configuration comment.
	(__STL_GTHREADS): Remove macro definition.
	(__STL_THREADS): Likewise.
	* include/bits/stl_threads.h: Leave only the configuration
	path which had been guarded by __STL_GTHREADS.  Remove all
	guards related to __STL_GTHREADS, __STL_SGI_THREADS,
	__STL_PTHREADS, __STL_UITHREADS and __STL_WIN32THREADS.
	* include/bits/stl_alloc.h: Leave only the configuration path
	which had been guarded by __STL_THREADS.  Remove configuration
	path and guards for __STL_SGI_THREADS.
	(__NODE_ALLOCATOR_THREADS): Remove macro definition.  Unroll its use.
	(__NODE_ALLOCATOR_LOCK): Likewise.
	(__NODE_ALLOCATOR_UNLOCK): Likewise.
	(_NOTHREADS): Remove guards related to macro.
	* include/ext/stl_rope.h: Remove configuration path and guards
	for __STL_SGI_THREADS.
	* src/stl-inst.cc: Remove use of __NODE_ALLOCATOR_THREADS.

From-SVN: r47557
2001-12-03 19:11:01 +00:00
Paolo Carlini b334004616 locale_facets.tcc (__pad): Add bool parameter to correctly pad internal-adjusted const char*-type objects.
2001-11-29  Paolo Carlini  <pcarlini@unitus.it>

	libstdc++/3655
	* include/bits/locale_facets.tcc (__pad): Add bool parameter to
	correctly pad internal-adjusted const char*-type objects.
	* include/bits/locale_facts.tcc (num_put::_M_insert): Update call.
	* include/bits/ostream.tcc (operator<<(_CharT , char, const
	_CharT*, const char*, const basic_string&): Update calls.
	* src/locale-inst.tcc: Update declarations.
	* testsuite/27_io/ostream_inserter_arith.cc (test04): Add test.

From-SVN: r47459
2001-11-29 22:31:02 +00:00
Benjamin Kosnik 86ade44cb2 Numeric facets cleanup.
2001-11-27  Benjamin Kosnik  <bkoz@redhat.com>

	Numeric facets cleanup.
	* include/bits/locale_facets.h (__num_base::_S_atoms): Add, remove
	+ and - signs.
	(__num_base::_M_zero): Add
	(__num_base::_M_e): Add.
	(__num_base::_M_E): Add.
	* include/bits/locale_facets.tcc (num_get::_M_extract): Remove.
	(num_get::_M_extract_float): New.
	(num_get::_M_extract_int): New.
	* src/locale.cc (num_get::_M_extract): Remove.

	* include/bits/locale_facets.tcc (num_put::_M_insert_float):
	Simplify, use _M_insert.
	(num_put::do_put(bool)): Simplify, remove __pad.
	(__pad): Remove.
	(__pad_output): Change to __pad.
	* include/bits/ostream.tcc: And here.
	* src/locale-inst: Remove instantiations.

	* include/bits/locale_facets.h: Move helper functions in to class
	num_put.
	(num_put::_M_insert_float): Same, for __output_integer.
	(num_put::_M_insert_int): Same, for __output_float.
	(num_put::_M_insert): New.
	(__num_base): Add.
	(__num_base::_S_format_float): Move
	__build_float_format into class __num_base.
	(__num_base::_S_format_int): Move __build_int_format into class
	__num_base.
	* include/bits/locale_facets.tcc (__group_digits): Change to
	(__add_grouping): This.
	* src/locale-inst.cc: And here. Tweak instantiations.
	* src/misc-inst.cc: Remove instantiations.

	* include/bits/ostream.tcc (__pad_char): Rename, adjust inserters
	for new calling conventions, move to...
	* include/bits/locale_facets.tcc (__pad_output): Here. Adjust
	signature to make it useful for both ostream and num_put.
	(__pad_numeric): Remove.
	* src/misc-inst.cc: Remove instantiations.
	* src/locale-inst.cc: Same.

	* include/bits/locale_facets.h (_Numeric_get): Remove.
 	(_Numeric_put): Remove.
	(num_get::get(short)): Remove.
	(num_get::get(int)): Remove.
	(num_get::do_get(short)): Remove.
	(num_get::do_get(int)): Remove.
	* include/bits/istream.tcc (istream::operator>>(short)): Fix as
	per DR 118.
	(istream::operator>>(int)): Same.

	* include/bits/locale_facets.h (_Format_cache): Remove.
	* include/bits/locale_facets.tcc: Same.
	* src/locale.cc: Same.
	* src/locale-inst.cc: Same.
	* include/bits/ostream.tcc: Same.
	* src/ios.cc (ios_base::imbue): Remove here as well.

	* testsuite/22_locale/num_get.cc: New file.
	* testsuite/22_locale/num_get_members_char.cc: New file.
	* testsuite/22_locale/num_get_members_wchar_t.cc: New.
	* testsuite/22_locale/numpunct_members_wchar_t.cc: New file.
	* testsuite/22_locale/num_put.cc: New file.
	* testsuite/22_locale/num_put_members_char.cc: New file.
	* testsuite/22_locale/num_put_members_wchar_t.cc: New file.
	* testsuite/27_io/ostream_inserter_arith.cc: Fix.
	* testsuite/27_io/istream_extractor_arith.cc: Fix.

From-SVN: r47397
2001-11-28 04:07:11 +00:00
Jason Merrill afb0141fbd vterminate.cc (__verbose_terminate_handler): Add leading underscores.
* src/vterminate.cc (__verbose_terminate_handler): Add leading
        underscores.

From-SVN: r47292
2001-11-23 12:36:43 -05:00
Phil Edwards 1b4a6975f7 Intro.3: More notes.
2001-11-19  Phil Edwards  <pme@gcc.gnu.org>

	* docs/doxygen/Intro.3:  More notes.
	* docs/doxygen/style.css:  Update to default style from Doxygen 1.2.10.
	* include/bits/stl_algobase.h:  Add doxygen hooks for functions.
	* include/ext/hash_map:  Add @file hook.
	* include/ext/hash_set:  Likewise.
	* include/ext/rope:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.

	* docs/html/17_intro/license.html:  Remove "experimental" sentence.
	* docs/html/19_diagnostics/howto.html:  Document new verbose
	terminate handler.
	* testsuite/27_io/filebuf.cc:  Fix comment, move tweakable parameter
	to more visible (closer to description) position.

	* libsupc++/eh_type.cc:  Formatting tweak.
	* libsupc++/exception:  Likewise.
	* src/vterminate.cc:  Likewise.

	* docs/html/17_intro/porting.html:  Regenerate.
	* docs/html/faq/index.txt:  Regenerate.

From-SVN: r47193
2001-11-20 00:51:37 +00:00
Jason Merrill 74a3070ffa eh_personality.cc (__cxa_call_unexpected): Take void*.
* libsupc++/eh_personality.cc (__cxa_call_unexpected): Take void*.
        * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
        * libsupc++/unwind-cxx.h: Adjust.
        * src/Makefile.am (strstream.o): Pass -Wno-deprecated.

        * libsupc++/eh_type.cc (__cxa_current_exception_type): New file.
        * libsupc++/cxxabi.h: Declare it.
        * libsupc++/Makefile.am (sources): Add it.
        * src/vterminate.cc (verbose_terminate_handler): New file.
        * libsupc++/exception: Declare it.
        * src/Makefile.am (sources): Add it.

        * src/Makefile.am (VPATH): Check the src directory before the top one.

From-SVN: r47132
2001-11-17 21:09:23 -05:00
Phil Edwards 222485455e acconfig.h: Update comments.
2001-11-02  Phil Edwards  <pme@gcc.gnu.org>

	* acconfig.h:  Update comments.
	* acinclude.m4 (GLIBCPP_ENABLE_C99):  Move strtoll, strtoull tests...
	(GLIBCPP_ENABLE_LONG_LONG):  ...to here.  Don't check enable_c99.
	* aclocal.m4:  Regenerate.
	* config.h.in:  Regenerate.
	* configure:  Regenerate.

	* include/bits/boost_concept_check.h:  Unconditionally compile uses
	of 'long long' which require only compiler support, not C lib support.
	* include/bits/cpp_type_traits.h:  Likewise.
	* include/bits/std_limits.h:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* src/concept-inst.cc:  Likewise.
	* src/limits.cc:  Likewise.
	* include/c_shadow/stdlib.h:  Compile conditionally on _GLIBCPP_USE_C99
	instead of _GLIBCPP_USE_LONG_LONG.
	* include/c_shadow/bits/std_cstdlib.h:  Likewise.

From-SVN: r46723
2001-11-02 22:31:03 +00:00
Phil Edwards 4d16bdbbf6 re PR libstdc++/3666 (Invalid concept-checking code.)
2001-11-01  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4:  Fix spacing.
	(GLIBCPP_ENABLE_CONCEPT_CHECKS):  New macro.
	* configure.in:  Call here.
	* acconfig.h:  Add _GLIBCPP_CONCEPT_CHECKS.
	* include/bits/boost_concept_check.h:  Fix headers.
	(__function_requires):  Make inline.
	* include/bits/c++config (_GLIBCPP_CONCEPT_CHECKS):  Remove.
	* aclocal.m4:  Regenerate.
	* config.h.in:  Regenerate.
	* configure:  Regenerate.

	Move trailing ';' inside macro, PR libstdc++/3666.
	* include/bits/concept_check.h:  Add semicolon.
	* include/bits/stl_algo.h:  Remove semicolon.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator_base_funcs.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/slist:  Likewise.

	* src/concept-inst.cc:  New file with explicit instantiations.
	* src/Makefile.am (sources):  Add here, with special build rules.
	* src/Makefile.in:  Regenerate.

From-SVN: r46697
2001-11-01 15:46:48 +00:00
Benjamin Kosnik c7e2dba59a codecvt.h: Add virtual member function declarations.
2001-10-31  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/4749
	* include/bits/codecvt.h: Add virtual member function declarations.
	* src/codecvt.cc: Tweaks.
	* testsuite/22_locale/codecvt.cc: Test compilation only,
	non-required facets not required to have linkage.

From-SVN: r46685
2001-10-31 20:05:33 +00:00
Paolo Carlini 9a304d1766 basic_string.h: Tweaks.
2001-10-30  Paolo Carlini  <pcarlini@unitus.it>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_string.h: Tweaks.
	* include/bits/basic_string.tcc (string::_M_replace(iterator,
	iterator, _ForwardIter, _ForwardIter, forward_iterator_tag): Fix.
	* src/string-inst.cc: Tweaks, add instantiation.
	* testsuite/21_strings/replace.cc (test02): Add test.
	* testsuite/21_strings/assign.cc (test01): New file.

0

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>

From-SVN: r46674
2001-10-31 08:27:20 +00:00
Benjamin Kosnik 322821b9ad Make -fno-exceptions work.
2001-10-23  Benjamin Kosnik  <bkoz@redhat.com>

	Make -fno-exceptions work.
	* config/locale/c_locale_gnu.cc: Use functexcept.
	* include/bits/c++config (__stl_assert): Remove.
	(__STL_USE_EXCEPTIONS): Same.
	(__STL_TRY): Same.
	(__STL_CATCH_ALL): Same.
	(__STL_THROW): Same.
	(__STL_RETHROW): Same.
	(__STL_NOTHROW): Same.
	(__STL_UNWIND): Same.
	* include/bits/pthread_allocimpl.h: Fix.
	* include/bits/std_bitset.h: Same.
	* include/bits/std_list.h: Same.
	* include/bits/std_memory.h: Same.
	* include/bits/std_queue.h: Same.
	* include/bits/stl_alloc.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/stl_list.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/ext/ropeimpl.h: Same.
	* include/ext/slist: Same.
	* include/ext/stl_hashtable.h: Same.
	* include/ext/stl_rope.h: Same.
	* libsupc++/new_op.cc: Include cstdlib.
	* libsupc++/eh_personality.cc: Add exception_defines include. Use
	__throw_exception_again, tweak.
	* libsupc++/eh_aux_runtime.cc: Include stdlib for abort.
	* libsupc++/vec.cc: Tweak.
	* src/functexcept.cc: Remove unused arguments.
	* testsuite/23_containers/bitset_members.cc: Tweak.

From-SVN: r46455
2001-10-24 02:37:56 +00:00
Benjamin Kosnik f295ecef02 limits.h: Move to...
2001-10-22  Benjamin Kosnik  <bkoz@redhat.com>

	* config/cpu/i386/bits/limits.h: Move to...
	* config/cpu/i386/bits/cpu_limits.h: ...here.
	* config/cpu/cris/bits/cpu_limits.h: Same.
	* config/cpu/powerpc/bits/cpu_limits.h: Same.
	* config/cpu/x86-64/bits/cpu_limits.h: Same.
	* config/cpu/alpha/bits/cpu_limits.h: New.
	* config/cpu/m68k/bits/cpu_limits.h: New.
	* config/cpu/s390/bits/cpu_limits.h: New.
	* config/os/aix/bits/os_defines.h: Tweaks.
	* config/os/bsd/freebsd/bits/os_defines.h: Same.
	* config/os/bsd/netbsd/bits/os_defines.h: Same.
	* config/os/djgpp/bits/os_defines.h: Same.
	* config/os/generic/bits/os_defines.h: Same.
	* config/os/gnu-linux/bits/os_defines.h: Same.
	* config/os/hpux/bits/os_defines.h: Same.
	* config/os/irix/irix5.2/bits/os_defines.h: Same.
	* config/os/irix/irix6.5/bits/os_defines.h: Same.
	* config/os/newlib/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.5/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.7/bits/os_defines.h: Same.

	* include/bits/c++config: Remove include.
	* include/bits/limits_generic.h: Remove.
	* include/bits/std_limits.h: Include cpu_limits.h.
	* include/Makefile.am: Fixup.
	* src/limits.cc: Tweak.
	* src/limits_generic.cc: Remove.
	* src/gen-num-limits.cc: Remove.
	* mknumeric_limits: Remove.

From-SVN: r46445
2001-10-23 21:40:31 +00:00
Brendan Kehoe 8829f27a76 type_traits.h (__Boolean): Renamed template from _Bool.
2001-10-20  Brendan Kehoe  <brendan@zen.org>

	* include/bits/type_traits.h (__Boolean): Renamed template from _Bool.
	(__true_type, __false_type): Change usage.
	* src/string-inst.cc (__destroy_aux): Change third parm to be
	__false_type instead of _Bool<false>.
	* src/misc-inst.cc (__uninitialized_fill_n_aux,
	__uninitialized_copy_aux): Likewise.

From-SVN: r46387
2001-10-20 19:28:50 +00:00
Benjamin Kosnik da5c0f6ef5 time_members_gnu.h: Remove.
2001-10-02  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/time_members_gnu.h: Remove.
	* config/locale/time_members_generic.h: Remove.
	* config/locale/time_members_gnu.cc (__timepunct::_M_put_helper): Add.
	* config/locale/time_members_generic.cc: Same.
	* include/bits/locale_facets.h: Add data members.
	(__timepunct::_M_put_helper): Change signature.
	(__timepunct::_M_date_formats): Same.
	(__timepunct::_M_time_formats): Same.
	(__timepunct::_M_ampm): Add.
	(__timepunct::_M_date_time_formats): Add.
	(time_get::_M_extract_via_format): Add.
	(time_get::_M_extract_time): Change to...
	(time_get::_M_extract_num): ... this, modify signature.
	* include/bits/locale_facets.tcc (time_get::do_get_year): Fix.
	(time_get::do_get_time): Fix.
	(time_get::do_get_date): Fix.

	* acinclude.m4: Remove CTIME_H.
	* aclocal.m4: Regenerate.
	* include/Makefile.am: Same.
	* include/Makefile.in: Regenerate.
	* configure: Regenerate.

	* testsuite/22_locale/time_get_members_char.cc: Fix.
	* testsuite/22_locale/time_get_members_wchar_t.cc: Add.
	* testsuite/22_locale/time_put_members_wchar_t.cc: Add.

From-SVN: r45966
2001-10-02 18:44:50 +00:00
Benjamin Kosnik 1ab656771a time_members_gnu.h (__timepunct::_M_get_helper): Add.
2001-09-28  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/time_members_gnu.h (__timepunct::_M_get_helper): Add.
	(__timepunct::_M_put_helper): Add.
	* config/locale/time_members_generic.h: Same.
	* include/bits/locale_facets.h (__match_parallel): Remove. Format.
	(__timepunct): Add data members.
	(__timepunct::_M_days): Add.
	(__timepunct::_M_days_abbreviated): Add.
	(__timepunct::_M_months): Add.
	(__timepunct::_M_months_abbreviated): Add.
	(__timepunct::_M_initialize_timepunct): Add.
	* include/bits/locale_facets.tcc: Same.
	* src/locale-inst.cc: Remove instantiations for __match_parallel.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add CTIME_CC.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/22_locale/time_put_members_char.cc: Mark XFAIL.
	* testsuite/22_locale/time_put_members_char.cc (test01): New file.
	* testsuite/22_locale/time_get.cc: New file.

From-SVN: r45868
2001-09-28 23:44:48 +00:00
Stan Shebs 8ddad08b9e Makefile.am: Remove RCS Id strings.
* include/Makefile.am: Remove RCS Id strings.
        * src/Makefile.am: Ditto.
        * docs/doxygen/run_doxygen: Ditto.
        * docs/html/configopts.html: Ditto.
        * docs/html/documentation.html: Ditto.
        * docs/html/explanations.html: Ditto.
        * docs/html/install.html: Ditto.
        * docs/html/17_intro/howto.html: Ditto.
        * docs/html/18_support/howto.html: Ditto.
        * docs/html/19_diagnostics/howto.html: Ditto.
        * docs/html/20_util/howto.html: Ditto.
        * docs/html/21_strings/howto.html: Ditto.
        * docs/html/22_locale/howto.html: Ditto.
        * docs/html/23_containers/howto.html: Ditto.
        * docs/html/24_iterators/howto.html: Ditto.
        * docs/html/25_algorithms/howto.html: Ditto.
        * docs/html/26_numerics/howto.html: Ditto.
        * docs/html/27_io/howto.html: Ditto.
        * docs/html/ext/howto.html: Ditto.
        * docs/html/ext/sgiexts.html: Ditto.
        * docs/html/faq/index.html: Ditto.
        * docs/html/faq/index.txt: Ditto.

From-SVN: r45836
2001-09-27 00:48:01 +00:00
Benjamin Kosnik e08138aae3 Implement std::time_put.
2001-09-19  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::time_put.
	* include/bits/locale_facets.h: Include time_members.h.
	(__timepunct): New.
	(time_put): Implement.
	* include/bits/locale_facets.tcc (do_put): Put generic versions here.
	* include/bits/localefwd.h: Bump number of facets.
	* config/locale/time_members_generic.h: New file.
	* config/locale/time_members_gnu.h: New file.
	* config/locale/c_locale_generic.h: Include clocale.
	* src/locale-inst.cc: Add use_facet instantiations for __timepunct.
	* src/locale.cc: Add __timepunct initializations.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t)): Same.
	* include/Makefile.am (stamp-target): Add time_members.h.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add CTIME_H.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/22_locale/time_put.cc: New file.
	* testsuite/22_locale/time_put_members_char.cc: New file.

	* docs/html/22_locale/locale.html: Add note.

From-SVN: r45702
2001-09-20 08:30:01 +00:00
Benjamin Kosnik fb67885447 Implement std::money_get.
2001-09-13   Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::money_get.
	* include/bits/locale_facets.tcc (money_get::do_get): Implement.
	* include/bits/locale_facets.h (money_get): Correct signatures.
	* testsuite/22_locale/money_get.cc: New file.
	* testsuite/22_locale/money_get_members_char.cc: New file.

	* include/bits/locale_facets.tcc (__verify_grouping): New
	function. Consolidate num_get and money_get group checking into
	one function.
	(money_get): Use it.
	* src/locale.cc (num_get::_M_extract): Use it.
	* src/locale-inst.cc: Add instantiation.

From-SVN: r45585
2001-09-13 23:21:25 +00:00
Benjamin Kosnik 89c06d5007 Makefile.am (stamp-target): Remove link to self.
2001-09-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (stamp-target): Remove link to self.
	* inclulde/Makefile.in: Regenerate.

From-SVN: r45514
2001-09-10 18:13:17 +00:00
Benjamin Kosnik 69971cd850 Implement std::money_put.
2001-09-09  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::money_put.
	* include/bits/locale_facets.h
	(moneypunct::_M_initialize_moneypunct): Split up specializations
	to account for _Intl.  More grody hacking to get around the
	ill-considered use of const bool as a template parameter.
	* config/locale/moneypunct_members_gnu.cc: And here.
	* config/locale/moneypunct_members_generic.cc: And here.
	* testsuite/22_locale/moneypunct_members_char.cc: Add tests.
	* testsuite/22_locale/moneypunct.cc: Add tests.
	* testsuite/22_locale/money_put_members_wchar_t.cc: New file.
	* testsuite/22_locale/moneypunct_members_wchar_t.cc: New file.

	* src/locale.cc (money_base::_S_construct_pattern): Move into
	gnu-specific file.
	* config/locale/moneypunct_members_gnu.cc: Add here.
	* config/locale/moneypunct_members_generic.cc: Add generic version
	here.

	* include/bits/locale_facets.tcc (money_put::do_put): Move member
	function definitions here.
	* include/bits/locale_facets.h (money_put): Implement.
	* src/locale-inst.cc: Add use_facet instantiations for moneypunct.
	Correct money_get, money_put instantiations.
	* src/locale.cc (money_base::_S_construct_pattern): Handle case
	where __posn == 0.
	* testsuite/22_locale/money_put_members_char.cc: Add tests.

From-SVN: r45496
2001-09-10 01:00:27 +00:00
Phil Edwards 2d25bf5d52 testsuite_flags.in: No longer need to search testsuite builddir.
2001-09-05  Phil Edwards  <pme@sources.redhat.com>

	* testsuite_flags.in:  No longer need to search testsuite builddir.
	* src/stl-inst.cc (__sink_unused_warning):  Unused, remove.
	* Makefile.am:  The testsuite directory never needs to be made here.
	* Makefile.in:  Regenerate.
	* include/Makefile.in:  Regenerate.
	* libio/Makefile.in:  Regenerate.
	* libmath/Makefile.in:  Regenerate.
	* libsupc++/Makefile.in:  Regenerate.
	* po/Makefile.in:  Regenerate.
	* src/Makefile.in:  Regenerate.
	* testsuite/Makefile.in:  Regenerate.

From-SVN: r45426
2001-09-05 22:38:06 +00:00
Benjamin Kosnik 72e2386f87 c_locale_gnu.cc: Move facet info to separate files...
2001-08-27  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/c_locale_gnu.cc: Move facet info to separate files...
	* config/locale/c_locale_generic.cc: Same.
	* config/locale/moneypunct_members_gnu.cc: New file.
	* config/locale/moneypunct_members_generic.cc: New file.
	* config/locale/numpunct_members_gnu.cc: New file.
	* config/locale/numpunct_members_generic.cc: New file.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add moneypunct, numpunct
	options.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (sources): And here.
	* src/Makefile.in: Regenerate.

	Rename for consistency with rest of testsuite.
	* testsuite/22_locale/codecvt.cc: New file.
	* testsuite/22_locale/money_put.cc: New file.
	* testsuite/22_locale/money_put_members_char.cc: New file.

From-SVN: r45224
2001-08-28 06:19:35 +00:00
Benjamin Kosnik ea0c0b6e1b Implement std::collate.
2001-08-17  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::collate.
	* config/locale/collate_specializations_gnu.cc: Add here, implement in
	MT-safe way.
	* config/locale/collate_specializations_generic.cc: Add here, but
	in a less sophisticated manner.
	* include/bits/locale_facets.tcc (collate): Add generic definition.
	* include/bits/locale_facets.h (~collate): Mark virtual.
	(collate::_M_compare_helper): New.
	(collate::_M_transform_helper): New.
	* src/locale.cc: Remove unnecessary specializations.
	* src/string-inst.cc: Tweak instantiation of ctors.

	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Do configury for collate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (sources): Add collate.cc.
	* src/Makefile.in: Regenerate.

	* testsuite/22_locale/collate_byname.cc: New.
	* testsuite/22_locale/collate.cc: New file.
	* testsuite/22_locale/collate_char_members.cc: New file.
	* testsuite/22_locale/collate_wchar_t_members.cc: New file.

From-SVN: r44996
2001-08-18 02:53:13 +00:00
Benjamin Kosnik 4e10943dda configure.in (libtool_VERSION): Add.
2001-08-13  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (libtool_VERSION): Add.
	(VERSION): Change to
	(release_VERSION): This.
	* configure: Regenerate.
	* src/Makefile.am (libstdc___la_LDFLAGS): Use -version-info with
	libtool_VERSION.
	* src/Makefile.in: Regenerate.

	* intl/Makefile.am: Remove.
	* intl/Makefile.in: Remove.
	* intl: Remove.
	* Makefile.am (SUBDIRS): Remove intl.
	* po/Makefile.am (DISTFILES): Add string_literals.cc
	(MSGFMT): Add.
	* po/string_literals.cc: Add.
	* po/POTFILES.in: Fix path.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't call AM_GNU_GETTEXT.
	* aclocal.m4: Regenerate.
	* configure.in: Remove AC_OUTPUT of intl/Makefile.

	* include/backward/backward_warning.h: Clarify message.

	* testsuite_flags.in (--cxxflags): Use same debug flags for
	library and testsuite.

	* include/Makefile.am (c_compatibility): Remove.
	* include/Makefile.in: Regenerate.

From-SVN: r44880
2001-08-14 01:24:30 +00:00
Mark Mitchell 9f3c078ea9 configure.in (LIMITS_INC_SRCDIR): New variable.
* configure.in (LIMITS_INC_SRCDIR): New variable.
	* configure.target (LIMITSH): New variable.
	* porting.texi: Discuss numeric limits.
	* config/cpu/generic/bits/limits.h: New file.
	* config/cpu/i386/bits/limits.h: New file.
	* include/Makefile.am: Install bits/limits.h.
	* include/bits/c++config: Include bits/limits.h.

From-SVN: r44877
2001-08-13 22:26:11 +00:00
Gabriel Dos Reis aa2408185d std_limits.h: New file.
2001-08-10  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
            Mark Mitchell     <mark@codesourcery.com>

        * include/bits/std_limits.h: New file.
        * include/Makefile.am (bits_headers): Add std_limits.h
        (all-local): std_limits.h is no longer built.
        (${target_builddir}/std_limits.h): Remove.
        * include/Makefile.in: Regenerate.
        * src/limits.cc: New file.
        * src/Makefile.am (sources): Add limits.cc in replacement of
        limitsMEMBERS.cc.
        * src/Makefile.in: Regenerate.

From-SVN: r44766
2001-08-10 15:47:22 +00:00
Benjamin Kosnik 58b08ac3e1 acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
2001-08-09  Benjamin Kosnik  <bkoz@redhat.com>

	* acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT): Check for setrlimit
	function.
	* aclocal.m4: Regenerate.
	* configure.in: Remove duplicate AM_CONFIG_HEADER.
	(AM_CONFIG_HEADER): Remove testsuite/testsuite_hooks.h.
	Only call GLIBCPP_CHECK_SETRLIMIT for native compiles.
	* configure: Regenerate.
	* testsuite_hooks.h.in: Move to...
	* testsuite_hooks.h: Here, include c++config.h. Use it.

	* Makefile.am (SUBDIRS): Move testsuite to last directory.
	* Makefile.in: Regenerate.
	* po/Makefile.am (stamp-po): Add.

From-SVN: r44752
2001-08-10 06:50:34 +00:00
Benjamin Kosnik e8406c89d1 Makefile.am (libstdc___la_LDFLAGS): Use -release instead of -version-info, use substituted VERSION info.
2001-08-08  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (libstdc___la_LDFLAGS): Use -release instead of
	-version-info, use substituted VERSION info.
	* src/Makefile.in: Regenerate.

From-SVN: r44730
2001-08-08 22:39:28 +00:00
Benjamin Kosnik 33590f13b2 Implement std::messages.
2001-08-07  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::messages.
	Make config a fully-nested directory.
	* config/locale: New directory.
	* config/c_locale_generic.cc: Move into locale subdirectory.
	* config/c_locale_generic.h: Same.
	* config/c_locale_gnu.cc: Same.
	* config/c_locale_gnu.h: Same.
	* config/c_locale_ieee_1003.1-200x.cc: Same.
	* config/c_locale_ieee_1003.1-200x_.h: Same.
	* config/codecvt_specializations_generic.h: Same.
	* config/codecvt_specializations_ieee_1003.1-200x.h: Same.
	* config/messages_members_gnu.h: Same.
	* config/messaages_members_gnu.cc: Same.
	* config/messages_members_generic.h: Same.
	* config/messaages_members_generic.cc: Same.
	* config/messages_members_ieee_1003.1-200x.h: Same.
	* config/messaages_members_ieee_1003.1-200x.cc: Same.
	* config/io: New directory.
	* config/basic_file_libio.h: Move into io subdirectory.
	* config/basic_file_libio.cc: Same.
	* config/c_io_libio.h: Same.
	* config/c_io_libio_codecvt.c: Same.
	* config/basic_file_stdio.h: Same.
	* config/basic_file_stdio.cc: Same.
	* config/c_io_stdio.h: Same.

	* po: New directory.
	* po/POTFILES.in: New file.
	* po/Makefile.am: New file.
	* po/Makefile.in: New file.
	* po/libstdc++.pot: Generic translation file.
	* po/fr.po: Preliminary French translation.
	* po/de.po: Preliminary German translation.
	* intl: New directory.
	* intl/Makefile.am: New file.
	* intl/Makefile.in: New file.
	* intl/string_literals.cc: New file.
	* acinclude.m4 (GLIBCPP_CONFIGURE): Bump VERSION to 3.1.0. Add
	requisite setup for gettext. Re-arrange.
	* aclocal.m4: Regenerate.
	* configure.in: Don't call GLIBCPP_CHECK_COMPILER_VERSION.
	Output Makefile bits for po and intl.
	* configure: Regenerate.
	* Makefile.am (SUBDIRS): Add intl, po. Add rule for dist.
	* Makefile.in: Regenerate.
	* acconfig.h: Add ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY.
	* config.h.in: Regenerate.

	* acinclude.m4 (AC_REPLACE_STRINGFUNCS): Remove.

	* include/Makefile.am (install-data-local): Don't install Makefile.
	* include/Makefile.in: Regenerate.

	* include/bits/locale_facet.h (locale::facet::_S_clone_c_locale):
	Add member.
	* config/locale/c_locale_gnu.cc (_S_clone_c_locale): Add definition.
	* config/locale/c_locale_generic.cc: Same.
	* config/locale/c_locale_ieee_1003.1-200x.cc: Same.

	* include/bits/codecvt.h: Excise non-standard, non-required
	bits. This includes __enc_traits, and partial specializations of
	codecvt for __enc_traits.
	* src/codecvt.cc (__enc_traits::_S_max_size): Guard
	* config/codecvt_partials_ieee_1003.1-200x.h: New file.
	* config/codecvt_partials_generic.h: New file.
	* include/Makefile.am (allstamps): Add stamp-codecvt_model.
	(stamp-codecvt_model): Add.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add in codecvt configury.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/22_locale/codecvt_unicode_wchar_t.cc: Use macro guard.
	* testsuite/22_locale/codecvt_unicode_char.cc: Same.
	* testsuite/22_locale/ctor_copy_dtor.cc: And here.

	* include/bits/localefwd.h (class locale::facet): Add __enc_traits
	as a friend for _S_*_c_locale functions.
	* include/bits/codecvt.h (__enc_traits::__enc_traits): Add locale
	argument to default constructor so that CODESET information can be
	deduced.
	* include/bits/locale_facets.h (messages_byname):
	Re-implement. Remove specializations.
	* src/locale.cc (messages_byname<char>): Remove specialization.
	(messages_byname<wchar_t>): Same.
	* config/locale/c_locale_ieee_1003.1-200x.cc: New file.
	* config/locale/c_locale_ieee_1003.1-200x.h: New file.
	* config/locale/messages_members_ieee_1003.1-200x.cc: New file.
	* config/locale/messages_members_ieee_1003.1-200x.h: New file.
	* config/locale/messages_members_gnu.cc: New file.
	* config/locale/messages_members_gnu.h: New file.
	* config/locale/messages_members_generic.cc: New file.
	* config/locale/messages_members_generic.h: New file.

	* docs/html/configopts.html: Add documentation for new locale
	model, ieee_1003.1. Adjust other flags for current defaults.
	* docs/html/22_locale/locale.html: Update.
	* docs/html/22_locale/howto.html: Add link to messages.html. Organize.
	* docs/html/22_locale/messages.html: New.

	* src/Makefile.am (sources): Add messages_virtuals.cc.
	* src/Makefile.in: Regenerate.
	* include/Makefile.am (allstamps): Add stamp-messages_model.
	(stamp-messages_model): Add.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add in messages configury.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* testsuite_flags.in (--cxxflags): Add LOCALEDIR.
	* testsuite/lib/libstdc++-v3-dg.exp: Remove broken LD_LIBRARY_PATH
	bits for Irix.
	* acinclude (GLIBCPP_ENABLE_CLOCALE): Set glibcpp_localedir to the
	build directories message catalog base directory, and export.
	Eventually this should probably be made to deal with build and
	install directories. For now, punt on this as the library itself
	doesn't use message catalogs (yet).
	* testsuite/22_locale/messages.cc: New file.
	* testsuite/22_locale/messages_char_members.cc: New file.
	* testsuite/22_locale/messages_byname.cc: New file.

From-SVN: r44702
2001-08-08 02:49:01 +00:00
Loren J. Rittle 67926e5216 * src/gen-num-limits.cc: Use __LONG_LONG_MAX__.
From-SVN: r44518
2001-07-31 19:33:43 +00:00
Phil Edwards 31bfa17776 backport: basic_string.h: Qualify symbols with 'template'.
2001-07-19  Phil Edwards  <pme@sources.redhat.com>
            Mark Mitchell <mark@codesourcery.com>

	Merge from cp-parser-branch.
	* include/bits/basic_string.h:  Qualify symbols with 'template'.
	* include/bits/basic_string.tcc:  Likewise.
	* include/bits/fstream.tcc:  Likewise.
	* include/bits/istream.tcc:  Likewise.
	* include/bits/sstream.tcc:  Likewise.
	* include/bits/std_istream.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/streambuf.tcc:  Likewise.
	* src/gen-num-limits.cc:  Add 'template<>' to specializations.
	* src/locale.cc:  Likewise.

Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r44167
2001-07-20 00:09:31 +00:00
Gabriel Dos Reis b2a4c43c0d gen-num-limits.cc (set_signals_handler): New function.
* src/gen-num-limits.cc (set_signals_handler): New function.
        Factor out signals setting.  Set signal handler for SIGILL.

Co-Authored-By: Bert De Knuydt <Bert.Deknuydt@esat.kuleuven.ac.be>

From-SVN: r44139
2001-07-19 03:06:01 +00:00
Stephen M. Webb 02d92e3b70 All occurrences of the __value_type() and __distance_type() functions...
2001-07-17  Stephen M. Webb   <stephen@bregmasoft.com>r

	All occurrences of the __value_type() and __distance_type()
	functions, which were required to support the HP STL, have been
	removed along with all the auxiliary forwarding functions that
	were required to support their use.

	The __iterator_category() function was pretty much left alone
	because there was no benefit to removing it and its use made code
	just a little more readable.

	Incidences of distance() with nonstandard argument list were
	replaced by calls to the standard function (only in the files
	affected by the removal of the other HP functions).

	The signature of the rotate() algorithm was changed to match the
	standard.

	Headers were reformatted under C++STYLE guidelines (indentation,
	linebreaks, typename keyword).

	* include/bits/stl_algo.h: replaced __value_type() and
	__distance_type() with iterator_traits, eliminated auxiliary
	support functions required to support said function usage.
	Changed nonstandard distance() call to standard call.

	* include/bits/stl_algobase.h: Same.
	* include/bits/stl_heap.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/stl_iterator_base_types.h (__value_type()):
	Removed.
	(__distance_type()): Removed.
	(value_type()): Gone.
	(distance_type()): Done in.
	(iterator_category()): Hasta la vista, baby.

	* include/bits/stl_iterator_base_funcs.h (iterator_category()):
	Replaced with __iterator_category().
	* include/backward/iterator.h: moved definition of value_type(),
	distance_type(), and iterator_category() out of std:: and into
	here.
	* testsuite/23_containers/vector_ctor.cc (test03): New testcases.
	* testsuite/23_containers/vector_modifiers.cc (test03): New testcases.
	* testsuite/25_algorithms/rotate.cc: New testcase.
	* testsuite/25_algorithms/copy.cc: New testcase.
	* testsuite/25_algorithms/sort.cc: Same.
	* testsuite/25_algorithms/heap.cc: Same.
	* testsuite/25_algorithms/partition.cc: Same.
	* testsuite/25_algorithms/binary_search.cc: Same.
	* testsuite/26_numerics/sum_diff.cc: Ditto.

From-SVN: r44117
2001-07-18 17:09:02 +00:00
Stephen M. Webb 4a9d51090a Makefile.am: New file encapsulating header generation rules.
2001-07-13  Stephen M. Webb  <stephen@bregmasoft.com>
            Loren J. Rittle  <ljrittle@acm.org>
            Phil Edwards  <pme@sources.redhat.com>

	* include/Makefile.am:  New file encapsulating header generation rules.
	* Makefile.am (SUBDIRS):  Prepend 'include' directory.
	* acinclude.m4:  Moved/removed rules for building various headers.
	* configure.in (AC_OUTPUT):  Add include/Makefile.
	* mkc++config:  Removed.

	* testsuite_flags.in:  Changed build-includes to match new scheme.
	* mknumeric_limits:  Likewise.
	* libio/Makefile.am:  Changed INCLUDES to maatch new header scheme.
	* libmath/Makefile.am:  Likewise.
	* libsupc++/Makefile.am:  Likewise.
	* src/Makefile.am:  Likewise; removed rules to build headers.
	* libmath/mathconf.h:  Changed #include'd header names to match.
	* libmath/stubs.c:  Likewise.
	* src/gen-num-limits.cc:  Likewise.

	* configure:  Regenerated.
	* config.h.in:  Regenerated.
	* aclocal.m4:  Regenerated.
	* Makefile.in:  Regenerated.
	* include/Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.
	* testsuite/Makefile.in:  Regenerated.

Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>
Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>

From-SVN: r43985
2001-07-13 16:47:56 +00:00
Benjamin Kosnik 1f46fc8e90 localefwd.h: Format.
2001-07-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/localefwd.h: Format.
	* include/bits/locale_facts.tcc (locale::combine): Adjust.
	* src/locale.cc (locale::locale::(_Impl)): Don't call
	_M_add_reference.
	(locale::facet::_M_remove_reference): Simplify.
	* src/globals.cc (locale_impl_c): New. Format.
	(locale_c): New.
	* src/ios.cc (ios_base::Init::Init): Increment _S_ios_base_init last.

From-SVN: r43747
2001-07-04 02:39:02 +00:00
Benjamin Kosnik 213c2316b6 locale.cc (locale::locale(const char*)): Make sure global locales are initialized.
2001-07-02  Benjamin Kosnik  <bkoz@redhat.com>

	* src/locale.cc (locale::locale(const char*)): Make sure global
	locales are initialized.
	* include/bits/locale_facets.tcc (locale::combine): Refcout should
	be zero, not one as it's return-by-value.
	* testsuite/27_io/ios_base_callbacks.cc (test01): Don't check for
	named locales here.
	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Instead, check
	for it here.
	(test02): Add test.
	* libsupc++/eh_alloc.cc: Use climits, not limits.h.

From-SVN: r43713
2001-07-02 23:08:28 +00:00
Loren J. Rittle 861d4e70e8 ios.cc (ios_base::Init::_S_ios_create): Rename __bufsize to __out_bufsize.
libstdc++/2211
	* src/ios.cc (ios_base::Init::_S_ios_create): Rename __bufsize to
	__out_bufsize.  Add __in_bufsize, document it and use it.

From-SVN: r43707
2001-07-02 20:50:40 +00:00
Benjamin Kosnik 13f83598b3 locale_facets.tcc (locale::combine): Clone _Impl.
2001-06-29  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (locale::combine): Clone _Impl.
	before replacing facet.
	* include/bits/localefwd.h (locale::_Impl::_M_remove_reference):
	Correct decrement.
	* src/localename.cc (locale::_Impl): Correct ctor initialization
	lists. Initialize ref count with one. Simplify.
	* src/locale.cc: Add comment.
	* testsuite/22_locale/numpunct.cc (test01): Add derivation test.
	* testsuite/22_locale/numpunct_char_members.cc (test01): Add tests.
	* testsuite/22_locale/members.cc (test02): Fix.

From-SVN: r43661
2001-06-30 04:35:49 +00:00
Phil Edwards 42526146aa algo.h: Add "GPL plus runtime exception" comment block, this time for real.
2001-06-27  Phil Edwards  <pme@sources.redhat.com>

	* include/backward/algo.h:  Add "GPL plus runtime exception" comment
	block, this time for real.
	* include/backward/algobase.h:  Likewise.
	* include/backward/alloc.h:  Likewise.
	* include/backward/bvector.h:  Likewise.
	* include/backward/defalloc.h:  Likewise.
	* include/backward/deque.h:  Likewise.
	* include/backward/function.h:  Likewise.
	* include/backward/hash_map.h:  Likewise.
	* include/backward/hash_set.h:  Likewise.
	* include/backward/hashtable.h:  Likewise.
	* include/backward/heap.h:  Likewise.
	* include/backward/iterator.h:  Likewise.
	* include/backward/list.h:  Likewise.
	* include/backward/map.h:  Likewise.
	* include/backward/multimap.h:  Likewise.
	* include/backward/multiset.h:  Likewise.
	* include/backward/pair.h:  Likewise.
	* include/backward/rope.h:  Likewise.
	* include/backward/set.h:  Likewise.
	* include/backward/slist.h:  Likewise.
	* include/backward/stack.h:  Likewise.
	* include/backward/strstream:  Likewise.
	* include/backward/tempbuf.h:  Likewise.
	* include/backward/tree.h:  Likewise.
	* include/backward/vector.h:  Likewise.
	* include/bits/pthread_allocimpl.h:  Likewise.
	* include/bits/std_algorithm.h:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_deque.h:  Likewise.
	* include/bits/std_functional.h:  Likewise.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_list.h:  Likewise.
	* include/bits/std_map.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/std_numeric.h:  Likewise.
	* include/bits/std_queue.h:  Likewise.
	* include/bits/std_set.h:  Likewise.
	* include/bits/std_stack.h:  Likewise.
	* include/bits/std_utility.h:  Likewise.
	* include/bits/std_vector.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_alloc.h:  Likewise.
	* include/bits/stl_bvector.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_function.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/stl_iterator_base_funcs.h:  Likewise.
	* include/bits/stl_iterator_base_types.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/stl_pthread_alloc.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_raw_storage_iter.h:  Likewise.
	* include/bits/stl_relops.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_tempbuf.h:  Likewise.
	* include/bits/stl_threads.h:  Likewise.
	* include/bits/stl_tree.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/rope:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43613
2001-06-27 17:09:53 +00:00
Benjamin Kosnik d27bba5e57 sbuf_iter.h: Change to..
2001-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/sbuf_iter.h: Change to..
	* include/bits/streambuf_iterator.h: This.
	* include/bits/stl_iterator.h: Take out of here...
	* include/bits/stream_iterator.h: Add.
	* src/Makefile.am (base_headers): Add streambuf_iterator,
	stream_iterator.h
	* src/Makefile.in: Regenerate.
	* include/bits/std_string.h: Adjust includes.
	* include/bits/basic_ios.h: Same.
	* include/bits/locale_facets.tcc: Same.
	* include/bits/std_iosfwd.h: Same.

	* include/bits/std_iterator.h: Add istream, ostream includes.
	* include/bits/stl_iterator.h: Tweak.
	* testsuite/24_iterators/ostream_iterator.cc: Add test.
	* testsuite/24_iterators/istream_iterator.cc: Same.
	* testsuite/23_containers/multiset.cc: Add iterator include.

From-SVN: r43592
2001-06-26 21:22:57 +00:00
Phil Edwards e4bf60773b re PR libstdc++/3377 (missing std::__cmath_power<double>(double,unsigned))
2001-06-25  Phil Edwards  <pme@sources.redhat.com>
            Kurt Garloff <garloff@suse.de>

	PR libstdc++/3377
	* src/cmath.cc:  New [version of an old] file; instantiate
	__cmath_power to start with.
	* src/Makefile.am (sources):  Add cmath.cc (and alphabetize).
	* Makefile.in:  Regenerate.
	* libio/Makefile.in:  Regenerate.
	* libmath/Makefile.in:  Regenerate.
	* libsupc++/Makefile.in:  Regenerate.
	* src/Makefile.in:  Regenerate.
	* testsuite/Makefile.in:  Regenerate.

Co-Authored-By: Kurt Garloff <garloff@suse.de>

From-SVN: r43559
2001-06-25 20:57:51 +00:00
Phil Edwards 41104fd541 *: Revert comment/license change from yesterday for all except libsupc++/unwind-cxx.h.
2001-06-22  Phil Edwards  <pme@sources.redhat.com>

	* include/*:  Revert comment/license change from yesterday for all
	except libsupc++/unwind-cxx.h.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43513
2001-06-22 19:53:32 +00:00
Phil Edwards daa19534a9 algo.h: Add "GPL plus runtime exception" comment.
2001-06-21  Phil Edwards  <pme@sources.redhat.com>

	* include/backward/algo.h:  Add "GPL plus runtime exception" comment.
	* include/backward/algobase.h:  Likewise.
	* include/backward/alloc.h:  Likewise.
	* include/backward/bvector.h:  Likewise.
	* include/backward/defalloc.h:  Likewise.
	* include/backward/deque.h:  Likewise.
	* include/backward/function.h:  Likewise.
	* include/backward/hash_map.h:  Likewise.
	* include/backward/hash_set.h:  Likewise.
	* include/backward/hashtable.h:  Likewise.
	* include/backward/heap.h:  Likewise.
	* include/backward/iterator.h:  Likewise.
	* include/backward/list.h:  Likewise.
	* include/backward/map.h:  Likewise.
	* include/backward/multimap.h:  Likewise.
	* include/backward/multiset.h:  Likewise.
	* include/backward/pair.h:  Likewise.
	* include/backward/rope.h:  Likewise.
	* include/backward/set.h:  Likewise.
	* include/backward/slist.h:  Likewise.
	* include/backward/stack.h:  Likewise.
	* include/backward/strstream:  Likewise.
	* include/backward/tempbuf.h:  Likewise.
	* include/backward/tree.h:  Likewise.
	* include/backward/vector.h:  Likewise.
	* include/bits/pthread_allocimpl.h:  Likewise.
	* include/bits/std_algorithm.h:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_deque.h:  Likewise.
	* include/bits/std_functional.h:  Likewise.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_list.h:  Likewise.
	* include/bits/std_map.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/std_numeric.h:  Likewise.
	* include/bits/std_queue.h:  Likewise.
	* include/bits/std_set.h:  Likewise.
	* include/bits/std_stack.h:  Likewise.
	* include/bits/std_utility.h:  Likewise.
	* include/bits/std_vector.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_alloc.h:  Likewise.
	* include/bits/stl_bvector.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_function.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/stl_iterator_base_funcs.h:  Likewise.
	* include/bits/stl_iterator_base_types.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/stl_pthread_alloc.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_raw_storage_iter.h:  Likewise.
	* include/bits/stl_relops.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_tempbuf.h:  Likewise.
	* include/bits/stl_threads.h:  Likewise.
	* include/bits/stl_tree.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/rope:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.
	* libsupc++/unwind-cxx.h:  Likewise.
	* src/bitset.cc:  Likewise.
	* src/strstream.cc:  Likewise.

From-SVN: r43496
2001-06-21 23:03:00 +00:00
John David Anglin 91bfd02dae globals.cc: Define globals _GLIBCPP_mutex_init ()...
* src/globals.cc: Define globals _GLIBCPP_mutex_init (),
	_GLIBCPP_mutex_address_init (), _GLIBCPP_once, _GLIBCPP_mutex
	and _GLIBCPP_mutex_address.
	* include/bits/stl_threads.h (_STL_mutex_lock): Use above to provide
	once-only runtime initialization of _M_lock mutex when
	__GTHREAD_MUTEX_INIT_FUNCTION is defined.
	(__STL_MUTEX_INITIALIZER): Provide initializer for _STL_mutex_lock
	for __GTHREAD_MUTEX_INIT_FUNCTION case.

From-SVN: r43360
2001-06-14 06:06:48 +00:00
Loren J. Rittle 5e21803304 threads-no.h: Remove file.
* config/threads-no.h: Remove file.
	* config/threads-posix.h: Remove file.

	* acconfig.h (_GLIBCPP_USE_THREADS): Remove.
	(_GLIBCPP_SUPPORTS_WEAK): Add (required by namespace-clean gthr*.h).
	(_GLIBCPP_HAVE_GTHR_DEFAULT): Likewise.
	* config.h.in: Regenerate.

	* acinclude.m4 (GLIBCPP_ENABLE_THREADS): Completely rework to
	setup and use gthr*.h files.  In particular, make gthr.h files
	namespace-clean in the staging area (they don't have to be for
	libgcc.a).
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* src/Makefile.am (build_headers): Remove bits/c++threads.h
	and add bits/gthr.h bits/gthr-single.h bits/gthr-default.h.
	* src/Makefile.in: Regenerate.

	* include/bits/c++config: Cleanup threading configuration macros.
	In particular, define __STL_GTHREADS macro which controls...
	* include/bits/stl_threads.h: ...a brand new gthr.h-based
        configuration here.

	* config/c_io_stdio.h: Include staged gthr.h instead of local
	thread configuration file.  Always use __gthread_mutex_t
	instead of __mutext_type (or int).
	* include/bits/std_fstream.h: Likewise.

	* docs/html/17_intro/howto.html: Remove placeholder comment in
	case this configuration patch didn't make it.  Add advice that
	section only applies if configured with --enable-threads.
	* docs/html/23_containers/howto.html: Reword to make clear
	that _PTHREADS is no longer required for any port to be
	correctly using STL with threads.  Add advice that section
	only applies if configured with --enable-threads.

Co-Authored-By: John David Anglin <dave@hiauly1.hia.nrc.ca>

From-SVN: r42998
2001-06-08 03:53:35 +00:00
Benjamin Kosnik 3b8fd08f82 string-inst.cc (_Rep::_S_max_size): Add instantiation.
2001-06-06  Benjamin Kosnik  <bkoz@redhat.com>

	* src/string-inst.cc (_Rep::_S_max_size): Add instantiation.

From-SVN: r42943
2001-06-06 08:49:10 +00:00
Benjamin Kosnik 5de197f210 basic_ios.tcc: Formatting tweaks.
2001-06-05  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3045
	* include/bits/basic_ios.tcc: Formatting tweaks.
	* include/bits/ios_base.h: Formatting tweaks.
	* src/ios.cc (ios_base::Init::_S_ios_create): Use filebufs here.
	(ios_base::Init::_S_ios_destroy): ..and here. Explicitly call dtors.
	* src/globals.cc: Allocate filebufs for standard streams here.
	(buf_cout, buf_cin, buf_cerr): Like so.
	(buf_wcout, buf_wcin, buf_wcerr): And so.
	* testsuite/27_io/ios_init.cc: Add.

From-SVN: r42922
2001-06-06 01:31:58 +00:00
Benjamin Kosnik fdf1b60d2b locale_facets.h (ctype<_CharT>): Add definitions for generic ctype virtuals.
2001-06-04  Brendan Kehoe  <brendan@zen.org>
	    Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3017
	* include/bits/locale_facets.h (ctype<_CharT>): Add definitions
	for generic ctype virtuals.
	* src/locale.cc: Minor tweaks, naming consistency.
	* testsuite/22_locale/ctype.cc: Add test.

From-SVN: r42872
2001-06-04 19:25:41 +00:00
Hans-Peter Nilsson 04e7878615 Makefile.am (VPATH): Delimit with ":", not space.
* src/Makefile.am (VPATH): Delimit with ":", not space.
	* src/Makefile.in: Regenerate.

	* configure.in (use of GLIBCPP_CHECK_GNU_MAKE): Don't fail if GNU
	make isn't found.
	* configure: Regenerate.

From-SVN: r42774
2001-06-01 09:22:05 +00:00
Benjamin Kosnik d29087b431 bitset.cc: Qualify size_t with std::.
2001-05-31  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2997
	* src/bitset.cc: Qualify size_t with std::.

From-SVN: r42751
2001-05-31 19:10:23 +00:00
Benjamin Kosnik bfa1e6b11b acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
2001-05-30  Benjamin Kosnik  <bkoz@redat.com>

	* acconfig.h (_GLIBCPP_BUGGY_FLOAT_COMPLEX): Remove.
	(_GLIBCPP_BUGGY_COMPLEX): Remove.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_COMPILER_SUPPORT): Remove.
	* aclocal.m4: Regenerate.
	* configure.in: Don't call it.
	* configure: Regenerate.

	libstdc++/2970
	* src/complex_io.cc (operator<<(ostream&, const complex&): Fix.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test01):
	New test.

	libstdc++/2985
	* include/bits/std_complex.h: Include sstream. Put definitions for
	complex inserters and extractors here, and remove them from...
	* src/complex_io.cc: ...here.
	* include/bits/basic_ios.h (basic_ios::__numput_type): Add _Traits
	parameter.
	(basic_ios::__numget_type): Same.
	* include/bits/std_istream.h: Same.
	* include/bits/std_ostream.h: Same.
	* include/bits/sbuf_iter.h (ostreambuf_iterator): Fix typo in base
	class iterator template arguments.
	* src/locale-inst.cc: Add explicit has_facet instantiations.
	* include/bits/basic_ios.h (basic_ios::_M_get_fctype_ios): Remove.
	(_M_get_fnumput): Remove.
	(_M_get_fnumget): Remove.
	(basic_ios::_M_check_facet): New function.
	(basic_ios::_M_cache_facets): New function.
	* include/bits/basic_ios.tcc: Definition for _M_cache_facets.
	(basic_ios::imbue): Call _M_cache_facets.
	(basic_ios::init): Same.
	* include/bits/istream.tcc: Format, use _M_check_facet.
	* include/bits/ostream.tcc: Same.
	* include/bits/locale_facets.tcc (__output_float): Change
	signature, add _Traits.
	* testsuite/26_numerics/complex_inserters_extractors.cc (test02):
	New test.

From-SVN: r42743
2001-05-31 12:14:56 +00:00
Benjamin Kosnik 662d942545 README: Add notes.
2001-05-18  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/README: Add notes.

	* src/Makefile.am (libstdc++.INC): Remove.
	* src/Makefile.in: Regenerate.

	Phil Edwards <pedwards@disaster.jaj.com>
	* mkcheck.in: Add missing '#'.

From-SVN: r42298
2001-05-19 03:42:53 +00:00
Benjamin Kosnik c6192d882f Switch over to new harness.
2001-05-13   Benjamin Kosnik  <bkoz@redhat.com>

	Switch over to new harness.
	* testsuite_flags.in: Tweaks via Gaby.
	* testsuite/Makefile.am: Change tool to libstdc++-v3.
	(EXPECT): Quote directly.
	(RUNTEST): Same.
	* configure.in: Output testsuite_flags.
	* acinclude.m4: Substitute src, bld, and prefix dirs.
	Remove glibcpp_expect, glibcpp_runtestflags.
	* Makefile.am (RUNTESTFLAGS): Pass this down to subdirs.
	* mkcheck.in: Port to new interface.

	* aclocal.m4: Regerate.
	* configure: Regnerate.
	* Makefile.in: Regnerate.
	* */Makefile.in: Regenerate.

	* tests_flags.in: Remove.
	* testsuite/lib/libstdc++.exp: Remove.
	* testsuite/libstdc++.tests/tests.exp: Remove.

From-SVN: r42055
2001-05-14 01:15:36 +00:00
Benjamin Kosnik 39003c9902 std_fstream.h (basic_filebuf): Change signature.
2001-05-07  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2523
	* include/bits/std_fstream.h (basic_filebuf): Change signature.
	* include/bits/fstream.tcc (basic_filebuf): Change bool argument
	to int_type, pass in buffer size info.
	* include/bits/std_streambuf.h (_M_is_indeterminate): Check for
	unbuffered situation.
	(underflow): Remove codecvt bits for the time being.
	* include/bits/istream.tcc (istream::sentry): Avoid sputbackc call.
	* include/bits/locale_facets.tcc (_M_extract): Cache dereference
	values from iterators, clean.
	* src/locale.cc: Ditto.
	* include/bits/sbuf_iter.h: Format.
	* src/ios.cc: Explicitly pass in buffer sizes at creation time.
	* testsuite/27_io/narrow_stream_objects.cc: Add tests.
	* testsuite/27_io/filebuf.cc: Tweaks.
	* testsuite/27_io/filebuf_members.cc: Tweaks.

From-SVN: r41908
2001-05-08 03:07:56 +00:00
Alexandre Oliva f8e4b51d36 configure.in (LIBSUPCXX_PICFLAGS): Set it to -prefer-pic or -prefer-non-pic depending on whether libtool has...
* configure.in (LIBSUPCXX_PICFLAGS): Set it to -prefer-pic or
-prefer-non-pic depending on whether libtool has shared libraries
enabled or disabled.
* libsupc++/Makefile.am (LIBSUPCXX_CXXFLAGS): Set to
$(LIBSUPCXX_PICFLAGS).
* configure, */Makefile.in: Rebuilt.

From-SVN: r41806
2001-05-03 20:35:18 +00:00
Benjamin Kosnik 47e982b247 map_operators.cc: Add dg-excess-errors.
2001-04-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/23_containers/map_operators.cc: Add dg-excess-errors.
	* testsuite/23_containers/set_operators.cc: Same.

	* include/bits/c++config: Add _GLIBCPP_CONCEPT_CHECKS. Disable by
	default.
	(__GLIBCPP__): Bump from value of last release.
	* include/bits/concept_check.h: Default to off, edit comments.
	* src/stl-inst.cc: Use _GLIBCPP_CONCEPT_CHECKS.
	* src/Makefile.am (AM_CXXFLAGS): Remove _GLIBCPP_NO_CONCEPT_CHECKS.
	* src/Makefile.in: Regenerate.

From-SVN: r41397
2001-04-18 01:06:05 +00:00
Benjamin Kosnik 46840bcd52 acinclude.m4: AC_CHECK_TOOL for expect.
2001-04-11  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: AC_CHECK_TOOL for expect.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.am (RUNTEST): Use substituted.
	(EXPECT): Same.

	* configure.in: Remove xcompiling substitution.
	* tests_flags.in (CROSS_LIB_PATH): Remove.
	(xcompiling): Remove.
	(CXX): Use substituted CXX.

From-SVN: r41262
2001-04-11 18:52:31 +00:00
Benjamin Kosnik baac9fce7d Warn when using backward headers.
2001-04-05  Benjamin Kosnik  <bkoz@redhat.com>

	Warn when using backward headers.
	* include/backward/algo.h: Include warning file.
	* include/backward/vector.h: Same.
	* include/backward/tree.h: Same.
	* include/backward/tempbuf.h: Same.
	* include/backward/strstream: Same.
	* include/backward/streambuf.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/stack.h: Same.
	* include/backward/slist.h: Same.
	* include/backward/set.h: Same.
	* include/backward/rope.h:
	* include/backward/queue.h: Same.
	* include/backward/pair.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/new.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/map.h: Same.
	* include/backward/list.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/iostream.h:
	* include/backward/iomanip.h:
	* include/backward/heap.h: Same.
	* include/backward/hashtable.h:
	* include/backward/hash_set.h:
	* include/backward/hash_map.h:
	* include/backward/function.h:
	* include/backward/fstream.h:
	* include/backward/deque.h:
	* include/backward/defalloc.h: Same.
	* include/backward/complex.h: Same.
	* include/backward/bvector.h:
	* include/backward/alloc.h:
	* include/backward/algobase.h: Same.

	* include/backward/backward_warning.h: New file.
	* src/Makefile.am (backward_headers): Add backward_warning.h
	* src/Makefile.in: Regenerate.

2001-04-05  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (myinstalldirs): Make sure backward directory is
	created.
	(myinstallheaders): Install backward headers in backward directory.
	* src/Makefile.in: Regenerate.

From-SVN: r41139
2001-04-06 06:08:17 +00:00
Benjamin Kosnik 127644626f fstream.tcc: Add bool parameter to filebuf ctor.
2001-04-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/fstream.tcc: Add bool parameter to filebuf ctor.
	* include/bits/ios_base.h(ios_base::Init): Remove _M_cout, _M_cin,
	_M_cerr, _M_wcout, _M_wcin, _M_wcerr.
	(ios_base::Init::_S_ios_create): New.
	(ios_base::Init::_S_ios_destroy): New.
	* include/bits/std_fstream.h: Change ctor args.
	* src/ios.cc (ios_base::Init::Init): Use _S_ios_create.
	(ios_base::Init::~Init): Use _S_ios_destroy.
	(ios_base::sync_with_stdio): Use new members.
	* testsuite/27_io/filebuf_members.cc: Fix calling conventions for
	filebuf ctor.

From-SVN: r41072
2001-04-04 01:02:26 +00:00
Phil Edwards 30a20a1ee0 New concept checking implementation.
2001-04-02  Phil Edwards  <pme@sources.redhat.com>

	New concept checking implementation.
	* docs/html/19_diagnostics/howto.html:  Document.
	* docs/html/17_intro/concept_check.diff:  New file, for reference.
	* include/bits/boost_concept_check.h:  New file from Boost.
	* include/bits/c++config:  Update comments.

	* include/bits/concept_check.h:  New file.
	* include/bits/concept_checks.h:  Removed.
	* include/bits/container_concepts.h:  Removed.
	* include/bits/sequence_concepts.h:  Removed.
	* include/bits/stl_iterator_base.h:  Removed; split into...
	* include/bits/stl_iterator_base_funcs.h:  ...this new file...
	* include/bits/stl_iterator_base_types.h:  ...and this new file.

	* include/bits/sbuf_iter.h:  Update to use new implementation.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.

	* src/Makefile.am (base_headers):  Update list of headers.
	* Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* testsuite/Makefile.in:  Regenerated.

	* docs/html/install.html:  Update contact information.
	* docs/html/17_intro/howto.html:  Ditto.
	* docs/html/18_support/howto.html:  Ditto.
	* docs/html/20_util/howto.html:  Ditto.
	* docs/html/21_strings/howto.html:  Ditto.
	* docs/html/22_locale/howto.html:  Ditto.
	* docs/html/23_containers/howto.html:  Ditto.
	* docs/html/24_iterators/howto.html:  Ditto.
	* docs/html/25_algorithms/howto.html:  Ditto.
	* docs/html/26_numerics/howto.html:  Ditto.
	* docs/html/27_io/howto.html:  Ditto.
	* docs/html/faq/index.html:  Ditto, plus info on new checking code.
	* docs/html/ext/howto.html:  Ditto, plus info on new checking code.
	* docs/html/faq/index.txt:  Regenerated.

From-SVN: r41031
2001-04-03 00:26:58 +00:00
Benjamin Kosnik 9b7e0d0005 [multiple changes]
2001-03-31  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.target: Remove duplicate aix entry.

2001-03-30  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/stl_bvector.h: Move to...
	* include/bits/stl_vector.h: ...here.
	* include/ext/bvector: Move to...
	* include/backward/bvector.h: ...here.
	* include/bits/std_vector.h: Change stl_bvector include.
	* include/bits/std_queue.h: Remove bvector include.
	* include/ext/tree: Insert using rb_tree, move to...
	* include/backward/tree.h: ...here.
	* include/backward/hash_map.h: Include ext/hash_map.
	* include/backward/hash_set.h: Include ext/hash_set.
	* include/backward/queue.h: New file.
	* include/backward/stack.h: Edit.
	* include/backward/algo.h: Same.
	* include/backward/algobase.h: Same.
	* include/backward/alloc.h: Same.
	* include/backward/function.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/iterator.h: Same.
	* include/backward/list.h: Same.
	* include/backward/map.h: Same.
	* include/backward/multimap.h: Same.
	* include/backward/multiset.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/pair.h: Same
	* include/backward/rope.h: Same.
	* include/backward/set.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/strstream.h: Same.
	* include/backward/tempbuf.h: Same.
	* src/Makefile.am (ext_headers): Edit.
	* src/Makefile.in: Regenerate.
	* testsuite/ext/headers.cc (main): Fix.
	* mkcheck.in: Fix.

From-SVN: r40979
2001-03-31 20:15:43 +00:00
Benjamin Kosnik 755f30f40c [multiple changes]
2001-03-28  Benjamin Kosnik  <bkoz@redhat.com>

	* mkcheck.in (LIBTOOL): Don't construct -B argument here...
	* tests_flags.in (CXX): Construct here.
	(static_fail): Don't remove compile.out. Format with spaces.
	(INCLUDES): Deal with xcompiling.
	* configure.in (xcompiling): Substitute.
	* testsuite/Makefile.am: Snake libjava configury.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/23_containers/map_operators.cc: Tweaks.
	* testsuite/23_containers/set_operators.cc: Tweaks.

2001-03-28  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>

	Enable dejagnu testing framework.
	* configure.in: Generate testsuite/Makefile.
	* configure: Regenerate.
	* Makefile.am (check-install): Change rule from this...
	(check-script-install): ...to this.
	(check): Change rule from this...
	(check-script):...to this.
	* Makefile.in: Regenerate.

From-SVN: r40960
2001-03-30 08:14:15 +00:00
Richard Henderson 52a11cbfcf IA-64 ABI Exception Handling.
From-SVN: r40924
2001-03-28 03:04:51 -08:00
Alexandre Oliva 787d2fb712 Makefile.am (CXXLINK): Use CXX again, and choose CXX tag explicitly.
* libsupc++/Makefile.am (CXXLINK): Use CXX again, and choose
CXX tag explicitly.
* src/Makefile.am (CXXLINK): Likewise.
* libsupc++/Makefile.in, src/Makefile.in: Rebuilt.

From-SVN: r40894
2001-03-28 01:19:42 +00:00
Benjamin Kosnik 5fa9abc3e9 basic_file.h (get_fileno): Remove.
2001-03-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_file.h (get_fileno): Remove.
	(_M_fileno): Remove.
	(_M_cfile_created): Add.
	(basic_file::basic_file(__c_file_type*, openmode): Add.
	(basic_file::basic_file(int, const char*, openmode): Remove.
	* include/bits/fstream.tcc (basic_fstream::basic_filebuf(int __fd,
	const char*, ios_base::openmode): Don't allocate
	internal buffers. Turn off internal buffers.
	(basic_filebuf::overflow): Remove test for null buffer.
	(basic_filebuf::_M_really_overflow): Same. Allow unbuffered use.
	* include/bits/streambuf.cc: Tweak.
	* include/bits/std_ostream.h: Tweak.
	* config/basic_file_libio.h: Same.
	* config/basic_file_stdio.h: Same.
	* src/ios.cc (ios_base::Init::Init()): Unbuffer stdout by default.
	* testsuite/27_io/filebuf_members.cc: Tweaks.
	* testsuite/27_io/ios_base_members_static.cc: Tweaks.

From-SVN: r40863
2001-03-27 03:48:17 +00:00
Phil Edwards c21b6f8706 acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Update comment.
2001-03-24  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES):  Update comment.
	* src/Makefile.am:  Replace leading spaces with tabs on continuation
	lines.
	* aclocal.m4:  Regenerated.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.

From-SVN: r40822
2001-03-25 00:16:58 +00:00
Benjamin Kosnik 6ca9928acc misc-inst.cc (__sink_unused_warning): Move to...
2001-03-22  Benjamin Kosnik  <bkoz@redhat.com>

	* src/misc-inst.cc (__sink_unused_warning): Move to...
	* src/locale-inst.cc (__sink_unused_warning): Move to...
	* src/stl-inst.cc: Here.
	* include/bits/c++config (_STL_NO_CONCEPT_CHECKS): Add define,
	commented it out.

From-SVN: r40792
2001-03-23 20:02:03 +00:00
Richard Henderson 1fd9ea5d58 Fix merge error.
From-SVN: r40668
2001-03-20 11:48:43 -08:00
Richard Henderson f64805b6e9 gen-num-limits.cc: Instantiate for wchar_t.
* src/gen-num-limits.cc: Instantiate for wchar_t.
        * config/os/aix/bits/ctype_base.h (mask): Use unsigned int.

From-SVN: r40666
2001-03-20 11:39:45 -08:00
Alexandre Oliva e52ba67a25 gen-num-limits.cc (signal_adapter): Overloaded to match signal_func with an unspecified argument list.
* src/gen-num-limits.cc (signal_adapter): Overloaded to match
signal_func with an unspecified argument list.

From-SVN: r40546
2001-03-16 06:58:58 +00:00
Benjamin Kosnik db1d582c81 Fixups for -fno-for-scope
2001-03-12  Benjamin Kosnik  <bkoz@redhat.com>

	Fixups for -fno-for-scope
	* include/bits/locale_facets.tcc (__match_parallel): Fixup.
	* src/valarray-inst.cc (__gslice_to_index): Same.

From-SVN: r40429
2001-03-12 21:42:57 +00:00
Rodney Brown e6ff97b1c4 gen-num-limits.cc (traps): Add fflush prior to trapping signal (UnixWare 7 workaround).
2001-03-12  Rodney Brown  <RodneyBrown@mynd.com>

        * src/gen-num-limits.cc (traps) [SPECIALIZE_TRAPPING]: Add fflush
        prior to trapping signal (UnixWare 7 workaround).

From-SVN: r40422
2001-03-12 19:21:29 +00:00
Phil Edwards d53d7f6e61 algo.h: Use std not __STD.
2001-03-04  Phil Edwards  <pme@sources.redhat.com>

	http://gcc.gnu.org/ml/libstdc++/2001-03/msg00015.html
	* include/backward/algo.h:  Use std not __STD.  Remove unneeded
	macros and "never happens" code.  Adjust to C++STYLE guidelines.
	* include/backward/algobase.h:  Likewise.
	* include/backward/alloc.h:  Likewise.
	* include/backward/bvector.h:  Likewise.
	* include/backward/deque.h:  Likewise.
	* include/backward/function.h:  Likewise.
	* include/backward/hash_map.h:  Likewise.
	* include/backward/hash_set.h:  Likewise.
	* include/backward/hashtable.h:  Likewise.
	* include/backward/heap.h:  Likewise.
	* include/backward/iterator.h:  Likewise.
	* include/backward/list.h:  Likewise.
	* include/backward/map.h:  Likewise.
	* include/backward/multimap.h:  Likewise.
	* include/backward/multiset.h:  Likewise.
	* include/backward/pair.h:  Likewise.
	* include/backward/rope.h:  Likewise.
	* include/backward/set.h:  Likewise.
	* include/backward/slist.h:  Likewise.
	* include/backward/stack.h:  Likewise.
	* include/backward/strstream:  Likewise.
	* include/backward/tempbuf.h:  Likewise.
	* include/backward/tree.h:  Likewise.
	* include/backward/vector.h:  Likewise.
	* include/bits/basic_ios.h:  Likewise.
	* include/bits/basic_ios.tcc:  Likewise.
	* include/bits/basic_string.h:  Likewise.
	* include/bits/c++config:  Likewise.
	* include/bits/concept_checks.h:  Likewise.
	* include/bits/fpos.h:  Likewise.
	* include/bits/fstream.tcc:  Likewise.
	* include/bits/functexcept.h:  Likewise.
	* include/bits/ios_base.h:  Likewise.
	* include/bits/istream.tcc:  Likewise.
	* include/bits/mask_array.h:  Likewise.
	* include/bits/ostream.tcc:  Likewise.
	* include/bits/pthread_allocimpl.h:  Likewise.
	* include/bits/sbuf_iter.h:  Likewise.
	* include/bits/slice.h:  Likewise.
	* include/bits/slice_array.h:  Likewise.
	* include/bits/sstream.tcc:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_fstream.h:  Likewise.
	* include/bits/std_iomanip.h:  Likewise.
	* include/bits/std_ios.h:  Likewise.
	* include/bits/std_istream.h:  Likewise.
	* include/bits/std_iterator.h:  Likewise.
	* include/bits/std_memory.h:  Likewise.
	* include/bits/std_ostream.h:  Likewise.
	* include/bits/std_sstream.h:  Likewise.
	* include/bits/std_streambuf.h:  Likewise.
	* include/bits/std_string.h:  Likewise.
	* include/bits/std_valarray.h:  Likewise.
	* include/bits/stl_algo.h:  Likewise.
	* include/bits/stl_algobase.h:  Likewise.
	* include/bits/stl_alloc.h:  Likewise.
	* include/bits/stl_construct.h:  Likewise.
	* include/bits/stl_deque.h:  Likewise.
	* include/bits/stl_function.h:  Likewise.
	* include/bits/stl_heap.h:  Likewise.
	* include/bits/stl_iterator.h:  Likewise.
	* include/bits/stl_iterator_base.h:  Likewise.
	* include/bits/stl_list.h:  Likewise.
	* include/bits/stl_map.h:  Likewise.
	* include/bits/stl_multimap.h:  Likewise.
	* include/bits/stl_multiset.h:  Likewise.
	* include/bits/stl_numeric.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/stl_pthread_alloc.h:  Likewise.
	* include/bits/stl_queue.h:  Likewise.
	* include/bits/stl_raw_storage_iter.h:  Likewise.
	* include/bits/stl_relops.h:  Likewise.
	* include/bits/stl_set.h:  Likewise.
	* include/bits/stl_stack.h:  Likewise.
	* include/bits/stl_tempbuf.h:  Likewise.
	* include/bits/stl_threads.h:  Likewise.
	* include/bits/stl_tree.h:  Likewise.
	* include/bits/stl_uninitialized.h:  Likewise.
	* include/bits/stl_vector.h:  Likewise.
	* include/bits/streambuf.tcc:  Likewise.
	* include/bits/type_traits.h:  Likewise.
	* include/bits/valarray_meta.h:  Likewise.
	* include/ext/bvector:  Likewise.
	* include/ext/hash_map:  Likewise.
	* include/ext/hash_set:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_bvector.h:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.
	* src/complex_io.cc:  Likewise.
	* src/ios.cc:  Likewise.
	* src/locale-inst.cc:  Likewise.
	* src/locale.cc:  Likewise.
	* src/localename.cc:  Likewise.
	* src/misc-inst.cc:  Likewise.
	* src/stdexcept.cc:  Likewise.
	* src/stl-inst.cc:  Likewise.
	* src/strstream.cc:  Likewise.
	* src/valarray-inst.cc:  Likewise.

From-SVN: r40239
2001-03-04 21:34:02 +00:00
Benjamin Kosnik 4073aad5b5 misc-inst.cc (__copy_streambufs): Fix typo for alpha.
2001-03-03  Benjamin Kosnik  <bkoz@redhat.com>

	* src/misc-inst.cc (__copy_streambufs): Fix typo for alpha.

From-SVN: r40208
2001-03-03 10:42:05 +00:00
Benjamin Kosnik 4cacbdf21f [multiple changes]
2001-03-02  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

        * include/bits/istream.tcc: change type of __extracted to __size_type

2001-03-02  Benjamin Kosnik  <bkoz@redhat.com>

	* src/wstring-inst.cc: New file.
	* src/Makefile.am (EXTRA_LTLIBRARIES): Remove.
	(libinst_wstring_la_SOURCES): Remove.
	(libstdc___la_LIBADD): Remove libinst_wstring_la.
	(sources): Add wstring-inst.cc
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Remove
	libinst_wstring_la.

From-SVN: r40192
2001-03-02 21:38:26 +00:00
Peter Schmid 758c46c9f5 locale.cc: initialise __ret with zero
2001-03-02  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

        * src/locale.cc: initialise __ret with zero
        * src/strstream.cc:cast gptr to int_type

From-SVN: r40188
2001-03-02 17:18:54 +00:00
Benjamin Kosnik e08838ac57 c++config (__GLIBCPP__): Bump number in anticipation of 2.92.
2001-02-28  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/2103
	* include/bits/c++config (__GLIBCPP__): Bump number in
	anticipation of 2.92.

	* include/bits/codecvt.h: Fix typo.
	* include/bits/basic_file.h (__basic_file): Don't use _M_wfile for
	stdio model.
	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Enable wchar_t
	instantiations for stdio model.

From-SVN: r40140
2001-03-01 00:37:18 +00:00
Phil Edwards 5e3cbe0b4b acinclude.m4 (GLIBCPP_CONFIGURE): Remove GLIBCPP_CFLAGS and GLIBCPP_CXXFLAGS as unused variables.
2001-02-28  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CONFIGURE):  Remove GLIBCPP_CFLAGS
	  and GLIBCPP_CXXFLAGS as unused variables.
	* configure.host:  Likewise.
	* configure.target:  Likewise.
	* aclocal.m4:  Regenerated.
	* configure:  Regenerated.
	* Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.

From-SVN: r40135
2001-02-28 18:42:47 +00:00
Benjamin Kosnik c0a26060f6 basic_file.h: Include basic_file_model.h.
2001-02-27  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/1886
	* include/bits/basic_file.h: Include basic_file_model.h.
	* config/c_io_libio.cc: Move to...
	* config/basic_file_libio.cc: Here.
	* config/basic_file_libio.h: New file.
	* config/c_io_stdio.cc: Move to...
	* config/basic_file_stdio.cc: Here.
	* config/basic_file_stdio.h: New file.
	* config/c_io_libio.h: Tweak.
	* config/c_io_stdio.h: Tweak.
	* src/Makefile.am (build_headers): Add basic_file_model.h.
	(sources): Add basic_file.cc, remove c++io.cc.
	* src/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add support for
	basic_file_model.h and basic_file.cc.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/27_io/filebuf.cc (test05): Add regression.

From-SVN: r40108
2001-02-28 03:20:36 +00:00
Phil Edwards 6a163d7cae acinclude.m4 (GLIBCPP_CONFIGURE): Update required compiler version.
2001-02-26  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CONFIGURE):  Update required compiler version.
	  (GLIBCPP_CHECK_COMPILER_FEATURES):  Can safely assume new
	  diagnostics.  Remove WFMT_FLAGS.
	* configure.in:  Replace WFMT_FLAGS with diagnostics options.
	* libsupc++/Makefile.am:  Likewise.
	* src/Makefile.am:  Likewise.
	* aclocal.m4:  Regenerated.
	* configure:  Regenerated.
	* Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.

From-SVN: r40075
2001-02-26 21:48:01 +00:00
Phil Edwards 9cfeea6e4e stl_config.h: Remove file.
2001-02-20  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/stl_config.h:  Remove file.
	* src/Makefile.am (base_headers):  Remove from list.
	* configure:  Regenerate.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* include/bits/c++config:  Move relevant macros to here.
	* include/backward/alloc.h:  Include c++config.h instead.
	* include/backward/function.h:  Ditto.
	* include/backward/heap.h:  Ditto.
	* include/backward/pair.h:  Ditto.
	* include/bits/pthread_allocimpl.h:  Ditto.
	* include/bits/std_functional.h:  Ditto.
	* include/bits/std_iterator.h:  Ditto.
	* include/bits/std_numeric.h:  Ditto.
	* include/bits/std_utility.h:  Ditto.
	* include/bits/stl_algobase.h:  Ditto.
	* include/bits/type_traits.h:  Ditto.
	* src/stl-inst.cc:  Ditto.

From-SVN: r39931
2001-02-20 20:20:48 +00:00
Benjamin Kosnik e2c094827c Add support for -fno-exceptions.
2001-02-15  Benjamin Kosnik  <bkoz@redhat.com>

	Add support for -fno-exceptions.
	* include/bits/exception_support.h: Remove.
	* include/bits/basic_string.h: Remove exception_support.
	(string::_M_check): Replace __OUTOFRANGE with __throw_out_of_range.
	(string::at): Same.
	(string::substr): Same.
	* include/bits/basic_string.tcc (string::reserve): Replace
	__LENGTHERROR with __throw_length_error.
	(string::_S_create): Same.
	(string::resize): Same.
	(string::_M_replace): Same.
	(string::replace): Same.
	(string::copy): Replace __OUTOFRANGE with __throw_out_of_range.
	(string::compare): Same.
	* include/bits/stl_vector.h: Remove exception_support.
	* src/Makefile.am (base_headers): Remove here.
	* src/Makefile.in: Regenerate.

	* include/bits/stl_range_errors.h: Remove.
	* include/bits/stl_deque.h: Use __throw_range_error.
	* include/bits/std_deque.h: Include functexcept.h.
	* include/bits/std_vector.h: Same.
	* src/Makefile.am (base_headers): Remove here.
	* src/Makefile.in: Regenerate.
	* include/ext/stl_bvector.h (class __BVECTOR): Use __throw_range_error.
	* include/ext/bvector: Remove stl_range_errors.h

	* include/bits/c++config (_GLIBCPP_USE_EXCEPTIONS): Remove.

	* include/bits/functexcept.h: New file.
	* src/functexcept.cc: New file. Definitions for function-based
	exception routines.
	* src/Makefile.am (sources): Add functexcept.cc.
	* src/Makefile.in: Regenerate.

	* include/bits/stl_config.h (__STL_USE_EXCEPTIONS): Wrap with
	__EXCEPTIONS.

	* include/bits/localefwd.h: Include functexcept.h.
	* include/bits/std_iosfwd.h: Same.

	* include/bits/basic_ios.h: Use __throw_ios_failure instead of
	throw basic_ios::failure.
	* include/bits/fstream.tcc (filebuf::_M_allocate_buffers):
	Use __throw_exception_again.
	(filebuf::_M_filebuf_init): Same.
	* include/bits/streambuf.tcc (__copy_streambufs): Same.
	* include/bits/ostream.tcc (ostream::operator<<): Same.
	* include/bits/istream.tcc (istream::operator>>): Same.
	* include/bits/basic_string.tcc (string::_M_mutate): Same.
	(string::_S_construct): Same.
	(string::_M_clone): Same.
	* include/bits/locale_facets.tcc (use_facet(const locale&)): Use
	__throw_bad_cast.
	(num_put<_CharT, _OutIter>::do_put): Use __throw_exception_again.
	* src/localename.cc (locale::_Imp::_Imp(const _Impl&, size_t): Use
	__throw_exception_again.
	(locale::_Imp::_Imp(string, size_t): Same.
	(locale::_Imp::_M_replace_facet): Use __throw_runtime_error.
	* src/locale.cc (locale::_M_coalesce): Use __throw_exception_again.
	(locale::locale(const char*)): Use __throw_runtime_error.
	(locale::classic): Use __throw_exception_again.
	(locale::_S_normalize_category): Use __throw_runtime_error.

	* src/stdexcept.cc: Remove cruft.

	* libsupc++/exception_defines.h: New file.
	* libsupc++/new_opnt.cc: Include exception_defines.h.
	* libsupc++/vec.cc: Same.
	(__cxa_vec_new2): Use __throw_exception_again.
	(__cxa_vec_new3): Same.
	(__cxa_vec_ctor): Same.
	(__cxa_vec_delete3): Same.
	(__cxa_vec_cctor): Same.
	(__cxa_vec_delete2): Same.
	(__cxa_vec_dtor): Same.
	* libsupc++/exception_support.cc: Include exception_defines.h. Only
	compile exception-handling bits if __EXCEPTIONS is defined.
	Remove old ABI support.
	* libsupc++/new_op.cc (new): Include exception_defines.h. Use
	std::__throw_bad_alloc() instead of throw bad_alloc.
	* libsupc++/Makefile.am: Add exception_defines.h.
	* libsupc++/Makefile.in: Reformat.
	* libsupc++/*: Format.

From-SVN: r39730
2001-02-16 00:44:44 +00:00
Mark Mitchell 11662aaaa5 * src/locale.cc: Remove bogus locale::id definitions.
From-SVN: r39598
2001-02-12 09:06:39 +00:00
Alexandre Oliva 48dbafe4a9 gen-num-limits.cc: Use sigsetjmp and siglongjmp if available.
* src/gen-num-limits.cc: Use sigsetjmp and siglongjmp if available.
* mknumeric_limits: Compile it with -DHAVE_CONFIG_H.
* configure.in: Test for sigsetjmp.
* configure, config.h.in: Rebuilt.

From-SVN: r39586
2001-02-11 18:15:49 +00:00
Gabriel Dos Reis 8db47d74b3 valarray-inst.cc (gslice::_Indexer::_Indexer): Don't flip lengths and strides.
* src/valarray-inst.cc (gslice::_Indexer::_Indexer): Don't flip
        lengths and strides.
        (__gslice_to_index): Document.

From-SVN: r39583
2001-02-11 06:39:14 +00:00
Benjamin Kosnik ab7a43d812 locale-inst.cc (fill_n): Instantiate with size_t arguments.
2001-02-08  Loren J. Rittle  <ljrittle@acm.org>

        * src/locale-inst.cc (fill_n): Instantiate with size_t arguments.

From-SVN: r39549
2001-02-08 20:33:19 +00:00
Benjamin Kosnik 0c952af328 Clean up stdexcept.
2001-02-07  Benjamin Kosnik  <bkoz@redhat.com>

	Clean up stdexcept.
	* include/bits/stringfwd.h: New file.
	* include/bits/stl_string_fwd.h: Remove.
	* include/bits/localefwd.h: Remove declaration for allocator.
	* include/bits/std_iosfwd: Same.
	* include/bits/std_string.h: Include it.
	* include/bits/std_ios.h: Remove include.
	* include/bits/basic_string.h: Tweak.
	* libsupc++/new: Format.
	* src/Makefile.am (base_headers): Add stringfwd.h, remove
	stl_string_fwd.h
	* src/Makefile.in: Regenerate.
	* include/bits/std_stdexcept.h: Rewrite.
	* src/stdexcept.cc: Same.

From-SVN: r39526
2001-02-07 20:26:24 +00:00
Benjamin Kosnik 72ed283692 acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Deal with library install locations too.
2001-02-06  Benjamin Kosnik  <bkoz@fillmore.constant.com>

	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Deal with library
	install locations too.
	* aclocal.m4: Regeneate.
	* configure.in: Remove USE_LIBDIR.
	* configure: Regenerate.
	* src/Makefile.am (toolexecdir): Simplify, use
	glibcpp_toolexecdir, glibcpp_toolexeclibdir.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Same.
	* libsupc++/Makefile.in: Regenerate.

	* src/Makefile.am: Just remove special rules for locale-inst.cc and
	misc-inst.cc as no longer necessary.

	Follow C++STYLE for naming non-static functions.
	* include/bits/ostream.tcc (_S_pad_char): Not static, rename to
	__pad_char.
	* include/bits/streambuf.tcc: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/istream.tcc: Same.
	* include/bits/locale_facets.tcc (_S_pad_numeric): To __pad_numeric.
	(_S_output_float): To __output_float.
	* include/bits/std_streambuf.h (_S_copy_streambufs): To
	__copy_streambufs.
	* include/bits/locale_facets.tcc (_S_build_float_format): To
	__build_float_format.
	(_S_format): To __output_integer.
	(_S_fill): To __pad.
	* src/locale.cc: Same.
	* src/misc-inst.cc: Fix formatting. Fix signature for wchar_t. Correct
	names.
	* include/bits/locale_facets.tcc (_S_group_digits): To
	__group_digits.
	* src/locale-inst.cc: Fixup names. Add use_facet instantiations
	for collate, numpunct.

From-SVN: r39508
2001-02-07 01:54:21 +00:00
Jeffrey Oldham 9fbbdc9f61 misc-inst.cc (_S_pad_char): Modify declaration's parameters to match header files.
2001-02-06  Jeffrey Oldham  <oldham@codesourcery.com>

	* src/misc-inst.cc (_S_pad_char): Modify declaration's parameters
	to match header files.
	(_S_output_float): Likewise.
	(_S_copy_streambufs): Likewise.

From-SVN: r39496
2001-02-06 17:41:44 +00:00
Mark Mitchell bf6adbe2c6 locale_facets.tcc: Remove `static' keyword on function definitions.
* include/bits/locale_facets.tcc: Remove `static' keyword on
	function definitions.
	* include/bits/std_streambuf.h: Likewise.
	* src/Makefile.am: Remove use of -fimplicit-templates.
	* src/Makefile.in: Regenerated.
	* src/locale-inst.cc: Explicitly instantiate more functions.
	* src/msic-inst.cc: Likewise.
	* src/string-inst.cc: Likewise.

From-SVN: r39481
2001-02-06 06:36:18 +00:00
Benjamin Kosnik 43ba4a5894 acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): New macro.
2001-02-05  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): New
	macro. Consolidate all the bits to do with where includes might be
	installed.
	* aclocal.m4: Regenerate.
	* configure.in: Use it.
	* configure: Regenerate.
	* src/Makefile.am (targetincludep): Use simplified rules.
	(targetincludep): Rename gxx_target_include_dir.
	(myincludep): Rename gxx_include_dir.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Use simplified rules.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r39479
2001-02-06 06:32:01 +00:00
Mark Mitchell 9b30b506d6 string-inst.cc (string::_M_replace): Explicitly instantiate.
* src/string-inst.cc (string::_M_replace): Explicitly instantiate.
	(string::_S_construct): Likewise.

From-SVN: r39465
2001-02-05 19:46:22 +00:00
Benjamin Kosnik ae9dc93157 Makefile.am (mkinstalldirs): Set.
2001-02-03  Alexandre Oliva  <aoliva@redhat.com>
            Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>

        * Makefile.am (mkinstalldirs): Set.
        * src/Makefile.am (mkinstalldirs): Set.
        * libmath/Makefile.am (mkinstalldirs): Set.
        * libsup++/Makefile.am (mkinstalldirs): Set.
        * libio/Makefile.am (mkinstalldirs): Set.
	* */Makefile.in: Regenerate.

From-SVN: r39430
2001-02-03 09:01:44 +00:00
Alexandre Oliva e2c20faebf configure.in (toplevel_srcdir, auxdir): Set.
* configure.in (toplevel_srcdir, auxdir): Set.
* acinclude.m4 (glibcpp_basedir): Set based on auxdir.
* aclocal.m4, configure, Makefile.in: Rebuilt.
* libio/Makefile.in, math/Makefile.in, src/Makefile.in: Likewise.
* libsupc++-v3/Makefile.am (INCLUDES): Use toplevel_srcdir.
* libsupc++-v3/Makefile.in: Rebuilt.
* libsupc++-v3/configure.in, libsupc++-v3/configure: Removed.
* libsupc++-v3/aclocal.m4, libsupc++-v3/config.h.in: Likewise.

From-SVN: r39395
2001-02-01 21:08:05 +00:00
Benjamin Kosnik 0214010c60 Preliminary named locales.
2001-01-29  Benjamin Kosnik  <bkoz@redhat.com>

	Preliminary named locales.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): New macro.
	* aclocal.m4: Regenerate.
	* configure.in: Use it.
	* configure: Regerate.
	* src/Makefile.am (sources): Add c++locale.cc.
	(build_headers): Add c++locale.h.
	* src/Makefile.in: Regenerate.
	* config/c_locale_gnu.h: New file.
	* config/c_locale_gnu.cc: New file. Non-inline member functions
	for named locales, gnu-specific.
	* config/c_locale_generic.h: New file.
	* config/c_locale_generic.cc: New file. Non-inline member
	functions for named locales, generic version.
	* docs/html/configopts.html: Add documentation on new options.

	* include/bits/locale_facets.h (class _Messages): Remove.
	(class _Moneypunct): Remove.
	* src/locale-inst.cc: Remove.

	* include/bits/locale_facets.h (class _Collate): Remove.
	* src/locale-inst.cc (std): Remove.
	* src/locale.cc: And here.

	* include/bits/localefwd.h (locale::_M_coalesce): New
	function. Correctly put together multi-name locales.
	(_Impl(const _Impl&, category, size_t)): Remove.

	* include/bits/localefwd.h (locale::_Impl): Remove _M_construct_*
	member functions.
	(_M_normalize_category_names): Remove.
	(_M_replace_categories): Fix.

	* src/localename.cc (locale::_Impl::_M_construct_collate): Remove.
	(locale::_Impl::_M_construct_ctype): Remove.
	(locale::_Impl::_M_construct_monetary): Remove.
	(locale::_Impl::_M_construct_numeric): Remove.
	(locale::_Impl::_M_construct_time): Remove.
	(locale::_Impl::_M_construct_messages): Remove.

	* include/bits/locale_facets.h (_Bad_use_facet): Remove.
	(_Use_facet_failure_handle): Remove.
	* src/locale.cc: Remove definitions.
	* src/locale-inst.cc: And here.

	* testsuite/22_locale/ctor_copy_dtor.cc (test01): Fixup. Add tests.

	* src/localename.cc (locale::facet::_S_create_c_locale): Properly
	create and error-check underlying locale object.
	(locale::facet::_S_destroy_c_locale): Add, take care of properly
	tearing down underlying locale object.
	* include/bits/localefwd.h (locale::facet): Declare.
	* testsuite/22_locale/members.cc: Don't test "fr_FR" locale for
	correctness, as glibc apparently has incorrect info in it. Test
	with it when it works again.....

	* include/bits/localefwd.h (locale::_Impl::__vec_string):
	Remove. Number of categories is fixed at six, so just simplify and
	make this an array of strings.
	(locale::_Impl::_M_has_name): Remove.
	(locale::_Impl::_M_name): Remove.
	(locale::_Impl::_M_category_names): Turns into...
	(locale::_Impl::_M_names): ...this.
	(locale::_Impl::_M_has_same_name()): New function.
	* src/localename.cc (locale::_Impl::~_Impl()): Remove here.
	(locale::_Impl::_Impl(size_t __refs, string __str)): Simplify
	signature.
	* src/locale.cc (locale::name()): Construct mangled name
	accurately reflecting combined locale categories.

	* src/locale.cc (locale::classic()): Don't initialize here.
	* src/localename.cc (locale::_Impl::_Impl(size_t __num, size_t
	__refs, bool __has_name, string __str): Do it here.

	* include/bits/localefwd.h: _S_categories_num to
	_S_num_categories. _S_facets_num to _S_num_facets.
	(locale:🆔:id()): Explicitly set _M_index to zero.
	* src/locale.cc: Same.

	* src/locale.cc: (locale::locale(const char*)): Construct named
	locales uniquely.

	* src/locale.cc: Remove numpunct_byname ctors.
	* testsuite/22_locale/numpunct_byname.cc: New file.
	* testsuite/22_locale/numpunct.cc: New file.

	* include/bits/localefwd.h (class locale): Change data members to
	protected, from private.
	(_Impl::_M_get_c_locale): Add member function.
	(locale::facet::_M_get_global_impl()): Add member function.
	* include/bits/locale_facets.h (numpunct::_M_init): Change to take
	a __c_locale pointer.
	(numpunct::numpunct( __c_locale*, size_t)): Add additonal ctor for
	named locales.
	* testsuite/22_locale/members.cc: New file, test name and combine.

	* include/bits/locale_facets.h (class numpunct): Remove class
	_Punct and _Numpunct. Rewrite class numpunct to be correct for
	named locales.
	* include/bits/localefwd.h (locale::_Imp::_M_c_locale): Add.
	* src/localename.cc (_Impl::~_Impl()): Call __frelocale.
	(_Imp::_Impl(size_t, size_t, bool, string)) Initialize _M_c_locale.
	* src/locale-inst.cc: Remove _Numpunct, _Punct instantiations.
	* testsuite/22_locale/numpunct_char_members.cc: New file.

From-SVN: r39347
2001-01-30 09:18:51 +00:00
Mark Mitchell 71456ba3b0 ios.cc: Remove accidental inclusion of <stdio.h> in last checkin.
* src/ios.cc: Remove accidental inclusion of <stdio.h> in last
	checkin.

From-SVN: r39276
2001-01-26 02:25:13 +00:00
Mark Mitchell bfd7f4ecc7 Makefile.am (sources): Add globals.cc.
* src/Makefile.am (sources): Add globals.cc.
	* src/Makefile.in: Regenerated.
	* src/globals.cc: New file.
	* src/ios.cc (cin): Don't define here, just declare extern.
	(cout): Likewise.
	(cerr): Likewise.
	(clog): Likewise.
	(wcin): Likewise.
	(wcout): Likewise.
	(wcerr): Likewise.
	(wclog): Likewise.

From-SVN: r39275
2001-01-25 22:39:29 +00:00
Benjamin Kosnik d34786e3fe ios_base.h (ios_base::failure): Tighten up throw specs.
2001-01-16  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/1605
	* include/bits/ios_base.h (ios_base::failure): Tighten up throw specs.
	* src/ios.cc (ios_base::failure): Make definitions match.
        * libsupc++/typeinfo (class bad_typeid): Add throw specs.
        (class bad_cast): Same.
        * libsupc++/exception (class exception): Add throw specs.
        * libsupc++/exception_support.cc (set_terminate): Add throw specs.
        (set_unexpected): Same.
        (uncaught_exception): Same.
        (what): Same.

	* docs/html/17_intro/C++STYLE (classname): Fix.

From-SVN: r39087
2001-01-17 07:44:57 +00:00
Mark Mitchell 5fdfba85be gen-num-limits.cc (INSTANTIATIONS): New macro.
* src/gen-num-limits.cc (INSTANTIATIONS): New macro.
	Use it do explicitly instantiate predicate<T> and value<T> for
	all the builtin Ts.

From-SVN: r39086
2001-01-17 07:13:39 +00:00
Benjamin Kosnik 752808fb43 ios.cc: Fix typo: change cout->wcout.
2001-01-10  Benjamin Kosnik  <bkoz@redhat.com>

	* src/ios.cc: Fix typo: change cout->wcout.

	* src/Makefile.am (targetincludep): Fix for version-specific-libs.
	* src/Makefile.in: Regenerate.

From-SVN: r38895
2001-01-11 07:27:50 +00:00
Benjamin Kosnik 469550eb04 Fixes for libstdc++/1576
2001-01-09  Benjamin Kosnik  <bkoz@redhat.com>
	                     <kainz@ilm.com>

	Fixes for libstdc++/1576
	* src/stdstreams.cc: Initialize with NULL filebuf. Delete
	file, move contents into....
	* src/ios.cc: ...Here. Put defines for iostreams objects and
	initialization routines into one file to simplify DSO interaction.
	* include/bits/std_iostream.h: Touch.
	* include/bits/ios_base.h (_S_synched_with_stdio): Make static.
	* src/Makefile.am (sources): Remove stdstreams.cc.
	* src/Makefile.in: Regenerate.

From-SVN: r38871
2001-01-10 17:24:11 +00:00
Alexandre Oliva 4a70b13a4c gen-num-limits.cc (signal_adapter): New template function.
* src/gen-num-limits.cc (signal_adapter): New template function.
(signal_handler): Use it, instead of signal.
(traps<T>): Likewise.  Install SIGTRAP handler too.  Don't
require both tests to trap to set trap_flag.

From-SVN: r38814
2001-01-09 03:01:56 +00:00
Benjamin Kosnik d358ecd01f [multiple changes]
2001-01-05  Benjamin Kosnik  <bkoz@redhat.com>

	Fix 27_io/filebuf_members.cc
	* src/localename.cc (locale::_Impl::_Impl(const _Impl& __imp,
	const string& __name, category __cat, size_t __refs): Set
	_M_has_name with _M_name.
	* include/bits/localefwd.h (locale::operator!=): Protect member
	function call with this->.
	* src/locale.cc (locale::operator==): Make fast checks first.
	* include/bits/basic_ios.tcc (basic_ios::init): Simplify.

	* include/bits/ios_base.h (_M_synced_with_stdio): Add data member
	to ios_base::Init.
	* src/ios.cc (ios_base::Init::Init): Initialize here.
	(ios_base::sync_with_stdio): Set here.

2001-01-04  Loren J. Rittle  <ljrittle@acm.org>

        * config/c_io_stdio.cc (__basic_file<_CharT>::sys_open()): On
        systems that support it, call dup() before fdopen().

From-SVN: r38742
2001-01-06 02:44:11 +00:00
Benjamin Kosnik e61c3e8cde std_cwctype.h: Include std_cwchar.h for wint_t.
2001-01-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_std/bits/std_cwctype.h: Include std_cwchar.h for wint_t.
	* testsuite/17_intro/header_cwctype.cc (main): New file.

	* src/Makefile.am (base_headers): Change.
	* include/bits/std_string.h: And here.
	* include/bits/string.tcc: Tweaks, move to...
	* include/bits/basic_string.tcc: ...Here.
	* src/string-inst.cc: Simplify, just instantiate the whole class,
	not member-by-member.

From-SVN: r38679
2001-01-04 04:21:42 +00:00
Benjamin Kosnik a40ba78e55 Makefile.am (CSTD_INCLUDES): Change from CSHADOW_INCLUDES.
2000-12-23  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (CSTD_INCLUDES): Change from CSHADOW_INCLUDES.
	(strstream.cc): Add special rule for deprecated files.
	* libsupc++/Makefile.am (INCLUDES): Sync.
	* acinclude.m4 (GLIBCPP_EXPORT_INCLUDES): And here.

	Reported by Fred Fish  <fnf@ninemoons.com>
	* include/backward/iomanip.h: Remove backward from include
	* include/backward/strstream.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/istream.h: Same.
	* src/strstream.cc: And here.

	Reported by  Brad Garcia  <bgarcia@laurelnetworks.com>
	* src/string-inst.cc (_S_find): Use generic template.
	* include/bits/string.tcc (_S_find): Remove specializations

From-SVN: r38477
2000-12-23 07:13:57 +00:00
Benjamin Kosnik 0a31609b5a Attempt to make locale visible in gdb.
2000-12-22  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	Attempt to make locale visible in gdb.
	* include/bits/std_locale.h: Remove codecvt.h include.
	* include/bits/locale_facets.h: Add here, after ctype decls.
	* include/bits/codecvt.h: Remove std namespace, as assumed to be
	in std now.

	* include/bits/locale_facets.h: Consistently move generic static
	member definitions directly after generic facet declarations.
	* include/bits/locale_facets.tcc: From here.

	* src/locale.cc: Organize locale::id static definitions for
	required facets.
	* src/codecvt.cc (codecvt<char...>): Remove locale::id definition.
	(codecvt<wchar_t...>): Same.
	* src/localename: And here.

	* include/bits/localefwd.h (_Count_ones): Change _S_count to _M_count.
	Same for _M_halfcount.
	(std): make locale::_Impl protected. CHANGE BACK

From-SVN: r38449
2000-12-22 11:03:33 +00:00
Gabriel Dos Reis 1228c7b6bd Makefile.am (sources): Remove complex.cc, complexf.cc and complexl.cc from list.
* src/Makefile.am (sources): Remove complex.cc, complexf.cc and
	complexl.cc from list.
	* src/Makefile.in: Regenerate.
	* src/complex.cc: Remove.
	* src/complexf.cc: Likewise.
	* src/complexl.cc: Likewise.

	* libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove csqrtl.c
	(EXTRA_DIST): Remove csqrt.c and csqrtf.c.
	* libmath/Makefile.in: Regenerate.
	* libmath/complex-stub.h: Remove.
	* libmath/csqrt.c: Likewise.
	* libmath/sqrtf.c: Likewise.
	* libmath/sqrtl.c: Likewise.
	* libmath/mathconf.h: Remove <complex.h> and "complex-stub.h"
	#inclusion.

	* include/bits/std_complex.h (sqrt<>): Define primary template.
	(complex<>): Remove sqrt friend declarations.

	* configure.in: Initialize with src/ios.cc.
	* configure: Regenerate.
	* acinclude.m4: Remove check for csqrt* and <complex.h>
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r38409
2000-12-21 01:28:58 +00:00
Phil Edwards 4c07386b32 acinclude.m4 (SECTION_FLAGS, [...]): Fix minor thinko.
2000-12-20  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (SECTION_FLAGS, OPT_LDFLAGS):  Fix minor thinko.
	* aclocal.m4:  Regenerate.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* include/bits/istream.tcc:  Fix clause reference in comment.

From-SVN: r38406
2000-12-20 21:37:57 +00:00
Benjamin Kosnik 49caba3beb ios.cc (ios_base::_M_grow_words(int ix)): Fix libstdc++/1089.
2000-12-19  Curtis Janssen  <cljanss@ca.sandia.gov>

	* src/ios.cc (ios_base::_M_grow_words(int ix)): Fix libstdc++/1089.
	* testsuite/27_io/ios_base_storage.cc (test01): New file.

From-SVN: r38391
2000-12-20 08:04:41 +00:00
Benjamin Kosnik 205c6f1709 [multiple changes]
2000-12-19  Benjamin Kosnik  <bkoz@fillmore.constant.com>

	* configure.in: Don't turn on long long by default.
	* configure: Regenerate.
	* include/c/bits/std_cstdio.h: Remove c++config.h include.
	* src/locale.cc: Formatting tweaks.
	* testsuite/22_locale/ctype.cc (char<unsigned char>): Provide
	member functions.

2000-12-19  Loren J. Rittle  <ljrittle@acm.org>

        * testsuite/22_locale/ctype.cc (test01): Correct ~ operator usage.

From-SVN: r38388
2000-12-19 22:55:07 +00:00
Benjamin Kosnik 6e138b89b7 [multiple changes]
2000-12-18  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Set os_include_dir for cross_compiles.
	* configure: Regenerate.
	* configure.target (l_glibcpp_cxxflags): Don't try to be clever
	when assigning ATOMICITYH. Only special case the special cases...

2000-12-15  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (gxx_target_include_dir): Install target-dependent
	include files in a target-dependent place.
	* configure: Regenerate.
	* src/Makefile.am: Add in support here.
	* src/Makefile.in: Regenerate.

From-SVN: r38354
2000-12-18 18:03:08 +00:00
Benjamin Kosnik 07467d31de Makefile.am (myinstallheaders): Install backwards headers in prefix, not prefix/backward.
2000-12-14  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* src/Makefile.am (myinstallheaders): Install backwards headers in
	prefix, not prefix/backward.
	* src/Makefile.in: Regenerate.

From-SVN: r38265
2000-12-15 00:55:02 +00:00
Benjamin Kosnik d9ab8adb37 ctype_base.h (ctype_base): Consistency with linux.
2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/generic/bits/ctype_base.h (ctype_base): Consistency
	with linux.
	* config/os/generic/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.5/bits/ctype_base.h: Same.
	* config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.6/bits/ctype_base.h: Same.
	* config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.7/bits/ctype_base.h: Same.
	* config/os/irix/bits/ctype_inline.h (is): Same.
	* config/os/irix/bits/ctype_base.h (ctype_base): Same.
	* config/os/aix/bits/ctype_inline.h (is): Same.
	* config/os/aix/bits/ctype_base.h (ctype_base): Same.
	* config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
	* config/os/bsd/netbsd/bits/ctype_base.h (ctype_base): Same.
	* config/os/bsd/freebsd/bits/ctype_base.h (ctype_base): Same.
	* config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
	* config/os/newlib/bits/ctype_inline.h (is): Same.
	* config/os/newlib/bits/ctype_base.h (ctype_base): Same.

	* testsuite/22_locale/ctype_char_members.cc (test01): Add tests, fix.
	* testsuite/22_locale/ctype.cc (test01): Add tests for
	ctype_base::mask bitmask features.
	* src/locale.cc: Define const static data for ctype_base.
	* config/os/gnu-linux/bits/ctype_base.h (ctype_base): Make
	ctype_base::mask type an integer type, not an enum.
	* config/os/gnu-linux/bits/ctype_inline.h (is): Implement correctly.
	* include/bits/locale_facets.h: Tweaks.

	* include/bits/ios_base.h: Formatting tweaks.

	* docs/html/17_intro/C++STYLE: Add.

From-SVN: r38243
2000-12-14 07:20:37 +00:00
Benjamin Kosnik eebc608e3b [multiple changes]
2000-12-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Don't link ctype
	files here...
	* configure.in: Rather, do it once for all targets here. Clean up
	canadian cross and cross compile targets for linux-targeted
	crosses.
	* configure: Regenerate.
	* aclocal.m4: Regnerate.
	* acconfig.h: Add more defines.
	* config.h.in: Regenerate.

2000-12-12  Angela Marie Thomas <angela@cygnus.com>

	* configure.in: Fix case for host-x-linux
	* configure: Regenerate.

From-SVN: r38217
2000-12-13 09:25:44 +00:00
Alexandre Petit-Bianco 09314637fc Makefile.am (libstdc++.INC:): 2000-12-05 reverted to include 2000-11-12 hunk.
2000-12-10  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* src/Makefile.am (libstdc++.INC:): 2000-12-05 reverted to include
	2000-11-12 hunk.
	* src/Makefile.in: Rebuilt.

From-SVN: r38178
2000-12-10 12:51:22 -08:00
Gabriel Dos Reis 0ba2a514ef Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove ccosl, cexpl, clog10l, csinhl, ctanhl, ctanl.
* libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove ccosl,
	cexpl, clog10l, csinhl, ctanhl, ctanl.
	(EXTRA_DIST): Remove ccos, ccosf, csin, csinf, ccosh, ccoshf,
	csing, csinhf, clog10, clog10f, ctan, ctanf, ctanh, ctanhf.
	* libmath/Makefile.in: Regenarate.
	* libmath/ccos.c: Remove.
	* libmath/ccosf.c: Likewise.
	* libmath/ccosl.c: Likewise.
	* libmath/csin.c: Likewise.
	* libmath/csinf.c: Likewise.
	* libmath/csinl.c: Likewise.
	* libmath/ctan.c: Likewise.
	* libmath/ctanf.c: Likewise.
	* libmath/ctanl.c: Likewise.
	* libmath/ccosh.c: Likewise.
	* libmath/ccoshf.c: Likewise.
	* libmath/ccoshl.c: Likewise.
	* libmath/csinh.c: Likewise.
	* libmath/csinhf.c: Likewise.
	* libmath/csinhl.c: Likewise.
	* libmath/ctanh.c: Likewise.
	* libmath/ctanhf.c: Likewise.
	* libmath/ctanhl.c: Likewise.
	* libmath/cexp.c: Likewise.
	* libmath/cexpf.c: Likewise.
	* libmath/cexpl.c: Likewise.
	* libmath/clog10.c: Likewise.
	* libmath/clog10f.c: Likewise.
	* libmath/clog10l.c: Likewise.
	* libmath/complex-stub.h: Remove forward declaration of functions
	mentioned above.

	* include/bits/std_complex.h(tan, tanh): Define primary templates.
	(complex<>): Remove friend declarations for tan<> and tanh<>.
	* src/complex.cc(tan, tanh): Remove specializations.

	* acinclude.m4: Remove check for ccos, ccosf, ccosl, ccosh,
	ccoshf, ccoshl,	csin, csinf, csinl, csinh, csinhf, csinhl, cexp,
	cexpf, cexpl, ctan, ctanf, ctanl, ctanh, ctanhf, ctanhl.
	* aclocal.m4: Regenarate.
	* configure: Regenarate.

From-SVN: r38128
2000-12-08 05:57:48 +00:00
Benjamin Kosnik 167ed88f7a locale_facets.h (ctype): Remove _Ctype_nois and _Ctype and replace with common __ctype_abstract_base.
2000-12-06  Benjamin Kosnik  <bkoz@kredhat.com>

	* include/bits/locale_facets.h (ctype): Remove _Ctype_nois and
	_Ctype and replace with common __ctype_abstract_base.
	(ctype<wchar_t>::_M_convert_to_wmask): Move to locale.cc.
	* config/os/gnu-linux/bits/ctype_noninline.h (ctype<char>::ctype):
	And here.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/newlib/bits/ctype_noninline.h (ctype): Same.
	* config/os/irix/bits/ctype_noninline.h (ctype): Same.
	* config/os/hpux/bits/ctype_noninline.h (ctype): Same.
	* config/os/generic/bits/ctype_noninline.h (ctype): Same.
	* config/os/aix/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h (ctype): Same.
	* src/locale-inst.cc: Clean instantiations.
	* src/locale.cc (ctype<char>): Add definitions here.
	(ctype<wchar_t>::_M_wmask): Move definitions here.

	* config/os/generic/bits/ctype_inline.h (ctype<char>::is):
	Implement in a generic way, with only "C" functionality and no
	knowlege of the target os.
	* config/os/generic/bits/os_defines.h: Change comments to C++ style.
	* testsuite/22_locale/ctype_char_members.cc (test01): Add tests.

	* include/bits/codecvt.h (ctype_byname): Remove specializations,
	as not required.
	* include/bits/localefwd.h (codecvt_byname): And here.
	* src/codecvt.cc: Remove codecvt_byname specializations.

	* include/c/bits/std_cstdio.h: Include c++config.h.

From-SVN: r38100
2000-12-07 06:44:49 +00:00
Phil Edwards f84ef7fb01 acinclude.m4 (GLIBCPP_CHECK_*_DECL_AND_LINKAGE_*): Pre-test whether the cached result is present.
2000-12-06  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_*_DECL_AND_LINKAGE_*):  Pre-test
	  whether the cached result is present.
	* aclocal.m4:  Regenerate.
	* configure:  Regenerate.
	* Makefile.in:  Regenerate.
	* libio/Makefile.in:  Regenerate.
	* libmath/Makefile.in:  Regenerate.
	* libsupc++/Makefile.in:  Regenerate.
	* src/Makefile.in:  Regenerate.

From-SVN: r38079
2000-12-06 21:44:50 +00:00
Alexandre Petit-Bianco 239a3da093 Makefile.am (libstdc++.INC): Revert for libjava builds.
2000-12-05  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* src/Makefile.am (libstdc++.INC): Revert for libjava builds.
	* src/Makefile.in: Regenerate.

From-SVN: r38059
2000-12-06 03:05:12 +00:00
Gabriel Dos Reis fad3e66e8e complex.cc (pow): Remove definitions for explicit specializations.
* src/complex.cc (pow): Remove definitions for explicit
	specializations.
	* libmath/mathconf.h: Remove declarations for c_log, c_logf,
	c_logl.
	* libmath/complex-stub.h: Remove declarations for cpow, cpowf,
	cpowl.
	* libmath/cpow.c: Remove.
	* libmath/cpowf.c: Remove.
	* libmath/cpowl.c: Remove.
	* libmath/Makefile.am (EXTRA_LONG_DOUBLE_yes): Remove c_logl,
	cpowl,
	(EXTRA_DIST): Remove c_log, c_logf, carg, cargf.
	* libmath/Makefile.in: Regenarate.
	* libmath/c_log.c: Remove
	* libmath/c_logf.c: Likewise.
	* libmath/c_logl.c: Likewise.
	* libmath/carg.c: Likewise.
	* libmath/cargf.c: Likewise.
	* libmath/cargl.c: Likewise.
	* include/bits/std_complex.h (pow): Define primary templates.
	(complex<>): Remove friend declarations for pow<>().
	* acinclude.m4: Remove check for c_log, c_logf, c_logl, carg,
	cargf.
	* aclocal.m4: Regenarate.
	* configure: Regenarate.

From-SVN: r38025
2000-12-05 04:01:46 +00:00
Gabriel Dos Reis a30dbb3960 cmath.cc: Remove.
* src/cmath.cc: Remove.
	* src/Makefile.am (c_base_headers): Add bits/cmath.tcc.
	(sources): Remove cmath.cc
	* src/Makefile.in: Regenerate.

	* include/c/bits/std_cmath.h (__cmath_power<>): Declare.
	(__cmath_abs<>): New function.
	(abs, fabs): Use __cmath_abs when no direct support is available.
	(__pow_helper<>): New function.
	(pow): Define here.  Use __pow_helper<>.

	* include/c/bits/cmath.tcc: New file.

From-SVN: r37901
2000-11-30 23:44:32 +00:00
Benjamin Kosnik fc81ccd3e5 Fixes for build directories with colons, AIX build problems.
2000-11-29  Benjamin Kosnik  <bkoz@redhat.com>

	Fixes for build directories with colons, AIX build problems.
	* src/Makefile.am: Cleanups, add documentation.
	(libstdc++.INC): Simplify rule.
	(myinstallheaders): Consolidate install rules.
	(myinstalldirs): New, make directores.
	(base_headers): Subdivide based on install directory.
	(ext_headers): New.
	(backward_headers): New.
	(headers): Remove.
	(c_headers): Remove, unused.
	(c_shadow_headers): Split up, deal with conditional usage in a
	sane manner.
	* src/Makefile.in: Regenerate.

From-SVN: r37858
2000-11-29 21:30:30 +00:00
Gabriel Dos Reis abfadcb132 Makefile.am (sources): Add bitset.cc
* src/Makefile.am (sources): Add bitset.cc
	* src/Makefile.in: Regenrate.

	* include/bits/std_bitset.h (_GLIBCPP_BITSET_BITS_PER_WORD): New
	macro. Replace __BITS_PER_WORDS throughout.
	(__BITS_PER_WORDS): Remove.
	(bitset<>::_M_do_find_first, bitset<>::_M_do_find_next): Move
	definitions to src/bitset.cc.

	* src/bitset.cc (bitset<>::_M_do_find_first,
	bitset<>::_M_do_find_next):  Define here.
	(_Bit_count<>::_S_bit_count, _Find_one<>::_S_first_one): Define
	here. Explicitly instantiate definitions.

From-SVN: r37837
2000-11-29 01:09:09 +00:00
Joseph Myers 7ee9826b89 acinclude.m4: Change C9X references to refer to C99.
* acinclude.m4: Change C9X references to refer to C99.
	* aclocal.m4, configure: Regenerate.
	* config/os/gnu-linux/bits/os_defines.h, src/complex.cc,
	testsuite/22_locale/codecvt_wchar_t_char.cc,
	include/bits/stl_config.h, include/c/bits/std_cwchar.h,
	libmath/mathconf.h: Change C9X references to refer to C99.

From-SVN: r37743
2000-11-25 19:36:53 +00:00
Benjamin Kosnik 85fe381069 Makefile.am (INCLUDES): Remove unconditional use of _GNU_SOURCE and _ISOC99_SOURCE macros.
2000-11-25  Benjamin Kosnik  <bkoz@redhat.com>
            Richard Earnshaw  <rearnsha@arm.com>

	* src/Makefile.am (INCLUDES): Remove unconditional use of
	_GNU_SOURCE and _ISOC99_SOURCE macros.
	* src/Makefile.in: Regenerate.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>

From-SVN: r37736
2000-11-25 09:11:15 +00:00
Benjamin Kosnik 4ce69c7f61 Make deprecated strstream header consistent with new and new.h.
2000-11-22  Benjamin Kosnik  <bkoz@redhat.com>

	Make deprecated strstream header consistent with new and new.h.
	* include/backward/strstream.h: Add. Use using declarations to
	scope strstreambuf, istrstream, ostrstream, strstream to global
	scope.
	* include/backward/strstream: Remove using declarations.
	* src/Makefile.am (base_headers): Add strstream.
	* src/Makefile.in: Regenerate.

	* include/backward/new.h (_CPP_BACKWARD_NEW_H): Change macro guard
	to be consistent with other headers.

From-SVN: r37692
2000-11-23 06:46:31 +00:00
Gabriel Dos Reis 23a5b4448c ios_base.h (ios_base::failure::~failure, [...]): Move defintion to ...
* include/bits/ios_base.h (ios_base::failure::~failure,
	ios_base::failure::what): Move defintion to ...

	* src/ios.cc (ios_base::failure::~failure): ... here.
	src/ios.cc (ios::failure::what): Likewise.

From-SVN: r37684
2000-11-23 04:53:40 +00:00
Loren J. Rittle eed86de8ac Makefile.am (base_headers): Add missing backwards headers.
2000-11-22  Loren J. Rittle  <ljrittle@acm.org>

	* src/Makefile.am (base_headers): Add missing backwards headers.
	* src/Makefile.in: Regenerate.

From-SVN: r37659
2000-11-22 17:55:06 +00:00
Benjamin Kosnik 5feb272b7a strstream.cc: Adjust includes.
2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* src/strstream.cc: Adjust includes.
	* src/Makefile.am (base_headers): Remove std_strstream.h, add
	backwards/strstream.h.
	(std_headers): Remove strstream.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am (headers): Remove new.h
	* libsupc++/Makefile.in: Regenerate.
	* include/std/strstream: Remove.
	* include/backward/strstream.h: Replace with...
	* include/bits/std_strstream.h: ...this. Move.
	* include/backward/complex.h: Remove SGIisms.
	* include/backward/streambuf.h: Same.
	* include/backward/stream.h: Same.
	* include/backward/ostream.h: Same.
	* include/backward/istream.h: Same.
	* include/backward/iostream.h: Same.
	* include/backward/iomanip.h: Same.
	* include/backward/fstream.h: Same.
	* libsupc++/new.h: Add using declarations for bad_alloc,
	nothrow_t, and nothrow, move to ...
	* include/backward/new.h: ...here.

From-SVN: r37632
2000-11-22 00:05:16 +00:00
Benjamin Kosnik 819004bbd0 acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
	* aclocal.m4: Regenerate.
	* configure: Renerate.

From-SVN: r37626
2000-11-21 20:53:36 +00:00
Benjamin Kosnik 5e90dd7193 std_complex.h: Tweaks, include cmath for abs overloads.
2000-11-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/std_complex.h: Tweaks, include cmath for abs overloads.
	* src/complex.cc: Remove cmath include, formatting tweaks, remove
	dead code.
	* include/c/bits/std_cmath.h: Formatting tweaks.
	* testsuite/26_numerics/complex_value.cc: New file, for catching
	bits gleaned from libstdc++/106.

	* testsuite/23_containers/vector_ctor.cc (test02): Add test from
	libstdc++/102.

From-SVN: r37591
2000-11-20 21:13:45 +00:00
Phil Edwards 6414587c8b acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY): Move switch statement contents to...
2000-11-17  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_ATOMICITY):  Move switch statement
	  contents to...
	* configure.target:  ...here.  Enable generic atomic ops, and warn.
	* aclocal.m4:  Regenerated.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

From-SVN: r37524
2000-11-17 20:35:06 +00:00
Mark Mitchell e26cb7aba1 acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make --enable-cstdio=stdio the default.
* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Make
	--enable-cstdio=stdio the default.  Disable wide character support
	in that event.
	* configure.in: Move GLIBCPP_ENABLE_C_MBCHAR after
	(GLIBCPP_ENABLE_CSTDIO).
	* config/c_io_stdio.h: Don't include <libio.h>, don't define
	__c_wfile_type.
	* aclocal.m4: Regenerated.
	* configure: Likewise.
	* Makefile.in: Likewise.
	* libio/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.

From-SVN: r37509
2000-11-17 01:04:02 +00:00
Mark Mitchell c4d3f801a6 acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Substitute libio_la.
	* src/Makefile.am (libstdc___la_LIBADD): Use it.
	* aclocal.m4: Regenerated.
	* configure: Likewise.
	* Makefile.in: Likewise.
	* libio/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* src/Makfile.in: Likewise.

From-SVN: r37491
2000-11-16 01:44:03 +00:00
Benjamin Kosnik 5b20f7a054 acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to initial value.
2000-11-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPOR): Set LIBS back to
	initial value.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* include/bits/c++config (__GLIBCPP__): Set release version for 2.91.

From-SVN: r37457
2000-11-14 17:23:49 +00:00
Phil Edwards d0941a315e acinclude.m4 (GLIBCPP_CHECK_TARGET): New macro...
2000-11-13  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_TARGET):  New macro, replacing
	  GLIBCPP_CHECK_CPU and GLIBCPP_CHECK_OS, sourcing configure.target.
	  (GLIBCPP_CONFIGURE):  Call new macro here.
	* configure.host:  Cleanup.
	* configure.in:  Remove those two macros.
	* configure.target:  New file.
	* aclocal.m4:  Regenerated.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* mkcheck.in:  Use libtool.  Split things out into functions.

From-SVN: r37443
2000-11-13 23:49:41 +00:00
Alexandre Petit-Bianco b72554f1df Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
2000-11-12  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * Makefile.am (tmp-libstdsc++.INC:): Do not use -I$(top_builddir).
        * Makefile.in: Regenerate.

From-SVN: r37442
2000-11-13 23:38:41 +00:00
Brent Verner 51d61f8686 wrap_langinfo.h: New file.
2000-11-12  Brent Verner  <brent@rcfile.org>

        * include/c_std/bits/wrap_langinfo.h: New file.
        * include/c_std/langinfo.h: New file.
        * include/bits/codecvt.h (__enc_trants::__enc_traits()): Bring in
	CODESET from _C_legacy::CODESET if using shadow headers.
	* src/Makefile.am: Add new files.
	* src/Makefile.in: Regenerate.

From-SVN: r37437
2000-11-13 21:04:54 +00:00
David Edelsohn 02a480f137 locale-inst.cc: Add explicit instantiations of _M_fill_insert and fill_n<..., unsigned long,...> .
* src/locale-inst.cc: Add explicit instantiations of
        _M_fill_insert and fill_n<..., unsigned long,...> .

From-SVN: r37324
2000-11-08 15:00:36 -05:00
Alexandre Oliva de9aefe0ea acinclude.m4 (CXX): Prevent it from being cached.
* acinclude.m4 (CXX): Prevent it from being cached.
* aclocal.m4, configure, */Makefile.in: Rebuilt.

From-SVN: r37245
2000-11-04 07:07:38 +00:00
Phil Edwards 626d8f0a2c [multiple changes]
2000-11-03  David Edelsohn <dje@watson.ibm.com>

	* acinclude.m4 (GLIBCPP_CHECK_OS): Add AIX target selecting threads
	  flag based on multilib definition of $CXX.
	* mknumeric_limits (LDFLAGS): Add AIX target linking with pthreads
	  based on multilib definition of $CXX.
	* config/os/aix/bits/os_defines.h (_G_USING_THUNKS): Define as 0.

2000-11-03  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4:  Cleanups.
	* aclocal.m4:  Regenerated.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* docs/install.html:  Removal of EGCS.
	* docs/23_containers/wrappers_h.txt:  Likewise.
	* docs/faq/index.html:  Likewise.
	* docs/faq/index.txt:  Regenerated.
	* docs/thanks.html:  More people.

From-SVN: r37241
2000-11-04 03:00:12 +00:00
Mark Mitchell 5a0b0c7abf * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
From-SVN: r37219
2000-11-03 05:15:35 +00:00