Commit Graph

182 Commits

Author SHA1 Message Date
Benjamin Kosnik
1f63887a44 c_locale_generic.cc: Remove langinfo include.
2001-01-30   Benjamin Kosnik  <bkoz@redhat.com>

	* config/c_locale_generic.cc: Remove langinfo include.

From-SVN: r39349
2001-01-30 17:21:50 +00:00
Benjamin Kosnik
0214010c60 Preliminary named locales.
2001-01-29  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

From-SVN: r39347
2001-01-30 09:18:51 +00:00
Richard Henderson
d9de4b22f6 atomicity.h: Remove tricky .subsetion bits.
2001-01-25  Richard Henderson  <rth@redhat.com>

	* config/cpu/alpha/bits/atomicity.h: Remove tricky .subsetion
	bits. Fixes Tru64 build issues.

From-SVN: r39290
2001-01-26 23:07:38 +00:00
Mark Mitchell
c347e89206 atomicity.h (__compare_and_swap): Remove.
* config/os/aix/bits/atomicity.h (__compare_and_swap): Remove.
	(__always_swap): Likewise.

From-SVN: r39243
2001-01-24 19:19:26 +00:00
Benjamin Kosnik
051d74bfd5 *: Fix dates.
2001-01-12  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/djgpp/bits/*: Fix dates.

	* 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: r38962
2001-01-12 21:36:32 +00:00
Laurynas Biveinis
6f87af20c3 acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): check for DJGPP <ctype.h>
* acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): check for DJGPP <ctype.h>
(LIB_AC_PROG_CXX): replace [/\\] with [\\/] to work around older
bash bug.
* aclocal.m4: regenerated.
* configure.target: set os_include_dir to config/os/djgpp under DJGPP.
* configure: regenerated.
* config/os/djgpp, config/os/djgpp/bits: new directories.
* config/os/djgpp/bits/ctype_base.h,
config/os/djgpp/bits/ctype_inline.h,
config/os/djgpp/bits/ctype_noninline.h,
config/os/djgpp/bits/os_defines.h: new files.

From-SVN: r38958
2001-01-12 14:39:07 -05:00
Loren J. Rittle
046585534e ctype_inline.h (is): (Make right code path:) Remove magic constants and restructure to handle...
* config/os/bsd/freebsd/bits/ctype_inline.h (is): (Make right
	code path:) Remove magic constants and restructure to handle
	ctype.h bit mask layout changes more gracefully.  (Make fast
	code path:) Use __maskrune (), if available.
	(is): Remove special case for digit and xdigit masks.

From-SVN: r38847
2001-01-10 02:08:16 +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
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
62f4333a68 ctype_inline.h (is): Same.
2000-12-19  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* config/os/solaris/solaris2.5/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.6/bits/ctype_inline.h (is): Same.
	* config/os/solaris/solaris2.7/bits/ctype_inline.h (is): Same.
	* config/os/newlib/bits/ctype_inline.h (is): Same.
	* config/os/irix/bits/ctype_inline.h (is): Same.
	* config/os/bsd/netbsd/bits/ctype_inline.h (is): Same.
	* config/os/bsd/freebsd/bits/ctype_inline.h (is): Same.
	* config/os/aix/bits/ctype_inline.h (is): Same.
	* config/os/gnu-linux/bits/ctype_inline.h (is): Revert.
	* config/os/generic/bits/ctype_inline.h (is): Non-table based
	implementation.

	* testsuite/22_locale/ctype_char_members.cc (test01): Use binary
	operator correctly.
	(test01): Check 'A' for alnum, upper, alpha.

From-SVN: r38385
2000-12-19 19:49:00 +00:00
Benjamin Kosnik
0c3a231d2f 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.
	* config/os/*/bits/ctype_inline.h (is): Same.

From-SVN: r38250
2000-12-14 09:19:56 +00:00
Benjamin Kosnik
d9ab8adb37 ctype_base.h (ctype_base): Consistency with linux.
2000-12-13  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

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

From-SVN: r38243
2000-12-14 07:20:37 +00:00
Benjamin Kosnik
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
Jeffrey A Law
598730fe6e configure.target (hpux): Set os_include_dir.
* configure.target (hpux): Set os_include_dir.
        * config/os/hpux/bits/ctype_base.h: New file
        * config/os/hpux/bits/ctype_inline.h: New file
        * config/os/hpux/bits/ctype_noinline.h: New file
        * config/os/hpux/bits/os_defines.h: New file

Forgot to commit last week...

From-SVN: r38061
2000-12-05 20:23:34 -07:00
Benjamin Kosnik
f502ff4fc8 acinclude.m4: Change up to reflect new directory organization.
2000-12-05  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* acinclude.m4: Change up to reflect new directory organization.
	Add in bits for NetBSD.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config/os/bsd: New directory.
	* config/os/netbsd: Move to...
	* config/os/bsd/netbsd: ...here.
	* config/os/freebsd: Move to...
	* config/os/bsd/freebsd: ...here.

From-SVN: r38055
2000-12-05 23:25:08 +00:00
Benjamin Kosnik
350138ba1d acinclude.m4: Change up to reflect new directory organization.
2000-12-05  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* acinclude.m4: Change up to reflect new directory organization.
	Add in bits for NetBSD.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config/os/bsd: New directory.
	* config/os/netbsd: Move to...
	* config/os/bsd/netbsd: ...here.
	* config/os/freebsd: Move to...
	* config/os/bsd/freebsd: ...here.

From-SVN: r38054
2000-12-05 23:06:32 +00:00
Benjamin Kosnik
f4c79fef19 acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Check for lldiv_t.
2000-12-05  Benjamin Kosnik  <bkoz@haight.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_LONG): Check for
	lldiv_t. Allow the use of os-specific defines while checking for
	long-long functions by the inclusion of os_defines.h.
	* aclocal.m4: Regenerate.
	* configure.in: Add comments.
	* configure: Regenerate.
	* acconfig.h: Add _GLIBCPP_HAVE_LLDIV_T.
	* config.h.in: Regenerate.
	* config/os/gnu-linux/bits/os_defines.h: Fix typos and
	duplications in comments.

From-SVN: r38051
2000-12-05 22:03:19 +00:00
Richard Earnshaw
c87e46884b ctype_base.h: Update comments about other BSD variants.
* config/os/freebsd/bits/ctype_base.h: Update comments about other
BSD variants.

