Commit Graph

78 Commits

Author SHA1 Message Date
Benjamin Kosnik 0214010c60 Preliminary named locales.
2001-01-29  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

From-SVN: r39347
2001-01-30 09:18:51 +00:00
Andreas Jaeger 3e29b81bda * libio/libio.h: Add test for glibc 2.0.
From-SVN: r39014
2001-01-14 20:12:23 +01:00
Benjamin Kosnik a40ba78e55 Makefile.am (CSTD_INCLUDES): Change from CSHADOW_INCLUDES.
2000-12-23  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

From-SVN: r38477
2000-12-23 07:13:57 +00:00
Benjamin Kosnik e3123ab3ba configure.in: Change GLIBCPP_ENABLE_SHADOW to GLIBCPP_ENABLE_CHEADERS.
2000-12-21  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

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

From-SVN: r38406
2000-12-20 21:37:57 +00:00
Benjamin Kosnik 6e138b89b7 [multiple changes]
2000-12-18  Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

From-SVN: r38354
2000-12-18 18:03:08 +00:00
Benjamin Kosnik eebc608e3b [multiple changes]
2000-12-12  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

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

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

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

From-SVN: r38217
2000-12-13 09:25:44 +00:00
Phil Edwards 85a011b076 acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): New conditional, GLIBCPP_BUILD_LIBIO, true iff building libio.
2000-12-08  Phil Edwards  <pme@sources.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO):  New conditional,
	  GLIBCPP_BUILD_LIBIO, true iff building libio.
	* libio/Makefile.am:  Use; set noinst_LTLIBRARIES empty if false.
	* aclocal.m4:  Regenerated.
	* config.h.in:  Regenerated.
	* configure:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.

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

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

From-SVN: r38079
2000-12-06 21:44:50 +00:00
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
Benjamin Kosnik 819004bbd0 acinclude.m4 (AC_LC_MESSAGES): Check for locale.h.
2000-11-21  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

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

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

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

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

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

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

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

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

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

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

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

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

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

From-SVN: r37437
2000-11-13 21:04:54 +00:00
Alexandre Oliva de9aefe0ea acinclude.m4 (CXX): Prevent it from being cached.
* acinclude.m4 (CXX): Prevent it from being cached.
* aclocal.m4, configure, */Makefile.in: Rebuilt.

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

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

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

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

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

From-SVN: r37241
2000-11-04 03:00:12 +00:00
Mark Mitchell 5a0b0c7abf * acinclude.m4 (GLIBCPP_CHECK_CTYPE_SUPPORT): Fix typo.
From-SVN: r37219
2000-11-03 05:15:35 +00:00
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
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 5e53dba6a8 configure.in: Simplify use of AC_CACHE_SAVE.
2000-10-29  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in: Simplify use of AC_CACHE_SAVE.  Put linked files
	in $(top_builddir)/include/bits, not $(top_builddir)/bits, to help
	with libgcj build issues and improve consistency with the source
	directory's include directory setup.
	* configure: Regenerate.
	* acinclude.m4: Same here.
	* aclocal.m4: Regenerate.
	* mknumeric_limits (OUT_H): Also change paths here.
	* mkcheck.in (C_DIR): And here.
	* mkc++config (OUT_H): And here.
	* libmath/Makefile.am (INCLUDES): And here.
	* src/Makefile.am (INCLUDES): Change to $(top_builddir)/include.
	* libio/Makefile.am: Ditto.
	* libsupc++/Makefile.am (INCLUDES): Ditto.

From-SVN: r37134
2000-10-29 22:32:30 +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 f80c00cc55 _G_config.h (_G_USING_THUNKS): Allow overrides from OS-configuration files.
* _G_config.h (_G_USING_THUNKS): Allow overrides from
	OS-configuration files.
	* libioP.h: Test _G_USING_THUNKS with #if, rather than #ifdef.

From-SVN: r37130
2000-10-29 21:21:51 +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
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
Chip Salzenberg b0166fda45 libio.h (_IO_USER_LOCK): Define.
2000-10-18  Chip Salzenberg  <chip@valinux.com>

        * libio/libio.h (_IO_USER_LOCK): Define.

From-SVN: r36944
2000-10-18 23:29:30 +00:00
Benjamin Kosnik a911742751 via Alexandre Oliva <aoliva@redhat.com>
2000-10-17  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	via Alexandre Oliva  <aoliva@redhat.com>
	* libsupc++/Makefile.am: Add --tag CXX, --tag CC, comments.
	* libsupc++/Makefile.in: Regenerate.
	* src/Makefile.am: Duplicate code.
	* src/Makefile.in: Regenerate.

	* acinclude.m4 (GLIBCPP_ENABLE_RELIBGCC): Take this out.
	* aclocal.m4: Regenerate.
	* configure.in: And here.
	* configure: Regenerate.

	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Disable
	test for SECTION_LDFLAGS.

