Commit Graph

352 Commits

Author SHA1 Message Date
Phil Edwards
0e9cab878b abi_check.cc: Pull shell fragments out into...
2002-09-16  Phil Edwards  <pme@gcc.gnu.org>

	* testsuite/abi_check.cc:  Pull shell fragments out into...
	* config/abi/extract_symvers:  ...here.  New file.
	* Makefile.am (check_abi):  Change to match.
	(new-abi-baseline):  New target.
	* Makefile.in:  Regenerated.

From-SVN: r57208
2002-09-16 18:58:48 +00:00
Benjamin Kosnik
714e9334c4 Makefile.am (LIBTOOL): Use --tag CC always for this directory.
2002-09-12  Benjamin Kosnik  <bkoz@redhat.com>

	* libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
	directory.
	* libmath/Makefile.in: Regenerate.
	* src/Makefile.am: Tweak comment.
	* src/Makefile.in: Regenerate.

	* config/locale/gnu/c_locale.h: Remove warnings.
	Inject __uselocale into __gnu_cxx.
	* config/locale/generic/c_locale.h: Match.

From-SVN: r57082
2002-09-12 23:27:30 +00:00
Benjamin Kosnik
145163253a [multiple changes]
2002-09-11  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.tcc (__convert_from_v): Remove.
	* config/locale/gnu/c_locale.h (__convert_from_v): Add.
	* config/locale/generic/c_locale.h (__convert_from_v): Add.

2002-09-11  Paolo Carlini  <pcarlini@unitus.it>

        * include/bits/locale_facets.tcc (__convert_from_v):
        Use __uselocale instead of setlocale for glibc 2.3+.

From-SVN: r57021
2002-09-11 04:25:41 +00:00
Benjamin Kosnik
38cca75024 Makefile.am (sources): Edit.
2002-09-10  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (sources): Edit.
	(target_sources): New.
	(target_sources_extra): New.
	* src/Makefile.in: Regenerate.
	* acinclude.m4: Set CCODECVT_CC.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/locale.cc: Move ctype definitions...
	* src/ctype.cc: ...here. New file.
	* src/locale.cc: Move codecvt definitions...
	* src/codecvt.cc: ...here.
	* config/generic/codecvt_members.cc: ...and here.
	* config/gnu/codecvt_members.cc: ...and here.
	* include/bits/codecvt.h: Tweak.
	* include/bits/locale_facets: Tweak.

	* src/bitset.cc: Correct license text.
	* src/concept-inst.cc: Same.
	* src/strstream.cc: Same.
	* src/vterminate.cc: Same.

From-SVN: r57020
2002-09-11 03:36:45 +00:00
Benjamin Kosnik
f7be254940 configopts.html: Change grouping.
2002-09-09  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/configopts.html: Change grouping. Note ABI impacts.
	Update information for locale model defaults.
	* docs/html/install.html: Update include directory
	information.
	Update testing information.
	Update linux issues for named locales.
	* docs/html/abi.txt: Fix typos.
	Add more info.

	* src/misc-inst.cc: Add missing instantiations.

	* testsuite/abi_check.cc: Make output results more verbose.

	* config/os/gnu-linux/ctype_base.h: Remove shadow headers injections.

From-SVN: r56979
2002-09-09 20:26:42 +00:00
Jakub Jelinek
7d9857fde0 messages_members.cc: Add specialization for messages<wchar_t>.
* config/locale/generic/messages_members.cc: Add specialization for
	messages<wchar_t>.
	* config/locale/ieee_1003.1-20021/messages_members.cc: Likewise.

From-SVN: r56920
2002-09-07 21:06:57 +02:00
Jakub Jelinek
750db234b1 configure.target: Use cpu_include_dir="config/cpu/sparc" for all sparc targets.
* configure.target: Use cpu_include_dir="config/cpu/sparc" for all
	sparc targets.
	* config/cpu/sparc/bits/atomicity.h: New file.
	* config/cpu/sparc/sparc32/bits/atomicity.h: Removed.
	* config/cpu/sparc/sparc64/bits/atomicity.h: Removed.

[[Split portion of a mixed commit.]]