From-SVN: r38037
2000-12-05 14:09:53 +00:00
Richard Earnshaw
0b971613de *.h: Move here from config/os/bsd/bits.
* config/os/freebsd/bits/*.h: Move here from config/os/bsd/bits.
* aclocal.m4: Adjust accordingly.
* configure.target: Likewise.
* configure: Regenerate.

From-SVN: r38036
2000-12-05 14:05:34 +00:00
Richard Earnshaw
529dec15d8 atomicity.h: Add support for compiling Thumb code.
* config/cpu/arm/bits/atomicity.h: Add support for compiling Thumb
code.

From-SVN: r38033
2000-12-05 10:36:33 +00:00
Richard Earnshaw
11b176c156 Support for NetBSD.
* aclocal.m4: Add test for NetBSD's ctype support.
* configure: Regenerate.
* configure.target: Support NetBSD.
* config/os/netbsd/bits/ctype_base.h: New file.
* config/os/netbsd/bits/ctype_inline.h: New file.
* config/os/netbsd/bits/ctype_noinline.h: New file.
* config/os/netbsd/bits/os_defines.h: New file.

From-SVN: r38032
2000-12-05 10:29:47 +00:00
Franz Sirl
79f41ea419 atomicity.h (__exchange_and_add): Silence preprocessor multi-line string warnings.
2000-11-28  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): Silence
	preprocessor multi-line string warnings.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.
	* config/cpu/arm/bits/atomicity.h (__exchange_and_add): Likewise.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.

From-SVN: r37831
2000-11-28 22:28:49 +00:00
Franz Sirl
079c384ce3 atomicity.h (__exchange_and_add): Add __volatile__ to asm.
2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
	* config/cpu/arm/bits/atomicity.h (__exchange_and_add): Add
	__volatile__ to asm.
	(__atomic_add): Likewise.
	(__compare_and_swap): Likewise.
	(__always_swap): Likewise.
	(__test_and_set): Likewise.

From-SVN: r37805
2000-11-27 20:07:17 +00:00
Franz Sirl
6bd7b1bb37 atomicity.h: Replace '__ATOMICITY_INLINE' with 'inline'.
2000-11-27  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

        * config/cpu/powerpc/bits/atomicity.h: Replace '__ATOMICITY_INLINE'
        with 'inline'.
        (__ex__atomic_add): Add __volatile__ to asm.
        (__atomic_add): Likewise.
        (__compare_and_swap): Likewise.
        (__always_swap): Likewise.
        (__test_and_set): Likewise.

From-SVN: r37802
2000-11-27 18:17:40 +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
Hans-Peter Nilsson
d0c3e4f498 os_defines.h: Include <features.h>.
* config/os/gnu-linux/bits/os_defines.h: Include <features.h>.
	If not glibc 2.1 or higher, include <gnu/types.h> and define
	__off64_t as __loff_t and #define __THROW as empty.

	* libio/libio.h [__P]: Move __THROW and __PMT into their own
	ifndef:s.

From-SVN: r37695
2000-11-23 11:30:46 +00:00
Richard Henderson
ea88c0f77e ctype_inline.h (is): Fix order of expressions.
2000-11-22  Richard Henderson  <rth@redhat.com>

	* config/os/bsd/bits/ctype_inline.h (is): Fix order of expressions.

From-SVN: r37681
2000-11-23 03:03:33 +00:00
Scott Snyder
b32a46c30c c_io_stdio.cc (seekoff): Fix return value.
2000-11-21  scott snyder  <snyder@fnal.gov>

        * config/c_io_stdio.cc (seekoff): Fix return value.
        (seekpos): Likewise.
        (sys_seek): Likewise.

From-SVN: r37648
2000-11-22 06:37:34 +00:00
Branko Cibej
b6bcb20e17 os_defines.h: Define _XOPEN_SOURCE...
2000-11-21  Branko Cibej  <brankoe@xbc.nu>

        * config/os/solaris/solaris2.6/bits/os_defines.h: Define
        _XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
        __off64_t and __ssize_t.
	* config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
	same configuration as above.

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

From-SVN: r37509
2000-11-17 01:04:02 +00:00
Gerald Pfeifer
cdb3cf8546 * config/c_io_stdio.h: Include stddef.h.
From-SVN: r37502
2000-11-16 17:45:11 +00:00
Mark Mitchell
35ef21d256 c_io_stdio.h (streamsize): Make it a typedef for ptrdiff_t.
* config/c_io_stdio.h (streamsize): Make it a typedef for
	ptrdiff_t.
	(wstreamsize): Likewise.

From-SVN: r37496
2000-11-16 09:26:14 +00:00
Mark Mitchell
c135a22c31 * config/c_io_stdio.h: Include libio.h.
From-SVN: r37495
2000-11-16 09:20:48 +00:00
Loren J. Rittle
daa54c4b74 c_io_stdio.h: Don't define __c_wfile_type when _GLIBCPP_USE_WCHAR_T is not defined.
* config/c_io_stdio.h: Don't define __c_wfile_type
        when _GLIBCPP_USE_WCHAR_T is not defined.

From-SVN: r37453
2000-11-14 13:49:27 +00:00
Mark Mitchell
b5430af63f os_defines.h: Define __EXTENSIONS__.
* config/os/solaris/solaris2.7/bits/os_defines.h: Define
	__EXTENSIONS__.

From-SVN: r37412
2000-11-13 00:25:40 +00:00
Phil Edwards
626d8f0a2c [multiple changes]
2000-11-03  David Edelsohn <dje@watson.ibm.com>

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

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

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

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

From-SVN: r37241
2000-11-04 03:00:12 +00:00
Mark Mitchell
dbf5ba31a8 acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
* acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Add support for IRIX.
	* aclocal.m4: Regenerated.
	* Makefile.in: Regenerated.
	* libio/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* configure: Likewise.
	* config/os/irix/bits/ctype_base.h: Revise.
	* config/os/irix/bits/ctype_inline.h: Likewise.
	* config/os/irix/bits/ctype_noninline.h: Likewise.

From-SVN: r37215
2000-11-03 02:25:00 +00:00
Mark Mitchell
7d3b1e8d0e atomicity.h (_Atomic_word): Make it a signed type.
* config/os/irix/bits/atomicity.h (_Atomic_word): Make it a
	signed type.
	(__exchange_aand_add): Adjust accordingly.
	(__atomic_add): Likewise.

From-SVN: r37209
2000-11-02 20:31:59 +00:00
Benjamin Kosnik
9717c75cf1 basic_file.h (_M_open_mode): Change signature, move specializations to..
2000-11-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* bits/basic_file.h (_M_open_mode): Change signature, move
	specializations to..
	* config/c_io_libio.cc: ...here.
	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Add sdtio option, remove wince.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config/c_io_stdio.h: New file.
	* config/c_io_stdio.cc: New file.
	* docs/configopts.html: Modify documentation.

From-SVN: r37195
2000-11-01 21:38:32 +00:00
Phil Edwards
34791641f6 acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Raise debugging level from the default of 2 to 3.
2000-10-30  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_DEBUG):  Raise debugging level from
	  the default of 2 to 3.
	* configure.in:  Fix minor typos.  SUBST the values of enable_shared
	  and enable_static so that mkcheck will be aware of them.  Put the
	  test for gconv.h in with all the other header tests.
	* aclocal.m4:  Regenerate.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* libio/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.

	* config/os/solaris/solaris2.7/bits/os_defines.h:  Define
	  _G_USING_THUNKS to 0.

From-SVN: r37151
2000-10-31 01:56:19 +00:00
Benjamin Kosnik
4bc950092b [multiple changes]
2000-10-30  Benjamin Kosnik  <bkoz@redhat.com>

	* src/complex_io.cc : Remove ancient defines.
	* config/os/gnu-linux/bits/os_defines.h: Add defines.
	* libsupc++/tinfo2.cc: Change to cstddef.

	* include/bits/codecvt.h: Add include of c++config.h, so that
	__USE_GNU gets defined. (Important for alpha.)

	* include/c/bits/std_cwctype.h: Same.
	* include/c/bits/std_ctime.h: And here.
	* include/c/bits/std_cstdarg.h: Same.
	* include/c/bits/std_csignal.h: Same.
	* include/c/bits/std_csetjmp.h: Same.
	* include/c/bits/std_clocale.h: Same.
	* include/c/bits/std_climits.h: Touch.
	* include/c/bits/std_cfloat.h: Same.
	* include/c/bits/std_cerrno.h: Same.
	* include/c/bits/std_cwchar.h: Same.
	* include/c/bits/std_cassert.h: Same.
	* include/c/bits/std_cctype.h: Same.
	* include/c/bits/std_cstddef.h: And here.
	* include/c/bits/std_cstdlib.h: And here.
	* include/c/bits/std_cstdio.h: Same.
	* include/c/bits/std_cstring.h: Add names to namespace std::.

	* include/bits/c++config (_GNU_SOURCE): Move linux-specific macros
	from here...
	(_ISOC99_SOURCE): And this one....
	* config/os/gnu-linux/bits/os_defines.h: ...to here.

	* include/bits/codecvt.h (codecvt<_InternT, _ExternT,
	__enc_traits>::do_in): Don't cast to const, this is a bug in glibc
	prior to 2.2.
	(codecvt<_InternT, _ExternT, __enc_traits>::do_out): Same.
	* include/c/bits/std_cwchar.h: Add using declarations for mbstate_t.

2000-10-30  Steven King  <sxking@uswest.net>

	* include/bits/codecvt.h: Add cast.
	* include/c_std/stdio.h: Re-add printf using declaration.
	* include/c_std/bits/std_cstdio.h: Same
	* testsuite/22_locale/codecvt_wchar_t_char.cc: Fixup testsuite.
	* testsuite/22_locale/ctor_copy_dtor.cc: Same.
	* testsuite/22_locale/facet.cc: Same.
	* testsuite/22_locale/global_templates.cc: Same.
	* testsuite/22_locale/operators.cc: Same.
	* testsuite/22_locale/static_members.cc: Same.
	* testsuite/26_numerics/c_math.cc: Same.
	* testsuite/26_numerics/complex_inserters_extractors.cc: Same.
	* testsuite/27_io/fpos.cc: Same.
	* testsuite/27_io/istream_extractor_arith.cc: Same.
	* testsuite/27_io/istream_unformatted.cc: Same.
	* testsuite/27_io/ostream_inserter_arith.cc: Same.
	* testsuite/27_io/streambuf.cc: Same.

From-SVN: r37149
2000-10-31 01:26:06 +00:00
Mark Mitchell
37ab89b9cf Fix copyright date
From-SVN: r37133
2000-10-29 22:31:16 +00:00
Mark Mitchell
3c97056f54 c_io_libio.cc (basic_file<char>::__basic_file): Don't pass a NULL _IO_wide_data to _IO_no_init when...
* config/c_io_libio.cc (basic_file<char>::__basic_file):
	Don't pass a NULL _IO_wide_data to _IO_no_init when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* config/c_io_libio.h (_IO_codecvt): Don't declare when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* config/c_io_libio_codecvt.c: Don't compile it
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* include/bits/codecvt.h (codecvt<_InternT, _ExternT, __enc_traits):
	Don't define this specialization when _GLIBCPP_USE_WCHAR_T
	is not defined.
	* include/bits/locale_facets.h (<bits/std_cwctype.h>): Don't
	include it when _GLIBCPP_USE_WCHAR_T is not defined.
	* src/codecvt.cc (__enc_traits::_S_max_size): Don't define
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* src/localename.cc (locale::_Impl::_M_construct_collate):
	Don't call wide-character functions when _GLIBCPP_USE_WCHAR_T is
	not defined.
	(locale::_Impl::_M_construct_ctype): Likewise.
	(locale::_Impl::_M_construct_monetary): Likewise.
	(locale::_Impl::_M_construct_numeric): Likewise.
	(locale::_Impl::_M_construct_time): Likewise.
	(locale::_Impl::_M_construct_messages): Likewise.

	* iofopen.c (_IO_new_fopen): Don't define `_IO_wide_data wd'
	if _GLIBCPP_USE_WCHAR_T is not defined.
	* iofwide.c: Don't define codecvt functions when
	_GLIBCPP_USE_WCHAR_T is not defined.
	(_IO_fwide): Don't try to put the stream in wide mode when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* libio.h (_IO_wide_data): Define it as an incomplete struct
	when _GLIBCPP_USE_WCHAR_T is not defined.
	* wfiledoalloc.c: Don't define anything when
	_GLIBCPP_USE_WCHAR_T is not defined.
	* wfileops.c: Likewise.
	* wgenops.c: Likewise.

From-SVN: r37131
2000-10-29 21:52:54 +00:00
Mark Mitchell
2f974bd2f9 atomicity.h: New file.
* config/os/irix/bits/atomicity.h: New file.
	* config/os/irix/bits/os_defines.h (_POSIX_SOURCE): Undefine.
	(__off_t): Define.
	(__off64_t): Likewise.
	(__ssize_t): Likewise.
	(_G_USING_THUNKS): Define to zero.

From-SVN: r37128
2000-10-29 20:47:00 +00:00
Phil Edwards
5bd17d3917 acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out --gc-sections stuff entirely to avoid misleading people.
2000-10-26  Phil Edwards  <pme@sources.redhat.com>
	    David Edelsohn  <dje@watson.ibm.com>

	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out
	--gc-sections stuff entirely to avoid misleading people.
        (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio.
        * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS):
	Rearrange and merge.
        * libio/libio.h: Simplify, make fewer assumptions.  Define those
	macros which must be defined.
        * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a
	result.

From-SVN: r37082
2000-10-27 12:29:42 +00:00
David Edelsohn
a69135b83a ctype_inline.h (is): Use __OBJ_DATA directly.
2000-10-26  David Edelsohn  <dje@watson.ibm.com>

	* config/os/aix/bits/ctype_inline.h (is): Use __OBJ_DATA directly.
        * config/os/aix/bits/ctype_noninline.h (do_tolower): Fix typo.
        * config/os/aix/bits/os_defines.h: Add AIX defines.

From-SVN: r37074
2000-10-26 18:41:49 +00:00
Benjamin Kosnik
eae7a9fa92 acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
2000-10-26  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_LONG_DOUBLE): Remove.
	* aclocal.m4: Regenerate.
	* configure.in: Remove GLIBCPP_ENABLE_LONG_DOUBLE.
	* configure: Regenerate.
	* docs/configopts.html: Remove.
	* src/complexl.cc: Revert.
	* config.h.in: Remove.
	* include/c_std/bits/std_cmath.h: Remove guards based on
	_GLIBCPP_USE_LONG_DOUBLE.
	* include/c/bits/std_cmath.h: Same. Format. Match c_std behavior
	with respect to long double signatures.

	* config/os/aix/bits/ctype_noninline.h (ctype): Remove throw
	specification.
	* config/os/newlib/bits/ctype_noninline.h (ctype): And here.
	* config/os/solaris/solaris2.6/bits/ctype_noninline.h (ctype): Same.
	* config/os/solaris/solaris2.5/bits/ctype_noninline.h (ctype): Same.
	* config/os/generic/bits/ctype_noninline.h (ctype): Same.
	* config/os/bsd/bits/ctype_noninline.h (ctype): Same.

From-SVN: r37073
2000-10-26 14:56:05 +00:00
Phil Edwards
dfb1d76f1c configure.in: Check for gconv.h.
2000-10-25  Phil Edwards  <pme@sources.redhat.com>

        * configure.in:  Check for gconv.h.
        * libio/wfileops.c:  Wrap gconv.h in HAVE_GCONV_H.

        * config/c_io_libio_codecvt.c:  Change __mbstate_t to __c_mbstate_t.
        * libio/_G_config.h:  And here.
        * libio/iofwide.c:  And here.
        * libio/libio.h:  And here.

        * config/os/solaris/solaris2.7/bits/ctype_noninline.h:  Remove
          exception specification to match declaration.
        * include/bits/locale_facets.tcc:  Include bits/std_clocale.h.

From-SVN: r37053
2000-10-25 16:54:47 +00:00
Benjamin Kosnik
8b8ab21caf acconfig.h: List _GLIBCPP_USE_THREADS.
2000-10-24  Phil Edwards  <pme@sources.redhat.com>

        * acconfig.h:  List _GLIBCPP_USE_THREADS.
        * acinclude.m4:  General formatting cleanup (tabs/spaces), typo
          correction, etc.  Add comments about following *real* changes
          where they are used.
          (GLIBCPP_ENABLE_C_MBCHAR):  New test...
          (GLIBCPP_CHECK_WCHAR_T_SUPPORT):  ...results used here.
          (GLIBCPP_ENABLE_CSTDIO):  Define need_wlibio iff wide characters
          are requested.
          (GLIBCPP_ENABLE_THREADS):  If threads are used, define new
          macro _GLIBCPP_USE_THREADS in c++config.h.
          (GLIBCPP_ENABLE_SHADOW):  For C_INCLUDE_DIR, change () to {} as
          this is used in both makefiles and shell scripts (mkcheck).
        * configure.in:  Call GLIBCPP_ENABLE_C_MBCHAR.

        * libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
        * config/c_io_libio.h:  In nonthreaded case, typedef __c_lock to
          something harmless, like int.

        * config/os/aix/bits/os_defines.h:  Guard with _GLIBCPP_OS_DEFINES,
          add comment/instructions.
        * config/os/bsd/bits/os_defines.h:  Ditto.
        * config/os/generic/bits/os_defines.h:  Ditto.
        * config/os/gnu-linux/bits/os_defines.h:  Ditto.
        * config/os/irix/bits/os_defines.h:  Ditto.
        * config/os/newlib/bits/os_defines.h:  Ditto.
        * config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
        * config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.

        * mkcheck.in:  Limit the available heap size for testsuite
          binaries, initially at 2MB.

From-SVN: r37050
2000-10-25 12:50:06 +00:00
Benjamin Kosnik
1364053c58 Makefile.am (INCLUDES): Add toplevel include directory.
2000-10-08   Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* libsupc++/Makefile.am (INCLUDES): Add toplevel include directory.
	(INCLUDES): Add glibcpp_includedir.
	* libsupc++/Makefile.in: Regenerate.

	* acinclude.m4 (GLIBCPP_CHECK_OS): Link to os_defines.h.
	* aclocal.m4: Regenerate.
	* config/os/*/bits/os_defintes: Adjust copyright dates.