From-SVN: r36902
2000-10-17 10:12:23 +00:00
Benjamin Kosnik 9ece379a8a Shadow headers would work if libsupc++ was strict about namespaces.
2000-10-16  Benjamin Kosnik  <bkoz@gnu.org>

	Shadow headers would work if libsupc++ was strict about namespaces.
	This only possible if g++ maps std::size_t -> size_t. (Hint hint.)
	* include/c_std/assert.h: Add guards.
	* include/c_std/bits/std_climits.h: Correct typo.
	* include/c_std/ctype.h: Remove #error.

	* libio/libioP.h: Break up extern "C" bits around includes.
	* libio/libio.h: Only include C headers, or else _C_legacy namespaces
	will be nested.
	* libio/libioP.h: Same here.

From-SVN: r36900
2000-10-17 08:25:08 +00:00
Benjamin Kosnik 1fd2f51018 Makefile.am (toolexeclibdir): Add support fo VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
2000-10-13  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
            Mark Harig  <markh@landmark.com>

	* src/Makefile.am (toolexeclibdir): Add support fo
	VERSION_SPECIFIC_LIBS and --with-gxx-include-dir.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Same.
	(glibcppinstalldir): Adjust.
	* libsupc++/Makefile.in: Regenerate.
	* Makefile.am: Remove gxx_include_dir. Remove INCLUDE.
	* Makefile.in: Regenerate.
	* docs/configopts.html: Add descriptions of flags.

Co-Authored-By: Mark Harig <markh@landmark.com>

From-SVN: r36872
2000-10-15 08:45:33 +00:00
Benjamin Kosnik e466dc8a4a Makefile.am: Use it.
2000-10-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* libsupc++/Makefile.am: Use it.
	* libio/Makefile.am: Use it.
	* libmath/Makefile.am: Use it.
	* src/Makefile.am: Use it.
	* Makefile.am (AM_MAKEFLAGS): Remove includes.

	* acinclude.m4 (GLIBCPP_EXPORT_INCLUES): Move include macros here.
	(GLIBCPP_EXPORT_FLAGS): Move CXX flag setting here.
	* configure.in: Use it.

	* mkcheck.in (SRC_DIR): Use C_INCLUDE_DIR.