From-SVN: r56897.2
2002-09-06 20:32:08 +02:00
Jakub Jelinek
1c28b93579 ctype_noninline.h [...]: Remove using _C_legacy::__ctype_*.
* config/os/gnu-linux/ctype_noninline.h
	[_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
	(ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
	_S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
	and return __ctype_b.
	(ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
	_GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
	initialize using __ctype_{b,tolower,toupper}.
	(ctype<char>::ctype(const mask*, bool, size_t)): If
	_GLIBCPP_C_LOCALE_GNU, initialize using
	_S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
	switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.

From-SVN: r56893
2002-09-06 19:58:27 +02:00
Jakub Jelinek
df4c36e62d Oops, typo in dir name.
From-SVN: r56851
2002-09-05 18:32:28 +02:00
Jakub Jelinek
fcfe9bce2d ia64-unknown-linux-gnu: Add.
* config/abi/ia64-unknown-linux-gnu: Add.
	* config/abi/ia64-unknown-linux-gnu/baseline_symbols.txt: New file.
	* config/abi/alphaev67-unknown-linux-gnu: Add.
	* config/abi/alphaev67-unknown-linux-gnu/baseline_symbols.txt: New file.

From-SVN: r56847
2002-09-05 18:21:55 +02:00
Jakub Jelinek
f373d4c761 ctype_members.cc (ctype<wchar_t>::do_widen(char)): Switch to _M_c_locale_ctype around btowc call.
* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
	Switch to _M_c_locale_ctype around btowc call.
	(ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
	Switch to _M_c_locale_ctype around mbsrtowcs call.
	(ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
	wctob call.
	(ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
	Switch to _M_c_locale_ctype around wcsrtombs call.

From-SVN: r56841
2002-09-05 09:54:26 +02:00
Jakub Jelinek
9a6d20712b monetary_members.cc (moneypunct<wchar_t, [...]): Use __uselocale instead of setlocale for glibc 2.3.
* config/locale/gnu/monetary_members.cc
	(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
	moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
	__uselocale instead of setlocale for glibc 2.3.

From-SVN: r56839
2002-09-05 09:51:16 +02:00
Jakub Jelinek
89671b7067 c++locale_internal.h: New header.
* config/locale/generic/c++locale_internal.h: New header.
	* config/locale/gnu/c++locale_internal.h: New header.
	* config/locale/gnu/c_locale.cc: Include it.
	* config/locale/gnu/collate_members.cc: Include it.
	* config/locale/gnu/ctype_members.cc: Include it.
	* config/locale/gnu/messages_members.cc: Include it.
	* config/locale/gnu/monetary_members.cc: Include it.
	* config/locale/gnu/numeric_members.cc: Include it.
	* config/locale/gnu/time_members.cc: Include it.
	(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
	glibc.
	(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
	C locale.
	* acinclude.m4: Include string.h when testing strcoll_l.
	For glibc 2.3 provide __-prefixed prototypes.
	(CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
	* aclocal.m4, configure: Rebuilt.

	* include/bits/locale_facets.h: Add declaration of specialization
	here.
	* config/locale/gnu/messages_members.cc: Add specialization for
	messages<wchar_t>.
	* config/locale/gnu/messages_members.h: Remove generic definition
	of do_get.

From-SVN: r56837
2002-09-05 09:46:17 +02:00
Richard Earnshaw
25cf83980b cpu_limits.h: New file.
* config/cpu/arm/cpu_limits.h: New file.
* configure.target: Use config/cpu/arm for XScale and StrongARM
configurations.

From-SVN: r56653
2002-08-29 09:14:27 +00:00
Phil Edwards
6dc5fdfd5f linker-map.gnu: Verbose comments, clean up spacing.
2002-08-23  Phil Edwards  <pme@gcc.gnu.org>

	* config/linker-map.gnu:  Verbose comments, clean up spacing.
	* include/bits/stl_alloc.h:  Fix indentation of 'if' bodies, return
	statements.
	__allocator:  Change class declaration to struct.
	* docs/html/17_intro/C++STYLE:  Fix typo.
	* include/bits/stl_deque.h, include/bits/stl_list.h,
	include/bits/stl_map.h, include/bits/stl_multimap.h,
	include/bits/stl_vector.h:  Fix fallout from typo.

From-SVN: r56540
2002-08-23 16:52:29 +00:00
Loren J. Rittle
1f8151cf73 abi_check.cc: Enhance shell portability.
* testsuite/abi_check.cc: Enhance shell portability.
	* config/abi/i386-unknown-freebsd4.6: Add.
	* config/abi/i386-unknown-freebsd4.6/baseline_symbols.txt: New file.

From-SVN: r56527
2002-08-23 01:50:15 +00:00
Benjamin Kosnik
747d096709 Makefile.am (check-abi): New rule.
2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
	    Phil Edwards  <pme@gcc.gnu.org>
	    Ulrich Drepper  <drepper@redhat.com>

	* Makefile.am (check-abi): New rule.
	* Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CONFIGURE_TESTSUITE): Export baseline_file.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.am (noinst_PROGRAMS): Add abi_check.
	(abi_check_SOURCES): Add.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/abi_check.cc: New file.
	* config/abi: Add.
	* config/abi/i686-pc-linux-gnu: Add.
	* config/abi/i686-pc-linux-gnu/baseline_symbols.txt: New file.

Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>
Co-Authored-By: Ulrich Drepper <drepper@redhat.com>

From-SVN: r56515
2002-08-22 20:06:01 +00:00
Danny Smith
b5028f5e8b ctype_inline.h (is): Don't offset _M_table.
2002-08-02 Danny Smith  <dannysmith@users.sourceforge.net>

	* config/os/newlib/ctype_inline.h (is): Don't offset _M_table.
	(scan_is): Use this->is.
	(scan_not): Likewise.

From-SVN: r55989
2002-08-02 16:10:12 +00:00
Benjamin Kosnik
3450b8d03c re PR libstdc++/7461 (ctype<char>::classic_table() returns offset array on Cygwin)
2002-08-01  Rick Danos  <rdanos@hotmail.com>

	PR libstdc++/7461
	* config/os/newlib/ctype_noninline.h (classic_table): Add offset.
	* config/os/newlib/ctype_inline.h (is): Use static_cast.

From-SVN: r55955
2002-08-01 22:17:23 +00:00
Benjamin Kosnik
0870a49046 linker-map.gnu: Change CXXABI_1 to CXXABI_1.2, GLIBCPP_3.1 to GLIBCPP_3.2.
2002-08-01  Benjamin Kosnik  <bkoz@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* config/linker-map.gnu: Change CXXABI_1 to CXXABI_1.2,
	GLIBCPP_3.1 to GLIBCPP_3.2.

From-SVN: r55938
2002-08-01 17:25:56 +00:00
Alan Modra
bd11db39e8 cpu_limits.h (__glibcpp_long_bits): Define.
* config/cpu/powerpc/cpu_limits.h (__glibcpp_long_bits): Define.
	* configure.target (cpu_include_dir): Use cpu/powerpc for powerpc64.
	* config/cpu/powerpc/atomicity.h (__always_swap): Remove.
	(__test_and_set): Remove.
	(_STWCX): Define and use.

From-SVN: r55854
2002-07-30 08:56:00 +09:30
Benjamin Kosnik
9a56333e55 re PR libstdc++/7230 (<strstream> header file is missing (trunk))
2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/7230
	* config/linker-map.gnu: Revert strstream patch from 2002-07-01.
	* include/Makefile.am (backward_headers): Use strstream, not
	strstream.h.
	* include/Makefile.in: Regenerate.
	* include/backward/strstream: Revert.
	* include/backward/strstream.h: Remove.
	* src/strstream.cc: Revert.
	* testsuite/backward/strstream_members.cc: Change include.

From-SVN: r55730
2002-07-25 00:04:37 +00:00
Rainer Orth
b62024ef52 ctype_base.h (ctype_base): Fix print to match vendor <ctype.h>.
* config/os/solaris/solaris2.5/ctype_base.h (ctype_base): Fix
	print to match vendor <ctype.h>.

From-SVN: r55463
2002-07-15 20:23:38 +00:00
Eric Christopher
17640f249b configure.target: Fix comment for mips atomicity.
2002-07-08  Eric Christopher  <echristo@redhat.com>

	* configure.target: Fix comment for mips atomicity. Add
	mips*-*-linux* target, enable atomic operations there.
	* config/cpu/mips/atomicity.h: Fix comments, remove
	#ifndef/#endif. Add push/pop mips2.

From-SVN: r55331
2002-07-08 19:41:57 +00:00
Benjamin Kosnik
fdf7e80975 re PR libstdc++/6410 (Trouble with non-Ascii monetary symbols and wchar_t)
2002-07-02  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/6410
	* include/bits/locale_facets.h (moneypunct::moneypunct): Add const
	char* name parameter.
	* config/locale/gnu/monetary_members.cc: Use it.
	* config/locale/generic/monetary_members.cc: Same.
	* src/localename.cc (_Impl::_Impl(const char*, size_t)): Use it.

	* include/backward/strstream.h: Update date.

From-SVN: r55203
2002-07-03 06:29:26 +00:00
Benjamin Kosnik
eafa1afac6 strstream: Remove namespace std.
2002-07-01  Benjamin Kosnik  <bkoz@redhat.com>

	* include/backward/strstream: Remove namespace std. Transfer to...
	* include/backward/strstream.h: ...here. Qualify std names.
	* src/strstream.cc: Remove namespace std.
	* include/Makefile.am (backward_headers): Remove strstream.h.
	* include/Makefile.in: Regenerate.
	* config/linker-map.gnu: Export strstream bits.

	* src/fstream-inst.cc: Tweak.
	* src/io-inst.cc: Same.
	* src/istream-inst.cc: Same.
	* src/misc-inst.cc: Same.
	* src/ostream-inst.cc: Same.
	* src/sstream-inst.cc: Same.
	* src/valarray-inst.cc: Same.
	* src/misc-inst.cc: Remove unused instantiations.

From-SVN: r55148
2002-07-01 19:58:42 +00:00
Jessica Han
0e20c0b56f 2002-06-25 Jessica Han <jessica@cup.hp.com>
* config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
	* libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
	_GLIBCPP_VTABLE_PADDING is defined.

From-SVN: r54991
2002-06-25 16:55:47 +00:00
Phil Edwards
d32e25dffa *: Move header files up a level.
2002-06-24  Phil Edwards  <pme@gcc.gnu.org>

	* config/cpu/*/bits/*:  Move header files up a level.  Remove bits.
	* config/os/*/bits/*:  Likewise.
	* configure.in:  Update.
	* configure:  Regenerate.
	* configure.target:  Update.
	* docs/html/17_intro/porting.texi:  Update.

From-SVN: r54943
2002-06-24 05:50:58 +00:00
David Edelsohn
8fcbeac278 - Follow up to 2002-06-05 patch.
From-SVN: r54934
2002-06-23 17:46:34 -04:00
J.T. Conklin
f62bef4832 configure.target: Set os_include_dir to config/os/qnx/qnx6.1 under *-qnx6.[12]*.
2002-06-11  J.T. Conklin  <jtc@acorntoolworks.com>
            Benjamin Kosnik  <bkoz@redhat.com>

	* configure.target: Set os_include_dir to config/os/qnx/qnx6.1
	under *-qnx6.[12]*.
	* configure.in: Add support for *-qnx6.[12]*.
	* configure: Regenerate.

	* config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
	New directories.
	* config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
	ctype_noninline.h, os_defines.h: New files.

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

From-SVN: r54518
2002-06-11 17:54:27 +00:00
Benjamin Kosnik
4e4bcb4e86 ctype_noninline.h: Tweak format.
2002-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/generic/bits/ctype_noninline.h: Tweak format.

From-SVN: r54371
2002-06-08 14:03:03 +00:00
David Edelsohn
b80ee165bd ctype_noninline.h (do_toupper,do_tolower): Call external symbol.
* config/os/aix/bits/ctype_noninline.h (do_toupper,do_tolower):
        Call external symbol.

From-SVN: r54284
2002-06-05 10:51:59 -04:00
Marc Espie
04df515ada atomicity.h (__exchange_and_add): Fix inline assembly for old assemblers.
* config/cpu/m68k/bits/atomicity.h(__exchange_and_add):  Fix inline
	assembly for old assemblers.

From-SVN: r54202
2002-06-03 05:26:00 +00:00
Benjamin Kosnik
bed1bd8c51 re PR libstdc++/6795 (stringbuf failure)
2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/6795.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h
	(classic_table): Fix.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.

2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/22_locale/ctype_is_wchar_t.cc: Guard with
	_GLIBCPP_USE_WCHAR_T.
	* testsuite/22_locale/ctype_narrow_wchar_t.cc: Same.
	* testsuite/22_locale/ctype_to_wchar_t.cc: Same.
	* testsuite/22_locale/ctype_widen_wchar_t.cc: Same.

From-SVN: r53921
2002-05-27 11:42:59 +00:00
Carlo Wood
7aacf98920 re PR libstdc++/6811 (Missing 'return *this' in __enc_traits& operator=(const __enc_traits& __obj)' in 3.1 release)
2002-05-26  Carlo Wood  <carlo@alinoe.com>
	    Paolo Carlini  <pcarlini@unitus.it>

	PR libstdc++/6811
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
	(__enc_traits::operator=): add missing return statement.

Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>

From-SVN: r53896
2002-05-26 14:35:04 +00:00
Benjamin Kosnik
f64ce6c6e8 [multiple changes]
2002-05-24  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/6701
	* testsuite/22_locale/ctype_narrow_char.cc: New.
	* testsuite/22_locale/ctype_narrow_wchar_t.cc: New.
	* testsuite/22_locale/ctype_widen_char.cc: New.
	* testsuite/22_locale/ctype_widen_wchar_t.cc: New.
	* testsuite/22_locale/ctype_members_char.cc: Move some bits into...
	* testsuite/22_locale/ctype_is_char.cc: ...this.
	* testsuite/22_locale/ctype_to_char.cc: ...and this.
	* testsuite/22_locale/ctype_members_wchar_t.cc: Move some bits into...
	* testsuite/22_locale/ctype_is_wchar_t.cc: ...this.
	* testsuite/22_locale/ctype_to_wchar_t.cc: ...and this.

	* testsuite/22_locale/ctype_scan_wchar_t.cc: Should pass.

2002-05-24  Dale Peakall <dale@peakall.net>

	PR libstdc++/6701
	* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_narrow): Fix.
	* config/locale/generic/ctype_members.cc: Same.

From-SVN: r53841
2002-05-24 16:02:39 +00:00
Kaveh R. Ghazi
a8b432f4de ctype_inline.h (scan_is, scan_not): Fix typo, use this->is() rather than manually (and perhaps incorrectly) inlining it.
* config/os/irix/irix5.2/bits/ctype_inline.h (scan_is, scan_not):
	Fix typo, use this->is() rather than manually (and perhaps
	incorrectly) inlining it.
	* config/os/irix/irix6.5/bits/ctype_inline.h (scan_is, scan_not):
	Likewise.
	* testsuite/22_locale/ctype_scan_char.cc: New file.

From-SVN: r53422
2002-05-13 13:52:08 +00:00
Kaveh R. Ghazi
31397a7b64 os_defines.h: Revert 2002-05-06 change.
libstdc++-v3:
	* config/os/irix/irix5.2/bits/os_defines.h: Revert 2002-05-06
	change.

gcc:
	* mips/iris6.h (CPLUSPLUS_CPP_SPEC): Define.

From-SVN: r53408
2002-05-13 02:52:47 +00:00
John David Anglin
1f121cdbdd os_defines.h (__glibcpp_long_bits): Define to 64 for hppa 64-bit port.
* config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_bits): Define
	to 64 for hppa 64-bit port.
	(__glibcpp_long_double_bits): Define to 64 for all hppa ports.

From-SVN: r53388
2002-05-12 01:01:21 +00:00
Mark Mitchell
83b35bd149 Adjust copyright dates
From-SVN: r53296
2002-05-08 18:26:06 +00:00
Mark Mitchell
522e3d2226 configure.in: Add support for WindISS.
* configure.in: Add support for WindISS.
	* configure: Regenerated.
	* configure.target: Add support for WindISS.
	* config/os/windiss/bits/ctype_base.h: New file.
	* config/os/windiss/bits/ctype_inline.h: Likewise.
	* config/os/windiss/bits/ctype_noninline.h: Likewise.
	* config/os/windiss/bits/os_defines.h: Likewise.

From-SVN: r53269
2002-05-07 20:43:10 +00:00
Kaveh R. Ghazi
567310ad7f os_defines.h (_SGI_SOURCE, [...]): Ensure they are always defined.
* config/os/irix/irix5.2/bits/os_defines.h (_SGI_SOURCE,
	__EXTENSIONS__): Ensure they are always defined.

From-SVN: r53216
2002-05-06 14:03:57 +00:00
Paolo Carlini
6d030676cc [multiple changes]
2002-05-04  Benjamin Kosnik  <bkoz@redhat.com>
	    Paolo Carlini  <pcarlini@unitus.it>

	* testsuite/22_locale/num_put_members_char.cc: Add test04(),
	testing for the locale_facets.tcc entry of the previous commit.
	* testsuite/22_locale/num_put_members_wchar_t.cc: Likewise.

2002-05-04  Takeshi Kobayakawa  <tskoba@mte.biglobe.ne.jp>

	* config/locale/generic/c_locale.cc
	(__convert_to_v(float, double, long double)):
	Fix the temporary switch to the "C" locale, saving and
	restoring in the proper way the current locale.
	* config/locale/generic/time_members.cc
	(__timepunct<char, wchar_t>::_M_put): Likewise.
	* config/locale/gnu/messages_members.cc
	(messages<char>::do_get): Likewise.
	* config/locale/gnu/messages_members.h
	(messages<_CharT>::do_get): Likewise.
	* config/locale/gnu/time_members.cc
	(__timepunct<char, wchar_t>::_M_put): Likewise.
	* include/bits/locale_facets.tcc (__convert_from_v): Likewise.

From-SVN: r53167
2002-05-04 21:33:19 +00:00
Kaveh R. Ghazi
b70d6d4b66 ctype_noninline.h (classic_table): Return __ctype + 1.
* config/os/irix/irix5.2/bits/ctype_noninline.h (classic_table):
	Return __ctype + 1.
	(ctype:_M_table): Initialize to classic_table(), not __ctype.

From-SVN: r53093
2002-05-03 13:56:52 +00:00
Kaveh R. Ghazi
08d028699d * config/os/irix/irix5.2/bits/os_defines.h
(__glibcpp_long_double_bits, __glibcpp_long_bits): Define.

From-SVN: r53077
2002-05-03 04:01:58 +00:00
Kaveh R. Ghazi
3a02124033 ctype_inline.h: Cast to unsigned char.
* config/os/irix/irix5.2/bits/ctype_inline.h: Cast to unsigned
	char.

From-SVN: r53076
2002-05-03 03:59:22 +00:00
John David Anglin
888d5eaa62 re PR libstdc++/6501 (ctype_noninline.h:45: `__SB_masks' undeclared)
PR libstdc++/6501
	* include/c_std/std_cctype.h: Include bits/c++config.h.
	* config/os/hpux/bits/os_defines.h (_SB_CTYPE_MACROS): Define.

From-SVN: r52970
2002-04-30 19:50:29 +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
8e44e77e6a re PR libstdc++/6511 (new libstdc++ v3 testsuite regressions on *-*-solaris2.8)
2002-04-30  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/6511
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Fix typo.

From-SVN: r52937
2002-04-30 09:15:48 +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
Benjamin Kosnik
82f637d15d os_defines.h: Remove _G_USING_THUNKS.
2002-04-27  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/solaris/solaris2.5/bits/os_defines.h: Remove
	_G_USING_THUNKS.
	* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.7/bits/os_defines.h: Same.

From-SVN: r52838
2002-04-28 00:42:12 +00:00
Hans-Peter Nilsson
7e67bb8588 cpu_limits.h: New file.
* config/cpu/mmix/bits/cpu_limits.h: New file.
	* configure.target (CPULIMITSH): Use it.

From-SVN: r52674
2002-04-23 17:46:24 +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
cff5778913 linker-map.gnu (__malloc_alloc_template): Add.
2002-04-17  Benjamin Kosnik  <bkoz@redhat.com>

	* config/linker-map.gnu (__malloc_alloc_template): Add.
	(__default_alloc_template): Same.
	* include/bits/stl_alloc.h (__malloc_alloc_template): Add extern
	template.
	(__default_alloc_template): Same.

From-SVN: r52441
2002-04-17 20:08:18 +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
Steve Ellcey
ef290537a3 * gcc/libstdc++-v3/config/os/hpux/bits/os_defines.h
(strtoll, strtoull): In 64 bit mode HP-UX (IA64 and HPPA)
	does not define strtoll or strtoull, but does define strtol
	and strtoul which are the same since in 64 bit mode
	sizeof(long) == sizeof(long long).

From-SVN: r52247
2002-04-12 22:31:27 +00:00
Richard Henderson
51cd12de0d * config/linker-map.gnu: Add __gxx_personality_sj0.
From-SVN: r52187
2002-04-11 16:27:45 -07: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
David S. Miller
03381059f7 2002-04-05 David S. Miller <davem@redhat.com>
* config/os/gnu-linux/bits/os_defines.h
	(__glibcpp_long_double_bits): Set to 64 on 32-bit Sparc.

From-SVN: r51921
2002-04-05 05:46:50 -08: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
Paolo Carlini
99b629fa30 2002-04-01 Paolo Carlini <pcarlini@unitus.it>
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
	(codecvt::do_out, codecvt::do_unshift, codecvt::do_in):
	By definition, sizeof(char) == 1.
	* include/bits/locale_facets.tcc (money_get::do_get,
	money_put::do_put): Ditto.
	* testsuite/21_strings/inserters_extractors.cc
	(test04): Ditto.

From-SVN: r51685
2002-04-01 08:55:05 +00:00
Benjamin Kosnik
9ad6276f02 ctype_noninline.h (ctype::classic): Set to _ctype_.
2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>

        * config/os/newlib/bits/ctype_noninline.h (ctype::classic): Set to
        _ctype_.

From-SVN: r51354
2002-03-25 23:36:47 +00:00
Benjamin Kosnik
99ffa1e37a messages_members.h: Correct conditional.
2002-03-25  Benjamin Kosnik  <bkoz@redhat.com>
            Jakub Jelinek  <jakub@redhat.com>

	* config/locale/gnu/messages_members.h: Correct conditional.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.

From-SVN: r51332
2002-03-25 20:20:34 +00:00
Benjamin Kosnik
1f3a2ce1db messages_members.h: Add __uselocale bits.
2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/gnu/messages_members.h: Add __uselocale bits.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.

From-SVN: r51217
2002-03-23 01:55:34 +00:00
Benjamin Kosnik
f714575791 ctype_noninline.h: Cast to unsigned char.
2002-03-12  Benjamin Kosnik  <bkoz@redhat.com>
            Per Liboriussen  <liborius@stofanet.dk>

	* config/os/gnu-linux/bits/ctype_noninline.h: Cast to
	unsigned char.
	* config/os/gnu-linux/bits/ctype_inline.h: Same.

	* config/os/irix/irix6.5/bits/ctype_inline.h: Same.

	* config/os/solaris/solaris2.5/bits/ctype_inline.h: Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.

	* config/os/solaris/solaris2.6/bits/ctype_inline.h: Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.

	* config/os/solaris/solaris2.7/bits/ctype_inline.h: Same.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.

	* testsuite/22_locale/ctype_members_char.cc (main): Add tests.

Co-Authored-By: Per Liboriussen <liborius@stofanet.dk>

From-SVN: r50708
2002-03-13 02:32:08 +00:00
Ulrich Drepper
a10e3b428c 2002-03-09 Ulrich Drepper <drepper@redhat.com>
Paolo Carlini  <pcarlini@unitus.it>

        * config/locale/generic/collate_members.cc
	(collate<char,wchar_t>::_M_compare_helper): normalize
	values returned by strcoll and wcscoll.
        * config/locale/gnu/collate_members.cc
	(collate<char,wchar_t>::_M_compare_helper): ditto
	for __strcoll_l and __wcscoll_l.

Co-Authored-By: Paolo Carlini <pcarlini@unitus.it>

From-SVN: r50551
2002-03-10 23:48:25 +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
Richard Henderson
e38ff265da linker-map.gnu: Export operator new with unsigned long, and with std::nothrow_t.
* config/linker-map.gnu: Export operator new with unsigned long,
        and with std::nothrow_t.  Likewise operator delete.

From-SVN: r50176
2002-02-28 17:27:57 -08:00
Phil Edwards
9aa4369841 acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Fix comment.
2002-02-22  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS):  Fix comment.
	* aclocal.m4:  Regenerate.
	* docs/html/configopts.html:  Document --enable-symvers.
	* config/linker-map.gnu:  Break libsupc++ symbols out to their own tag.

From-SVN: r49977
2002-02-22 23:45:28 +00:00
Phil Edwards
c98b201bd9 acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Also check version.
2002-02-20  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
	(GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
	* configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
	* aclocal.m4:  Regenerate.
	* configure:  Regenerate.
	* config/linker-map.dummy:  New file.  Contains nothing useful.

From-SVN: r49913
2002-02-20 22:10:39 +00:00
Danny Smith
be6efd9f31 2002-02-20 Danny Smith <dannysmith@users.sourceforge.net>
* config/os/mingw32/bits/ctype_noninline.h
	(ctype<char>::ctype): Remove default args from parm list.
	* config/os/djgpp/bits/ctype_noninline.h: Same.

From-SVN: r49900
2002-02-20 17:18:00 +00:00
Benjamin Kosnik
0d223e3a4e std_iomanip.h: Inline, tweaks.
2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/std_iomanip.h: Inline, tweaks.
	* config/linker-map.gnu: Remove hacks.

	* testsuite/21_strings/capacity.cc: Add explicit instantiations.
	* testsuite/27_io/ios_init.cc: Same.
	* testsuite/22_locale/money_get_members_char.cc (test07): Fix.
	* testsuite/22_locale/money_get_members_wchar_t.cc (test07): Same.

From-SVN: r49884
2002-02-20 00:58:17 +00:00
Benjamin Kosnik
9b41c37048 linker-map.gnu: Export global vtable, typeinfo, guard variable, and thunk info as per CXXABI docs.
2002-02-19  Benjamin Kosnik  <bkoz@redhat.com>

	* config/linker-map.gnu: Export global vtable, typeinfo, guard
	variable, and thunk info as per CXXABI docs.

From-SVN: r49878
2002-02-19 21:47:05 +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
Joel Sherrill
0b46224d2b atomicity.h: Corrected for RTEMS targets which do not have a CAS instruction.
2001-02-14	Joel Sherrill <joel@OARcorp.com>

	* config/cpu/m68k/bits/atomicity.h: Corrected for RTEMS targets which
	do not have a CAS instruction.

From-SVN: r49772
2002-02-14 18:57:38 +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
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
Loren J. Rittle
ef8259b757 c_locale_generic.cc: Do not trust _GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as set by configure.
* config/locale/c_locale_generic.cc: Do not trust
	_GLIBCPP_HAVE_STRTOF or _GLIBCPP_HAVE_STRTOLD as
	set by configure.

From-SVN: r49558
2002-02-06 23:11:16 +00:00
Loren J. Rittle
99a4deb8a9 acinclude.m4: Add C++ linkage check for strtof.
* acinclude.m4: Add C++ linkage check for strtof.
	* aclocal.m4: Rebuilt.
	* config.h.in: Rebuilt.
	* configure: Rebuilt.
	* config/locale/c_locale_generic.cc: Conditionally include
	<ieeefp.h>.  Improve handling and error checking of float
	and long double input for non-C99 configurations.

From-SVN: r49546
2002-02-06 17:31:43 +00:00
Benjamin Kosnik
6f48900c2b codecvt_specializations_ieee_1003.1-200x.h: Initialize all data members in copy ctor.
2002-01-31  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/codecvt_specializations_ieee_1003.1-200x.h:
	Initialize all data members in copy ctor. Make ctors explicit.
	(__enc_traits::__enc_traits()): Default ctor does nothing.
	(__enc_traits::_M_init): Guard against multiple iconv_opens.
	* include/std/std_sstream.h (basic_stringbuf): Make data members
	protected.
	* include/std/std_fstream.h (basic_filebuf): Same.
	* include/std/std_streambuf.h: Tweak.
	* include/bits/streambuf.tcc: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/fstream.tcc: Same.

From-SVN: r49387
2002-02-01 03:20:39 +00:00
Benjamin Kosnik
2a4e640755 c_locale_gnu.cc: Same errno fixes as generic.
2002-01-30  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/c_locale_gnu.cc: Same errno fixes as generic.

From-SVN: r49354
2002-01-31 01:21:08 +00:00
Loren J. Rittle
2083b5be4d c_locale_generic.cc: Check errno for ERANGE instead of non-zero to aid portability.
* config/locale/c_locale_generic.cc: Check errno for ERANGE
	instead of non-zero to aid portability.

From-SVN: r49350
2002-01-31 00:47:05 +00:00
Paolo Carlini
f2e7381d8e 2002-01-30 Paolo Carlini <pcarlini@unitus.it>
* config/locale/numpunct_members_gnu.cc
	(numpunct<char, wchar_t>::_M_initialize_numpunct()):
	Fix initialization of _M_grouping for locales which have
	_M_thousands_sep == '\0'(L'\0', respectively).
	* testsuite/22_locale/numpunct_byname.cc (test02): Add test.

From-SVN: r49343
2002-01-30 21:00:40 +00:00
Richard Henderson
acae253ec1 re PR libstdc++/5198 (3.0.3 linux x m68k build fail: invalid opcodes in c++locale.cc)
PR libstdc++/5198
        * config/cpu/m68k/bits/atomicity.h (__exchange_and_add): Only use
        CAS on the cpu variants that support it.  Add versions that use
        TAS and that disable interrupts.
        (__atomic_add): Use __exchange_and_add to guarantee atomicity.

From-SVN: r49160
2002-01-23 17:31:13 -08:00
Loren J. Rittle
d419f1cdf0 * config/locale/c_locale_generic.cc: Fix typename usage.
From-SVN: r49141
2002-01-23 16:20:46 +00:00
Benjamin Kosnik
9b6e0e57a1 c_locale_generic.cc: Fix.
2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/c_locale_generic.cc: Fix.

From-SVN: r49125
2002-01-23 03:50:49 +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
a0e073b266 ctype_noninline.h: Fix formatting.
2002-01-22  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/aix/bits/ctype_noninline.h: Fix formatting.
	* config/os/bsd/netbsd/bits/ctype_noninline.h: Fix typo.
	* config/os/bsd/freebsd/bits/ctype_noninline.h: Fix formatting.

From-SVN: r49078
2002-01-22 16:09:25 +00:00
Benjamin Kosnik
93dbe8d76d [multiple changes]
2002-01-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.h (ctype<char>::classic_table):
	Remove definition.
	(ctype<char>::_S_ctable): Remove.
	* config/os/gnu-linux/bits/ctype_noninline.h
	(ctype<char>::_S_table): Remove definition.
	(ctype<char>::classic_table): Define.
	(ctype<char>::ctype): Replace _S_ctable with classic_table().
	* config/os/aix/bits/ctype_noninline.h: Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
	* config/os/djgpp/bits/ctype_noninline.h: Same.
	* config/os/generic/bits/ctype_noninline.h: Same.
	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
	* config/os/hpux/bits/ctype_noninline.h: Same.
	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
	* config/os/mingw32/bits/ctype_noninline.h: Same.
	* config/os/newlib/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.

2002-01-20  Danny Smith  <dannysmith@users.sourceforge.net>

	* config/os/mingw32/bits/ctype_noninline.h: Declare _ctype instead
	of _pctype. Use to define _S_ctable.  Add definition for alternate
	ctor.  Initialise _M_ctable to _S_ctable in ctors.
	(do_toupper, do_tolower): Use inline code appropriate for C-locale
	rather than ::toupper, ::tolower.

From-SVN: r49032
2002-01-21 04:08:54 +00:00
David Billinghurst
d428652688 ctype_noninline.h: Fix typo
2002-01-18  David Billinghurst <David.Billinghurst@riotinto.com>

	* config/os/irix/irix6.5/bits/ctype_noninline.h: Fix typo

From-SVN: r48979
2002-01-18 04:29:28 +00:00
Andreas Tobler
02c361a472 ctype_noninline.h: Fix.
2002-01-17  Andreas Tobler  <toa@pop.agri.ch>

	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Fix.

From-SVN: r48945
2002-01-17 09:56:42 +00:00
Benjamin Kosnik
8f7a401515 stl_iterator.h (reverse_iterator::_M_current): Deuglify, should be current.
2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>
            Peter Schmid  <schmid@snake.iap.physik.tu-darmstadt.de>

	* include/bits/stl_iterator.h (reverse_iterator::_M_current):
	Deuglify, should be current.
	(back_insert_iterator::_M_container): Deuglify, should be container.
	(front_insert_iterator::_M_container): Same.
	(insert_iterator::_M_container): Same.
	* testsuite/24_iterators/reverse_iterator.cc: Add check.
	* testsuite/24_iterators/back_insert_iterator.cc: Add check.
	* testsuite/24_iterators/front_insert_iterator.cc: Same.
	* testsuite/24_iterators/insert_iterator.cc: Same.

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

	* include/bits/locale_facets.h (ctype<char>::classic_table): Make
	static.
	(ctype<char>::_M_ctable): Make static, change name to _S_ctable.
	* config/os/gnu-linux/bits/ctype_noninline.h: Define _S_ctable.
	* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h: Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h: Same.
	* config/os/newlib/bits/ctype_noninline.h: Same.
	* config/os/irix/irix6.5/bits/ctype_noninline.h: Same.
	* config/os/irix/irix5.2/bits/ctype_noninline.h: Same.
	* config/os/hpux/bits/ctype_noninline.h: Same.
	* config/os/djgpp/bits/ctype_noninline.h: Same.
	* config/os/bsd/netbsd/bits/ctype_noninline.h: Same.
	* config/os/bsd/freebsd/bits/ctype_noninline.h: Same.
	* config/os/aix/bits/ctype_noninline.h: Same.

	Testcase by Dietmar K�hl via Peter Schmid
	* testsuite/22_locale/ctype_members_char.cc (char>): Add test for
	classic_table().

Co-Authored-By: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>

From-SVN: r48938
2002-01-17 03:59:42 +00:00
Benjamin Kosnik
aefb3380dd signbitl.c: Copyright years as list, not range.
2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>

	* libmath/signbitl.c: Copyright years as list, not range.
	* libmath/Makefile.am: Same.
	* libmath/Makefie.in: Regenerate.
	* libmath/signbit.c: Same.
	* libmath/nan.c: Same.
	* libmath/copysignf.c: Same.
	* libmath/signbitf.c: Same.
	* testsuite/22_locale/money_get_members_char.cc: Same.
	* testsuite/22_locale/money_get_members_wchar_t.cc: Same.
	* testsuite/22_locale/money_put_members_char.cc: Same.
	* testsuite/22_locale/money_put_members_wchar_t.cc: Same.
	* testsuite/22_locale/time_get_members_char.cc: Same.
	* testsuite/22_locale/time_get_members_wchar_t.cc: Same.
	* testsuite/22_locale/time_put_members_char.cc: Same.
	* testsuite/22_locale/time_put_members_wchar_t.cc: Same.
	* testsuite/21_strings/nonmember.cc: Same.
	* testsuite/21_strings/compare.cc: Same.
	* testsuite/27_io/stringstream.cc: Same.
	* testsuite/27_io/stringbuf.cc: Same.
	* testsuite/27_io/filebuf.cc: Same.
	* testsuite/27_io/ios_manip_basefield.cc: Same.
	* testsuite/27_io/ios_manip_fmtflags.cc: Same.
	* include/bits/cpp_type_traits.h: Same.
	* include/bits/generic_shadow.h: Same.
	* include/bits/gslice_array.h: Same.
	* include/bits/gslice.h: Same.
	* include/bits/indirect_array.h: Same.
	* include/bits/slice_array.h: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/streambuf_iterator.h: Same.
	* include/bits/valarray_array.tcc: Same.
	* include/bits/valarray_meta.h: Same.
	* include/bits/valarray_array.h: Same.
	* config/os/mingw32/bits/ctype_noninline.h: Same.
	* config/os/mingw32/bits/ctype_base.h: Same.
	* config/os/hpux/bits/ctype_noninline.h: Same.
	* config/os/hpux/bits/ctype_base.h: Same.
	* config/os/gnu-linux/bits/ctype_noninline.h: Same.
	* config/os/gnu-linux/bits/ctype_base.h: Same.
	* config/os/generic/bits/ctype_noninline.h: Same.
	* config/os/generic/bits/ctype_base.h: Same.

	* libsupc++/tinfo.h: Tweaks.

From-SVN: r48922
2002-01-16 19:57:39 +00:00
John David Anglin
93e9a99247 ctype_noninline.h: Use __SB_masks for address of character to attribute mapping table.
* config/os/hpux/bits/ctype_noninline.h: Use __SB_masks for address
	of character to attribute mapping table.

From-SVN: r48880
2002-01-15 21:31:56 +00:00
Bo Thorsen
2dd1d259ae cpu_limits.h (__glibcpp_long_bits): Add definition.
2002-01-09  Bo Thorsen  <bo@suse.co.uk>

	* config/cpu/x86-64/bits/cpu_limits.h (__glibcpp_long_bits): Add
	definition.

From-SVN: r48683
2002-01-09 14:45:47 +01:00
Jeff Law
0487b51cbc os_defines.h: Prefix __strtoll and __strtoull declarations with __extension__.
* config/os/hpux/bits/os_defines.h: Prefix __strtoll and
        __strtoull declarations with __extension__.

From-SVN: r48516
2002-01-03 11:03:15 -07:00
Richard Henderson
9d430eb5b1 os_defines.h: Don't define __glibcpp_long_bits.
* config/os/hpux/bits/os_defines.h: Don't define __glibcpp_long_bits.
        * config/os/hpux/bits/cpu_limits.h: New file.
        * configure.target (CPULIMITSH): Use it.

From-SVN: r48379
2001-12-29 11:18:32 -08:00
Richard Henderson
0b622c4a1e cpu_limits.h: New file.
* config/cpu/ia64/bits/cpu_limits.h: New file.
        * config/os/osf/osf5.0/bits/cpu_limits.h: New file.
        * configure.target (CPULIMITSH): Use them.

From-SVN: r48358
2001-12-28 17:19:51 -08:00
Paolo Carlini
b206658a5f locale_facets.tcc (collate::do_transform): Adjust implicit typename.
2001-12-27  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/locale_facets.tcc (collate::do_transform):
	Adjust implicit typename.
	* config/locale/messages_members_generic.h (messages::open,
	messages::do_open, messages::do_get): Adjust implicit typename.
	* config/locale/messages_members_gnu.h (messages::open,
	messages::do_open, messages::do_get): Adjust Implicit typename.
	* config/locale/messages_members_ieee_1003.1-200x.h (messages::open,
	messages::do_open, messages::do_get): Adjust implicit typename.

From-SVN: r48327
2001-12-27 12:13:23 +00:00
Jeff Law
b6e220169c os_defines.h: Do not include <_sys/inttypes.h>.
* config/os/hpux/bits/os_defines.h: Do not include <_sys/inttypes.h>.
        Twiddle return types for strtoll and strtoull to avoid using
        intmax_t and uintmax-t.

From-SVN: r48293
2001-12-23 18:45:29 -07:00
Jeff Law
d599b3fc8a os_defines.h: Update to avoid #defines for strtoll and strtoull.
* config/os/hpux/bits/os_defines.h: Update to avoid #defines
        for strtoll and strtoull.

From-SVN: r48271
2001-12-22 09:51:55 -07:00
Jeff Law
4585ae3de2 os_defines.h: Include <sys/_inttypes.h.
* config/os/hpux/bits/os_defines.h: Include <sys/_inttypes.h.
        Define strtoll and strtoull.  Provide prototypes for
        __strtoll and __strtoull.  Define _GLIBCPP_USE_LONG_LONG
        unconditionally.

From-SVN: r48260
2001-12-21 17:42:46 -07:00
Phil Edwards
e9c46bb75e basic_file.h (__basic_file::fd): New function.
2001-12-17  Phil Edwards  <pme@gcc.gnu.org>

	* include/bits/basic_file.h (__basic_file::fd):  New function.
	* config/io/basic_file_stdio.h (__basic_file::fd):  Define.
	* include/bits/std_fstream.h (basic_filebuf::fd):  New function.
	* include/bits/fstream.tcc (basic_filebuf::fd):  Define.
	* testsuite/27_io/filebuf_members.cc (test_02):  New test.

From-SVN: r48107
2001-12-17 17:08:57 +00: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
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
Loren J. Rittle
813df02279 * config/cpu/sparc/sparc32/bits/atomicity.h
(__Atomicity_lock<0>::_S_atomicity_lock): Add.

From-SVN: r47867
2001-12-11 09:41:40 +00:00
Nathan Myers
7814a308e4 atomicity.h (struct __Atomicity_lock<__inst>): Add.
libstdc++/5037
        * config/cpu/sparc/sparc32/bits/atomicity.h
        (struct __Atomicity_lock<__inst>): Add.
        (__Atomicity_lock<__inst>::_S_atomicity_lock): Add.
        (__exchange_and_add): Use __Atomicity_lock<0>::_S_atomicity_lock
        instead of lock local to static function.
        (__atomic_add): Likewise.

Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>

From-SVN: r47782
2001-12-08 00:59:11 +00:00
Benjamin Kosnik
861768350b 2001-11-28 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek  <jakub@redhat.com>

	* config/locale/moneypunct_members_gnu.cc
	(moneypunct<wchar_t>::_M_initialize_moneypunct): Correctly cast
	for ia64, others.
	* config/locale/numpunct_members_gnu.cc
	(numpunct<wchar_t>::_M_initialize_numpunct): Same.

From-SVN: r47402
2001-11-28 07:40:12 +00:00
Joseph Myers
754d92990a predict.c, [...]: Fix spelling errors.
gcc:
	* predict.c, reg-stack.c: Fix spelling errors.

libstdc++-v3:
	* config/locale/moneypunct_members_gnu.cc,
	include/bits/locale_facets.h: Fix spelling errors.

From-SVN: r47278
2001-11-23 01:37:07 +00:00
Danny Smith
944effb637 configure.target: Add os_include_dir for mingw32* target.
* configure.target: Add os_include_dir for mingw32* target.
* docs/html/17_intro/porting.texi: Mention mingw32 as target benefiting from
_GLIBCPP_AVOID_FSEEK.
* config/os/mingw32/bits/ctype_base.h: New file.
* config/os/mingw32/bits/ctype_inline.h: New file.
* config/os/mingw32/bits/ctype_noninline.h: New file.
* config/os/mingw32/bits/os_defines.h: New file.

From-SVN: r46857
2001-11-08 20:52:29 +00:00
Phil Edwards
729e3d3f01 c_io_stdio.h: Correct grammar in comments.
2001-11-02  Phil Edwards  <pme@gcc.gnu.org>

	* config/io/c_io_stdio.h:  Correct grammar in comments.
	* docs/doxygen/Intro.3:  Expand "top-level" man page.
	* docs/doxygen/doxygroups.cc:  New module definitions (comments).
	* docs/doxygen/mainpage.doxy:  Tweaks.
	* docs/doxygen/run_doxygen:  Update Doxygen version, massage man pages.

	Add @file hooks so that headers are considered to be documented.
	* include/bits/basic_ios.h, include/bits/basic_file.h,
	include/bits/basic_string.h, include/bits/boost_concept_check.h,
	include/bits/char_traits.h, include/bits/codecvt.h,
	include/bits/concept_check.h, include/bits/cpp_type_traits.h,
	include/bits/fpos.h, include/bits/gslice.h, include/bits/gslice_array.h,
	include/bits/indirect_array.h, include/bits/ios_base.h,
	include/bits/locale_facets.h, include/bits/localefwd.h,
	include/bits/mask_array.h, include/bits/pthread_allocimpl.h,
	include/bits/slice.h, include/bits/slice_array.h,
	include/bits/std_algorithm.h, include/bits/std_bitset.h,
	include/bits/std_complex.h, include/bits/std_deque.h,
	include/bits/std_fstream.h, include/bits/std_functional.h,
	include/bits/std_iomanip.h, include/bits/std_ios.h,
	include/bits/std_iosfwd.h, include/bits/std_iostream.h,
	include/bits/std_istream.h, include/bits/std_iterator.h,
	include/bits/std_limits.h, include/bits/std_list.h,
	include/bits/std_locale.h, include/bits/std_map.h,
	include/bits/std_memory.h, include/bits/std_numeric.h,
	include/bits/std_ostream.h, include/bits/std_queue.h,
	include/bits/std_set.h, include/bits/std_sstream.h,
	include/bits/std_stack.h, include/bits/std_streambuf.h,
	include/bits/std_string.h, include/bits/std_utility.h,
	include/bits/std_valarray.h, include/bits/std_vector.h,
	include/bits/stl_algo.h, include/bits/stl_alloc.h,
	include/bits/stl_bvector.h, include/bits/stl_construct.h,
	include/bits/stl_deque.h, include/bits/stl_heap.h,
	include/bits/stl_iterator.h, include/bits/stl_iterator_base_funcs.h,
	include/bits/stl_iterator_base_types.h, include/bits/stl_list.h,
	include/bits/stl_map.h, include/bits/stl_multimap.h,
	include/bits/stl_multiset.h, include/bits/stl_numeric.h,
	include/bits/stl_pair.h, include/bits/stl_pthread_alloc.h,
	include/bits/stl_queue.h, include/bits/stl_raw_storage_iter.h,
	include/bits/stl_relops.h, include/bits/stl_set.h,
	include/bits/stl_stack.h, include/bits/stl_tempbuf.h,
	include/bits/stl_threads.h, include/bits/stl_tree.h,
	include/bits/stl_uninitialized.h, include/bits/stl_vector.h,
	include/bits/stream_iterator.h, include/bits/streambuf_iterator.h,
	include/bits/stringfwd.h, include/bits/type_traits.h,
	include/bits/valarray_array.h, include/bits/valarray_meta.h:
	Add hooks, tweak comments only.

	* include/bits/stl_algobase.h (swap, min, iter_swap):  Also
	document these functions.
	* include/bits/stl_function.h:  Tweak link comments.

From-SVN: r46717
2001-11-02 17:38:11 +00:00
Egor Duda
b8a2a84bbe ctype_noninline.h (ctype<char>::do_toupper(char __c)): Check for proper character class.
2001-11-01  Egor Duda  <deo@logos-m.ru>

	* config/os/newlib/bits/ctype_noninline.h
	(ctype<char>::do_toupper(char __c)): Check for proper character class.
	(ctype<char>::do_tolower(char __c)): Ditto.

From-SVN: r46708
2001-11-02 02:37:44 +00:00
Benjamin Kosnik
1a808622b6 2001-10-26 Benjamin Kosnik <bkoz@redhat.com>
libstdc++/4503
	* config/locale/codecvt_specializations_ieee_1003.1-200x.h
	(__enc_traits::~__enc_traits): Fix.
	(__enc_traits::_M_init): Add error checking.

From-SVN: r46532
2001-10-26 07:21:56 +00:00
Benjamin Kosnik
e37beb47ba os_defines.h: Set to 64 bit longs with __s390x__ only.
2001-10-25  Benjamin Kosnik  <bkoz@redhat.com>
	    Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
	    Ulrich Weigand <Ulrich.Weigand@de.ibm.com>

	* config/os/gnu-linux/bits/os_defines.h: Set to 64 bit longs with
	__s390x__ only.
	* include/bits/std_limits.h: Fix wchar_t issues.
	* config/os/aix/bits/os_defines.h: Fix.

Co-Authored-By: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com>

From-SVN: r46523
2001-10-26 02:13:31 +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
Andreas Jaeger
82e014c98d limits.h: New file.
* config/cpu/x86-64/bits/limits.h: New file.

	* config/cpu/x86-64/bits/atomicity.h: New file.

	* configure.target: Add x86-64.

From-SVN: r46342
2001-10-19 08:34:01 +02:00
Phil Edwards
744ee8b72b atomicity.h (__compare_and_swap): Remove unused function.
2001-10-05  Phil Edwards  <pme@gcc.gnu.org>

	* config/cpu/alpha/bits/atomicity.h (__compare_and_swap):  Remove
	unused function.
	* config/cpu/arm/bits/atomicity.h:  Likewise.
	* config/cpu/generic/bits/atomicity.h:  Likewise.
	* config/cpu/i486/bits/atomicity.h:  Likewise.
	* config/cpu/ia64/bits/atomicity.h:  Likewise.
	* config/cpu/mips/bits/atomicity.h:  Likewise.
	* config/cpu/powerpc/bits/atomicity.h:  Likewise.
	* config/cpu/sparc/sparc32/bits/atomicity.h:  Likewise.
	* config/cpu/sparc/sparc64/bits/atomicity.h:  Likewise.

From-SVN: r46038
2001-10-05 18:43:43 +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
Hans-Peter Nilsson
be55d07d6f * config/cpu/cris/bits/atomicity.h: Correct file header.
From-SVN: r45929
2001-10-01 16:57:44 +00:00
Hans-Peter Nilsson
d15a5c7ca1 * config/cpu/cris/bits/limits.h: New file.
From-SVN: r45883
2001-09-29 16:49:48 +00:00
Hans-Peter Nilsson
a78a69ba79 configure.target (LIMITSH): Set for cris.
* configure.target (LIMITSH): Set for cris.
	(cpu_include_dir): Set for cris-*-*.
	* config/cpu/cris/bits/atomicity.h: New file.
	* config/cpu/cris/bits/limits.h: New file.

From-SVN: r45882
2001-09-29 16:49:20 +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
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
55dea7b149 moneypunct_members_gnu.cc: Fix initialization of wchar_t members.
2001-09-14  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/moneypunct_members_gnu.cc: Fix initialization of
	wchar_t members.
	* testsuite/22_locale/money_get_members_wchar_t.cc (test02): New file.
	* testsuite/22_locale/money_put_members_wchar_t.cc (test02): Fix.

From-SVN: r45614
2001-09-14 22:09:35 +00:00
Benjamin Kosnik
a623ef6e71 2001-09-10 Benjamin Kosnik <bkoz@redhat.com>
* config/locale/moneypunct_members_generic.cc
	(money_base::_S_construct_pattern): Remove unused parameters.

From-SVN: r45518
2001-09-10 20:14:15 +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
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
Loren J. Rittle
405bfc410e limits.h (__glibcpp_long_double_bits): Only define if not already provided by per-OS file.
* config/cpu/i386/bits/limits.h (__glibcpp_long_double_bits): Only
        define if not already provided by per-OS file.
        * config/os/bsd/freebsd/bits/os_defines.h (__glibcpp_long_double_bits):
        Define.

From-SVN: r45165
2001-08-24 21:57:15 +00:00
Benjamin Kosnik
575dd831c7 c_locale_gnu.cc: Minor tweaks.
2001-08-23  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/c_locale_gnu.cc: Minor tweaks.
	(moneypunct<wchar_t>): Implement.
	* include/bits/locale_facets.h: Same.
	* testsuite/22_locale/moneypunct.cc: New file.
	* testsuite/22_locale/moneypunct_byname.cc: New file.
	* testsuite/22_locale/moneypunct_char_members.cc: New file.

From-SVN: r45142
2001-08-24 04:11:23 +00:00
David Edelsohn
a9e7dc6cdf Fix PowerPC long double as well.
From-SVN: r45141
2001-08-23 19:02:01 -04:00
David Edelsohn
be3ebbbb9e Correct __s390__ definitions.
From-SVN: r45140
2001-08-23 18:49:20 -04: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
Franz Sirl
9567d32780 configure.target: Set LIMITSH for powerpc-*-*.
2001-08-16  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* configure.target: Set LIMITSH for powerpc-*-*.
	* config/cpu/powerpc/bits/limits.h: New file.

From-SVN: r44944
2001-08-16 19:19:09 +00:00
Andreas Schwab
b8f73826af configure.target (cpu_include_dir): Set to `config/cpu/m68k' for m68k and m680[246]0.
* configure.target (cpu_include_dir): Set to `config/cpu/m68k' for
	m68k and m680[246]0.
	* config/cpu/m68k/bits/atomicity.h: New file.

From-SVN: r44925
2001-08-15 16:00:45 +00:00
Andreas Schwab
2e0aa8179f std_limits.h [...]: Define appropriate long double limits for m68k extended floating point.
* include/bits/std_limits.h [__glibcpp_long_double_bits == 96]:
	Define appropriate long double limits for m68k extended floating
	point.
	(__glibcpp_f32_digits10): Corrected, off by one.
	(__glibcpp_f80_digits10): Likewise.
	(__glibcpp_f128_digits10): Likewise.
	* config/os/gnu-linux/bits/os_defines.h
	(__glibcpp_long_double_bits) [__mc68000__]: Define to 96.

From-SVN: r44924
2001-08-15 15:57:41 +00:00
Ulrich Weigand
354953125e Added atomicity.h header for s390.
From-SVN: r44907
2001-08-14 23:16:57 +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
63814ec191 std_limits.h (__glibcpp_char_is_signed): Use __CHAR_UNSIGNED__.
* include/bits/std_limits.h(__glibcpp_char_is_signed): Use
       __CHAR_UNSIGNED__.

       * config/os/gnu-linux/bits/os_defines.h(__glibcpp_char_is_signed):
       Likewise.
       * config/os/aix/bits/os_defines.h(__glibcpp_plain_char_is_signed):
       Remove.

From-SVN: r44791
2001-08-11 08:36:52 +00:00
David Edelsohn
e4124eb384 Fix sparcv9 typo.
From-SVN: r44749
2001-08-09 22:08:33 -04:00
David Edelsohn
3b87de3d00 os_defines.h: Define std_limits.h macros.
* config/os/aix/bits/os_defines.h: Define std_limits.h macros.
	* config/os/generic/bits/os_defines.h: Likewise.
	* config/os/gnu-linux/bits/os_defines.h: Likewise.
	* config/os/hpux/bits/os_defines.h: Likewise.
	* config/os/irix/irix6.5/bits/os_defines.h: Likewise.
	* config/os/solaris/solaris2.7/bits/os_defines.h: Likewise.

From-SVN: r44745
2001-08-09 14:01:36 -04: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
Benjamin Kosnik
3fe670a469 configure.target: Remove mips from cpu table.
2001-07-30  Benjamin Kosnik  <bkoz@redhat.com>

        * configure.target: Remove mips from cpu table.
        * config/cpu/mips/bits/atomicity.h: Remove generic
        versions. Comment sgidefs include.

From-SVN: r44493
2001-07-31 01:49:30 +00:00
H.J. Lu
95b02d7e3a configure.target (cpu_include_dir): Set to `config/cpu/mips' for mips.
2001-07-25  H.J. Lu <hjl@gnu.org>

	* configure.target (cpu_include_dir): Set to `config/cpu/mips'
	for mips.

	* config/cpu/mips/bits/atomicity.h: New.

[[Split portion of a mixed commit.]]

From-SVN: r44374.2
2001-07-25 22:04:48 -07:00
Loren J. Rittle
ddf1e65262 porting.texi: Add documentation about libstdc++-v3-specific macros that are currently...
libstdc++/2071
	* porting.texi: Add documentation about libstdc++-v3-specific
	macros that are currently included in os_defines.h files.

	* config/basic_file_stdio.h (sys_getc): New method.
	(sys_ungetc): New method.
	* include/bits/basic_file.h: (sys_getc): New method signature.
	(sys_ungetc): New method signature.

	* include/bits/fstream.tcc (underflow): Add conditional code
	paths which avoid using short seeks on streams (especially
	useful when the stream might be interactive or a pipe).  At
	the moment, this alternate path only avoids seeking when the
	``buffer size'' of underflow() is 1 since the C standard only
	guarantees buffer space for one ungetc (this technique could
	be extended since *-*-solaris* supports buffering for 4 calls
	to ungetc and *-*-*bsd* supports buffering limited only by
	memory resources).  Also, _GLIBCPP_AVOID_FSEEK must be defined
	in a port's os_defines.h file for this alternate path to even
	be considered.  As a bonus, the idiom of using getc/ungetc
	requires no system calls whereas fseek maps to one or two
	system call(s) on many platforms.

	* config/os/bsd/freebsd/bits/os_defines.h (_GLIBCPP_AVOID_FSEEK):
	Define it.
	* config/os/solaris/solaris2.5/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.
	* config/os/solaris/solaris2.6/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.
	* config/os/solaris/solaris2.7/bits/os_defines.h
	(_GLIBCPP_AVOID_FSEEK): Likewise.

From-SVN: r43278
2001-06-12 23:09:09 +00:00