From-SVN: r36798
2000-10-09 03:35:36 +00:00
Phil Edwards
79b425c6d3 c++config: Include <bits/os_defines.h>
2000-10-08  Phil Edwards  <pme@sources.redhat.com>

	* include/bits/c++config:  Include <bits/os_defines.h>
	* config/os/aix/bits/os_defines.h:  New file.
	* config/os/bsd/bits/os_defines.h:  Ditto.
	* config/os/generic/bits/os_defines.h:  Ditto.
	* config/os/gnu-linux/bits/os_defines.h:  Ditto.
	* config/os/irix/bits/os_defines.h:  Ditto.
	* config/os/newlib/bits/os_defines.h:  Ditto.
	* config/os/solaris/solaris2.5/bits/os_defines.h:  Ditto.
	* config/os/solaris/solaris2.6/bits/os_defines.h:  Ditto.
	* config/os/solaris/solaris2.7/bits/os_defines.h:  Ditto.

From-SVN: r36793
2000-10-09 00:42:23 +00:00
Benjamin Kosnik
d5587eca17 acinclude.m4: Remove CPU_FLAGS
2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4: Remove CPU_FLAGS
	* libio/Makefile.am: Here too.
	* Makefile.am: Here too.

	* src/Makefile.am (CONFIG_INCLUDES): Remove.
	(INCLUDES): Remove CONFIG_INCLUDES.
	(cpu_headers): Remove.
	(myinstallheaders): Remove cpu_headers.
	(generated_headers): Rename to build_headers.
	(build_headers): Add atomicity.h, ctype_base.h,
	ctype_specializations.h.

	* config/os: New directory.
	* config/aix: Move to...
	* config/bsd: Move to...
	* config/generic: Move to...
	* config/gnu-linux: Move to...
	* config/irix: Move to...
	* config/newlib: Move to...
	* config/solaris: Move to...
	* config/os/*: Here.

From-SVN: r36777
2000-10-07 18:49:33 +00:00
Benjamin Kosnik
c81a475f00 acinclude.m4: Remove CPU_FLAGS
2000-10-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4: Remove CPU_FLAGS
	* libio/Makefile.am: Here too.
	* Makefile.am: Here too.

	* src/Makefile.am (CONFIG_INCLUDES): Remove.
	(INCLUDES): Remove CONFIG_INCLUDES.
	(cpu_headers): Remove.
	(myinstallheaders): Remove cpu_headers.
	(generated_headers): Rename to build_headers.
	(build_headers): Add atomicity.h, ctype_base.h,
	ctype_specializations.h.

	* config/os: New directory.
	* config/aix: Move to...
	* config/bsd: Move to...
	* config/generic: Move to...
	* config/gnu-linux: Move to...
	* config/irix: Move to...
	* config/newlib: Move to...
	* config/solaris: Move to...
	* config/os/*: Here.

From-SVN: r36776
2000-10-07 18:39:06 +00:00
Benjamin Kosnik
0517cb9903 [multiple changes]
2000-10-02  Steven King  <sxking@uswest.net>

        * mkcshadow: Fixed script to output proper include guard.
        * bits/char_traits.h: Cleaned up types in char_traits<char> functions.
        * libio/_G_config.h: Hacked to make work with shadow heraders.
        * shadow/*: Hacked to make shadow headers work.

2000-10-02  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Self-compile with shadow headers.
	* acconfig.h (_GLIBCPP_USE_SHADOW_HEADERS): Define. Eventually,
	like _GLIBCPP_USE_NAMESPACES before it, this macro will die when
	it becomes the default way the library is built.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): New macro.
	* config/gnu-linux/bits/ctype_base.h (ctype_base): Use it.
	* config/gnu-linux/ctype.cc (ctype): Use it.

	* src/localename.cc (locale::_Impl::_M_replace_categories): Remove
	call to assert.
	* src/locale.cc: Explicitly cast mbstate_t to void* in calls to
	memset. This should not be necessary, but an ambiguous overload
	with it in.

	* shadow/bits/std_cwchar.h: Fix.
	* shadow/wchar.h: Fix.

	* config/gnu-linux/bits/ctype_base.h (ctype_base): Inject ctype
	enums into namespace std:: for ctype_base enum. Other OS types
	will have to do this as well.
	* config/gnu-linux/ctype.cc (ctype): Inject ctype data into
	namespace std, in particular __ctype_toupper, __ctype_tolower,
	__ctype_b.

	* shadow/iolibio.h: New file.
	* shadow/bits/wrap_iolibio.h: New file.
	* shadow/libioP.h: New file.
	* shadow/bits/wrap_libioP.h: New file.
	* shadow/bits/wrap_fcntl.h: New file.
	* shadow/fcntl.h: New file.
	* shadow/iconv.h: New file. Inject iconv names into the global
	namespace, unmangled for the moment.
	* shadow/bits/wrap_iconv.h: New file.
	* shadow/unistd.h: Remove. Useless.
	* shadow/bits/wrap_unistd.h: Remove.

	* src/Makefile.am: Take out machine-ansi.h, add fcntl.h unistd.h.
	* src/Makefile.in: Regenerate.

	* config/c_io_libio.h (_IO_codecvt): Change to normal C++ decl.

	* shadow/libio.h: Fix.
	* shadow/bits/wrap_libio.h: Fix.

	* shadow/bits/std_clocale.h: Remove typedef struct construct,
	which will not compile.
	* shadow/bits/std_ctime.h: Same.

	* shadow/pthread.h: New file. Put pthreads types and functions
	into global scope, which is probably not the correct long-term
	solution but has to be done at the moment before libio wrappers
	can even be started.
	* shadow/bits/wrap_pthread.h: New file.

	* bits/std_ios.h: Formatting tweak.
	* shadow/bits/std_cstdio.h: Format. Remove extraneous bits.

	* acinclude.m4 (GLIBCPP_CHECK_COMPILER_FEATURES): Add -Werror to
	tests for compiler features.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* config/c_io_libio.cc: Remove fcntl.h include, as SEEK_SET
	redefined.
	* libio/libioP.h: Comment out fcntl.h include.

	* shadow/math.h: Add in float and long declarations, as per ISO C9X.

	* bits/c++config: Define _ISOC99_SOURCE.

	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add -fno-builtins to
	CSHADOWFLAGS, as well as _ISOC99_SOURCE.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am (CSHADOW_INCLUDES): Enable, again.
	(CSHADOW_INCLUDES): Add -I$(top_srcdir)/std before shadow include dir.
	(CXXCOMPILE): Remove $(DEFS), which searches $(top_srcdir) before
	std or shadow directories.
	(LTCXXCOMPILE): Same.
	(INCLUDES): Add $(top_builddir) before $(top_srcdir).
	(AC_CXXFLAGS): Add CSHADOWFLAGS.
	* src/Makefile.in: Regenerate.

	* src/complex.cc (FCT): Change ::name to name.
	* src/complexl.cc (FCT): Same. Use _GLIBCPP_USE_LONG_LONG here.
	* src/complexf.cc (FCT): Same.

	* src/complexf.cc: Remove FCT define, as things are properly
	overloaded in the std namespace with the shadow headers.
	* src/complexl.cc: Same.
	* src/complex.cc: Same.

From-SVN: r36707
2000-10-04 05:06:32 +00:00
Benjamin Kosnik
f1158db342 atomicity.h (__exchange_and_add): Change unused to __unused__.
2000-09-07  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* config/cpu/i386/bits/atomicity.h (__exchange_and_add): Change unused
	to __unused__.
	* config/cpu/ia64/bits/atomicity.h (__exchange_and_add): And here.
	* config/cpu/i486/bits/atomicity.h (__exchange_and_add): And here.

From-SVN: r36255
2000-09-08 01:30:38 +00:00
Richard Henderson
735bce7e26 acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
2000-09-06  Richard Henderson  <rth@cygnus.com>
	    Benjamin Kosnik  <bkoz@cygnus.com>

	* acinclude.m4 (GLIBCPP_CHECK_CPU): Add ia64 support.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config/cpu/ia64: New directory.
	* config/cpu/ia64/bits: New directory.
	* config/cpu/ia64/bits/atomicity.h: New file.

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

From-SVN: r36222
2000-09-07 01:48:27 +00:00
Benjamin Kosnik
8c81504d8d locale_facets.h (ctype<char>): Remove __table_type.
2000-08-30  Benjamin Kosnik  <bkoz@redhat.com>

	* bits/locale_facets.h (ctype<char>): Remove __table_type.
	Add include for bits/std_cwctype.h, for wctype_t.
	* src/locale.cc (ctype<wchar_t>): Implement.
	* config/gnu-linux/bits/ctype_base.h (ctype_base): Remove mask
	typedef, instead name enum.
	* config/gnu-linux/bits/ctype_specializations.h: Tweak.
	* config/gnu-linux/ctype.cc: Tweak.
	* testsuite/22_locale/ctype.cc:	Tweak.

	* bits/codecvt.h (__enc_traits): Mangle names.

From-SVN: r36071
2000-08-30 21:01:33 +00:00
Benjamin Kosnik
7e0ec38b14 atomicity.h: Change __attribute__ ((unused)) to __attribute__ ((__unused__)).
2000-08-22  Richard B. Kreckel  <Richard.Kreckel@Uni-Mainz.DE>

	* config/cpu/alpha/bits/atomicity.h: Change __attribute__
	((unused)) to __attribute__ ((__unused__)).
	* config/cpu/arm/bits/atomicity.h: Same.
	* config/cpu/generic/bits/atomicity.h: Same.
	* config/cpu/i386/bits/atomicity.h: Same.
	* config/cpu/i486/bits/atomicity.h: Same.
	* config/cpu/powerpc/bits/atomicity.h: Same.
	* config/cpu/sparc/sparc32/bits/atomicity.h: Same.
	* config/cpu/sparc/sparc64/bits/atomicity.h: Same.

From-SVN: r35882
2000-08-22 18:24:16 +00:00
Benjamin Kosnik
d04703d6d7 C/C++ io merge/sync.
2000-08-14  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	C/C++ io merge/sync.
	* libio/fileops.c
	* libio/genops.c
	* libio/iofclose.c
	* libio/iofopen.c
	* libio/iofwide.c
	* libio/libio.h
	* libio/libioP.h
	* libio/stdio.c
	* libio/wfileops.c
	* libio/wgenops.c
	* config/c_io_libio.cc (__basic_file): Add hacky casts to
	((struct _IO_FILE_plus *) in ctors.
	(__basic_file<wchar_t>): Adjust _wide_data->_codecvt to just _codecvt.
	* libio/Makefile.am: Fix copyright. Remove cleanup.c.
	* libio/cleanup.c: Remove.
	* libio/filedoalloc.c (_IO_file_doallocate): Don't call
	_IO_cleanup_registration_needed, even if not libc.

	* testsuite/27_io/stringstream.cc (test02): Fix.

From-SVN: r35694
2000-08-15 07:33:00 +00:00
Benjamin Kosnik
8901ac210e [multiple changes]
2000-08-09  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	Preliminary wchar_t implementation, with trivial encodings.
	* docs/configopts.html: Add bits about canonical configure option
	checking.

	* testsuite/27_io/iostream_objects.cc: Replace this file (which
	has newly-declared-illegal mixing of wide/narrow stdstreams) with...
	* testsuite/27_io/narrow_stream_objects.cc: New file.
	* testsuite/27_io/wide_stream_objects.cc: New file.

	* bits/fstream.tcc (underflow): Temporarily hack a solution
	together that writes from the external file to the internal
	buffers. This removes codecvt from the loop, and is incorrect.
	(_M_really_overflow): Same here.

	* testsuite/21_strings/inserters_extractors.cc (test05): Tweaks.

2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
	    Ulrich Drepper  <drepper@cygnus.com>

	* config/c_io_libio.h: Tweak.
	* config/c_io_libio_codecvt.c: New file.
	* libio/Makefile.am: Add c_codecvt.c.
	* libio/Makefile.in: Regenerate.
	* libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
	stream is not orientated.

	* acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
	encoding gets fleshed out.

	* bits/basic_file.h: Add specialization declarations.
	* config/c_io_libio.cc: Add specializations for pbackfail, uflow.

	* config/c_io_libio.h: Add __c_wfile_type.
	* bits/basic_file.h: Add _M_wfile.

	* config/c_io_libio.cc (__basic_file<char>): Initialize the
	streams without setting the orientation of the underlying FILE to
	either wide or narrow.
	(__basic_file<wchar_t>)): Enable tricky wchar_t io bits.

From-SVN: r35584
2000-08-09 07:33:39 +00:00
Benjamin Kosnik
5c61484936 c_io_libio.h: Tweak.
2000-08-08  Benjamin Kosnik  <bkoz@cygnus.com>
	    Ulrich Drepper  <drepper@cygnus.com>

	* config/c_io_libio.h: Tweak.
	* config/c_io_libio_codecvt.c: New file.
	* libio/Makefile.am: Add c_codecvt.c.
	* libio/Makefile.in: Regenerate.
	* libio/genops.c (_IO_unbuffer_write): Don't call _IO_SETBUF if the
	stream is not orientated.

	* acinclude.m4: Add config/c_io_libio_codecvt.c dummy file, until
	encoding gets fleshed out.

	* bits/basic_file.h: Add specialization declarations.
	* config/c_io_libio.cc: Add specializations for pbackfail, uflow.

	* config/c_io_libio.h: Add __c_wfile_type.
	* bits/basic_file.h: Add _M_wfile.

	* config/c_io_libio.cc (__basic_file<char>): Initialize the
	streams without setting the orientation of the underlying FILE to
	either wide or narrow.
	(__basic_file<wchar_t>)): Enable tricky wchar_t io bits.

From-SVN: r35583
2000-08-09 07:31:26 +00:00
Benjamin Kosnik
5780a46bca configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL.
2000-07-25  Benjamin Kosnik  <bkoz@gnu.org>

	* configure.in: Change AM_PROG_LIBTOOL to AC_PROG_LIBTOOL. Change
	it back for current versions of maintainer-tools...
	* acinclude.m4: Some cleanups...
	* aclocal: Regenerated.
	* configure: Regenerated.

	* src/Makefile.am (CXXLINK): Add -Wl,-01 to the link line for
	optimizing/adapting the hash table using GNU ld.
	* src/Makefile.in: Regenerate.

	* bits/std_fstream.h: Parameterize __basic_file.
	* config/c_io_libio.cc: Add wchar_t methods for parameterization.
	* bits/basic_file.h: Same here.

	* bits/fstream.tcc: Shorten __retval to __ret.
	* bits/ostream.tcc: Same.
	* bits/sbuf_iter.h: Same.
	* bits/sstream.tcc: Same.
	* bits/streambuf.tcc: Same.
	* bits/std_fstream.h: Same.
	* src/string-inst.cc: Same.
	* src/ios.cc: Same.
	* config/c_io_libio.cc: Same.
	* bits/string.tcc: Same.
	* bits/std_streambuf.h: Same.

From-SVN: r35262
2000-07-26 06:51:38 +00:00
Jakub Jelinek
ba62473eba atomicity.h (__exchange_and_add): Use extended word instructions to match 64bit _Atomic_word.
2000-07-20  Jakub Jelinek  <jakub@redhat.com>

        * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
        Use extended word instructions to match 64bit _Atomic_word.
        (__atomic_add): Likewise.
        * math/clog10l.c (clog10l): Use M_PIl if defined.
        * math/c_logl.c (c_logl): Likewise.
        * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
        * math/mathconf.h (ieee_quad_double_shape_type): New type.
        (GET_LDOUBLE_MSW64): New define.

From-SVN: r35166
2000-07-21 01:01:00 +00:00
Benjamin Kosnik
dd75251ff0 acinclude.m4: Tweaks.
2000-07-18  Benjamin Kosnik  <bkoz@soma.redhat.com>

	* acinclude.m4: Tweaks.
	* config/c_io_libio.cc: Tweaks.
	* bits/sstream.tcc (stringbuf::pbackfail): Simplify.
	* libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
	* libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
	* libio/iofclose.c iofopen.c, stdio.c: New files.
	* libio/Makefile.am: Add files, add flags, etc.
	* src/Makefile.am (sources): Add filebuf.cc.
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
	(GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.

From-SVN: r35127
2000-07-19 00:57:38 +00:00
Benjamin Kosnik
6eaa6abdbc Clean up configure/build longstanding issues.
2000-07-07  Benjamin Kosnik  <bkoz@soma.redhat.com>

	Clean up configure/build longstanding issues.
	* src/Makefile.am (AC_CXXFLAGS): Don't set @SECTION_LDFLAGS@ here.
	(CXXLINK): Add here, instead.

	* Makefile.am (check-install): Make sure mkcheck has execute privs.
	(check): Same here.
	* configure.in (AC_OUTPUT_COMMANDS): Remove hacks here.

	* configure.in (AC_OUTPUT_COMMANDS): Link c_io_libio.h and
	c_io_libio.cc instead of copying.
	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Do link here.

	* configure.in (AC_OUTPUT_COMMANDS): Link $THREADS.h and
	c++threads.h instead of copying.
	* acinclude.m4 (GLIBCPP_ENABLE_THREADS): Do link here.

	* config/c_io_libio.cc (__basic_file::_M_open_mode): Consolidate.
	* bits/basic_file.h: Declare.

	* mkcheck.in (TESTS_FILE): Use -v instead of --version.

From-SVN: r34917
2000-07-08 01:08:44 +00:00
Benjamin Kosnik
42d18a47a0 [multiple changes]
2000-07-05  brent verner  <brent@rcfile.org>

	* testsuite/27_io/ifstream_members.cc (test01): Add tests.
	* testsuite/27_io/ofstream_members.cc (test01): Add tests.
	* config/c_io_libio.cc (__basic_file::open): Unset
	~_IO_DELETE_DONT_CLOSE.

2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>

        * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
        bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
        Do not paste anything after 'operator' keyword.

From-SVN: r34877
2000-07-05 23:59:02 +00:00
Benjamin Kosnik
20427c6b9b Sync libio to glibc-2.2 current CVS.
2000-07-01  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
	    Ulrich Drepper  <drepper@purist.soma.redhat.com>

	Sync libio to glibc-2.2 current CVS.
	* libio/_G_config.h: New file.
	* libio/wfileops.c: New file.
	* libio/wfiledoalloc.c: New file.
	* libio/wgenops.c: New file.
	* libio/iofwide.c: New file.
	* libio/Makefile.am: Tweaks.
	* libio/Makefile.in: Regenerate.
	* libio/gen-params: Remove. Generic replacement for this yet undone.
	* libio/[filedoalloc.c, fileops.c, genops.c, iolibio.h, libio.h,
	libioP.h, stdfiles.c]: Update.
	* config/c_io_libio.cc: Tweaks.
	* acinclude.m4: Complete hacks to test wide io.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* src/Makefile.am: Update.
	* src/Makefile.in: Regenerate.

	* math/cargl.c: Remove underscores.

	* bits/locale_facets.h: Tweaks. Start adding iconv details
	and notes.
	* bits/locale_facets.tcc: Tweaks.
	* bits/std_cwchar.h: Tweaks.

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

From-SVN: r34822
2000-07-02 02:16:35 +00:00
Benjamin Kosnik
ab30ba5c23 filebuf.cc: Tweak.
2000-06-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* testsuite/27_io/filebuf.cc: Tweak.
	* testsuite/27_io/filebuf_members.cc (test_01): Fix.
	* config/c_io_libio.cc (__basic_file::~__basic_file): Match libio
	filebuf dtor.
	(__basic_file::basic_file): Clean, add calls similar to
	_IO_file_attach.
	(__basic_file::open): Clean.
	(__basic_file::sys_open): Clean.

	* bits/std_fstream.h: Revert.
	* bits/fstream.tcc (filebuf::close()): Revert.
	(filebuf::basic_filebuf()): Revert.

From-SVN: r34786
2000-06-29 18:20:55 +00:00
Benjamin Kosnik
088eb5a274 [multiple changes]
2000-06-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* bits/locale_facets.h (ctype<wchar_t>): Remove unnecessary data
	members.
	* src/locale.cc: Add cwchar include here. Remove incorrect
	definitions, and stub them out.
	* config/generic/ctype.cc (ctype): Remove ctype<wchar_t> bits.
	* config/solaris/solaris2.7/ctype.cc (ctype): Same.
	* config/solaris/solaris2.5/ctype.cc (ctype): Same.
	* config/newlib/ctype.cc: Same.
	* config/gnu-linux/ctype.cc: Same.
	* config/bsd/ctype.cc: Same.
	* config/aix/ctype.cc: Same.

2000-06-12  Branko Cibej  <branko.cibej@hermes.si>

        * config/solaris/solaris2.6/ctype.cc (do_toupper, do_tolower): Use
        towupper and towlower to convert wide characters.

From-SVN: r34511
2000-06-13 02:13:54 +00:00
Nathan C. Myers
53601625c5 i486: New directory.
2000-05-19   Nathan "I don't write ChangeLog Entries" Myers  <ncm@cantrip.org>

	* config/cpu/i486: New directory.
	* config/cpu/i486/bits: New directory.
	* config/cpu/i486/bits/atomicity.h: New file.
	* config/cpu/i386/bits/atomicity.h (__compare_and_swap): Delete
	'cmpxchgl' asm.
	* acinclude.m4 (GLIBCPP_CHECK_CPU): Enable i386.

From-SVN: r34160
2000-05-25 10:04:12 +00:00
Benjamin Kosnik
6ad50467e7 mkcshadow: build in more-correct directory...
* mkcshadow: build in more-correct directory, create cshadow/
        directory if needed, report progress.

2000-05-14  LLeweLLyn Reese  <llewelly@dbritsch.dsl.xmission.com>

        * src/Makefile.am: Fix tr commands.
        * src/Makefile.am: Remove references to [w]stringCTORDUPAL.[lo,cc]
        * src/string-inst.cc: Remove extra instantiation of
          S::basic_string(S::size_type, C, S::allocator_type const&);
        * src/string-inst.cc: Remove extra template keyword.

2000-05-14  Loren J. Rittle  <ljrittle@acm.org>

        * config/bsd/bits/ctype_base.h: Add support for plain BSD4.4.
        * acinclude.m4 (GLIBCPP_CHECK_CTYPE): Enhance bsd tests.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * */Makefile.in: Regenerate.