From-SVN: r36847
2000-10-12 11:45:23 +00:00
Benjamin Kosnik a6863e2538 Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* Makefile.am (LIBSUPCXX_INCLUDES): Adjust.
	* libsupc++/include: Remove
	* libsupc++/include/*: Move to ...
	* libsupc++: Here.
	* libsupc++/Makefile.am (glibcppinstall_HEADERS): Install headers.
	(glibcppinstalldir): New.

	* src/Makefile.am (c_base_headers): New.
	(c_shadow_headers): New
	(c_headers): New.
	(myinstallheaders): Correct install issues.
	* src/Makefile.in: Regenerate.

	* Makefile.am (CSHADOW_INCLUDES): Simplify.
	* Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_SHADOW): Add c_include_dir.
	* aclocal.m4: Regenerate.
	* mkcheck.in (SRC_DIR): Use it.

	* include/bits/std_stdexcept.h: And here.
	* include/bits/std_ios.h: Change std_exception.h to exception.
	* src/locale.cc: And here.
	* src/locale-inst.cc: And here.

	* include/bits/valarray_array.h: And here.
	* include/bits/stl_alloc.h: And here.
	* include/bits/stl_algobase.h: And here.
	* include/bits/pthread_allocimpl.h: And here.
	* include/bits/stl_construct.h: Change to std_new.h to new.

	* include/bits/locale_facets.h: Change std_typeinfo.h to typeinfo.

	* src/Makefile.am (INCLUDES): Add LIBSUPCXX_INCLUDES.
	(headers): Remove duplicated headers.
	(std_headers): And here.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am (LIBSUPCXX_INCLUDES): Remove.
	* libsupc++/Makefile.in: Regenerate.
	* Makefile.am (LIBSUPCXX_INCLUDES): Add here.
	(AM_MAKEFLAGS): And here.
	* Makefile.in: Regenerate.
	* include/bits/std_typeinfo.h: Remove.
	* include/bits/std_new.h: Remove
	* include/bits/std_exception.h: Remove.
	* std/new: Remove.
	* std/typeinfo: Remove.
	* std/exception: Remove.

	* libio/_G_config.h (__need_ptrdiff_t): Add.

	* libsupc++/include/new: Change stddef.h to cstddef.
	* libsupc++/tinfo.h: Change limits.h to climits.
	* libsupc++/pure.cc: Comment out _GNU_LIBRARY_ bits, as this
	renders the file uncompilable. Add copyright.

	* include/c_std/bits/std_cstddef.h: Don't bring wchar_t into std
	namespace, as it is a fundamental type.

From-SVN: r36833
2000-10-10 23:50:39 +00:00
Benjamin Kosnik 3ec840ea2e 0-10-09 Benjamin Kosnik <bkoz@purist.soma.redhat.com>
* docs/configopts.html: Edit.

	* libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
	* libio/Makefile.in: Regenerate.
	* libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.am (INCLUDES): Remove duplicate.
	* libsupc++/Makefile.in: Regenerate.

	* Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
	TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
	CSHADOW_INCLUDES up here.
	* Makefile.in: Regenerate.
	* src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
	for shadow headers.
	(myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
	Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
	LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
	* src/Makefile.in: Regenerate.

	* include/c: New directory.
	* include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
	std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
	std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
	std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
	std_cwchar.h, std_cwctype.h): Add, moving from...
	* include/bits: ...here.
	* include/c_std: New directory.
	* include/c_std/bits/*: Populate from...
	* shadow: ...here. Remove directory.

From-SVN: r36806
2000-10-09 09:03:36 +00:00
Benjamin Kosnik 0b8e0cf35e configopts.html: Edit.
2000-10-10  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* docs/configopts.html: Edit.

	* libio/Makefile.am (INCLUDES): Remove duplicates, simplify.
	* libio/Makefile.in: Regenerate.
	* libmath/Makefile.am (INCLUDES): Remove duplicates, simplify.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.am (INCLUDES): Remove duplicate.
	* libsupc++/Makefile.in: Regenerate.

	* Makefile.am (AM_MAKEFLAGS): Add GLIBCPP_INCLUDES,
	TOPLEVEL_INCLUDES, LIBMATH_INCLUDES, LIBIO_INCLUDES,
	CSHADOW_INCLUDES up here.
	* Makefile.in: Regenerate.
	* src/Makefile.am (CSHADOW_INCLUDES): Add include/c_std, include/c
	for shadow headers.
	(myinstallheaders): Change glibcpp_includedir to GLIBCPP_INCLUDES.
	Move GLIBCPP_INCLUDES, TOPLEVEL_INCLUDES, LIBMATH_INCLUDES,
	LIBIO_INCLUDES, CSHADOW_INCLUDES up Makefile hierarchy.
	* src/Makefile.in: Regenerate.

	* include/c: New directory.
	* include/c/bits/(std_cassert.h, std_cctype.h, std_cerrno.h,
	std_cfloat.h, std_climits.h, std_clocale.h, std_cmath.h,
	std_csetjmp.h, std_csignal.h, std_cstdarg.h, std_cstddef.h,
	std_cstdio.h, std_cstdlib.h, std_cstring.h, std_ctime.h,
	std_cwchar.h, std_cwctype.h): Add, moving from...
	* include/bits: ...here.
	* include/c_std: New directory.
	* include/c_std/bits/*: Populate from...
	* shadow: ...here. Remove directory.

From-SVN: r36805
2000-10-09 08:55: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
Benjamin Kosnik e974e9cc80 [multiple changes]
2000-10-07  David Edelsohn  <dje@watson.ibm.com>

	* config/os/aix/bits/atomicity.h: New file.

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: r36778
2000-10-07 18:54:08 +00:00
Benjamin Kosnik 06bd10fb63 libsupc++: New directory.
2000-10-06  Benjamin Kosnik  <bkoz@cygnus.com>
            Richard Henderson  <rth@cygnus.com>
	    Alexandre Oliva  <aoliva@redhat.com>

	* libsupc++: New directory.
	* libsupc++/*: Populate.
	* libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for
	eh-common.h, gansidecl.h.
	* configure.in: Add in libsupc++/Makefile to AC_OUTPUT.
	* configure: Regenerate.
	* Makefile.am (SUBDIRS): Add libsupc++.
	* Makefile.in: Regenerate.
	* src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la
	* src/Makefile.in: Regenerate.
	* libio/Makefile.am: Remove extraneous, confusing bits.
	* libio/Makefile.in: Regeneate.

From-SVN: r36763
2000-10-06 23:31:22 +00:00
Benjamin Kosnik 35ba173387 include: New directory.
2000-10-05  Benjamin Kosnik  <bkoz@cygnus.com>

	* include: New directory.
	* include/backward: New directory.
	* include/bits: New directory.
	* include/ext: New directory.
	* include/std: New directory.
	* include/*/*: Populate.

	* backwards: Move to include/backwards, delete.
	* bits: Move to include/bits, delete.
	* ext: Move to include/ext, delete.
	* std: Move to include/std, delete.

	* src/complex.cc: Adjust include of mathconf.

	* mkc++config (BASE_H): Add include.

	* src/Makefile.am: Support for topleve sources include directory.
	(INCLUDES): Add LIBMATH_INCLUDE.
	* src/Makefile.in: Regenerate.
	* math/Makefile.am (INCLUDES): Append /include.
	* math/Makefile.in: Regenerate.
	* libio/Makefile.am (INCLUDES): Add glibcpp_includedir.
	* libio/Makefile.in: Regenerate.

