Commit Graph

100 Commits

Author SHA1 Message Date
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
Phil Edwards 69d211dd50 std_iterator.h: Do not include stl_relops.h.
2001-01-25  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/std_iterator.h:  Do not include stl_relops.h.
	* include/bits/std_numeric.h:  Ditto.
	* include/bits/stl_algobase.h:  Ditto.
	* include/bits/stl_relops.h:  Add comment warning about problems.

From-SVN: r39267
2001-01-25 15:35:10 +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
Benjamin Kosnik 13187a454d C++STYLE (classname): Add more existing and stylish patterns.
2001-01-16  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/17_intro/C++STYLE (classname): Add more existing
	and stylish patterns.

	libstdc++/944
	* include/bits/istream.tcc (istream::sentry::sentry()): Set
	failbit if the state of the stream is not good.
	* testsuite/27_io/istream_sentry.cc (test02): Add test.
	* testsuite/27_io/istream_manip.cc (test01): Modify.

	libstdc++/1019
	reported by Paolo Carlini <pcarlini@unitus.it>
	* include/bits/istream.tcc (operator>>(istream&, string&)): Fix.
	* testsuite/21_strings/inserters_extractors.cc (test08): Add test.

	libstdc++/1057
	* include/bits/std_streambuf.h (setp): Set _M_buf_size correctly.
	* include/bits/streambuf.tcc (xsputn): Remove outside if clause.
	(xsgetn): Same. Simplify.
	* testsuite/27_io/streambuf.cc (test04): Add testcases.

	reported by Larry Evans <jcampbell3@prodigy.net>
	* include/bits/streambuf.tcc (streambuf::xsputn): Just check for
	equality with eof on returned value from overflow.