From-SVN: r33906
2000-05-15 06:38:55 +00:00
Benjamin Kosnik
f035fae1ed Finish up FreeBSD4.0 support.
2000-05-10  Benjamin Kosnik  <bkoz@redhat.com>

	Finish up FreeBSD4.0 support.
	* config/bsd/ctype.cc: Scope out toupper, tolower calls.
	* config/generic/ctype.cc: And here.
	* testsuite/21_strings/char_traits.cc (test02): Guard with
	_GLIBCPP_USE_WCHAR_T.

From-SVN: r33831
2000-05-10 20:23:27 +00:00
Benjamin Kosnik
327e219fba acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to -mcpu=powerpc.
2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>

	* acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
	-mcpu=powerpc.

	* config/generic/bits/ctype_specializations.h (ctype<char>::is):
	Make more generic.

	* config/bsd: New directory.
	* config/bsd/ctype.cc: New.
	* config/bsd/bits/ctype_base.h (ctype_base): New.
	* config/bsd/bits/ctype_specializations.h: New.
	* acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.

From-SVN: r33811
2000-05-10 00:48:47 +00:00
Benjamin Kosnik
7b267e3e92 acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to -mcpu=powerpc.
2000-05-09  Benjamin Kosnik  <bkoz@gnu.org>

	* acinclude.m4 (GLIBCPP_CHECK_CPU): Change powerpc bits to
	-mcpu=powerpc.

	* config/generic/bits/ctype_specializations.h (ctype<char>::is):
	Make more generic.

	* config/bsd: New directory.
	* config/bsd/ctype.cc: New.
	* config/bsd/bits/ctype_base.h (ctype_base): New.
	* config/bsd/bits/ctype_specializations.h: New.
	* acinclude.m4 (GLIBCPP_CHECK_CTYPE): Add bsd tests.

