Commit Graph

566 Commits

Author SHA1 Message Date
Kelley Cook
83f517994d All files: Update FSF address.
2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update FSF address.

From-SVN: r103192
2005-08-17 02:28:44 +00:00
Geoffrey Keating
a9fdd4720c Index: gcc/ChangeLog
2005-07-25  Geoffrey Keating  <geoffk@apple.com>

	* doc/install.texi (Prerequisites): Mention that perl is needed
	to do export control in libstdc++ targetting Darwin.

Index: libstdc++-v3/ChangeLog
2005-07-25  Geoffrey Keating  <geoffk@apple.com>

	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle darwin-export,
	and make it the default for Darwin.
	* scripts/make-exports.pl: New.
	* src/Makefile.am: Update for changes to GLIBCXX_ENABLE_SYMVERS.
	Handle darwin-export.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r102435
2005-07-27 18:28:32 +00:00
Paolo Carlini
ceed88b131 re PR libstdc++/22515 (operator>>(istream, string/CharT*) can be faster)
2005-07-24  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22515
	* include/bits/basic_string.h: Declare the specialization
	operator>>(basic_istream<char>&, basic_string<char>&).
	* include/std/std_istream.h: Declate the specialization
	operator>>(basic_istream<char>&, char*).
	* include/std/std_streambuf.h (basic_streambuf): Add friend
	declarations for the above.
	* src/istream.cc: Define the above.
	* testsuite/27_io/basic_istream/extractors_character/char/4.cc: New.
	* testsuite/27_io/basic_istream/extractors_character/wchar_t/4.cc:
	Likewise.
	* testsuite/performance/27_io/ifstream_extract_chars.cc: Likewise.

From-SVN: r102353
2005-07-25 08:47:33 +00:00
Paolo Carlini
cdcdee12da streambuf.tcc (xsgetn, xsputn): Use streamsize instead of size_t.
2005-07-20  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/streambuf.tcc (xsgetn, xsputn): Use streamsize
	instead of size_t.
	* src/streambuf.cc (__copy_streambufs): Likewise.

From-SVN: r102204
2005-07-20 22:07:57 +00:00
Paolo Carlini
872d8fea40 Add class __versa_string, a versatile "basic_string-type" class...
2005-07-05  Paolo Carlini  <pcarlini@suse.de>

	Add class __versa_string, a versatile "basic_string-type" class:
	an additional, non-standard, template parameter allows to specify
	the preferred base class. Two are provided: __rc_string_base,
	which implements a behavior very similar to our standard string,
	and __sso_string_base, not reference-counted and optimized for
	short strings.
	* include/ext/rc_string_base.h: New.
	* include/ext/sso_string_base.h: Likewise.
	* include/ext/vstring.h: Likewise.
	* include/ext/vstring.tcc: Likewise.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Likewise.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
	* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
	* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.

	* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
	officially used by v3).
	* aclocal.m4: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r101639
2005-07-05 23:07:18 +00:00
Paul Brook
617a1b7144 Makefile.in: Set and use UNWIND_H.
2005-06-28  Paul Brook  <paul@codesourcery.com>