2

From-SVN: r36725
2000-10-05 11:36:52 +00:00
Benjamin Kosnik e23062d5a7 _G_config.h: Re-guard the __mbstate_t declaration.
2000-10-04  Benjamin Kosnik  <bkoz@gnu.org>

	* libio/_G_config.h : Re-guard the __mbstate_t declaration.

From-SVN: r36716
2000-10-05 05:54:07 +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 5219f16233 acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
2000-09-11  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_GNU_MAKE): Remove test != "0".
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* bits/c++config (__GLIBCPP__): Update, in the hopes of making a
	snapshot release soon.
	(_GNU_SOURCE): Define this in the header files, as ISO C99 support
	is pretty much assumed.

	* testsuite/22_locale/global_templates.cc: New file. Add tests for
	use_facet and has_facet.

	* bits/codecvt.h (codecvt<_InT, _ExT, __enc_traits>::do_out):
	Modify/correct iconv signatures for glibc2.2.

From-SVN: r36344
2000-09-12 01:06:03 +00:00
Benjamin Kosnik f133a43eab acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory to no...
2000-09-06  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Force glibc_satisfactory
	to no, so that libstdc++-v3's libio will be built on glibc-2.2
	systems.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* */Makefile.in: Regenerate.

	* bits/std_cwctype.h: Put in temporary hack to work around -O2 +
	glibc 2.1.x unsigned errors. Or disable -Werror by default...

	* testsuite/23_containers/vector_element_access.cc: New file.
	* bits/stl_config.h (__STL_THROW_RANGE_ERRORS): Define.

From-SVN: r36218
2000-09-07 01:02:01 +00:00
Benjamin Kosnik ffe9f7851e codecvt.html: Add more bits, format.
2000-08-28  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* docs/22_locale/codecvt.html: Add more bits, format.
	* bits/codecvt.h: Add copy ctor, rename types.
	* testsuite/22_locale/codecvt_unicode_char.cc: Tweak.

	* libio/iofwide.c: Tweak.

From-SVN: r36032
2000-08-29 07:57:10 +00:00
Benjamin Kosnik 15bcd79ab0 acconfig.h: Revert.
2000-08-24  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* acconfig.h: Revert.
	* acinclude.m4: Revert.
	* libio/_G_config.h: Revert.
	* libio/libio.h: Revert.

From-SVN: r35943
2000-08-24 19:05:22 +00:00
Phil Edwards 697c2a3964 acconfig.h: _GLIBCPP_USING_THREADS and some workaround types added.
2000-08-23  Phil Edwards  <pme@sourceware.cygnus.com>

	* acconfig.h:  _GLIBCPP_USING_THREADS and some workaround types added.
	* acinclude.m4:  New macro, GLIBCPP_ENABLE_WCHAR.  Set the threads
	  definition as well, and some minor spelling/spacing fixes.  If
	  building libio, check for certain typedefs.
	* libio/_G_config.h:  Wrap _IO_MTSAFE_IO in _GLIBCPP_USING_THREADS.
	  Conditionally define _LARGEFILE64_SOURCE, otherwise the 64-bit types
	  will never be there.
	* libio/libio.h:  In the null case, _IO_lock_t can't just be void.
	* src/string-inst.cc:  Use _GLIBCPP_USE_WCHAR_T.

	* configure.in:  Update the cache a bit more often.

	* mkcheck.in:  For check-install, also need to -I the testsuite dir.

From-SVN: r35901
2000-08-23 04:38:42 +00:00
Benjamin Kosnik ae658d47a4 locale-inst.cc: Add codecvt<unicode_t...
2000-08-22  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* src/locale-inst.cc: Add codecvt<unicode_t, wchar_t,
	__enc_traits> instantiations for has_facet and use_facet.
	* testsuite/22_locale/codecvt_unicode_wchar_t.cc: New file, for
	testing two-byte unicode encodings converted to four-byte UCS4
	encodings.

	* bits/codecvt.h (codecvt<__enc_traits>): Fix do_unshift.
	* testsuite/22_locale/codecvt_unicode_char.cc (test01): Add
	correct state/encoding information.

	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT): Add wcsrtombs,
	mbsrtowcs checks as codecvt<wchar_t, char, mbstate_t> needs them
	now.
	Add checks for langinfo.h, nl_langinfo function call.
	* libio/iofwide.c (_IO_fwide): Simplify, as nl_langinfo is assumed.

From-SVN: r35897
2000-08-22 23:44:23 +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