From-SVN: r33810
2000-05-10 00:23:47 +00:00
Benjamin Kosnik
e704c6bf37 atomicity.h (__exchange_and_add): More fixes.
2000-05-01  Benjamin Kosnik  <bkoz@redhat.com>

	* config/cpu/powerpc/bits/atomicity.h (__exchange_and_add): More
	fixes.

From-SVN: r33606
2000-05-02 06:45:21 +00:00
Benjamin Kosnik
b7fe530c1e atomicity.h: Fix typo.
2000-04-30  Benjamin Kosnik  <bkoz@gnu.org>

	* config/cpu/powerpc/bits/atomicity.h: Fix typo.
	* mknumeric_limits (trait_name): Fix copyright notice.
	* src/gen-num-limits.cc: Explicitly instantiate epsilon and
	round_error data members of struct value. This works around
	weak-linking issues on AIX, HPUX.

From-SVN: r33580
2000-05-01 18:14:03 +00:00
Nathan C. Myers
5db2c9b839 basic_string.h: include <bits/atomicity.h> instead of <atomicity.h>, and use the uglified names.
2000-04-26  Nathan C. Myers  <ncm@cantrip.org>

	* bits/basic_string.h: include <bits/atomicity.h> instead
        of <atomicity.h>, and use the uglified names.
        * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
        uglify names, eliminate dependence on <inttypes.h>.
        * src/Makefile.in, src/Makefile.am: refer to correct place
        for atomicity.h header.