gcc/
	* Makefile.in: Set and use UNWIND_H.  Install as unwind.h.
	* c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc.
	* except.c (add_ehspec_entry): Generate arm eabi filter lists.
	(assign_filter_values): Ditto.
	(output_ttype): New function.
	(output_function_exception_table): Use output_ttype.  Generate arm
	eabi filter lists.
	(default_init_unwind_resume_libfunc): New function.
	* except.h (default_init_unwind_resume_libfunc): Add prototype.
	* optabs.c (init_optabs): Don't set unwind_resume_libfunc.
	* opts.c (decode_options): Use targetm.unwind_tables_default.
	* target-def.h (TARGET_ASM_TTYPE): Provide and use definition.
	(TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto.
	* target.h (struct gcc_target): Add asm.ttype, unwind_tables_default
	and arm_eabi_unwinder.
	* unwind-c.c: Support Arm EABI unwinder.
	* unwind.h: Rename ...
	* unwind-generic.h: ... To this.
	* doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document.
	(TARGET_UNWID_TABLES_DEFAULT): Document.

	* config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype.
	* config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions.
	(TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER):
	Define.
	(thumb_pushpop, thumb_output_function_prologue): Output unwinding
	directives.
	(arm_unwind_emit_stm, arm_unwind_emit_set): New functions.
	* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when
	!TARGET_UNWIND_INFO.
	(ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define.
	* config/arm/bpabi.h (TARGET_UNWIND_INFO): Define.
	* config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME,
	ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND.
	* config/arm/lib1funcs.asm: Include libunwind.S.
	* config/arm/libgcc-bpabi.ver: Add unwinding routines.
	* config/arm/libunwind.S: New file.
	* config/arm/pr-support.c: New file.
	* config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind.
	(UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
	* config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
	* config/arm/unwind-arm.c: New file.
	* config/arm/unwind-arm.h: New file.
	* config/i386/t-netware (USER_H): Remove unwind.h.
	* config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define.

gcc/cp/
	* Make-lang.in (cp/except.o): Depend on $(TARGET_H)
	* except.c: Include target.h.
	(init_exception_processing): Initialize unwind_resume_libfunc.
	* doc/tm.texi: Document TARGET_ASM_TTYPE
gcc/ada/
	* misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc.
gcc/java/
	* decl.c (java_init_decl_processing): Call
	default_init_unwind_resume_libfunc.
gcc/objc/
	* objc-act.c (objc_init_exceptions): Call
	default_init_unwind_resume_libfunc.
libstdc++/
	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
	__cxa_end_cleanup.
	* libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c.
	* libsupc++/eh_arm.cc: New file.
	* libsupc++/eh_call.cc: New file.
	* libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use
	__gxx_caught_object.
	(__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call
	_Unwind_Complete when using the ARM EABI.
	(__cxa_end_catch): Use __is_gxx_exception_class.
	* libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when
	using the ARM EABI.
	(save_caught_exception, restore_caught_exception): New functions.
	(_throw_typet): New typedef.
	(get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM
	EABI implementations.
	(PERSONALITY_FUNCTION): Use new functions.  Addd support for ARM EABI
	unwinding libary.
	(__cxa_unexpected): Disable when using the ARM EABI.
	* libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
	(__cxa_rethrow): Use __is_gxx_exception_class.  Call
	_Unwind_RaiseException when using the ARM EABI.
	* libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM
	EABI semantics.
	(struct __cxa_eh_globals): Ditto.
	(__cxa_call_terminate): Add prototype.
	(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
	prototypes.
	(__get_exception_header_from_obj, __get_exception_header_from_ue):
	Move earlier in file.
	(__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS,
	__gxx_caught_object): New functions.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libmath/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* src/Makefie.in: Regenerate.
	* testsuite/makefile.in: Regenerate.

From-SVN: r101385
2005-06-28 19:52:27 +00:00
Jakub Jelinek
462ec41561 re PR libstdc++/22109 (/home/dave/opt/gnu/bin/ld: BFD 2.16.91 20050612 internal error)
PR libstdc++/22109
	* src/compatibility.cc (_GLIBCXX_SYMVER_COMPATIBILITY): Remove.
	(istreambuf_iterator, basic_fstream, basic_ifstream, basic_ofstream,
	_M_copy, _M_move, _M_assign, _M_disjunct, _M_check_length,
	_M_set_length_and_sharable, ignore, eq): Define to XX suffixed
	variants.
	(ignore (streamsize)): Remove _W prefixed aliases.
	(_GLIBCXX_3_4_SYMVER_SPECIAL, _GLIBCXX_3_4_5_SYMVER_SPECIAL,
	_GLIBCXX_APPLY_SYMVER_SPECIAL): Remove.
	(_GLIBCXX_3_4_SYMVER, _GLIBCXX_3_4_5_SYMVER): Add XXname argument.
	Use #XXname instead of #name as the alias argument.
	* config/abi/compatibility.h: Replace uses of
	_GLIBCXX_APPLY_SYMVER_SPECIAL with _GLIBCXX_APPLY_SYMVER.  Always
	pass 2 arguments to the _GLIBCXX_APPLY_SYMVER macro.
	* include/bits/char_traits.h (char_traits::eq): Revert 2005-06-15
	change.
	* acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
	* configure: Rebuilt.

From-SVN: r101273
2005-06-23 18:49:00 +02:00
Benjamin Kosnik
84946e72dc re PR libstdc++/22111 (libstdc++ abi_check)
make
2005-06-19  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/22111
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove
	GLIBCXX_TEST_ABI. Remove duplicate _GLIBCXX_ASM_SYMVER define.
	Don't enable abi testing unless versioned.
	* configure: Regenerate.
	* testsuite/Makefile.am (check-abi): Remove conditional.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/libstdc++-abi/abi.exp: Call build_support, then check
	v3-symver before proceeding.
	* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Set v3-symvers
	if _GLIBCXX_SYMVER.

From-SVN: r101204
2005-06-20 06:48:28 +00:00
Benjamin Kosnik
bb2b2a2472 [multiple changes]
2005-06-17  Jakub Jelinek  <jakub@redhat.com>
            Benjamin Kosnik  <bkoz@redhat.com>

	* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/hppa-linux-gnu/baseline_symbols.txt: Same.
	* config/abi/mips-linux-gnu/baseline_symbols.txt: Same.
	* config/abi/sparc-linux-gnu/baseline_symbols.txt: Same.

	* config/abi/alpha-freebsd5/baseline_symbols.txt: Remove.
	* config/abi/i386-freebsd4/baseline_symbols.txt: Same.
	* config/abi/i386-freebsd5/baseline_symbols.txt: Same.
	* config/abi/sparc-freebsd5/baseline_symbols.txt: Same.

	* config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
	* config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.

2005-06-17  Jakub Jelinek  <jakub@redhat.com>

	* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/s390x-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/s390-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
	* config/abi/powerpc-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/i486-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/i386-linux-gnu/baseline_symbols.txt: Update.
	* config/abi/powerpc64-linux-gnu/baseline_symbols.txt: New file.
	* config/abi/powerpc64-linux-gnu/32/baseline_symbols.txt: New file.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

	* src/compatibility.cc: Include bits/c++config.h first.
	(_GLIBCXX_SYMVER_COMPATIBILITY): Define if _GLIBCXX_SYMVER
	and PIC are both defined.
	* include/bits/char_traits.h (char_traits::eq): Rename
	only if _GLIBCXX_SYMVER_COMPATIBILITY is defined.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

        * acinclude.m4 ((GLIBCXX_ENABLE_SYMVERS): Rename _GLIBCXX_SIZE_T_IS_INT
        to _GLIBCXX_SIZE_T_IS_UINT.  Define _GLIBCXX_PTRDIFF_T_IS_INT.
        * configure: Regenerate.
        * config.h.in: Regenerate.
        * src/compatibility.cc (istream:ignore(streamsize)): Use
        _GLIBCXX_PTRDIFF_T_IS_INT instead of _GLIBCXX_SIZE_T_IS_INT.
        * config/abi/compatibility.h: Rename _GLIBCXX_SIZE_T_IS_INT
        to _GLIBCXX_SIZE_T_IS_UINT.  Use _GLIBCXX_PTRDIFF_T_IS_INT
        instead for symbols with streamsize arguments.

2005-06-16  Jakub Jelinek  <jakub@redhat.com>

	* config/linker-map.gnu: Also export
	_ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][il].

2005-06-15  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.ac (libtool_VERSION): To 6:6:0.
	* configure: Regenerate.
	* config/linker-map.gnu: Edit.
	* src/istream.cc: Move istream::ignore(streamsize) specializations...
	* src/compatibility.cc: ...here. New.
	* include/bits/char_traits.h (char_traits::eq): Rename when
	appropriate.
	* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_SIZE_T_IS_INT.
	Bump glibcxx_min_gnu_ld_version to 21590.
	* configure: Regenerate.
	* acconfig.h: Remove _GLIBCXX_ASM_SYMVER.
	* config.h.in: Regenerate.
	* src/Makefile.am (sources): Add compatibility.cc.
	* src/Makefile.in: Regenerate.
	* include/Makefile.am (host_headers_noinst): Add compatibility.h.
	* include/Makefile.in: Regenerate.
	* testsuite/testsuite_abi.h (symbol): Add data members.
	* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5,
	GLIBCXX_3.4.6.  Remove deprecated versions. Do a better job
	version checking.

From-SVN: r101125
2005-06-17 07:33:56 +00:00
Tom Tromey
cd11181329 re PR libgcj/19877 (sometimes reconfiguring leads to incorrect config.h)
config/:
	PR libgcj/19877:
	* no-executables.m4: Call real AC_FUNC_MMAP when cache variable
	is set but not 'no'.
libstdc++-v3/:
	PR libgcj/19877:
	* configure, aclocal.m4: Rebuilt.
	* Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in: Likewise.
libjava/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.
libgfortran/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.
zlib/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.

From-SVN: r100953
2005-06-14 20:05:59 +00:00
Paolo Carlini
87d33b419b PR libstdc++/20534 (contd)
2005-05-31  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/20534 (contd)
	* include/debug/macros.h: Add _GLIBCXX_DEBUG_ABORT, using
	__gnu_debug::__fancy_abort.
	* src/debug.cc: Define the latter.
	* include/debug/debug.h: Use _GLIBCXX_DEBUG_ABORT instead of
	assert.
	* config/linker-map.gnu (__gnu_debug::__fancy_abort): Add.

From-SVN: r100405
2005-05-31 18:31:55 +00:00
Paolo Carlini
6be8b52474 revert: re PR libstdc++/19495 (basic_string::_M_rep() can produce an unnaturally aligned pointer to _Rep)
2005-05-28  Paolo Carlini  <pcarlini@suse.de>

	Revert:
	2005-05-18  Paolo Carlini  <pcarlini@suse.de>
		    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/19495
	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
	size_type instead of char and rename to _Raw_alloc.
	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
	Use the above.
	* src/bitmap_allocator.cc: Add instantiation for size_type.
	* src/mt_allocator.cc: Likewise.
	* src/pool_allocator.cc: Likewise.
	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
	the existence of an _Array::begin() and size() members.
	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
	of size_type, instead of char, thus avoiding problems with
	rebinds, not treated correctly by array_allocator.

From-SVN: r100304
2005-05-28 21:57:03 +00:00
Theodore Papadopoulo
c71e3d020e misc-inst.cc: Remove unnecessary included files.
2005-05-27  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>

	* src/misc-inst.cc: Remove unnecessary included files.

From-SVN: r100263
2005-05-27 16:22:54 +00:00
Paolo Carlini
66143232bc re PR libstdc++/19495 (basic_string::_M_rep() can produce an unnaturally aligned pointer to _Rep)
2005-05-18  Paolo Carlini  <pcarlini@suse.de>
	    Nathan Myers  <ncm@cantrip.org>

	PR libstdc++/19495
	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
	size_type instead of char and rename to _Raw_alloc.
	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
	Use the above.
	* src/bitmap_allocator.cc: Add instantiation for size_type.
	* src/mt_allocator.cc: Likewise.
	* src/pool_allocator.cc: Likewise.
	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
	the existence of an _Array::begin() and size() members.
	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
	of size_type, instead of char, thus avoiding problems with
	rebinds, not treated correctly by array_allocator.

Co-Authored-By: Nathan Myers <ncm@cantrip.org>

From-SVN: r99933
2005-05-18 22:11:24 +00:00
Benjamin Kosnik
a72c74a1de acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
2005-05-04  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
	* testsuite/Makefile.am: Same.
	* scripts/create_testsuite_files: Same.
	* Makefile.in: Regenerate.
	* configure: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* po/Makefile.in: Same.
	* src/Makefile.in: Same.

From-SVN: r99273
2005-05-05 16:12:28 +00:00
Benjamin Kosnik
57b11c9654 2005-04-14 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/bitmap_allocator.h
        (__gnu_cxx::free_list::_M_get_mutex): New.
        (__gnu_cxx::free_list::_M_get_free_list): New.
        (__gnu_cxx::free_list::_S_bfl_mutex): Remove.
        (__gnu_cxx::free_list::_S_free_list): Remove.
        * src/bitmap_allocator.cc: Same.
        * config/linker-map.gnu: Remove free_list and mutex export.

From-SVN: r98173
2005-04-15 04:07:45 +00:00
Kelley Cook
3a24bf5d16 configure.ac: Create template for PACKAGE and VERSION.
2005-04-08  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Create template for PACKAGE and VERSION.
	Update comment on how to regenerate file.  Update minimum
	automake version to 1.9.3.
	* acconfig.h: Remove PACKAGE and VERSION.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
	testsuite/Makefile.in, config.h.in: Regenerate.

From-SVN: r97815
2005-04-08 00:59:08 +00:00
Benjamin Kosnik
5305b1ae1b test.html: Update.
2005-04-06  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/test.html: Update.
	* testsuite/printnow.c: Remove.
	* scripts/check_survey.in: Remove.

	* testsuite/abi_check.cc: To...
	* testuite/testsuite_abi_check.cc: ...here.
	* testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
	testsuite_abi_check.cc.

	* testsuite/testsuite_hooks.h: Move character related bits to...
	* testsuite/testsuite_character.h: ...here.
	* testsuite/testsuite_character.cc: ... and here.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-in.cc: Use testsuite_character.h.
	* testsuite/21_strings/basic_string/inserters_extractors/pod/
	10081-out.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
	* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
	* testsuite/27_io/basic_filebuf/2.cc: Same.
	* testsuite/27_io/basic_fstream/2.cc: Same.
	* testsuite/27_io/basic_istream/2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
	3983-1.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/char/
	9826.cc: Same.
	* testsuite/27_io/basic_istream/extractors_character/pod/
	3983-2.cc: Same.
	* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
	* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_ostream/2.cc: Same.
	* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
	* testsuite/27_io/basic_streambuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/2.cc: Same.
	* testsuite/27_io/basic_stringbuf/4.cc: Same.
	* testsuite/27_io/basic_stringstream/2.cc: Same.
	* testsuite/27_io/fpos/1.cc: Same.
	* testsuite/ext/mt_allocator/tune-1.cc: Same.
	* testsuite/ext/mt_allocator/tune-2.cc: Same.
	* testsuite/ext/stdio_filebuf/char/1.cc: Same.
	* testsuite/lib/libstdc++.exp (v3-build_support): Add
	testsuite_character.cc.
	* testsuite/Makefile.am (libv3test_a_SOURCES): Add
	testsuite_character.cc.
	* testsuite/Makefile.in: Regenerate.

	* configure.ac: Remove use of check_survey.
	* configure: Regenerate.
	* testsuite/Makefile.am: Remove check-script and
	check-script-install rules.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r97772
2005-04-07 04:16:26 +00:00
Kelley Cook
c41f82b270 Makefile.am (ACLOCAL_AMFLAGS): Define.
2005-04-05  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Define.
	* crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
	* configure.ac: Use it.
	* acinclude.m4: Delete explicit m4_includes and sincludes.
	* aclocal.m4, configure, Makefile.in, po/Makefile.in,
	src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
	testsuite/Makefile.in: Regenerate.

From-SVN: r97677
2005-04-06 00:05:51 +00:00
Benjamin Kosnik
347669a079 acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies using _GLIBCXX_USE_C99_COMPLEX...
2005-03-23  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
	using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
	_GLIBCXX_USE_C99_WCHAR.
	Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
	and GLIBCXX_ENABLE_WCHAR_T.
	Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in
	GLIBCXX_ENABLE_C99.
	Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
	GLIBCXX_CHECK_ICONV_SUPPORT.
	* configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
	GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
	* crossconfig.m4: Same.
	* acconfig.h: Same, adjust comments.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* docs/html/configopts.html: Change --enable-c-mbchar to
	--enable-wchar_t.

	* config/locale/gnu/c++locale_internal.h: Guard wide functions
	with _GLIBCXX_USE_WCHAR_T.
	* include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
	* include/c_std/std_cstdio.h: Spacing.

	* config/locale/gnu/c_locale.h: Tweaks for unused warnings.
	* src/debug.cc: Same.

From-SVN: r96981
2005-03-24 05:45:45 +00:00
Zack Weinberg
47194af45f acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
* acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
	(GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
	is expanded by the Makefiles, not by configure.
	* fragment.am: Set gcc_version.
	* libmath/Makefile.am: Likewise.
	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
	* libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
	* testsuite/Makefile.in: Regenerate.

From-SVN: r96814
2005-03-21 17:40:24 +00:00
Brad Spencer
ddf2a54af5 crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
2005-01-31  Brad Spencer  <spencer@infointeractive.com>

	* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
	* configure: Regenerated.

From-SVN: r94526
2005-02-01 06:56:30 +00:00
Geoffrey Keating
7d665006a3 libstdc++.exp (libstdc++_init): Search the path for the compiler.
* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
	for the compiler.  Don't set cxxflags.
	(v3_target_compile): Search for libv3test.a relative to $objdir.
	(lsearch_all_inline): New.
	(lsearch_all_inline_not): New.
	(v3-list-tests): Rewrite to not need generated files.
	* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
	(IGNORE_THREAD): New.
	(TESTS_TO_IGNORE): New.
	(site.exp): Set tests_to_ignore, cxxflags.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r94384
2005-01-28 18:57:59 +00:00
Paolo Carlini
78593d78f1 istream.cc (basic_istream<char>::ignore(streamsize), [...]): In case more than numeric_limits<streamsize>::max() chars are skipped...
2005-01-11  Paolo Carlini  <pcarlini@suse.de>
	    Benjamin Kosnik  <bkoz@redhat.com>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): In case
	more than numeric_limits<streamsize>::max() chars are skipped,
	set _M_gcount = max().
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise; keep simple, don't forward.

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

From-SVN: r93208
2005-01-11 23:35:43 +00:00
Paolo Carlini
a141a5afe1 istream.cc (basic_istream<char>::ignore(streamsize), [...]): Revert 2005-01-05 change...
2005-01-11  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Revert
	2005-01-05 change: actually, the previous behavior is conforming
	and consistent with that of get(char_type*, streamsize, char_type),
	albeit slightly different from that of 3.3/3.4 in a corner case
	due to the use of snextc.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise.
	* testsuite/27_io/basic_istream/ignore/char/4.cc: Remove.
	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.

From-SVN: r93189
2005-01-11 16:48:14 +00:00
Paolo Carlini
3e636396c8 Makefile.in: Regenerate.
2005-01-10  Paolo Carlini  <pcarlini@suse.de>

	* Makefile.in: Regenerate.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

2005-01-10  Paolo Carlini  <pcarlini@suse.de>

        * include/bits/stl_algobase.h (lexicographical_compare):
        Fix concept check.

From-SVN: r93143
2005-01-10 17:07:50 +00:00
Benjamin Kosnik
825bd0e1e8 acinclude.m4: Remove CCODECVT_H.
2005-01-07  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4: Remove CCODECVT_H.
	* configure: Regenerate.
	* include/Makefile.am (host_headers_extra): Move to...
	(ext_headers): ...here.
	* include/Makefile.in: Regenerate.
	* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
	enc_traits to...
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
	* include/ext/codecvt_specializations.h: ...here. Remove
	_GLIBCXX_USE___ENC_TRAITS.
	(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
	(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
	namespace.
	* config/locale/generic/codecvt_specializations.h: Remove.
	* include/bits/codecvt.h: Remove codecvt_specializations.h include.
	* src/codecvt.cc: Remove __enc_traits::_S_max_size.

From-SVN: r93062
2005-01-07 19:34:46 +00:00
Benjamin Kosnik
56ffd9b3ba 2005-01-05 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_hooks.h:
	(copy_constructor::mark_call):  Use __throw_runtime_error.
	(assignment_operator::mark_call): Same.
	* testsuite/testsuite_hooks.cc (verify_demangle): Same.
	(locale_data): Remove, just use runtime_error directly.
	(environment_variable): Same.
	(not_found): Same.
	(run_tests_wrapped_locale): Use __throw_runtime_error.
	(run_tests_wrapped_env): Same.
	(semaphore::semaphore): Same.
	(semaphore::signal): Same.
	(semaphore::wait): Same.
	* testsuite/testsuite_abi.h (symbol_error): Remove, use logic_error.
	* testsuite/testsuite_abi.cc (get_symbol): Use __throw_logic_error.
	(create_symbols): Use __throw_runtime_error.
	* src/bitmap_allocator.cc: Use __throw_bad_alloc.

From-SVN: r92989
2005-01-06 07:08:48 +00:00
Paolo Carlini
1e156882fa istream.cc (basic_istream<char>::ignore(streamsize), [...]): At the end, first check _M_gcount vs __n.
2005-01-05  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): At the end,
	first check _M_gcount vs __n.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise.
	* testsuite/27_io/basic_istream/ignore/char/4.cc: New.
	* testsuite/27_io/basic_istream/ignore/wchar_t/4.cc: Likewise.

From-SVN: r92947
2005-01-05 11:11:48 +00:00
Paolo Carlini
ab4af6a549 istream.tcc (ignore(streamsize), [...]): Reset _M_gcount to numeric_limits<streamsize>::min().
2005-01-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Reset _M_gcount to numeric_limits<streamsize>::min().
	* src/istream.cc (basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Likewise.
	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize)): Likewise; fix a typo.

From-SVN: r92827
2005-01-03 14:07:26 +00:00
Paolo Carlini
bea53dbfbc istream.cc (basic_istream<char>::ignore(streamsize), [...]): Avoid _M_gcount overflows.
2005-01-02  Paolo Carlini  <pcarlini@suse.de>

	* src/istream.cc (basic_istream<char>::ignore(streamsize),
	basic_istream<char>::ignore(streamsize, int_type),
	basic_istream<wchar_t>::ignore(streamsize),
	basic_istream<wchar_t>::ignore(streamsize, int_type)): Avoid
	_M_gcount overflows.
	* include/bits/istream.tcc (ignore(streamsize), ignore(streamsize,
	int_type)): Likewise; use snextc in the main loop, consistently
	with the specializations above.

From-SVN: r92816
2005-01-03 00:02:47 +00:00
Paolo Carlini
d98fd13429 Minimal fixes for -fno-exceptions.
2004-12-29  Paolo Carlini  <pcarlini@suse.de>

	Minimal fixes for -fno-exceptions.
	* src/bitmap_allocator.cc (free_list::_M_get): Use
	__throw_exception_again, instead of plain throw.
	* testsuite/testsuite_abi.cc (get_symbol, examine_symbol,
	create_symbols): Likewise.
	* testsuite/testsuite_hooks.cc (verify_demangle,
	run_tests_wrapped_locale, run_tests_wrapped_env): Likewise.
	(try_named_locale): Wrap the whole catch in __EXCEPTIONS.

From-SVN: r92720
2004-12-30 00:21:10 +00:00
Paolo Carlini
75a25e3f65 DR 243.
2004-11-26  Paolo Carlini  <pcarlini@suse.de>

	DR 243. get and getline when sentry reports failure [WP]
	* include/bits/istream.tcc (istream<>::get, istream<>::getline):
	Store a null character only if the array has a non-zero size.
	* src/istream.cc (istream<char>::getline, istream<wchar_t>::getline):
	Likewise.
	* testsuite/27_io/basic_istream/get/char/3.cc: New.
	* testsuite/27_io/basic_istream/getline/char/6.cc: New.
	* testsuite/27_io/basic_istream/getline/wchar_t/6.cc: New.
	* docs/html/ext/howto.html: Add an entry for DR 243.

	* testsuite/27_io/basic_istream/getline/wchar_t/1.cc: New.
	* testsuite/27_io/basic_istream/getline/wchar_t/2.cc: New.
	* testsuite/27_io/basic_istream/getline/wchar_t/3.cc: New.
	* testsuite/27_io/basic_istream/getline/wchar_t/4.cc: New.
	* testsuite/27_io/basic_istream/getline/wchar_t/5.cc: New.

From-SVN: r91348
2004-11-26 20:34:27 +00:00
Kelley Cook
a38fb0a7a4 Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
	* include/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r91197
2004-11-24 21:12:26 +00:00
Paolo Carlini
e9fb72e85f istream.tcc (getline(basic_istream<>&, basic_string<>&, _CharT)): Remove temporary kludge for libstdc++/15002.
2004-11-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
	_CharT)): Remove temporary kludge for libstdc++/15002.
	* include/std/std_streambuf.h (class basic_streambuf): Declare
	getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
	* include/bits/basic_string.h (getline(basic_istream<>&,
	basic_string<>&, _CharT)): Declare optimized specializations for
	char and wchar_t, using protected members of basic_streambuf.
	* src/istream.cc: Define the latter.

From-SVN: r90801
2004-11-17 09:04:14 +00:00
Paolo Carlini
2bf8accc31 streambuf.tcc (__copy_streambufs): Provide a generic version of the function...
2004-11-15  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/streambuf.tcc (__copy_streambufs): Provide
	a generic version of the function, not using the protected
	members of basic_streambuf.
	* include/std/std_streambuf.h (__copy_streambufs): Declare
	optimized specializations for char and wchar_t.
	* src/streambuf.cc: New file, define the latter.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.

From-SVN: r90701
2004-11-15 23:33:05 +00:00
Benjamin Kosnik
948af8ae9c re PR libstdc++/17664 ([3.4 only] Crash in std::map when using _GLIBCXX_DEBUG with multithreading)
2004-11-08  Benjamin Kosnik  <bkoz@redhat.com>
	    Doug Gregor  <dgregor@cs.indiana.edu>

	PR libstdc++/17664
	* src/debug.cc: Just use one mutex.

Co-Authored-By: Doug Gregor <dgregor@cs.indiana.edu>
Co-Authored-By: Lothar Werzinger <lothar@xcerla.com>

From-SVN: r90296
2004-11-08 20:47:25 +00:00
Paolo Carlini
adb31ad60d istream.tcc (getline(char_type*, streamsize, char_type), [...]): Restore a generic version of the functions...
2004-11-08  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/istream.tcc (getline(char_type*, streamsize,
	char_type), ignore(streamsize), ignore(streamsize, int_type)):
	Restore a generic version of the functions, not using the
	protected members of basic_streambuf.
	* include/std/std_istream.h (getline(char_type*, streamsize,
	char_type), ignore(streamsize), ignore(streamsize, int_type)):
	Declare optimized specializations for char and wchar_t.
	* src/istream.cc: New file, define the latter.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.

From-SVN: r90268
2004-11-08 15:46:28 +00:00
Benjamin Kosnik
656cee9aa2 re PR libstdc++/17627 (M68060 fails with libstdc++-v3/config/cpu/m68k/atomicity.h)
2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>
  	    Lothar Werzinger  <lothar@xcerla.com>

	PR libstdc++/17627
	* src/debug.cc: Include concurrence, use mutexes.
	(_Safe_iterator_base::_M_attach): Here.
	(_Safe_iterator_base::_M_detach): Here.

Co-Authored-By: Lothar Werzinger <lothar@xcerla.com>

From-SVN: r90004
2004-11-02 23:56:56 +00:00
Benjamin Kosnik
bd80bd9b93 re PR libstdc++/17922 (Spurious warnings about std::ios_base::seekdir)
2004-11-02  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/17922
	* include/bits/ios_base.h : Add enum values.
	* testsuite/testsuite_hooks.h (bitmask_operators): Add function.
	* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
	* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
	* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
	* testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
	* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
	* testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
	* testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.

	* config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
	* src/ios.cc: Same.

	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.

From-SVN: r89996
2004-11-02 19:00:19 +00:00
Benjamin Kosnik
7befac7140 mt_allocator.h (__pool::_M_get_align): New.
2004-10-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/mt_allocator.h (__pool::_M_get_align): New.
	(__mt_alloc::allocate): Use it.
	* src/mt_allocator.cc (__pool::_M_reclaim_block): Use it.
	(__pool::_M_reserve_block): Simplify block allocation.

From-SVN: r89171
2004-10-17 15:22:03 +00:00
Dhruv Matani
a815571193 bitmap_allocator.h: Change unsigned int -> size_t...
2004-10-17  Dhruv Matani  <dhruvbird@gmx.net>
	    Paolo Carlini  <pcarlini@suse.de>

	* include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
	makes the code 64-bit correct and also fixes (together with using at
	the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
	8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
	Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
	* src/bitmap_allocator.cc: Change to size_t.
	* config/linker-map.gnu: Adjust.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r89170
2004-10-17 14:46:29 +00:00
Paolo Carlini
0d6b41f2dd bitmap_allocator.h: Qualify ::operator delete.
2004-10-15  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/bitmap_allocator.h: Qualify ::operator delete.
	* src/bitmap_allocator.cc: Likewise.
	* src/mt_allocator.cc: Use ::operator delete, not delete,
	consistently with ::operator new.

	* include/ext/bitmap_allocator.h (deallocate): Check for null
	pointer.
	* testsuite/ext/bitmap_allocator/check_deallocate_null.cc: New.
	* testsuite/testsuite_allocator.h (check_deallocate_null): Add test.

From-SVN: r89089
2004-10-15 10:54:57 +00:00
Benjamin Kosnik
11aaaa84ae mt_allocator.h: Tweaks.
2004-10-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/mt_allocator.h: Tweaks.
	* src/mt_allocator.cc: Same.

From-SVN: r89052
2004-10-14 21:05:24 +00:00
Dhruv Matani
1399eca190 bitmap_allocator.h: Clean-up add/remove functions.
2004-10-14  Dhruv Matani  <dhruvbird@gmx.net>

	* ext/bitmap_allocator.h: Clean-up add/remove functions.
	* src/bitmap_allocator.cc: New file. Contains the out-of-line
	function definitions, static initialization of variables, and
	explicit instantiations needed for the allocator.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.
	* config/linker.map.gnu: Add the necessary symbols.

From-SVN: r89042
2004-10-14 17:52:18 +00:00
Benjamin Kosnik
5a1e5472f5 re PR libstdc++/17937 (Critical ~__pool troubles)
2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/stl_deque.h: Correct for over-long lines.

2004-10-11  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/17937
	* include/ext/mt_allocator.h (__pool::_M_destroy): New.
	* src/mt_allocator.cc (__pool::~__pool): Change definitions to
	_M_destroy.
	* acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
	* configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
	* configure: Regenerate.
	* config/linker-map.gnu: Tweak exports.
	* docs/html/ext/mt_allocator.html: Update docs.
	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.

From-SVN: r88913
2004-10-12 01:10:39 +00:00
Joachim Kuebart
e55096f0ce pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk): Deal properly with exceptions thrown by ::operator new(size_t).
2004-10-11  Joachim Kuebart  <kuebart@mathematik.uni-ulm.de>
	    Paolo Carlini  <pcarlini@suse.de>

	* src/pool_allocator.cc (__pool_alloc_base::_M_allocate_chunk):
	Deal properly with exceptions thrown by ::operator new(size_t).
	* testsuite/ext/pool_allocator/allocate_chunk.cc: New.

	* include/ext/pool_allocator.h: Include <cstdlib>.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r88872
2004-10-11 08:19:35 +00:00
Benjamin Kosnik
c3e7f18406 acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
2004-10-08  Benjamin Kosnik  <bkoz@redhat.com>

	* acconfig.h: Add _GLIBCXX_USE___CXA_ATEXIT.
	* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): New.
	* configure.ac: Call GLIBCXX_ENABLE_CXA_EXIT.
	* configure: Regenerate.
	* src/mt_allocator.cc (__pool::~__pool): Make conditional on
	_GLIBCXX_USE___CXA_ATEXIT macro.
	* docs/html/ext/mt_allocator.html: Add note about deallocation.
	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Guard checks
	with _GLIBCXX_USE___CXA_ATEXIT.
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Same.
	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Same.

From-SVN: r88809
2004-10-09 02:30:10 +00:00
Benjamin Kosnik
e3f78d9b11 acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
	(GLIBCXX_CONFIGURE_TESTSUITE): Use it.
	* configure: Regenerated.
	* testsuite/Makefile.am (CLEANFILES): Add TEST for
	check-performance executables.
	(stamp_thread): New.
	(all-local): Use it.
	* testsuite/Makefile.in: Regenerate.
	* scripts/create_testsuite_files: Filter thread tests.

	* testsuite/thread/pthread1.cc: Remove macro conditionals: this
	file will only be run by thread enabled configurations.
	* testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
	* testsuite/thread/pthread6.cc: Same.
	* testsuite/thread/pthread5.cc: Same.
	* testsuite/thread/pthread4.cc: Same.
	* testsuite/thread/pthread3.cc: Same.
	* testsuite/thread/pthread2.cc: Same.

	* testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
	* testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
	* testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here.
	* testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
	* testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.

From-SVN: r88628
2004-10-06 22:12:34 +00:00
Benjamin Kosnik
8470634361 re PR libstdc++/17780 (std::allocator vs. static init)
2004-10-06  Benjamin Kosnik  <bkoz@redhat.com>
	    Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/17780
	* src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
	to old locking order.

Co-Authored-By: Paolo Carlini <pcarlini@suse.de>

From-SVN: r88611
2004-10-06 16:31:19 +00:00