From-SVN: r39059
2001-01-16 07:55:26 +00:00
Benjamin Kosnik 976448273e basic_string.h (_S_find(const _CharT* __beg, const _CharT* __end, _CharT __c): Remove.
2001-01-12  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/basic_string.h (_S_find(const _CharT* __beg, const
	_CharT* __end, _CharT __c): Remove.
	* include/bits/basic_string.tcc: Substitute traits::find for _S_find.
	* include/bits/char_traits.h: Tweak.

From-SVN: r38961
2001-01-12 21:24:15 +00:00
Joseph Myers 57043d914e std_cstdio.h: Undef printf.
2001-01-11   Joseph S. Myers  <jsm28@cam.ac.uk>

	* include/c_std/bits/std_cstdio.h: Undef printf.

From-SVN: r38917
2001-01-11 18:16:16 +00:00
Peter Schmid 90e420bd60 std_complex.h: Fix a typo.
2001-01-10  Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

         * include/bits/std_complex.h: Fix a typo.

From-SVN: r38878
2001-01-10 20:55:03 +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
Peter Schmid fa44a93614 2001-01-09 Peter Schmid<schmid@snake.iap.physik.tu-darmstadt.de>
2001-01-09  Peter Schmid<schmid@snake.iap.physik.tu-darmstadt.de>
        * include/bits/std_complex.h: Fix a typo.

From-SVN: r38848
2001-01-10 02:30:57 +00:00
Robert Lipe e7eceef2af * include/c_std/bits/std_ctime.h: Undefine difftime.
From-SVN: r38817
2001-01-09 07:42:45 +00:00
Benjamin Kosnik 5a259aec51 fpos.h (fpos:::fpos(streamoff __pos)): Explicitly initialize mbstate_t member, name offset data members *off, not pos.
2001-01-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/fpos.h (fpos:::fpos(streamoff __pos)): Explicitly
	initialize mbstate_t member, name offset data members *off, not pos.
	* include/bits/fstream.tcc (filebuf::filebuf): Same.

From-SVN: r38809
2001-01-08 23:51:57 +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 36e40658db acinclude.m4 (GLIBCPP_ENABLD_CSTDIO): Add in default value.
2001-01-02  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLD_CSTDIO): Add in default value.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* include/bits/c++config (__GLIBCPP__): Bump version number.

	* ChangeLog: Start new log for year 2001
	* ChangeLog-2000: New file.

	* docs/html/configopts.html: Make sure default values are current,

From-SVN: r38663
2001-01-03 15:53:28 +00:00
Benjamin Kosnik 7b33122850 std_cwchar.h: Same.
2001-01-01  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* include/c_std/bits/std_cwchar.h: Same.
	* testsuite/17_intro/header_cwchar.cc: Same.
	* include/c_std/bits/std_ctime.h: Same.
	* testsuite/17_intro/header_ctime.cc: Same.
	* include/c_std/bits/std_cstdlib.h: Same.
	Clean up undefs, make consistent with cwchar and cmath, etc.
	* testsuite/17_intro/header_cstdlib.cc: Same.
	* include/c_std/bits/std_cstdio.h: Same here.
	* testsuite/17_intro/header_cstring.cc: Same.
	* include/c_std/bits/std_cstring.h: Include std_cstddef.h for size_t.
	* testsuite/17_intro/header_cstring.cc: New file. Check for
	size_t in namespace std.

	* include/c_std/bits/std_cwchar.h: Explicit checks for mbstate_t.
	* acconfig.h (HAVE_MBSTATE_T): Add.
	* config.h.in: Regenerate.
	* acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Always test for
	mbstate_t.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/17_intro/headers_c++.cc: New file.
	* testsuite/17_intro/headers_c.cc: Small changes.

From-SVN: r38614
2001-01-02 07:38:47 +00:00
Alexandre Oliva 2b872543ba * include/c_std/bits/std_cstdlib.h (mblen): Protect against macro.
From-SVN: r38574
2001-01-01 00:06:50 +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 e63a5d07ad 000-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.

From-SVN: r38450
2000-12-22 11:06:17 +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
Benjamin Kosnik 98e6e789f6 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38440
2000-12-22 00:27:01 +00:00
Benjamin Kosnik 74da183aea configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38439
2000-12-22 00:14:08 +00:00
Benjamin Kosnik fb9affe790 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38438
2000-12-22 00:04:33 +00:00
Benjamin Kosnik 1aa040fc77 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38437
2000-12-21 23:58:35 +00:00
Benjamin Kosnik 2b8c76ef65 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38436
2000-12-21 23:54:19 +00:00
Benjamin Kosnik 8358c2c297 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38434
2000-12-21 23:15:18 +00:00
Benjamin Kosnik d8147b1eb1 configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Change GLIBCPP_ENABLE_SHADOW to
	GLIBCPP_ENABLE_CHEADERS.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Change to
	ENABLE_CHEADERS.  C_INCLUDE_DIR defaults to c_std from c.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/c: Move to ...
	* include/c_std: ...here.
	* include/c_std: Move to ...
	* include/c_shadow: ...here.
	* include/c: Repopulate, with simple headers.
	* docs/html/configopts.html: Adjust docs.

From-SVN: r38430
2000-12-21 22:46:27 +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 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
Gabriel Dos Reis 0a9419ccca std_complex.h (complex<float>::operator-=): Fix thinko.
* include/bits/std_complex.h (complex<float>::operator-=): Fix
      thinko.

From-SVN: r38377
2000-12-19 11:21:14 +00:00
Benjamin Kosnik 3d182b4c2a *.h: Remove include_next...
2000-12-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c/bits/*.h: Remove include_next, replace with include,
	as include_next does not work host-x-host, and include_next not
	necessary.

From-SVN: r38256
2000-12-14 19:06:57 +00:00
Benjamin Kosnik 65b66e1f90 locale_facets.h (ctype<char>): Remove throw specs not in base class signature.
2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.h (ctype<char>): Remove throw specs not in
	base class signature.

From-SVN: r38249
2000-12-14 09:07:01 +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
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 4716be24b5 ctype_base.h (ctype_base): Change space mask.
2000-12-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* config/os/generic/bits/ctype_base.h (ctype_base): Change space mask.

	* config/os/generic/bits/ctype_noninline.h (ctype): Remove default
	arguments in definition.
	* 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/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: Tweak.

From-SVN: r38115
2000-12-07 20:49:10 +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
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
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
Benjamin Kosnik 74d2f859d2 Update for 2.91 release.
2000-11-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Update for 2.91 release.
	* include/bits/c++config (__GLIBCPP__): Update.
	* docs/17_intro/RELEASE-NOTES: Update.
	* docs/status.html: Update, remove bogus autotools disinformation.

From-SVN: r37825
2000-11-28 20:33:39 +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 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
Benjamin Kosnik 27ddcd48c1 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: r37682
2000-11-23 03:25:47 +00:00
Loren J. Rittle 5789a524a6 strstream.h: Reinstate the `using' statements.
2000-11-22  Loren J. Rittle  <ljrittle@acm.org>

        * include/backward/strstream.h: Reinstate the `using'
        statements.

From-SVN: r37660
2000-11-22 18:06:53 +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 63e749a813 strstream.h: Replace with...
2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* 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: r37631
2000-11-21 23:44:50 +00:00
Gabriel Dos Reis b555ebaa9e std_complex.h (complex<double>): Constructor complex<double>::complex(const complex<float>&) is not explicit...
2000-11-21  Gabriel Dos Reis  <gdr@codesourcery.com>

	* include/bits/std_complex.h (complex<double>): Constructor
	complex<double>::complex(const complex<float>&) is not explicit;
	since it is a promotion.
	(complex<long double>): Constructors taking complex<float> and
	complex<double> are not explicit.

From-SVN: r37599
2000-11-21 00:08:02 +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
Joseph Myers 78d58962af c++config, [...]: Correct spelling of "deprecated".
* include/bits/c++config, include/bits/ios_base.h,
	include/bits/std_streambuf.h: Correct spelling of "deprecated".

From-SVN: r37580
2000-11-20 08:25:18 +00:00