From-SVN: r33503
2000-04-28 03:00:58 +00:00
Benjamin Kosnik
f3b004d8d7 [multiple changes]
2000-04-26  Nathan C. Myers  <ncm@cantrip.org>

	* bits/basic_string.h: include <bits/atomicity.h> instead
        of <atomicity.h>, and use the uglified names.
        * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
        uglify names, eliminate dependence on <inttypes.h>.
        * src/Makefile.in, src/Makefile.am: refer to correct place
        for atomicity.h header.

2000-04-25 Steven King <sxking@uswest.net>

        * bits/basic_string.h: Fix syntax error.

2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
	USE_LONG_DOUBLE.
	(GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
	* math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
	versions to this as copysignl is needed anyway for these targets.
	* math/Makefile.in: Regenerate.

	* bits/streambuf.tcc (streambuf::xsgetn): Tweak.
	* bits/fstream.tcc (underflow): Cast to libio types.
	* bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
	* config/c_io_libio.cc (seekoff): And here.

From-SVN: r33501
2000-04-28 02:50:55 +00:00
Nathan Myers
f17d6c73de cpu: Atomicity cleanups.
2000-04-24  Nathan Myers  <ncm@cantrip.org>

	* config/cpu: Atomicity cleanups.
	* config/cpu/alpha/bits: New directory.
	* config/cpu/arm/bits: New directory.
	* config/cpu/generic/bits: New directory.
	* config/cpu/i386/bits: New directory.
	* config/cpu/powerpc/bits: New directory.
	* config/cpu/sparc/sparc32/bits: New directory.
	* config/cpu/sparc/sparc32/bits: New directory.
	* config/cpu/*/bits: Move atomicity.h files to here.

From-SVN: r33438
2000-04-26 02:51:12 +00:00
Loren J. Rittle
f4dad842c7 ctype.cc (do_toupper): Remove dependence on non-portable/non-existent lookup table.
2000-04-24  Loren J. Rittle  <ljrittle@acm.org>

        * config/generic/ctype.cc (do_toupper): Remove dependence on
        non-portable/non-existent lookup table.
        (do_tolower): Same.

From-SVN: r33404
2000-04-25 07:32:50 +00:00
Benjamin Kosnik
b2dad0e372 libstdc++-v3: New directory.
2000-04-21  Benjamin Kosnik  <bkoz@redhat.com>

	* libstdc++-v3: New directory.

From-SVN: r33317
2000-04-21 20:33:34 +00:00