Commit Graph

340 Commits

Author SHA1 Message Date
H.J. Lu 216edb224f re PR libstdc++/22284 (ia64 exception handling broken)
2005-07-29  H.J. Lu  <hongjiu.lu@intel.com>

	PR libstdc++/22284
	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
	the change to info.ttype_base.

From-SVN: r102552
2005-07-29 06:35:59 -07: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 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 2a75c0b6d2 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: r101389
2005-06-28 20:06:39 +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
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
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
Richard Henderson e73ee854b1 * libsupc++/unwind-cxx.h: Revert gcc_unreachable change.
From-SVN: r100002
2005-05-19 18:24:50 -07:00
Jan Beulich 7a774cac88 unwind-compat.c: Include tconfig.h and tsystem.h.
gcc/
2005-05-19  Jan Beulich  <jbeulich@novell.com>

	* unwind-compat.c: Include tconfig.h and tsystem.h.
	* unwind-dw2-fde-compat.c: Likewise.

libstdc++-v3/
2005-05-19  Jan Beulich  <jbeulich@novell.com>

	* libsupc++/unwind-cxx.h: Include cstdlib.
	(gcc_unreachable): #define.
	* libsupc++/eh_personality.cc (gcc_unreachable): Remove #define.

From-SVN: r99952
2005-05-19 06:47:50 +00:00
Nathan Sidwell 79d0dfa314 unwind-dw2-fde-glibc.c (base_from_cb_data, [...]): Use gcc_assert and gcc_unreachable as appropriate.
* unwind-dw2-fde-glibc.c (base_from_cb_data,
	_Unwind_IteratePhdrCallback): Use gcc_assert and gcc_unreachable as
	appropriate.
	* unwind-dw2-fde.c (__deregister_frame_info_bases,
	base_from_object, fde_split, end_fde_sort): Likewise.
	* unwind-dw2.c (_Unwind_GetGR, _Unwind_SetGR, execute_stack_op,
	execute_cfa_program, _Unwind_SetSpColumn, uw_update_context_1,
	uw_init_context_1): Likewise.
	* unwind.inc (_Unwind_RaiseException_Phase2, _Unwind_Resume,
	_Unwind_Resume_or_Rethrow): Likewise.
	* unwind-pe.h (__gxx_abort): Do not define.
	(size_of_encoded_value, base_of_encoded_value,
	read_encoded_value_with_base): Use gcc_unreachable.
	* unwind.h (_Unwind_GetTextRelBase): Likewise.

From-SVN: r99835
2005-05-17 15:37:47 +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
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
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
Richard Henderson 38f925677d re PR libstdc++/20091 (18_support/14026.cc execution test fails)
PR libstdc++/20091
        * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
        decrement of uncaughtExceptions for rethrow.

From-SVN: r95419
2005-02-22 15:17:14 -08:00
Richard Henderson 396090773c re PR libstdc++/10606 (uncaught_exception() returns false too early)
PR libstdc++/10606
gcc/cp/
        * except.c (do_get_exception_ptr): New.
        (expand_start_catch_block): Use it.
libstdc++/
        * config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
        * libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
        uncaughtExceptions here instead of ...
        * libsupc++/eh_throw.cc (__cxa_throw) ... here.
        (__cxa_rethrow): Increment uncaughtExceptions here instead of ...
        * libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
        (__cxa_get_exception_ptr): New.
        * libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.

From-SVN: r95262
2005-02-18 18:35:25 -08:00
Mike Stump f00485cc36 Fix typo...
From-SVN: r94843
2005-02-10 19:21:33 +00:00
Mike Stump b77647dff8 * libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.
From-SVN: r94842
2005-02-10 19:05:34 +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 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
Jason Merrill 445cf5eb0d Add memory barriers to the double-checked locking used for static initialization.
libstdc++:
        Add memory barriers to the double-checked locking used for static
        initialization.
        * libsupc++/guard.cc (__test_and_acquire): Define default.
        (_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
        (_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
        (recursion_push, recursion_pop): New abstraction functions.
        (__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
        (__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
        * config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
        from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
        (_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
        * config/cpu/arm/cxxabi_tweaks.h: Likewise.
        * config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
        (_GLIBCXX_WRITE_MEM_BARRIER): Define.
        * config/cpu/powerpc/atomic_word.h: Likewise.
        * config/cpu/sparc/atomic_word.h: Likewise.
        * config/cpu/generic/atomic_word.h: Define them, commented out.
        * include/bits/atomicity.h: Define defaults.
        * config/cpu/ia64/atomic_word.h (__test_and_acquire)
        (__set_and_release): New inlines.
        (_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
        (_GLIBCXX_GUARD_SET_AND_RELEASE): Define.

        * libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
        abort();

gcc:
        * doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
        * target.h (struct gcc_target): Add relaxed_ordering field.
        * target-def.h (TARGET_RELAXED_ORDERING): Define default.
        (TARGET_INITIALIZER): Add it.
        * config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Define.
        * config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Define.
        * config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Define.
        * config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define.
        * cp/decl.c (expand_static_init): Don't use shortcut if
        targetm.relaxed_ordering.

From-SVN: r92659
2004-12-27 23:36:54 -05: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
Benjamin Kosnik 0aa06b18fc doxygroups.cc: Add std::tr1 namespace.
2004-11-23  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/doxygen/doxygroups.cc: Add std::tr1 namespace.
	* docs/doxygen/run_doxygen: Renames for std::tr1.
	* docs/doxygen/user.cfg.in: Add cxxabi.h.
	* include/bits/*.tcc: Add file markup.
	* include/bits/allocator.h: Add link to allocator.html.
	* include/bits/atomicity.h: Add file markup.
	* include/bits/concurrence.h: Same.
	* include/bits/functexcept.h: Same.
	* include/ext*: Adjust file markup, remove GCC3 bits.
	* include/std/*: Adjust file markup, remove bits about renamed files.
	* libsupc++/cxxabi.h: Add file markup.
	* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers.

From-SVN: r91135
2004-11-24 04:11:23 +00:00
Benjamin Kosnik 34a133a808 c++config: Spacing.
2004-11-03  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Spacing.
	* libsupc++/del_op.cc: Include c++config.h.
	* libsupc++/del_opnt.cc: Same.
	* libsupc++/del_opv.cc: Same.
	* libsupc++/del_opvnt.cc: Same.
	* libsupc++/new_op.cc: Same.
	* libsupc++/new_opnt.cc: Same.
	* libsupc++/new_opv.cc: Same.
	* libsupc++/new_opvnt.cc: Same.

From-SVN: r90021
2004-11-03 04:07:22 +00:00
Aaron W. LaFramboise 5cc781508e * config/os/bsd/darwin/os_defines.h
(_GLIBCXX_WEAK_DEFINITION): Define.
	* include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
	* libsupc++/del_op.cc (operator delete(void *)): Use
	_GLIBCXX_WEAK_DEFINITION.
	* libsupc++/del_opnt.cc
	(operator delete(void *, const std::nothrow_t&)): Same.
	* libsupc++/del_opv.cc (operator delete[](void *)): Same.
	* libsupc++/del_opvnt.cc
	(operator delete[](void *, const std::nothrow_t&)): Same.
	* libsupc++/new_op.cc (operator new(std::size_t)): Same.
	* libsupc++/new_opnt.cc
	(operator new(std::size_t, const std::nothrow_t&)): Same
	* libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
	* libsupc++/new_opvnt.cc
	(operator new[](std::size_t, const std::nothrow_t&)): Same.

From-SVN: r90017
2004-11-02 21:00:00 -06:00
Momchil Velikov c137586a8e re PR libstdc++/18185 ([3.4 only] Unhandled exceptions leak)
2004-11-01  Momchil Velikov  <velco@fadata.bg>

	PR libstdc++/18185
	* libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
	exceptions.
	* testsuite/thread/18185.cc: New.

From-SVN: r89962
2004-11-01 22:47:33 +00:00
Geoffrey Keating f1a6626519 Index: gcc/gcc/ChangeLog
2004-10-25  Geoffrey Keating  <geoffk@apple.com>

	* config/darwin.h (LINK_SPEC): Default weak_reference_mismatches
	to 'non-weak'.
	(MAKE_DECL_ONE_ONLY): Set DECL_WEAK.
	(ASM_MAKE_LABEL_LINKONCE): Delete.
	(ASM_WEAKEN_DECL): New.
	(ASM_DECLARE_OBJECT_NAME): Look at DECL_WEAK not DECL_ONE_ONLY.
	(ASM_DECLARE_FUNCTION_NAME): Likewise.
	(TEXT_SECTION_ASM_OP): Add a tab.
	(DATA_SECTION_ASM_OP): Likewise.
	(SECTION_FUNCTION): Add a tab.  Use fputs.  Don't call
	data_section on every section change.
	(EXTRA_SECTIONS): Add a bunch of new extra sections.
	(EXTRA_SECTION_FUNCTIONS): Likewise.
	(USE_SELECT_SECTION_FOR_FUNCTIONS): Define.
	(JCR_SECTION_NAME): Define.
	(TARGET_SECTION_TYPE_FLAGS): Don't define.
	* config/darwin.c (darwin_encode_section_info): A symbol is defined
	in this file if it is not weak.
	(textcoal_section): Delete.
	(datacoal_section): Delete.
	(darwin_make_decl_one_only): Delete.
	(machopic_select_section): Handle functions.
	(darwin_asm_named_section): Add a tab.
	(darwin_section_type_flags): Delete.
	(darwin_unique_section): Delete contents.
	(darwin_emit_unwind_label): Add a tab.  Make decls weak if
	DECL_WEAK is set.
	* config/darwin-protos.h (darwin_section_type_flags): Delete.
	(darwin_make_decl_one_only): Delete.
	(text_coal_section): New.
	(text_unlikely_section): New.
	(text_unlikely_coal_section): New.
	(const_coal_section): New.
	(data_coal_section): New.
	(const_data_coal_section): New.
	* varasm.c (function_section): Honour
	USE_SELECT_SECTION_FOR_FUNCTIONS.
	* dwarf2out.c (output_call_frame_info): Look at DECL_WEAK when
	TARGET_USES_WEAK_UNWIND_INFO is in effect.
	* dbxout.c (dbxout_source_file): Don't change sections while
	a function is being output.

Index: gcc/testsuite/ChangeLog
2004-10-25  Geoffrey Keating  <geoffk@apple.com>

	* objc.dg/image-info.m: Update for changes to section selection.

Index: libjava/ChangeLog
2004-10-25  Geoffrey Keating  <geoffk@apple.com>

	* Makefile.am (DARWIN_CRT_SRC): New.
	(libgcj_la_SOURCES): Use it.
	* configure.ac: Define USING_DARWIN_CRT when on Darwin.
	* darwin.cc: New file.
	* include/jvm.h (_Jv_RegisterClasses): Constify.
	(_Jv_RegisterClasses_Counted): New prototype.
	* java/lang/Class.h: Include stddef.h.
	(_Jv_RegisterClasses): Constify.
	(_Jv_RegisterClasses_Counted): New prototype.
	(Object): Make '_Jv_RegisterClasses_Counted' a friend.
	* java/lang/natClassLoader.cc (_Jv_RegisterClasses): Constify.
	(_Jv_RegisterClasses_Counted): New function.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

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

	* libsupc++/new_op.cc (new): Make weak.
	* libsupc++/new_opnt.cc (new): Make weak.
	* libsupc++/new_opv.cc (new): Make weak.
	* libsupc++/new_opvnt.cc (new): Make weak.
	* libsupc++/delete_op.cc (delete): Make weak.
	* libsupc++/delete_opnt.cc (delete): Make weak.
	* libsupc++/delete_opv.cc (delete): Make weak.
	* libsupc++/delete_opvnt.cc (delete): Make weak.

From-SVN: r89572
2004-10-26 06:09:05 +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
Mark Mitchell 511bbc8f91 cxxabi_tweaks.h (__cxa_cdtor_return_type): Define.
* config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
	Define.
	* config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
	Define.
	* libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
	(__cxa_vec_new): Use it.
	(__cxa_vec_new2): Likewise.
	(__cxa_vec_new3): Likewise.
	(__cxa_vec_cdtor): Likewise.
	(__cxa_vec_cctor): Likeiwse.
	(__cxa_vec_dtor): Likewise.
	(__cxa_vec_cleanup): Likewise.
	(__cxa_vec_delete2): Likewise.
	(__cxa_vec_delete3): Likewise.
	* libsupc++/vec.cc (__cxa_vec_new): Likewise.
	(__cxa_vec_new2): Likewise.
	(__cxa_vec_new3): Likewise.
	(__cxa_vec_cdtor): Likewise.
	(__cxa_vec_cctor): Likeiwse.
	(__cxa_vec_dtor): Likewise.
	(__cxa_vec_cleanup): Likewise.
	(__cxa_vec_delete2): Likewise.
	(__cxa_vec_delete3): Likewise.
	(__aeabi_vec_ctor_nocookie_nodtor): New function.
	(__aeabi_vec_ctor_cookie_nodtor): Likewise.
	(__aeabi_vec_cctor_nocookie_nodtor): Likewise.
	(__aeabi_vec_new_cookie_noctor): Likewise.
	(__aeabi_vec_new_nocookie): Likewise.
	(__aeabi_vec_new_cookie_nodtor): Likewise.
	(__aeabi_vec_new_cookie): Likewise.
	(__aeabi_vec_dtor): Likewise.
	(__aeabi_vec_dtor_cookie): Likewise.
	(__aeabi_vec_delete): Likewise.
	(__aeabi_vec_delete3): Likewise.
	(__aeabi_vec_delete3_nodtor): Likewise.
	(__aeabi_atexit): Likewise.

	* testsuite/g++.old-deja/g++.abi/cxa_vec.C: Adjust for ARM
	EABI.

From-SVN: r87585
2004-09-16 03:41:19 +00:00
Mark Mitchell 40a1c5cb5e bpabi.h (TARGET_BPABI_CPP_BUILTINS): Define.
* config/arm/bpabi.h (TARGET_BPABI_CPP_BUILTINS): Define.
	(TARGET_OS_CPP_BUILTINS): Likewise.
	* config/arm/symbian.h (TARGET_OS_CPP_BUILTINS): Include
	TARGET_BPABI_CPP_BUILTINS.

	* g++.dg/abi/arm_rtti1.C: New test.

	* libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
	defined.

[[Split portion of a mixed commit.]]

From-SVN: r87018.2
2004-09-03 00:43:59 +00:00
Jason Merrill 40aac94801 re PR c++/13684 (local static object variable constructed once but ctors and dtors called multiple times on same memory when called in multiple threads)
PR c++/13684
        * cp/decl.c (expand_static_init): Use thread-safety API.
        (register_dtor_fn): Return the call, don't expand it.
        * cp/tree.c (add_stmt_to_compound): New fn.
        (stabilize_call): Use it.
        * gimplify.c (gimplify_cleanup_point_expr): Handle CLEANUP_EH_ONLY.
        (gimple_push_cleanup): Add eh_only parm.
        (gimplify_target_expr): Pass it.
        * c.opt (-fno-threadsafe-statics): New option.
        * c-opts.c (c_common_handle_option): Handle it.
        * c-common.h (flag_threadsafe_statics): Declare it.
        * c-common.c (flag_threadsafe_statics): Record it.
        * doc/invoke.texi: Document it.
        * tsystem.h (_GNU_SOURCE): Define.
        * gthr-posix.h (__gthread_recursive_mutex_t): New typedef.
        (__GTHREAD_RECURSIVE_MUTEX_INIT): New macro.
        (__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION): New macro.
        (__gthread_recursive_mutex_init_function): New fn.
        (__gthread_recursive_mutex_lock): New fn.
        (__gthread_recursive_mutex_trylock): New fn.
        (__gthread_recursive_mutex_unlock): New fn.
        * gthr-solaris.h, gthr-single.h, gthr-dce.h: Likewise.
        * gthr-win32.h, gthr-vxworks.h: Likewise.
        * gthr.h: Document.

        * libsupc++/guard.cc (static_mutex): Internal class implementing a
        recursive mutex which controls initialization of local statics.
        (__gnu_cxx::recursive_init): New exception class.
        (__cxa_guard_acquire): Deal with locking and recursion detection.
        (acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.

From-SVN: r86687
2004-08-27 22:33:54 -04:00
Paolo Carlini a60945f82f configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
2004-08-23  Paolo Carlini  <pcarlini@suse.de>

	* configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
	* aclocal.m4: Regenerate with automake-1.9.1.
	* configure: Regenerate.
	* Makefile.in: Likewise.
	* 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: r86423
2004-08-23 10:18:31 +00:00
Paul Brook 47bedfb079 cxxabi_tweaks.h: Define __cxa_vec_ctor_return and _GLIBCXX_CXA_VEC_CTOR_RETURN.
* config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
	_GLIBCXX_CXA_VEC_CTOR_RETURN.
	* config/cpu/generic/cxxabi_tweaks.h: Ditto.
	* libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
	__cxa_vec_ctor_return.
	* libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
	Use _GLIBCXX_CXA_VEC_CTOR_RETURN.

	* g++.dg/abi/arm_cxa_vec_1.C: New test.

From-SVN: r85891
2004-08-12 18:50:38 +00:00
Kelley Cook 7eaf73d757 Makefile.in, [...]: Regenerate
2004-08-12  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.in, aclocal.m4, configure, include/Makefile.in,
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
	src/Makefile.in, testsuite/Makefile.in: Regenerate

From-SVN: r85869
2004-08-12 11:54:13 +00:00
Jason Merrill 27f577e57d fix typo
From-SVN: r85715
2004-08-09 09:18:56 -04:00
Mark Mitchell 610b0ddd0e new_op.cc: Update comments.
* libsupc++/new_op.cc: Update comments.
	* libsupc++/del_op.cc: Likewise.

From-SVN: r85464
2004-08-03 07:11:16 +00:00
Mark Mitchell 723acbd5fa cxxabi.h: Make all declarations have default visibility.
* libsupc++/cxxabi.h: Make all declarations have default
	visibility.
	* libsupc++/exception: Likewise.
	* libsupc++/new: Likewise.
	* libsupc++/typeinfo: Likewise.
	* libsupc++/unwind-cxx.h: Likewise.
	* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
	the __cxxabiv1 namespace.
	(__cxa_free_exception): Likewise.
	* libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
	(__cxa_bad_typeid): Likewise.
	* libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
	(__cxa_end_catch): Likewise.
	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
	(__cxa_get_globals): Likewise.
	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
	(__cxa_rethrow): Likewise.
	* libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
	* libsupc++/eh_type.cc: Include <cxxabi.h>.

From-SVN: r85463
2004-08-03 06:45:54 +00:00
Mark Mitchell 4c24b21a47 Makefile.am (hosted_source): Add libmath and testsuite.
* Makefile.am (hosted_source): Add libmath and testsuite.
	(SUBDIRS): Remove them.
	* acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
	on arm*-*-symbianelf*.
	* crossconfig.m4: Add arm*-*-symbianelf* support.
	* include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
	when freestanding.  Do not bring names into std:: namespace with
	"using" when freestanding.  Declare required functions and macros
	when freestanding.
	* libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
	when freestanding.
	* libsupc++/del_op.cc: Declare "free" only when freestanding.
	* libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
	(malloc): Declare when freestanding.
	(free): Likewise.
	(memset): Likewise.
	(__cxa_allocate_exception): Call malloc, not std::malloc.  Likewise
	for memset.
	(__cxa_free_exception): Likewise for free.
	* libsupc++/new_op.cc: Declare "malloc" when freestanding.
	* libsupc++/pure.cc (writestr): Define to nothing when
	freestanding.
	* libsupc++/vterminate.cc: Do not define anything when
	freestanding.
	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.
	* 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: r85452
2004-08-02 20:28:22 +00:00
Paul Brook 1568430fae configure.ac: Set ABI_TWEAKS_SRCDIR.
* configure.ac: Set ABI_TWEAKS_SRCDIR.
	* configure.host: Set abi_tweaks_dir.  Check for atomicity.h when
	setting atomicity_dir.  Override type_cpu for arm based targets.
	* include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
	* libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
	* libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
	* libsupc++/vec.cc: Ditto.
	* config/cpu/arm/cxxabi_tweaks.h: New file.
	* config/cpu/generic/cxxabi_tweaks.h: New file.
	* */Makefile.in: Regenerate.
	* configure: Regenerate.

From-SVN: r84032
2004-07-02 23:40:19 +00:00
Paul Brook 46e995e0e4 target-def.h (TARGET_CXX_GET_COOKIE_SIZE, [...]): Define.
gcc/
	* target-def.h (TARGET_CXX_GET_COOKIE_SIZE,
	TARGET_CXX_COOKIE_HAS_SIZE): Define.
	(TARGET_CXX): Use them.
	* target.h (struct gcc_target): Add cxx.get_cookie_size and
	cxx.cookie_has_size.
	* targhooks.c (default_cxx_get_cookie_size): New fucntion.
	* targhooks.h (default_cxx_get_cookie_size): Add prototype.
	* config/arm/arm.c (TARGET_CXX_GET_COOKIE_SIZE,
	TARGET_CXX_COOKIE_HAS_SIZE): Define.
	(arm_get_cookie_size, arm_cookie_has_size): New functions.
	* Make-lang.in (cp/init.o): Add dependency on $(TARGET_H).
	* doc/tm.texi: Document TARGET_CXX_GET_COOKIE_SIZE and
	TARGET_CXX_COOKIE_HAS_SIZE.
gcc/cp/
	* init.c: Include target.h.
	(get_cookie_size): Remove and replace with target hook.
	Update callers.
	(build_new_1): Store the element size in the cookie.
libstdc++-v3/
	* libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Store the
	element size in the cookie.
testsuite/
	* g++.old-deja/g++.abi/arraynew.C: Handle ARM EABI cookies.
	* g++.old-deja/g++.abi/cxa_vec.C: Allocate larger cookies for AEABI.

From-SVN: r83854
2004-06-29 14:50:35 +00:00
Benjamin Kosnik 4723805a61 safe_base.h (__gnu_debug::_Safe_sequence_base): Revert -Weffc++ changes that defined copy ctory and or assignment operator.
2004-06-28  Benjamin Kosnik  <bkoz@redhat.com>

	* include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
	Revert -Weffc++ changes that defined copy ctory and or assignment
	operator.
	* libsupc++/tinfo.cc (__upcast_result): Same.

From-SVN: r83804
2004-06-28 18:31:18 +00:00
Paul Brook 4185ae5397 target-def.h (TARGET_CXX_GUARD_TYPE, [...]): Define.
gcc/
	* target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
	TARGET_CXX): Define.
	(TARGET_INITIALIZER): Use TARGET_CXX.
	* target.h (struct gcc_target): Add struct cxx.
	* targhooks.h (default_cxx_guard_type): Add prototype.
	* targhooks.c (default_cxx_guard_type): New function.
	* config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
	Define.
	(arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
	* doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
	TARGET_CXX_GUARD_MASK_BIT.
gcc/cp/
	* decl2.c (get_guard): Call targetm.cxx.guard_type.
	(get_guard_bits, get_guard_cond): Call targetm.cxx.guard_mask_bit.
libstdc++/
	* libsupc++/cxxabi.h: Define __ARM_EABI__
	(__guard): Use it.
	* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.

From-SVN: r83660
2004-06-25 17:15:46 +00:00
Benjamin Kosnik 2373de3a83 Makefile.in: Regenerate with automake 1.8.5.
2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>

	* Makefile.in: Regenerate with automake 1.8.5.
	* aclocal.m4: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* po/Makefile.in: Same.
	* src/Makefile.in: Same.
	* testsuite/Makefile.in: Same.

From-SVN: r83123
2004-06-14 17:49:30 +00:00
Benjamin Kosnik 52ceb03971 cxxabi.h: Remove duplicated and useless public and private keywords in class declarations.
2004-05-22  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/cxxabi.h: Remove duplicated and useless public and
        private keywords in class declarations. Format. Use
        stddef.h. Expose declarations to "C" compilation.
        * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and
        assignment operator.
        (__dyncast_result): Same.
        * libsupc++/vec.cc (uncatch_exception): Same, use member
        initialization list.

From-SVN: r82147
2004-05-22 21:07:28 +00:00
Matthias Klose ce120bb2c4 iterator.h: Add GPL copyright info, with exception clause.
2004-05-06  Matthias Klose  <doko@debian.org>

        * include/backward/iterator.h:  Add GPL copyright info,
        with exception clause.
        * include/bits/boost_concept_check.h: Likewise.
        * include
        * libsupc++/tinfo.h: Likewise.
        * po/string_literals.cc: Likewise.

From-SVN: r81581
2004-05-06 22:02:05 +00:00
Benjamin Kosnik 563ae04fec Fixups for EDG front end.
2004-04-06  Benjamin Kosnik  <bkoz@redhat.com>

	Fixups for EDG front end.
	* include/ext/rope: Instead of non-existent function
	_Data_allocate, use allocator's allocate. Use this.
	(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
	enumerations from _Rope_RopeRep here.
	* include/ext/ropeimpl.h: Same.
	* src/ext-inst.cc (_S_min_len): Fix up definition.

	* config/locale/gnu/ctype_members.cc: Qualify base class members
	with this.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/gnu/messages_members.h: Same.
	* config/locale/generic/messages_members.h: Same.
	* src/ctype.cc: Same.
	* include/bits/codecvt.h: Same.

	* include/bits/boost_concept_check.h: Declare.
	(__error_type_must_be_an_unsigned_integer_type): Remove this.
	(__error_type_must_be_an_integer_type): Remove this.
	(__error_type_must_be_a_signed_integer_type): Remove this.

	* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.

	* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
	specification to definition.
	(__cxa_allocate_exception): Same.
	* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
	* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
	(__cxa_get_globals): Same.

	* libsupc++/del_op.cc: Add comment about freestanding.

From-SVN: r80475
2004-04-07 03:33:36 +00:00
Phil Edwards d54bc1d870 acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT): Set LIBICONV, not libiconv.
2004-03-19  Phil Edwards  <phil@codesourcery.com>

	* acinclude.m4 (GLIBCXX_CHECK_WCHAR_T_SUPPORT):  Set LIBICONV,
	not libiconv.  SUBST this variable as well.
	* testsuite/Makefile.am (site.exp):  New target, based on that
	created by automake.  Also set libiconv.

	* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in:  Regenerate.

From-SVN: r79678
2004-03-19 11:34:47 +00:00
Benjamin Kosnik 8b0d605196 allocator: New.
2004-03-13  Benjamin Kosnik  <bkoz@redhat.com>

	* config/allocator: New.
	* config/allocator/bitmap_allocator_base.h: New.
	* config/allocator/malloc_allocator_base.h: New.
	* config/allocator/mt_allocator_base.h: New.
	* config/allocator/new_allocator_base.h: New.
	* include/bits/allocator.h: Include c++allocator.h.
	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
	* aclocal.m4: Regenerate.
	* configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
	* configure: Regenerate.
	* include/Makefile.am (host_headers_extra): Add c++allocator.h.
	* include/Makefile.in: Regenerate.
	* docs/html/configopts.html: Add enable-libstdcxx-allocator.

From-SVN: r79435
2004-03-13 06:54:25 +00:00
Benjamin Kosnik ec2075e962 Support automake 1.8.2
2004-03-02  Benjamin Kosnik  <bkoz@redhat.com>

	Support automake 1.8.2
	* configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
	* po/Makefile.am (EXTRA_DIST): New.
	* po/Makefile.in: Regenerate.
	* Makefile.in: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* src/Makefile.in: Same.
	* testsuite/Makefile.in: Same.

	* include/Makefile.am (${host_builddir}/gthr-posix.h): Use
	__GXX_WEAK__ instead of SUPPORTS_WEAK.
	(${host_builddir}/gthr-default.h): Same.
	(${host_builddir}/gthr.h): Same.
	* acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
	_GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
	-fno-weak.
	* aclocal.m4: Regenerate.
	* acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
	* config.h.in: Regenerate.
	* configure: Same.

From-SVN: r78770
2004-03-02 18:30:08 +00:00
Benjamin Kosnik 40fcf31b2f [multiple changes]
2004-02-26  Ian Lance Taylor  <ian@wasabisystems.com>

	* testsuite/demangle/abi_examples/01.cc: Expect error -2.
	* testsuite/demangle/abi_examples/02.cc: Likewise.
	* testsuite/demangle/regression/cw-11.cc: Likewise.
	* testsuite/demangle/regression/cw-16.cc: Change two expected
	results to match libiberty demangler output.

2004-02-26  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/10246
        * libsupc++/Makefile.am: Use libiberty demangler.
        (c_sources): Add cp-demangle.c.
        * libsupc++/Makefile.in: Regenerate.
        * src/Makefile.am (sources): Remove demangle.cc.
        * src/Makefile.in: Regenerate.
        * include/Makefile.am (bits_headers): Move demangle.h.
	(ext_headers): ...here.
        * include/Makefile.in: Regenerate.
        * include/bits/demangle.h: Move...
	* include/ext/demangle.h: ...here.
        * src/demangle.cc: Remove.

2004-02-26  Benjamin Kosnik  <bkoz@redhat.com>

        * include/bits/demangle.h: Add type template parameter to all
        templates with just an Allocator template parameter.

From-SVN: r78553
2004-02-27 03:21:16 +00:00
Benjamin Kosnik 6f94dea785 vterminate.cc (__gnu_cxx::__verbose_terminate_handler): Only use fputs, not write.
2004-02-23  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/vterminate.cc (__gnu_cxx::__verbose_terminate_handler):
	Only use fputs, not write.

From-SVN: r78327
2004-02-23 19:17:06 +00:00
Mark Mitchell afc3bb58d5 * libsupc++/vterminate.cc
(__gnu_cxx::__verbose_terminate_handler): Guard against recursive
	calls to terminate.
	* src/demangle.cc (__cxa_demangle): Wrap in try-catch block.

From-SVN: r78235
2004-02-21 20:59:26 +00:00
James E Wilson 664fc5df4a re PR libstdc++/5625 ([mips] exception unwinding creates invalid pointer on mips)
PR libstdc++/5625
* libsuspc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
__builtin_extend_pointer.

From-SVN: r77555
2004-02-09 13:20:33 -08:00
Richard Henderson c38628062d re PR libstdc++/14026 (std::uncaught_exception is true although there are no uncaught exceptions (rethrow, ghost exception))
PR libstdc++/14026
        * libsupc++/eh_catch.cc (__cxa_begin_catch): Don't adjust
        uncaughtExceptions during nested catch rethrow.
        * testsuite/18_support/14026.cc: New.

From-SVN: r77492
2004-02-08 10:01:23 -08:00
Mark Mitchell 517da0ce8a acconfig.h: Add _GLIBCXX_USE_C99_MATH.
* acconfig.h: Add _GLIBCXX_USE_C99_MATH.
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Define GLIBCXX_USE_C99_MATH.
	* configure.ac: Define HAVE_S_ISREG and HAVE_S_IFREG when
	targeting newlib.
	* aclocal.m4: Regenerated.
	* config.h.in: Likewise.
	* configure: Likewise.
	* Makefile.in: Likewise.
	* include/Makefile.in: Likewise.
	* libmath/Makefile.in: Likewise.
	* libsupc++/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.
	* src/Makefile.in: Likewise.
	* po/Makefile.in: Likewise.
	* include/c_std/std_cmath.h (_GLIBCXX_USE_C99): Replace with ...
	(_GLIBCXX_USE_C99_MATH): ... this.

	* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL for
	arm-none-elf.
	* testsuite/27_io/basic_filebuf/sgetn/char/1-io.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sgetn/char/2-in.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sgetn/char/2-io.cc: Likewise.
	* testsuite/27_io/basic_istream/readsome/char/6476-2.cc: Likewise.
	* testsuite/27_io/objects/char/9.cc: Likewise.
	* testsuite/ext/stdio_filebuf/char/10063-2.cc: Likewise.

From-SVN: r75209
2003-12-29 19:26:16 +00:00
Benjamin Kosnik 8602555360 re PR libstdc++/13296 (unnecessary libunwind support in libstdc++-v3)
2003-12-09  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/13296
	* acinclude.m4 (GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS): Remove.
	* aclocal.m4: Regenerate.
	* configure.ac: Remove call to GLIBCXX_ENABLE_LIBUNWIND_EXCEPTIONS.
	* conigure: Regenerate.
	* src/Makefile.am (libstdc___la_LDFLAGS): Remove LIBUNWIND_FLAGS.
	* src/Makefile.in: Regenerate.
	* docs/html/17_intro/configury.html: Modify.

From-SVN: r74479
2003-12-10 00:05:36 +00:00
Benjamin Kosnik 82fa4538b5 re PR libstdc++/13284 (126 g++ failures due to lrand48 not defined)
2003-12-04  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/13284
	* include/bits/stl_algo.h (__random_number): Remove.
	(random_shuffle): Use rand, as permitted by DR 395.
	* include/ext/algorithm: Same.
	* linkage.m4 (GLIBCXX_CHECK_STDLIB_SUPPORT): Remove lrand48.
	* acconfig.h: Same.
	* crossconfig.m4: Remove HAVE_DRAND48, HAVE_LRAND48.
	* config.h.in: Regenerated.
	* configure: Same.
	* aclocal.m4: Same.

From-SVN: r74288
2003-12-04 19:37:21 +00:00
Jonathan Wakely 3ab3dca624 vec.cc: Conform to C++STYLE.
2003-11-07  Jonathan Wakely  <redi@gcc.gnu.org>

	* libsupc++/vec.cc: Conform to C++STYLE.

From-SVN: r73350
2003-11-08 00:36:13 +00:00
Jeffrey D. Oldham d30b600a6e vec.cc (__cxa_vec_delete2): If given a NULL pointer, immediately return.
2003-11-04  Jeffrey D. Oldham  <oldham@codesourcery.com>

	* libsupc++/vec.cc (__cxa_vec_delete2): If given a NULL pointer,
	immediately return.  This reflects a C++ ABI change 2003 Nov 03.
	(__cxa_vec_delete3): Likewise.

From-SVN: r73263
2003-11-05 04:37:03 +00:00
Harald Boehme cafc73370e re PR libstdc++/12451 (missing(late) class forward declaration in cxxabi.h)
2003-10-02  Harald Boehme  <boehme@informatik.hu-berlin.de>

	PR libstdc++/12451
	* libsupc++/cxxabi.h: Move forward declaration of __class_type_info.

From-SVN: r72059
2003-10-03 00:36:45 +00:00
Jeffrey D. Oldham 520abf6930 vec.cc (__cxa_vec_new2): If the allocator returns NULL, return NULL.
2003-09-10  Jeffrey D. Oldham  <oldham@codesourcery.com>

	* libsupc++/vec.cc (__cxa_vec_new2): If the allocator returns
	NULL, return NULL.  This reflects a C++ ABI change 2003 Sep 05.
	(__cxa_vec_new3): Likewise.

From-SVN: r71273
2003-09-10 15:41:48 +00:00
Phil Edwards 3660e02f0d acinclude.m4 (GLIBCXX_ENABLE_HOSTED): #define _GLIBCXX_HOSTED appropriately.
2003-09-02  Phil Edwards  <phil@codesourcery.com>

	* acinclude.m4 (GLIBCXX_ENABLE_HOSTED):  #define _GLIBCXX_HOSTED
	appropriately.
	* config.h.in:  Add _GLIBCXX_HOSTED.
	* libsupc++/eh_term_handler.cc:  Test it here; initialize
	__terminate_handler to std::abort if freestanding.
	* aclocal.m4, configure:  Regenerated.
	* docs/html/configopts.html:  Document --disable-hosted-libstdcxx.

From-SVN: r71001
2003-09-02 18:46:54 +00:00
Phil Edwards ca618b60bf Makefile.am: Remove trailing whitespace.
2003-08-27  Phil Edwards  <pme@gcc.gnu.org>

	* Makefile.am:  Remove trailing whitespace.  Remove needless
	"foo = @foo@" assignments.  Replace direct uses of @foo@ with $(foo).
	* include/Makefile.am:  Likewise.
	* libmath/Makefile.am:  Likewise.
	* libsupc++/Makefile.am:  Likewise.
	* po/Makefile.am:  Likewise.
	* src/Makefile.am:  Likewise.
	* testsuite/Makefile.am:  Likewise.

	* Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in:  Regenerated.

From-SVN: r70865
2003-08-27 21:29:43 +00:00
Phil Edwards 92eabea208 acinclude.m4 (GLIBCXX_CONDITIONAL): New macro.
2003-08-27  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCXX_CONDITIONAL):  New macro.  Wrap
	AM_CONDITIONAL.  Replace all calls to AM_CONDITIONAL with this one.
	(GLIBCXX_ENABLE_HOSTED):  New macro, sets new variable is_hosted,
	used elsewhere in this file.
	(GLIBCXX_EVALUATE_CONDITIONALS):  New macro...
	* configure.ac:  ...called here to expand all conditionals.
	* Makefile.am:  Conditionalize SUBDIRS on GLIBCXX_HOSTED.
	* include/Makefile.am:  Remove redundant gxx_include_dir assignment.
	(install-freestanding-headers):  New target, a subset of
	install-headers.  Conditionalize install-data-local on GLIBCXX_HOSTED.

	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
	src/Makefile.in, testsuite/Makefile.in:  Regenerated.

From-SVN: r70854
2003-08-27 19:06:56 +00:00
Phil Edwards 82ba99d59e Makefile.am: Add comment.
2003-08-26  Phil Edwards  <pme@gcc.gnu.org>

	* Makefile.am:  Add comment.
	* acinclude.m4 (GLIBCXX_CONFIGURE):  Set new glibcxx_SUBDIRS and
	SUBDIRS variables.
	* configure.ac:  Use them both here, instead of hardcoded lists.

	* fragment.am:  Add STAMP varaible.
	* include/Makefile.am:  Cosmetic whitespace cleanup.  Use $(LN_S)
	instead of @LN_S@.
	(stamp-*):  Move file creation rule outside of 'if' branches to
	ensure the stamp-* files are actually updated.  Use $(STAMP).
	* src/Makefile.am:  Remove now-nonexistant variable.
	* libsupc++/Makefile.am:  Likewise.  Snap the assignment chain
	for -prefer-pic.
	* po/Makefile.am:  Include same fragment as all the others.

	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in:  Regenerated.

From-SVN: r70836
2003-08-27 00:38:28 +00:00
Phil Edwards 0df3f383ef acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Remove LIBMATH_INCLUDES and LIBSUPCXX_INCLUDES.
2003-08-17  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCXX_EXPORT_INCLUDES):  Remove LIBMATH_INCLUDES
	and LIBSUPCXX_INCLUDES.  Re-purpose TOPLEVEL_INCLUDES to refer to
	things from the top level.
	* configure.ac (GLIBCXX_IS_NATIVE):  Determine earlier and re-order.
	Comment out the conditionals for CANADIAN and GLIBCXX_BUILD_LIBMATH
	(currently unused).  Strip the fake-VPATH shell fragment from
	automake-generated rules, if present.
	* linkage.m4:  Add comment.

	* fragment.am:  New file, containing factored-out common settings.
	(AM_CPPFLAGS):  Absorb the deprecated INCLUDES variable contents.
	* Makefile.am:  Include fragment.am.  Remove common variables.
	* include/Makefile.am:  Likewise.
	* libmath/Makefile.am:  Likewise.
	* libsupc++/Makefile.am:  Likewise.
	* po/Makefile.am:  Likewise.  Print rules during check.
	* src/Makefile.am:  Likewise.
	* testsuite/Makefile.am:  Likewise.

	* aclocal.m4, configure, Makefile.in, include/Makefile.in,
	libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
	src/Makefile.in, testsuite/Makefile.in:  Regenerate.

From-SVN: r70522
2003-08-17 20:23:12 +00:00
Phil Edwards 8b171e5587 configure.in: Rename...
2003-08-05  Phil Edwards  <pme@gcc.gnu.org>

	* configure.in:  Rename...
	* configure.ac:  ...to this.
	* docs/html/17_intro/porting.texi:  Update name.

	* docs/html/17_intro/porting.html:  Regenerate.
	* config.h.in, Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in:  Regenerate (picks up new dependancy).

From-SVN: r70194
2003-08-05 23:32:23 +00:00
Phil Edwards ff66d28f7c Convert to new autotools.
2003-08-04  Phil Edwards  <pme@gcc.gnu.org>

	Convert to new autotools.
	* acconfig.h:  Update with correct names.
	* configure.host (ATOMICITYH):  Rename to atomicity_include_dir.
	(qnx6.[12]*):  'q' comes before 's', not after 'w'.
	* configure.in:  Update.  Split hardcoded cross-configury settings
	out to...
	* crossconfig.m4:  ...here.  New file.  Contents untouched.
	* acinclude.m4:  Reorganize and rewrite as needed.  Split large
	chunks out to...
	* linkage.m4:  ...here.  New file.  Math and stdlib linkage tests.
	Contents untouched.
	* scripts/testsuite_flags.in:  Update.

	* Makefile.am:  Remove unneeded AUTOMAKE_OPTIONS settings and other
	variables (already generated by automake).
	* include/Makefile.am:  Ditto.
	* libmath/Makefile.am:  Ditto.
	* libsupc++/Makefile.am:  Ditto.
	* po/Makefile.am:  Ditto.
	* src/Makefile.am:  Ditto.

	* aclocal.m4:  Regenerate using new versions.
	* config.h.in:  Ditto.
	* configure:  Ditto.
	* Makefile.in:  Ditto.
	* include/Makefile.in:  Ditto.
	* libmath/Makefile.in:  Ditto.
	* libsupc++/Makefile.in:  Ditto.
	* po/Makefile.in:  Ditto.
	* src/Makefile.in:  Ditto.
	* testsuite/Makefile.in:  Ditto.

From-SVN: r70167
2003-08-05 02:00:18 +00:00
Benjamin Kosnik 3d7c150e3f Move from CPP to CXX.
2003-07-04  Benjamin Kosnik  <bkoz@redhat.com>

	Move from CPP to CXX.
	* include/bits/c++config: Move to GLIBCXX from GLIBCPP.
	* testsuite/Makefile.am: Same.
	* testsuite/Makefile.in: Regenerate.
	* po/Makefile.am: Same.
	* po/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Same.
	* libsupc++/Makefile.in: Regenerate.
	* libmath/Makefile.am: Same.
	* libmath/Makefile.in: Regenerate.
	* include/Makefile.am: Same.
	* include/Makefile.in: Regenerate.
	* src/Makefile.am: Same.
	* src/Makefile.in: Regenerate.
	* acconfig.h: Same.
	* configure.host: Same.
	* configure.in: Same.
	* configure: Regenerate.
	* acinclude.m4: Same.
	* aclocal.m4: Same.
	* src: Change all files in this directory.
	* testsuite: Same.
	* include: Same, standardize include guards.
	* config: Same.
	* libsupc++: Same.

From-SVN: r68958
2003-07-05 04:05:45 +00:00
Benjamin Kosnik 44f0760eae acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
2003-06-30  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_PCH): Add bits for --enable-pch.
	* aclocal.m4: Regenerate.
	* configure.in (GLIBCPP_CHECK_PCH): Move, change to
	GLIBCPP_ENABLE_PCH, default to yes.
	* configure: Regenerate.
	* docs/html/configopts.html: Add --enable-pch.

From-SVN: r68715
2003-06-30 17:40:13 +00:00
Benjamin Kosnik 58ac1d7f0e acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
2003-06-11  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_ENABLE_CSTDIO): Simplify.
	* aclocal.m4: Regenerate.
	* Makefile.am (SUBDIRS): Remove libio.
	* Makefile.in: Regenerate.
	* configure.in: Same.
	* configure: Regenerate.
	* config/io/basic_file_libio.cc: Remove.
	* config/io/basic_file_libio.h: Remove.
	* config/io/c_io_libio_codecvt.c: Remove.
	* config/io/c_io_libio.h: Remove.
	* libio/*: Remove.
	* src/Makefile.am: Same.
	* src/Makefile.in: Regenerate.
	* docs/html/configopts.html: Edits.
	* docs/html/explanations.html: Edits.

From-SVN: r67813
2003-06-12 03:24:16 +00:00
Steve Ellcey ed0d100f7c os_defines.h: Define _LIBUNWIND_STD_ABI if we are on IA64 HP-UX.
* config/os/hpux/os_defines.h: Define _LIBUNWIND_STD_ABI if we are
	on IA64 HP-UX.
	* libsupc++/eh_throw.cc: Don't call _Unwind_Resume_or_Rethrow if
	_LIBUNWIND_STD_ABI is set.

From-SVN: r67193
2003-05-27 21:45:48 +00:00
Nathanael Nerode cbecceb923 Makefile.am, [...]: Replace "GNU CC" with "GCC".
2003-05-24  Nathanael Nerode  <neroden@gcc.gnu.org>

	* libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc,
	libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc,
	libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc,
	libsupc++/eh_catch.cc, libsupc++/eh_exception.cc,
	libsupc++/eh_globals.cc, libsupc++/eh_personality.cc,
	libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc,
	libsupc++/eh_throw.cc, libsupc++/eh_type.cc,
	libsupc++/eh_unex_handler.cc, libsupc++/exception,
	libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc,
	libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc,
	libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc,
	libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc:
	Replace "GNU CC" with "GCC".

From-SVN: r67155
2003-05-24 16:22:03 +00:00
Richard Henderson a944ceb94a except.c: Revert 04-01 and 04-02 forced-unwind changes.
gcc/
        * except.c: Revert 04-01 and 04-02 forced-unwind changes.
        * flags.h, toplev.c, doc/invoke.texi: Likewise.

        * unwind-dw2.c (_Unwind_GetCFA): Fix ptr->int conversion warning.
        * unwind.inc (_Unwind_DeleteException): Check for null
        exception_cleanup.

        * unwind-sjlj.c (_Unwind_SjLj_Resume_or_Rethrow): New.
        * unwind.inc (_Unwind_Resume_or_Rethrow): New.
        * unwind.h: Declare them.
        * libgcc-std.ver (GCC_3.3): Export them.

gcc/cp/
        * cfns.gperf: Comment out POSIX thread cancellation points,
        plus abort and raise.
        * cfns.h: Regenerate.

gcc/testsuite/
        * g++.dg/eh/forced1.C: Expect catch-all handlers to run.
        Verify exception_cleanup not called for rethrows.
        * g++.dg/eh/forced2.C: Test that exception_cleanup is called
        when exiting catch block without rethrowing.
        * g++.dg/eh/forced3.C: New.
        * g++.dg/eh/forced4.C: New.

libstdc++-v3/
        * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions.
        (__cxa_end_catch): Likewise.
        * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise.  Use
        _Unwind_Resume_or_Rethrow.
        * libsupc++/eh_personality.cc (empty_exception_spec): New.
        (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all
        for _UA_FORCE_UNWIND.  Honor empty filter spec for foreign
        exceptions.  Don't push terminate/unexpected to cxa functions.
        (__cxa_call_unexpected): Remove foreign exception fixmes.

From-SVN: r66583
2003-05-07 15:11:38 -07:00
Danny Smith c31da8a535 Makefile.am (C_COMPILE): Remove.
* libsupc++/Makefile.am (C_COMPILE): Remove.
	(LTCOMPILE): Likewise.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r64477
2003-03-17 11:02:39 +00:00
Benjamin Kosnik 628c731a48 stdc++.h: New.
2003-03-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/stdc++.h: New.
	* libsupc++/exception_defines.h (__EXCEPTION_DEFINES_H): Add guard.
	* include/Makefile.am (stamp-std-precompile): Generate stdc++.h.gch
        * include/Makefile.in: Regenerate.
        * testsuite_flags.in (--build-cxx): Add, but don't use PCHFLAGS.
	(--cxxflags): Put -g -O2 here.
	* testsuite/libstdc++-v3.dg/dg.exp: Remove -g -O2 here.

From-SVN: r64374
2003-03-14 22:16:06 +00:00
Matthias Klose 3bf74da29f Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
2003-03-07  Matthias Klose  <doko@debian.org>

        * Makefile.am (AM_MAKEFLAGS): Also pass gxx_include_dir.
        FLAGS_TO_PASS: Set to AM_MAKEFLAGS
        * Makefile.in: Regenerate.
        * libsupc++/Makefile.am: Express glibcppinstalldir in terms
        of gxx_include_dir.
        AM_MAKEFLAGS: Pass gxx_include_dir.
        * libsupc++/Makefile.in: Regenerate.

From-SVN: r63939
2003-03-07 08:01:24 +00:00
Benjamin Kosnik 83e924e101 demangle.h: Move to..
2003-03-05  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/demangle.h: Move to..
	* include/bits/demangle.h: ...here.
	* src/demangle.cc: Adjust include.
	* include/Makefile.am (bits_headers): Add.
	* include/Makefile.in: Regenerate.

From-SVN: r63851
2003-03-05 17:57:52 +00:00
Benjamin Kosnik 4ffbd0777c [multiple changes]
2003-02-27  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (sources): Add demangle.cc.
	(demangle.o): Add.
	(demangle.lo): Add.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Remove old __cxa_demangle bits.
	* libsupc++/Makefile.in: Regenerate.

	* testsuite/testsuite_hooks.h
	(__gnu_cxx_test::verify_demangle): New.
	* testsuite/testsuite_hooks.cc: Define.

2003-02-27  Carlo Wood  <carlo@alinoe.com>

	* src/demangle.cc: New.
	* libsupc++/demangle.h: New.

2003-02-27  Benjamin Kosnik  <bkoz@redhat.com>
            Carlo Wood  <carlo@alinoe.com>

	* testsuite/demangle/abi_examples/01.cc: New.
	* testsuite/demangle/abi_examples/02.cc: New.
	* testsuite/demangle/abi_examples/03.cc: New.
	* testsuite/demangle/abi_examples/04.cc: New.
	* testsuite/demangle/abi_examples/05.cc: New.
	* testsuite/demangle/abi_examples/06.cc: New.
	* testsuite/demangle/abi_examples/07.cc: New.
	* testsuite/demangle/abi_examples/08.cc: New.
	* testsuite/demangle/abi_examples/09.cc: New.
	* testsuite/demangle/abi_examples/10.cc: New.
	* testsuite/demangle/abi_examples/11.cc: New.
	* testsuite/demangle/abi_examples/12.cc: New.
	* testsuite/demangle/abi_examples/13.cc: New.
	* testsuite/demangle/abi_examples/14.cc: New.
	* testsuite/demangle/abi_examples/15.cc: New.
	* testsuite/demangle/abi_examples/16.cc: New.
	* testsuite/demangle/abi_examples/17.cc: New.
	* testsuite/demangle/abi_examples/18.cc: New.
	* testsuite/demangle/abi_examples/19.cc: New.
	* testsuite/demangle/abi_examples/20.cc: New.
	* testsuite/demangle/abi_examples/21.cc: New.
	* testsuite/demangle/abi_examples/22.cc: New.
	* testsuite/demangle/abi_examples/23.cc: New.
	* testsuite/demangle/abi_examples/24.cc: New.
	* testsuite/demangle/abi_examples/25.cc: New.
	* testsuite/demangle/abi_examples/26.cc: New.
	* testsuite/demangle/abi_text/01.cc: New.
	* testsuite/demangle/abi_text/02.cc: New.
	* testsuite/demangle/abi_text/03.cc: New.
	* testsuite/demangle/abi_text/04.cc: New.
	* testsuite/demangle/abi_text/05.cc: New.
	* testsuite/demangle/abi_text/06.cc: New.
	* testsuite/demangle/abi_text/07.cc: New.
	* testsuite/demangle/abi_text/08.cc: New.
	* testsuite/demangle/abi_text/09.cc: New.
	* testsuite/demangle/abi_text/10.cc: New.
	* testsuite/demangle/abi_text/11.cc: New.
	* testsuite/demangle/abi_text/12.cc: New.
	* testsuite/demangle/abi_text/13.cc: New.
	* testsuite/demangle/abi_text/14.cc: New.
	* testsuite/demangle/regression/3111-1.cc: New.
	* testsuite/demangle/regression/3111-2.cc: New.
	* testsuite/demangle/regression/7986-01.cc: New.
	* testsuite/demangle/regression/7986-02.cc: New.
	* testsuite/demangle/regression/7986-03.cc: New.
	* testsuite/demangle/regression/7986-04.cc: New.
	* testsuite/demangle/regression/7986-05.cc: New.
	* testsuite/demangle/regression/7986-06.cc: New.
	* testsuite/demangle/regression/7986-07.cc: New.
	* testsuite/demangle/regression/7986-08.cc: New.
	* testsuite/demangle/regression/7986-09.cc: New.
	* testsuite/demangle/regression/7986-10.cc: New.
	* testsuite/demangle/regression/7986-11.cc: New.
	* testsuite/demangle/regression/7986-12.cc: New.
	* testsuite/demangle/regression/7986.cc: New.
	* testsuite/demangle/regression/8897.cc: New.
	* testsuite/demangle/regression/cw-01.cc: New.
	* testsuite/demangle/regression/cw-02.cc: New.
	* testsuite/demangle/regression/cw-03.cc: New.
	* testsuite/demangle/regression/cw-04.cc: New.
	* testsuite/demangle/regression/cw-05.cc: New.
	* testsuite/demangle/regression/cw-06.cc: New.
	* testsuite/demangle/regression/cw-07.cc: New.
	* testsuite/demangle/regression/cw-08.cc: New.
	* testsuite/demangle/regression/cw-09.cc: New.
	* testsuite/demangle/regression/cw-10.cc: New.
	* testsuite/demangle/regression/cw-11.cc: New.
	* testsuite/demangle/regression/cw-12.cc: New.
	* testsuite/demangle/regression/cw-13.cc: New.
	* testsuite/demangle/regression/cw-14.cc: New.
	* testsuite/demangle/regression/old.cc: New.

From-SVN: r63513
2003-02-27 16:57:26 +00:00
Benjamin Kosnik ab77073fd7 Makefile.am (stamp-std-precompile): Add rule.
2003-02-11  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (stamp-std-precompile): Add rule.
	* include/Makefile.in: Regenerated.

From-SVN: r62752
2003-02-12 00:54:39 +00:00
Peter Soetens 6eeabb09a6 basic_file_libio.h: Fixups.
2003-02-06  Peter Soetens  <peter.soetens@mech.kuleuven.ac.be>

	* config/io/basic_file_libio.h: Fixups.
	* config/io/c_io_libio.h: Same.
	* libio/Makefile.am: Same.
	* libio/Makefile.in: Regenerated.

From-SVN: r62475
2003-02-06 08:10:47 +00:00
Nathan Sidwell 483a570922 re PR c++/9433 (SegFault in dynamic_cast)
libstdc++-v3:
        PR c++/9433
        * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope
        with bases which are very ambiguous.
gcc/testsuite:
        * g++.dg/abi/dcast1.C: New test.

From-SVN: r61973
2003-01-28 15:26:53 +00:00
Danny Smith 697044e099 Makefile.am (CONFIG_CXXFLAGS): Reverse order of @EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
* src/Makefile.am (CONFIG_CXXFLAGS): Reverse order of
	@EXTRA_CXX_FLAGS@ @SECTION_FLAGS@.
	* libsupc++/Makefile.am (CONFIG_CXXFLAGS): Likewise.
	* src/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r61915
2003-01-28 01:17:36 +00:00
Jeffrey D. Oldham a7189b490f Further conform g++'s __vmi_class_type_info to the C++ ABI specification.
2003-01-14  Jeffrey D. Oldham  <oldham@codesourcery.com>

	Further conform g++'s __vmi_class_type_info to the C++ ABI
	specification.
	* gcc/cp/rtti.c (dfs_class_hint_mark): Do not set hints not
	specified by the specification.
	(class_hint_flags): Likewise.
	* gcc/testsuite/g++.old-deja/g++.abi/vmihint.C (main): Revise
	expected flags per the specification.
	* libstdc++-v3/libsupc++/cxxabi.h
	(__vmi_class_type_info::__flags_masks): Remove enumerations not
	required by the specification.

From-SVN: r61304
2003-01-14 21:36:20 +00:00
Benjamin Kosnik 1c26d8fd84 locale_facets.h (messages): Move ctor, dtor definitions to..
2003-01-06  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/locale_facets.h (messages): Move ctor, dtor
	definitions to..
	(__timepunct): Same.
	* config/locale/gnu/messages_members.h (messages): Add dtor, ctor
	definitions. Conditionalize for GNU systems.
	* config/locale/generic/messages_members.h (messages): Add dtor, ctor
	definitions.
	* config/locale/gnu/time_members.h (messages): New. Add dtor, ctor
	definitions. Conditionalize for GNU systems.
	* config/locale/generic/time_members.h (messages): New. Add dtor, ctor
	definitions.
	* include/bits/localefwd.h (locale::facet::_S_c_name): Add.
	* src/locale.cc: Define.
	* src/localename.cc (locale::_Impl::_Impl(facet**, size_t, bool):
	Use it.
	* config/locale/gnu/time_members.h: Use it.
	* config/locale/gnu/messages_members.h: Use it.
	* config/linker-map.gnu: Add locale::facets details.
	* include/Makefile.am (target_headers_extra): Add time_members.h.
	* include/Makefile.in: Regenerate.
	* acinclude.m4: Export CTIME_H.
	* aclocal.m4: Regenerate.
	* configure: Regnerate.

From-SVN: r60952
2003-01-06 21:23:00 +00:00
Mark Mitchell 43be7fe7d7 * config/locale/gnu/ctype_members.cc
(ctype<wchar_t>::_M_convert_to_wmask): Remove stray semicolon.
	* config/locale/gnu/monetary_members.cc
	(moneypunct<wchar_t, true>::_M_initialize_moneypunct): Avoid
	defining classes in static_cast.
	(moneypunct<wchar_t, false>::_M_initialize_moneypunct): Likewise.
	* config/locale/gnu/numeric_members.cc
	(numpunct<wchar_t, false>::_M_initialize_numpunct): Likewise.
	* include/bits/stl_deque.h (operator-): Insert typename where
	required.
	* include/bits/stl_multiset.h (multiset): Remove stray semicolon.
	* include/bits/stl_set.h (set): Likewise.
	* include/bits/valarray_meta.h (bits/slice_array.h): Include it.
	* include/std/std_fstream.h (basic_fstream::open): Use this-> to
	avoid Koenig lookup.
	(basic_fstream::close): Likewise.
	* libsupc++/new (operator delete): Remove stray semicolon.
	* libsupc++/new (operator delete[]): Likewise.
	* libsupc++/tinfo.cc: Likewise.
	* src/stdexcept.c (logic_error::~logic_error): Likewise.
	(runtime_error::~runtime_error): Likewise.

From-SVN: r60547
2002-12-27 23:03:03 +00:00
Phil Edwards bad38757c3 exception: Add comment (mistakenly skipped).
2002-12-26  Phil Edwards  <pme@gcc.gnu.org>

	* libsupc++/exception:  Add comment (mistakenly skipped).

From-SVN: r60534
2002-12-27 00:23:20 +00:00
Phil Edwards 9795acc64a vterminate.cc (writestr): Use __builtin_strlen.
2002-12-26  Phil Edwards  <pme@gcc.gnu.org>

	* libsupc++/vterminate.cc (writestr):  Use __builtin_strlen.

From-SVN: r60531
2002-12-26 22:26:29 +00:00
Phil Edwards 3642a94924 eh_term_handler.cc: Add comment about embedded systems.
2002-12-26  Phil Edwards  <pme@gcc.gnu.org>

	* libsupc++/eh_term_handler.cc:  Add comment about embedded systems.
	* docs/html/debug.html:  Cosmetic and HTML changes.  Point to
	verb-term notes.
	* docs/html/documentation.html:  Link to the FAQ.
	* docs/html/17_intro/howto.html:  Mention use of isatty(3).
	* docs/html/19_diagnostics/howto.html:  Update verb-term description.

From-SVN: r60528
2002-12-26 21:14:19 +00:00
Phil Edwards fb7054160f vterminate.cc: Move to...
2002-12-25  Phil Edwards  <pme@gcc.gnu.org>

	* src/vterminate.cc:  Move to...
	* libsupc++/vterminate.cc:  ...here.  New file.  Replace fprintf with
	writestr macro.  Slight reword to explanatory text.
	* libsupc++/eh_terminate.cc (__cxxabiv1::__terminate_handler,
	__cxxabiv1::__unexpected_handler):  Break definitions out to...
	* libsupc++/eh_unex_handler.cc:  ...here (new file), and...
	* libsupc++/eh_term_handler.cc:  ...here (new file).  Initialize
	__terminate_handler with __gnu_cxx::__verbose_terminate_handler
	instead of std::abort.

	* libsupc++/Makefile.am (sources), src/Makefile.am (sources):  Update.
	* libsupc++/Makefile.in, src/Makefile.in:  Regenerate.

From-SVN: r60505
2002-12-26 06:10:35 +00:00
Benjamin Kosnik 6aa43d99a3 configure.in (GLIBCPP_ENABLE_DEBUG): Default to none.
2002-12-16  Benjamin Kosnik  <bkoz@redhat.com>

        * configure.in (GLIBCPP_ENABLE_DEBUG): Default to none.
	Call GLIBCPP_ENABLE_DEBUG_FLAGS.
        * acinclude.m4 (GLIBCPP_ENABLE_DEBUG): GLIBCPP_BUILD_DEBUG, new
        conditional if --enable-debug is yes. Rework.
	(GLIBCPP_ENABLE_DEBUG_FLAGS): New.
        * aclocal.m4: Regenerate.
	* libio/Makefile.am: Remove DEBUG_FLAGS.
	* libio/Makefile.in: Regenerate.
	* libsupc++/Makefile.am: Remove DEBUG_FLAGS.
	* libsupc++/Makefile.in: Regenerate.
	* docs/html/configopts.html: Add docs for --enable-debug,
	--enable-debug-flags.

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

	Correct dependency tracking, build warts.
	* configure.in: Correct repeated AC_OUTPUT thrashing by
	config-ml.in
	* configure: Regenerate.
	* include/Makefile.am (stamp-target): Stamp in top_builddir.
	* include/Makefile.in: Regenerate.
	* src/Makefile.am (codecvt_members.cc): New rule.
	(collate_members.cc): Same.
	(ctype_members.cc): Same.
	(messages_members.cc): Same.
	(monetary_members.cc): Same.
	(numeric_members.cc): Same.
	(time_members.cc): Same.
	(c++locale.cc): Same.
	(basic_file.cc): Same.
	* src/Makefile.in: Regenerate.
	* acinclude.m4 (CCTYPE_CHAR_CC): Remove.
	(CCCODECVT_CC): Don't link, AC_SUBST.
	(CCOLLATE_CC): Same.
	(CCTYPE_CC): Same.
	(CMESSAGES_CC): Same.
	(CMONEY_CC): Same.
	(CNUMERIC_CC): Same.
	(CTIME_CC): Same.
	(CLOCALE_CC): Same.
	* aclocal.m4: Regenerate.

	* src/Makefile.am (libstdc___la_LIBADD): Use top_builddir
	for convenience libraries.
	(version_arg): Rename linker.map to libstdc++.ver.
	(libstdc___la_DEPENDENCIES): Remove linker.map, add
	libstdc++-symbol.ver as a dependency.
	(libstdc++-symbol.ver): Add rule.
	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Change LINKER_MAP to
	SYMVER_MAP. Don't link, AC_SUBST.

	* include/Makefile.am (target_headers_noinst): New.
	(stamp-target): Add CLOCALE_INTERNAL_H.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't link
	CLOCALE_INTERNAL_H, AC_SUBST.
	* config/locale/gnu/c_locale.cc: Modify c++locale_internal.h
	include.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/gnu/numeric_members.cc: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/messages_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/codecvt_members.cc: Same.
	* config/locale/generic/codecvt_members.cc: Remove.

From-SVN: r60177
2002-12-16 19:02:01 +00:00
Zack Weinberg 4977bab6ed Merge basic-improvements-branch to trunk
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Mark Mitchell 68e25f8806 cxxabi.h (__cxa_bad_cast): Declare it.
* libsupc++/cxxabi.h (__cxa_bad_cast): Declare it.
	(__cxa_bad_typeid): Likewise.
	(__cxa_atexit): Likewise.
	(__cxa_finalize): Likewise.

From-SVN: r60001
2002-12-10 17:09:05 +00:00
Mark Mitchell 074e73c4e9 * libsupc++/cxxabi.h (__cxa_pure_virtual): Declare it.
From-SVN: r59965
2002-12-09 19:31:33 +00:00
Mark Mitchell c4f6640537 Makefile.am (sources): Add guard.cc.
* libsupc++/Makefile.am (sources): Add guard.cc.
	* libsupc++/Makefile.in: Regenerated.
	* libsupc++/cxxabi.h (__cxa_guard_acquire): New function.
	(__cxa_guard_release): Likewise.
	(__cxa_guard_abort): Likewise.
	* libsupc++/guard.cc: New file.

From-SVN: r59475
2002-11-25 23:17:31 +00:00
Benjamin Kosnik ca017eef3a Makefile.am (target_headers): Remove cpu_limits.h.
2002-09-25  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (target_headers): Remove cpu_limits.h.
	* include/Makefile.in: Regenerate.
	* configure.in (CPU_LIMITS_INC_SRCDIR): Remove
	* configure: Regenerate.
	* configure.target (CPULIMITS): Remove.

	* include/std/std_limits.h: Remove cpu_limits.h include.

	* config/os/solaris/solaris2.7/os_defines.h (__glibcpp_long_bits):
	Remove.
	* config/os/irix/irix6.5/os_defines.h
	(__glibcpp_long_double_bits): Remove.
	(__glibcpp_wchar_t_bits): Remove.
	(__glibcpp_long_bits): Remove.
	* config/os/irix/irix5.2/os_defines.h
	(__glibcpp_long_double_bits): Remove.
	(__glibcpp_long_bits): Remove.
	* config/os/hpux/os_defines.h (__glibcpp_wchar_t_is_signed): Remove.
	* config/os/bsd/freebsd/os_defines.h:
	(__glibcpp_long_double_bits): Remove.
	* config/os/aix/os_defines.h (__glibcpp_wchar_t_bits): Remove.
	(__glibcpp_wchar_t_is_signed): Remove.
	(__glibcpp_long_bits): Remove.
	* config/os/gnu-linux/os_defines.h (__glibcpp_long_bits): Remove.
	(__glibcpp_long_double_bits): Remove.

	* config/os/osf/osf5.0/cpu_limits.h: Remove.
	* config/cpu/alpha/cpu_limits.h: Remove.
	* config/cpu/arm/cpu_limits.h: Remove.
	* config/cpu/cris/cpu_limits.h: Remove.
	* config/cpu/generic/cpu_limits.h: Remove.
	* config/cpu/generic/limits.h: Remove.
	* config/cpu/ia64/cpu_limits.h: Remove.
	* config/cpu/m68k/cpu_limits.h: Remove.
	* config/cpu/mmix/cpu_limits.h: Remove.
	* config/cpu/powerpc/cpu_limits.h: Remove.
	* config/cpu/S390/cpu_limits.h: Remove.

From-SVN: r57524
2002-09-26 05:25:14 +00:00
Benjamin Kosnik 747d096709 Makefile.am (check-abi): New rule.
2002-08-22  Benjamin Kosnik  <bkoz@redhat.com>
	    Phil Edwards  <pme@gcc.gnu.org>
	    Ulrich Drepper  <drepper@redhat.com>

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

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

From-SVN: r56515
2002-08-22 20:06:01 +00:00
Steve Ellcey cb94b1559a unwind-cxx.h (__cxa_exception): Change catchTemp type from void* to _Unwind_Ptr.
* libstdc++-v3/libsupc++/unwind-cxx.h (__cxa_exception):
	Change catchTemp type from void* to _Unwind_Ptr.
	* libstdc++-v3/libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
	Do not cast landing_pad or base_of_encoded_value to (void *).
	* libstdc++-v3/libsupc++/eh_throw.cc (__gxx_exception_cleanup):
	Accept _URC_NO_REASON as a valid reason code.

From-SVN: r56352
2002-08-15 18:05:41 +00:00
John David Anglin a98b7b289a Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
* libsupc++/Makefile.am (LTCOMPILE): Add LIBSUPCXX_PICFLAGS.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r56099
2002-08-07 15:56:11 +00:00
Neil Booth db2350e020 Makefile.am (LT_COMPILE): Remove C++ flags.
2002-08-01  Neil Booth  <neil@daikokuya.co.uk>

	* libsupc++/Makefile.am (LT_COMPILE): Remove C++ flags.
	* libsupc++/Makefile.in: Regenerate.

From-SVN: r55954
2002-08-01 22:16:46 +00:00
Benjamin Kosnik 7fed1a0444 re PR libstdc++/7442 (cxxabi.h does not match the C++ ABI)
2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>
            Mark Mitchell  <mark@codesourcery.com>

	PR libstdc++/7442
	* libsupc++/cxxabi.h (class __base_class_type_info::hwm_bit):
	Change to __hwm_bit.
	(__class_type_info): And here.

Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r55911
2002-07-31 21:50:33 +00:00
Benjamin Kosnik 3bba6ebbe4 re PR libstdc++/7442 (cxxabi.h does not match the C++ ABI)
2002-07-31  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/7442
	* libsupc++/cxxabi.h
	(__base_class_info): Change to __base_class_type_info. 2.9.5p6c
	(__base_class_info::__base): Change to __base_type. 2.9.5p6c
	(__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c
	(__vmi_class_type_info::__base_info): Don't make const, of type
	__base_class_type_info, as per 2.9.5p6c
	(__pbase_type_info::__qualifier_flags): Change to __flags, as per
	2.9.5p7.
	(__pbase_type_info::__qualifier_masks): Change to __masks, as per
	2.9.5p7.
	(__pointer_to_member_type_info::__context_class): Change member to
	__context, as per 2.9.5p9.
	* libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to
	__context.
	* libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to
	__flags.
	* libsupc++/tinfo.cc (__do_find_public_src): Change __base to
	__base_type.
	* libsupc++/tinfo.cc (__do_dyncast): Same.
	* libsupc++/tinfo.cc (__do_upcast): Same.

From-SVN: r55910
2002-07-31 21:24:18 +00:00
Phil Edwards bacb811db6 new (placement delete): Remove unused paramater names.
2002-07-26  Phil Edwards  <pme@gcc.gnu.org>

	* libsupc++/new (placement delete):  Remove unused paramater names.

From-SVN: r55782
2002-07-26 20:12:00 +00:00
Benjamin Kosnik 51937d2c98 re PR libstdc++/7286 (placement operator delete issue)
2002-07-24  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/7286
	* libsupc++/new: Add placement delete.
	* testsuite/18_support/new_delete_placement.cc: New.

	* docs/html/abi.txt: Fix typos.

From-SVN: r55718
2002-07-24 19:49:21 +00:00
Phil Edwards aa2d5ba2c7 abi.txt: New file.
2002-07-20  Phil Edwards  <pme@gcc.gnu.org>

	* docs/html/abi.txt:  New file.
	* docs/html/23_containers/howto.html:  Tweak vector-overhead text.
	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
	Import from upstream, R22.

	* include/bits/char_traits.h, include/bits/stl_iterator.h,
	include/bits/stl_iterator_base_types.h, libsupc++/exception,
	libsupc++/new, libsupc++/typeinfo:  Use @brief markup.

	* include/bits/deque.tcc, include/bits/stl_alloc.h,
	include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
	of deprecated functions until 3.4.  (Same timeframe, different text.)
	* include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
	the other sequence classes received.

From-SVN: r55602
2002-07-20 06:26:27 +00:00
Andreas Schwab 984812cd39 new (set_new_handler): Declare to not throw any exceptions.
* libsupc++/new (set_new_handler): Declare to not throw any
	exceptions.
	* libsupc++/new_handler.cc (set_new_handler): Likewise.

From-SVN: r55480
2002-07-16 08:28:40 +00:00
Benjamin Kosnik 41970073a9 configure.in (INTERFACE): Remove.
2002-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (INTERFACE): Remove.
	(release_VERSION): Remove.
	* acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Change include placement.
	(libstdcxx_interface): Change. Use gcc methods to determine version.
	* configure: Regenerate.
	* aclocal.m4: Regenerate.

From-SVN: r55028
2002-06-27 10:16:50 +00:00
Jessica Han 0e20c0b56f 2002-06-25 Jessica Han <jessica@cup.hp.com>
* config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING
	* libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when
	_GLIBCPP_VTABLE_PADDING is defined.

From-SVN: r54991
2002-06-25 16:55:47 +00:00
Benjamin Kosnik 5ab23d80ec Makefile.am (libsupc__convenience_la_SOURCES): Add c_sources.
2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/Makefile.am (libsupc__convenience_la_SOURCES): Add
	c_sources.

From-SVN: r54855
2002-06-20 20:25:44 +00:00
Benjamin Kosnik e01c9849c9 Makefile.am: Add rules.
2002-06-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am: Add rules.
	* include/Makefile.in: Regenerate.

	* acinclude.m4: Define GLIBCPP_C_HEADERS_COMPATIBILITY.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* configure.target (c_model, c_compatibility): Add.

	* libsupc++/Makefile.am (c_sources): New.
	(libsupc___la_SOURCES): Add c_sources.
	(LTCOMPILE): Remove INCLUDES.
	(GCC_INCLUDES): New.
	(C_COMPILE): New, like COMPILE but without INCLUDES.
	(cxa_demangle.o): Use C_COMPILE.
	(dyn-string.o): Use C_COMPILE.

	* include/c/std_cstdarg.h: Define __need___va_list.
	* include/c/std_cstddef.h: Define need_size_t, need_ptrdiff_t,
	need_NULL, need_offsetof.

From-SVN: r54849
2002-06-20 19:08:42 +00:00
Benjamin Kosnik 93b855862a std_cwchar.h: Guard.
2002-06-18  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c/std_cwchar.h: Guard. Add mbstate_t bits.
	* include/c/std_cwctype.h: Guard.

	* libsupc++/eh_alloc.cc: Tweak include order.
	* libsupc++/pure.cc: Use cstdio.
	* libsupc++/new_op.cc: Remove malloc forward declaration, as
	cstdlib brings it in. Use std::malloc.

	* src/Makefile.am (sources): Remove cmath.cc.
	* src/Makefile.in: Regenerate.
	* src/cmath.cc: Remove.

From-SVN: r54782
2002-06-19 15:19:53 +00:00
Benjamin Kosnik 248a9163e1 misc-inst.cc: Define unnecessary algorithm instantiations.
c
2002-05-27  Benjamin Kosnik  <bkoz@redhat.com>

	* src/misc-inst.cc: Define unnecessary algorithm
	instantiations. Break apart instantiations into groupings below.
	* src/fstream-inst.cc: New.
	* src/io-inst.cc: New.
	* src/istream-inst.cc: New.
	* src/ostream-inst.cc: New.
	* src/streambuf-inst.cc: New.
	* src/sstream-inst.cc: New.
	* src/Makefile.am (sources): Add files.
	* src/Makefile.in: Regenerate.

	* acinclude.m4: Work around automake 1.4-p5 bug, change
	AM_GNU_GETTEXT in comments to AM-GNU-GETTEXT.

From-SVN: r53930
2002-05-27 14:55:57 +00:00
Kaveh R. Ghazi 7e90efc403 configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
* configure.in (AC_CHECK_HEADERS): Check for string.h & stdlib.h.
	* libsupc++/Makefile.am (LTCOMPILE): Add $(DEFS).

	* Makefile.in, config.h.in, configure: Regenerate.

From-SVN: r53166
2002-05-04 20:20:29 +00:00
Benjamin Kosnik d3a193e36c re PR libstdc++/4164 (33 Memory Leak when using iostream)
2002-04-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/4164
	Valgrind fixes.
	* config/io/basic_file_stdio.cc (__basic_file::~__basic_file):
	Call close.
	(__basic_file::close): Call fflush. Correct return if fclose ok.
	(__basic_file::is_open): Make const.
	Change __c_file_type to __c_file.
	* config/io/basic_file_stdio.h: Change __c_file_type to __c_file.
	(__basic_file::is_open): Make const.
	* config/io/c_io_stdio.h: Change __c_file_type to __c_file.
	* include/std/std_fstream.h (filebuf::_M_allocate_file): Remove.
	(filebuf::_M_unbuf): Add.
	(filebuf::_M_file): Change to non-pointer.
	(filebuf::_M_allocate_pback_buffer): Remove.
	* include/bits/fstream.tcc (filebuf::_M_allocate_file): Remove.
	(filebuf::_M_allocate_internal_buffer): Use _M_unbuf.
	Change initialization list for _M_file change.
	(filebuf::_M_allocate_pback_buffer): Remove.
	Change _M_file usage to reflect non-pointer data member.

	* config/locale/generic/c_locale.cc
	(locale::facet::_S_create_c_locale): Add parameter.
	* config/locale/generic/collate_members.cc: Change
	_M_compare_helper to _M_compare.
	Change _M_transform_helper to _M_transform.
	* config/locale/generic/monetary_members.cc: Changeup data types.
	Add dtors.
	* config/locale/generic/numeric_members.cc: Add dtors.
	* config/locale/generic/time_members.cc: Add dtors.
	* config/locale/gnu/c_locale.cc: Add parameter.
	* config/locale/gnu/collate_members.cc:Change
	_M_compare_helper to _M_compare.
	Change _M_transform_helper to _M_transform.
	* config/locale/gnu/ctype_members.cc: Better error checking.
	* config/os/gnu-linux/bits/ctype_noninline.h: Better error checking.
	* config/locale/gnu/messages_members.cc: Tweak comment.
	* config/locale/gnu/monetary_members.cc: Change data types.
	Add dtors.
	* config/locale/gnu/numeric_members.cc: Add dtors, better error
	checking.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.cc
	(locale::facet::_S_create_c_locale): Add parameter.
	* config/locale/ieee_1003.1-2001/c_locale.h: Correct typedef.
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Remove
	bogus ctor.

	* include/bits/locale_facets.h (moneypunct): Use string literals.
	Don't define dtor.
	(numpunct): Same.
	(__timepunct): Same.
	(locale::_Impl::_M_facets): Change from vector to array.
	(locale::_Impl::_M_names): Change from array of strings to array
	of string literals.
	(locale::facet::_S_create_c_locale): Add parameter.
	(locale::locale::_S_num_facets): Move to...
	(locale::_Impl::_M_facets_size): Here.
	* include/bits/locale_facets.tcc: Fixups for _M_facets, _M_name
	changes.
	* include/bits/localefwd.h: (locale:🆔:_M_id): Add member function.
	(locale::_Impl::_Impl(facet**, size_t, bool)): Add.
	(locale::_Impl::_Impl(string, size_t)): Change to
	(locale::_Impl::_Impl(const char*, size_t)): This.

	* include/bits/streambuf.tcc (streambuf::_S_pback_size): Define.
	* include/std/std_streambuf.h (streambuf::_M_pback_size): Change to
	(streambuf::_S_pback_size): This.

	* src/globals.cc: Add pre-allocations for "C" facets.
	* src/locale-inst.cc: Remove vector instantiations.
	* src/locale.cc: Remove vector include. Fixups for _M_names,
	_M_facets changes.
	* src/localename.cc: Same.

	* include/bits/stl_vector.h: Fix odd formatting.

	* include/bits/basic_string.tcc: Tweak comment.

	* libsupc++/new: Make sure parameters are uglified.
	* libsupc++/typeinfo: Same.

	* testsuite/22_locale/num_get_members_char.cc: Fixup.
	* testsuite/22_locale/num_get_members_wchar_t.cc: Same.
	* testsuite/27_io/filebuf_members.cc: Same.

From-SVN: r52345
2002-04-16 00:45:36 +00:00
Benjamin Kosnik 501e321e0d acinclude: More extensive checks for msgfmt, --enable-nls.
2002-04-01  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/5542
	* acinclude: More extensive checks for msgfmt, --enable-nls.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r51732
2002-04-02 02:41:50 +00:00
Phil Edwards efe44c60eb exception (__verbose_terminate_handler): Point to docs.
2002-04-01  Phil Edwards  <pme@gcc.gnu.org>

	* libsupc++/exception (__verbose_terminate_handler):  Point to docs.
	* docs/doxygen/doxygroups.cc:  Doxygen hooks for abi::__cxa_demangle.
	* docs/html/18_support/howto.html:  Document the demangler.
	* docs/html/17_intro/howto.html:  And link to it.

	* docs/doxygen/mainpage.html:  Describe user-vs-maintainer docs.
	* docs/doxygen/run_doxygen:  Print user-vs-maintainer.

From-SVN: r51730
2002-04-02 02:07:22 +00:00
Phil Edwards 76f6aa8b6c linker-map.gnu: Export __verbose_terminate_handler.
2002-04-01  Phil Edwards  <pme@gcc.gnu.org>

	* config/linker-map.gnu:  Export __verbose_terminate_handler.
	* libsupc++/Makefile.am (sources):  Add cxa_demangle.c, dyn-string.c.
	Make new LTCOMPILE variable, use it in new special build rules.
	* libsupc++/Makefile.in:  Rebuild.
	* src/vterminate.cc (__verbose_terminate_handler):  Enable use of
	runtime __cxa_demangle.

	* docs/html/install.html:  Update prereqs and instructions.
	* docs/html/19_diagnostics/howto.html:  Bring naming for
	verbose_terminate_handler into line with reality.

From-SVN: r51709
2002-04-01 21:56:42 +00:00
Richard Henderson afaef72670 re PR c++/3719 (Unable to retrow exception in unexpected exception handler.)
PR c++/3719
        * libsupc++/eh_personality.cc (__cxa_call_unexpected): Copy handler
        data out of the exception struct before calling unexpectedHandler.

	* g++.dg/eh/unexpected1.C: New.

From-SVN: r51623
2002-03-30 18:56:34 -08:00
Benjamin Kosnik 34ff0b99c1 acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for signbit and __signbit directly.
2002-03-22  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_COMPLEX_MATH_SUPP): Just test for
	signbit and __signbit directly.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* libmath/Makefile.am: Simplify.
	* libmath/Makefile.in: Regenerate.
	* include/c_std/std_cmath.h: Update paths for include of cmath.tcc.

	* include/Makefile.am: Clean up handling of extra "C" header files.
	Add hooks for "C" compatibility headers.
	* include/Makefile.in: Regenerate.

	* include/c/*: Formatting tweaks, cleanups.
	* include/c_std/*: Same.

From-SVN: r51220
2002-03-23 03:19:03 +00:00
Steve Ellcey 263c6fa840 acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if...
2002-03-19  Steve Ellcey  <sje@cup.hp.com>

        * acinclude.m4 (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Define
        GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS to set LIBUNWIND_FLAG if
        --enable-libunwind-exceptions is set.
        * configure.in (GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS): Call new
        macro to check for libunwind.
        * configure: Regenerate.
        * src/Makefile.am (libstdc___la_LDFLAGS): Add
        LIBUNWIND_FLAG to libstdc link line.
        * src/Makefile.in: Regenerate.

From-SVN: r51035
2002-03-19 19:50:30 +00:00
Jason Merrill 6afcef6bd2 re PR c++/4381 (Exceptions virtually inherited from a class cause segmentation fault at run time)
PR c++/4381
        * libsupc++/eh_personality.cc (get_adjusted_ptr): New static fn.
        (check_exception_spec): Call it.  Take the thrown pointer.
        (__cxa_call_unexpected): Pass it.
        (PERSONALITY_FUNCTION): Likewise.  Use get_adjusted_ptr.

From-SVN: r50936
2002-03-17 19:09:37 -05:00
Benjamin Kosnik ab3bc736d9 configure.in (target_alias): Default to yes.
2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (target_alias): Default to yes.
	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
	libgcc to default case.

From-SVN: r49959
2002-02-22 11:36:26 +00:00
Phil Edwards ffe94f8380 Makefile.am (doxygen, [...]): Tweak targets.
2002-01-28  Phil Edwards  <pme@gcc.gnu.org>

	* Makefile.am (doxygen, doxygen-maint, doxygen-man):  Tweak targets.
	* Makefile.in:  Regenerate.

	* docs/doxygen/run_doxygen:  Update, mostly for man pages.
	* docs/doxygen/Intro.3:  Update.
	* docs/doxygen/TODO:  Update.
	* docs/doxygen/doxygroups.cc:  Add namespace hook for __gnu_cxx.
	* docs/doxygen/mainpage.doxy:  Update.
	* docs/doxygen/user.cfg.in:  Update for header rename.  Also
	regenerate comments and variables with 1.2.12.
	* docs/doxygen/maint.cfg.in:  Remove file.

	* include/bits/stl_relops.h:  Doxygenate.
	* include/bits/stl_tempbuf.h (std::_Temporary_buffer):  Likewise.

	* include/c_std/std_cassert.h, include/c_std/std_cctype.h,
	include/c_std/std_cerrno.h, include/c_std/std_cfloat.h,
	include/c_std/std_ciso646.h, include/c_std/std_climits.h,
	include/c_std/std_clocale.h, include/c_std/std_cmath.h,
	include/c_std/std_csetjmp.h, include/c_std/std_csignal.h,
	include/c_std/std_cstdarg.h, include/c_std/std_cstddef.h,
	include/c_std/std_cstdio.h, include/c_std/std_cstdlib.h,
	include/c_std/std_cstring.h, include/c_std/std_ctime.h,
	include/c_std/std_cwchar.h, include/c_std/std_cwctype.h,
	include/ext/algorithm, include/ext/functional, include/ext/hash_map,
	include/ext/hash_set, include/ext/iterator, include/ext/memory,
	include/ext/numeric, include/ext/rb_tree, include/ext/rope,
	include/ext/ropeimpl.h, include/ext/slist, include/ext/stl_hash_fun.h,
	include/ext/stl_hashtable.h, include/ext/stl_rope.h,
	include/std/std_algorithm.h, include/std/std_bitset.h,
	include/std/std_complex.h, include/std/std_deque.h,
	include/std/std_fstream.h, include/std/std_functional.h,
	include/std/std_iomanip.h, include/std/std_ios.h,
	include/std/std_iosfwd.h, include/std/std_iostream.h,
	include/std/std_istream.h, include/std/std_iterator.h,
	include/std/std_limits.h, include/std/std_list.h,
	include/std/std_locale.h, include/std/std_map.h,
	include/std/std_memory.h, include/std/std_numeric.h,
	include/std/std_ostream.h, include/std/std_queue.h,
	include/std/std_set.h, include/std/std_sstream.h,
	include/std/std_stack.h, include/std/std_stdexcept.h,
	include/std/std_streambuf.h, include/std/std_string.h,
	include/std/std_utility.h, include/std/std_valarray.h,
	include/std/std_vector.h:  Add/correct @file doxygen hook.

	* include/ext/memory:  Doxygenate most of rest of file.
	* libsupc++/exception:  Doxygen output formatting.
	* libsupc++/new:  Say which header it is.

	* testsuite/lib/libstdc++-v3-dg.exp:  Fix spacing.
	* docs/html/19_diagnostics/howto.html:  Describe concept-checks switch.
	* docs/html/23_containers/howto.html:  Describe O(n) list::size().
	* docs/html/27_io/howto.html:  Also link to Langer and Kreft text.

From-SVN: r49300
2002-01-28 22:13:12 +00:00
Benjamin Kosnik aefb3380dd signbitl.c: Copyright years as list, not range.
2002-01-16  Benjamin Kosnik  <bkoz@redhat.com>

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

	* libsupc++/tinfo.h: Tweaks.

From-SVN: r48922
2002-01-16 19:57:39 +00:00
Paolo Carlini e05cd3dd3a exception (bad_exception): Add comment.
2002-01-09  Paolo Carlini <pcarlini@unitus.it>

        * libsupc++/exception (bad_exception): Add comment.
        * libsupc++/new (bad_alloc): Same.
        * libsupc++/typeinfo (bad_cast): Same.
        (bad_typeid): Same.

From-SVN: r48700
2002-01-09 23:31:57 +00:00
Paolo Carlini d66ae36a8b libstdc++/3150: revert 2001-11-30 commit.
2002-01-09  Paolo Carlini <pcarlini@unitus.it>

	libstdc++/3150: revert 2001-11-30 commit. DR266 only means
	that the destructors should be removed from the descriptions
	in the standard: writing them explicitly allows the vtable
	heuristic to work. For additional information see:
	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html
	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html
	http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html
	* libsupc++/exception (bad_exception::~bad_exception()):
	Reintroduce declaration.
	* libsupc++/new (bad_alloc::~bad_alloc()): Same.
	* libsupc++/typeinfo (bad_cast::~bad_cast()): Same.
	(bad_typeid::~bad_typeid()): Same.
	* libsupc++/eh_exception.cc (bad_exception::~bad_exception()):
	Reintroduce definition.
	* libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
	* libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same.
	(bad_typeid::~bad_typeid()): Same.

From-SVN: r48687
2002-01-09 20:39:27 +00:00
Benjamin Kosnik af46cdde20 exception (bad_exception::~bad_exception()): Remove declaration.
2001-11-30  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++/3150
	DR/266
	* libsupc++/exception (bad_exception::~bad_exception()): Remove
	declaration.
	* libsupc++/new (bad_alloc::~bad_alloc()): Remove.
	* libsupc++/typeinfo (bad_cast::~bad_cast()): Remove.
	(bad_typeid::~bad_typeid()): Remove.
	* libsupc++/tinfo.cc (bad_cast::~bad_cast()): Remove definition.
	(bad_typeid::~bad_typeid()): Same.
	* libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same.
	* libsupc++/eh_exception.cc (bad_exception::~bad_exception()): Same.

	* include/bits/std_iomanip.h: Tweak.

From-SVN: r47505
2001-12-01 04:56:03 +00:00
Jason Merrill afb0141fbd vterminate.cc (__verbose_terminate_handler): Add leading underscores.
* src/vterminate.cc (__verbose_terminate_handler): Add leading
        underscores.

From-SVN: r47292
2001-11-23 12:36:43 -05:00
Joseph Myers c5504edb75 ChangeLog, [...]: Fix spelling errors.
* ChangeLog, docs/doxygen/maint.cfg.in, docs/doxygen/user.cfg.in,
	docs/doxygen/doxygroups.cc, docs/doxygen/Intro.3,
	docs/html/17_intro/BUGS, docs/html/17_intro/C++STYLE,
	docs/html/17_intro/CHECKLIST, docs/html/17_intro/DESIGN,
	docs/html/17_intro/howto.html, docs/html/17_intro/porting.html,
	docs/html/17_intro/porting.texi, docs/html/18_support/howto.html,
	docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html,
	docs/html/21_strings/howto.html,
	docs/html/23_containers/howto.html,
	docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
	docs/html/27_io/binary_iostreams_kuehl.txt,
	docs/html/ext/sgiexts.html, docs/html/faq/index.html,
	docs/html/faq/index.txt, testsuite/24_iterators/iterator.cc,
	include/bits/basic_file.h, include/bits/locale_facets.h,
	include/bits/locale_facets.tcc, include/bits/std_sstream.h,
	include/ext/ropeimpl.h, include/ext/stl_rope.h,
	libsupc++/tinfo.cc, libsupc++/cxxabi.h, libsupc++/typeinfo,
	libsupc++/eh_throw.cc, acinclude.m4, aclocal.m4, configure,
	configure.target, ChangeLog-2000: Fix spelling errors.

From-SVN: r47291
2001-11-23 16:29:02 +00:00
Phil Edwards 1b4a6975f7 Intro.3: More notes.
2001-11-19  Phil Edwards  <pme@gcc.gnu.org>

	* docs/doxygen/Intro.3:  More notes.
	* docs/doxygen/style.css:  Update to default style from Doxygen 1.2.10.
	* include/bits/stl_algobase.h:  Add doxygen hooks for functions.
	* include/ext/hash_map:  Add @file hook.
	* include/ext/hash_set:  Likewise.
	* include/ext/rope:  Likewise.
	* include/ext/ropeimpl.h:  Likewise.
	* include/ext/slist:  Likewise.
	* include/ext/stl_hash_fun.h:  Likewise.
	* include/ext/stl_hashtable.h:  Likewise.
	* include/ext/stl_rope.h:  Likewise.

	* docs/html/17_intro/license.html:  Remove "experimental" sentence.
	* docs/html/19_diagnostics/howto.html:  Document new verbose
	terminate handler.
	* testsuite/27_io/filebuf.cc:  Fix comment, move tweakable parameter
	to more visible (closer to description) position.

	* libsupc++/eh_type.cc:  Formatting tweak.
	* libsupc++/exception:  Likewise.
	* src/vterminate.cc:  Likewise.

	* docs/html/17_intro/porting.html:  Regenerate.
	* docs/html/faq/index.txt:  Regenerate.

From-SVN: r47193
2001-11-20 00:51:37 +00:00
Jason Merrill 74a3070ffa eh_personality.cc (__cxa_call_unexpected): Take void*.
* libsupc++/eh_personality.cc (__cxa_call_unexpected): Take void*.
        * libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
        * libsupc++/unwind-cxx.h: Adjust.
        * src/Makefile.am (strstream.o): Pass -Wno-deprecated.

        * libsupc++/eh_type.cc (__cxa_current_exception_type): New file.
        * libsupc++/cxxabi.h: Declare it.
        * libsupc++/Makefile.am (sources): Add it.
        * src/vterminate.cc (verbose_terminate_handler): New file.
        * libsupc++/exception: Declare it.
        * src/Makefile.am (sources): Add it.

        * src/Makefile.am (VPATH): Check the src directory before the top one.

From-SVN: r47132
2001-11-17 21:09:23 -05:00
Benjamin Kosnik 322821b9ad Make -fno-exceptions work.
2001-10-23  Benjamin Kosnik  <bkoz@redhat.com>

	Make -fno-exceptions work.
	* config/locale/c_locale_gnu.cc: Use functexcept.
	* include/bits/c++config (__stl_assert): Remove.
	(__STL_USE_EXCEPTIONS): Same.
	(__STL_TRY): Same.
	(__STL_CATCH_ALL): Same.
	(__STL_THROW): Same.
	(__STL_RETHROW): Same.
	(__STL_NOTHROW): Same.
	(__STL_UNWIND): Same.
	* include/bits/pthread_allocimpl.h: Fix.
	* include/bits/std_bitset.h: Same.
	* include/bits/std_list.h: Same.
	* include/bits/std_memory.h: Same.
	* include/bits/std_queue.h: Same.
	* include/bits/stl_alloc.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/stl_list.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/stl_tree.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/ext/ropeimpl.h: Same.
	* include/ext/slist: Same.
	* include/ext/stl_hashtable.h: Same.
	* include/ext/stl_rope.h: Same.
	* libsupc++/new_op.cc: Include cstdlib.
	* libsupc++/eh_personality.cc: Add exception_defines include. Use
	__throw_exception_again, tweak.
	* libsupc++/eh_aux_runtime.cc: Include stdlib for abort.
	* libsupc++/vec.cc: Tweak.
	* src/functexcept.cc: Remove unused arguments.
	* testsuite/23_containers/bitset_members.cc: Tweak.

From-SVN: r46455
2001-10-24 02:37:56 +00:00
Benjamin Kosnik f295ecef02 limits.h: Move to...
2001-10-22  Benjamin Kosnik  <bkoz@redhat.com>

	* config/cpu/i386/bits/limits.h: Move to...
	* config/cpu/i386/bits/cpu_limits.h: ...here.
	* config/cpu/cris/bits/cpu_limits.h: Same.
	* config/cpu/powerpc/bits/cpu_limits.h: Same.
	* config/cpu/x86-64/bits/cpu_limits.h: Same.
	* config/cpu/alpha/bits/cpu_limits.h: New.
	* config/cpu/m68k/bits/cpu_limits.h: New.
	* config/cpu/s390/bits/cpu_limits.h: New.
	* config/os/aix/bits/os_defines.h: Tweaks.
	* config/os/bsd/freebsd/bits/os_defines.h: Same.
	* config/os/bsd/netbsd/bits/os_defines.h: Same.
	* config/os/djgpp/bits/os_defines.h: Same.
	* config/os/generic/bits/os_defines.h: Same.
	* config/os/gnu-linux/bits/os_defines.h: Same.
	* config/os/hpux/bits/os_defines.h: Same.
	* config/os/irix/irix5.2/bits/os_defines.h: Same.
	* config/os/irix/irix6.5/bits/os_defines.h: Same.
	* config/os/newlib/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.5/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.6/bits/os_defines.h: Same.
	* config/os/solaris/solaris2.7/bits/os_defines.h: Same.

	* include/bits/c++config: Remove include.
	* include/bits/limits_generic.h: Remove.
	* include/bits/std_limits.h: Include cpu_limits.h.
	* include/Makefile.am: Fixup.
	* src/limits.cc: Tweak.
	* src/limits_generic.cc: Remove.
	* src/gen-num-limits.cc: Remove.
	* mknumeric_limits: Remove.

From-SVN: r46445
2001-10-23 21:40:31 +00:00
Benjamin Kosnik da5c0f6ef5 time_members_gnu.h: Remove.
2001-10-02  Benjamin Kosnik  <bkoz@redhat.com>

	* config/locale/time_members_gnu.h: Remove.
	* config/locale/time_members_generic.h: Remove.
	* config/locale/time_members_gnu.cc (__timepunct::_M_put_helper): Add.
	* config/locale/time_members_generic.cc: Same.
	* include/bits/locale_facets.h: Add data members.
	(__timepunct::_M_put_helper): Change signature.
	(__timepunct::_M_date_formats): Same.
	(__timepunct::_M_time_formats): Same.
	(__timepunct::_M_ampm): Add.
	(__timepunct::_M_date_time_formats): Add.
	(time_get::_M_extract_via_format): Add.
	(time_get::_M_extract_time): Change to...
	(time_get::_M_extract_num): ... this, modify signature.
	* include/bits/locale_facets.tcc (time_get::do_get_year): Fix.
	(time_get::do_get_time): Fix.
	(time_get::do_get_date): Fix.

	* acinclude.m4: Remove CTIME_H.
	* aclocal.m4: Regenerate.
	* include/Makefile.am: Same.
	* include/Makefile.in: Regenerate.
	* configure: Regenerate.

	* testsuite/22_locale/time_get_members_char.cc: Fix.
	* testsuite/22_locale/time_get_members_wchar_t.cc: Add.
	* testsuite/22_locale/time_put_members_wchar_t.cc: Add.

From-SVN: r45966
2001-10-02 18:44:50 +00:00
Phil Edwards 77cd227ec3 howto.html: Add anchor name.
2001-09-25  Phil Edwards  <pme@gcc.gnu.org>

	* docs/html/20_util/howto.html:  Add anchor name.
	* docs/html/23_containers/howto.html:  Line wrapping, another link.
	* docs/html/25_algorithms/howto.html:  Another note.

	* docs/html/ext/howto.html:  Link to SGI extensions.  List DRs and
	link to them...
	* docs/html/ext/lwg-active.html:  ...in this new file (from R19),
	* docs/html/ext/lwg-defects.html:  and this new file (from R19).
	* docs/html/ext/sgiexts.html:  New file.  Mention SGI extensions
	carried over to libstdc++-v3.
	* docs/html/faq/index.html:  Link to SGI extensions.  Mention the
	"missing .." pseudobug.
	* docs/html/faq/index.txt:  Regenerate.

	* include/bits/ios_base.h:  DR-related comment cleanup.
	* include/bits/istream.tcc:  Likewise.
	* include/bits/locale_facets.h:  Likewise.
	* include/bits/locale_facets.tcc:  Likewise.
	* include/bits/ostream.tcc:  Likewise.
	* include/bits/std_bitset.h:  Likewise.
	* include/bits/std_iosfwd.h:  Likewise.
	* include/bits/std_istream.h:  Likewise.
	* include/bits/std_ostream.h:  Likewise.
	* include/bits/std_streambuf.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* include/bits/streambuf_iterator.h:  Likewise.

	* include/bits/std_map.h:  Remove unused header inclusion guard
	_CPP_BITS_STL_TREE_H from around bits/stl_tree.h.
	* include/bits/std_set.h:  Likewise.

	* include/bits/stl_function.h:  Doxygen markup.
	* docs/doxygen/doxygroups.cc:  New file, specifying module grouping.
	* libsupc++/typeinfo:  Doxygen markup tweak.

From-SVN: r45816
2001-09-25 23:51:17 +00:00
Benjamin Kosnik e08138aae3 Implement std::time_put.
2001-09-19  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::time_put.
	* include/bits/locale_facets.h: Include time_members.h.
	(__timepunct): New.
	(time_put): Implement.
	* include/bits/locale_facets.tcc (do_put): Put generic versions here.
	* include/bits/localefwd.h: Bump number of facets.
	* config/locale/time_members_generic.h: New file.
	* config/locale/time_members_gnu.h: New file.
	* config/locale/c_locale_generic.h: Include clocale.
	* src/locale-inst.cc: Add use_facet instantiations for __timepunct.
	* src/locale.cc: Add __timepunct initializations.
	* src/localename.cc (locale::_Impl::_Impl(string, size_t)): Same.
	* include/Makefile.am (stamp-target): Add time_members.h.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add CTIME_H.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/22_locale/time_put.cc: New file.
	* testsuite/22_locale/time_put_members_char.cc: New file.

	* docs/html/22_locale/locale.html: Add note.

From-SVN: r45702
2001-09-20 08:30:01 +00:00
Benjamin Kosnik 89c06d5007 Makefile.am (stamp-target): Remove link to self.
2001-09-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (stamp-target): Remove link to self.
	* inclulde/Makefile.in: Regenerate.

From-SVN: r45514
2001-09-10 18:13:17 +00:00
Phil Edwards 2d25bf5d52 testsuite_flags.in: No longer need to search testsuite builddir.
2001-09-05  Phil Edwards  <pme@sources.redhat.com>

	* testsuite_flags.in:  No longer need to search testsuite builddir.
	* src/stl-inst.cc (__sink_unused_warning):  Unused, remove.
	* Makefile.am:  The testsuite directory never needs to be made here.
	* Makefile.in:  Regenerate.
	* include/Makefile.in:  Regenerate.
	* libio/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: r45426
2001-09-05 22:38:06 +00:00
Richard Sandiford 320daf529e eh_personality.cc (parse_lsda_header): Change type of tmp from _Unwind_Ptr to _Unwind_Word.
* libsupc++/eh_personality.cc (parse_lsda_header): Change type of
	tmp from _Unwind_Ptr to _Unwind_Word.

From-SVN: r45360
2001-09-03 12:24:24 +00:00
Jason Merrill 6c8d43e78d exception.cc (PERSONALITY_FUNCTION): Simplify leb128 handling.
* exception.cc (PERSONALITY_FUNCTION): Simplify
        leb128 handling.

From-SVN: r45317
2001-08-31 08:27:32 -04:00
Jason Merrill a9985a921e unwind-pe.h (read_uleb128, [...]): Move actual reading code here.
* unwind-pe.h (read_uleb128, read_sleb128): Move actual reading
        code here.  Take _Unwind_{W,Sw}ord*.
        (read_encoded_value_with_base): Use them.
        * unwind-dw2.c (_Unwind_FrameState): Make cfa_offset and cfa_reg
        words.
        (extract_cie_info): Simplify read_?leb128 handling.
        (execute_stack_op, execute_cfa_program): Likewise.
        * unwind-dw2-fde.c (get_cie_encoding): Likewise.

        * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Simplify
        leb128 handling.

From-SVN: r45315
2001-08-31 05:49:13 -04:00
Benjamin Kosnik 4e10943dda configure.in (libtool_VERSION): Add.
2001-08-13  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (libtool_VERSION): Add.
	(VERSION): Change to
	(release_VERSION): This.
	* configure: Regenerate.
	* src/Makefile.am (libstdc___la_LDFLAGS): Use -version-info with
	libtool_VERSION.
	* src/Makefile.in: Regenerate.

	* intl/Makefile.am: Remove.
	* intl/Makefile.in: Remove.
	* intl: Remove.
	* Makefile.am (SUBDIRS): Remove intl.
	* po/Makefile.am (DISTFILES): Add string_literals.cc
	(MSGFMT): Add.
	* po/string_literals.cc: Add.
	* po/POTFILES.in: Fix path.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Don't call AM_GNU_GETTEXT.
	* aclocal.m4: Regenerate.
	* configure.in: Remove AC_OUTPUT of intl/Makefile.

	* include/backward/backward_warning.h: Clarify message.

	* testsuite_flags.in (--cxxflags): Use same debug flags for
	library and testsuite.

	* include/Makefile.am (c_compatibility): Remove.
	* include/Makefile.in: Regenerate.

From-SVN: r44880
2001-08-14 01:24:30 +00:00
Mark Mitchell 9f3c078ea9 configure.in (LIMITS_INC_SRCDIR): New variable.
* configure.in (LIMITS_INC_SRCDIR): New variable.
	* configure.target (LIMITSH): New variable.
	* porting.texi: Discuss numeric limits.
	* config/cpu/generic/bits/limits.h: New file.
	* config/cpu/i386/bits/limits.h: New file.
	* include/Makefile.am: Install bits/limits.h.
	* include/bits/c++config: Include bits/limits.h.

From-SVN: r44877
2001-08-13 22:26:11 +00:00
Benjamin Kosnik 58b08ac3e1 acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
2001-08-09  Benjamin Kosnik  <bkoz@redhat.com>

	* acconfig.h (_GLIBCPP_MEM_LIMITS): Define.
	* config.h.in: Regenerate.
	* acinclude.m4 (GLIBCPP_CHECK_SETRLIMIT): Check for setrlimit
	function.
	* aclocal.m4: Regenerate.
	* configure.in: Remove duplicate AM_CONFIG_HEADER.
	(AM_CONFIG_HEADER): Remove testsuite/testsuite_hooks.h.
	Only call GLIBCPP_CHECK_SETRLIMIT for native compiles.
	* configure: Regenerate.
	* testsuite_hooks.h.in: Move to...
	* testsuite_hooks.h: Here, include c++config.h. Use it.

	* Makefile.am (SUBDIRS): Move testsuite to last directory.
	* Makefile.in: Regenerate.
	* po/Makefile.am (stamp-po): Add.

From-SVN: r44752
2001-08-10 06:50:34 +00:00
Benjamin Kosnik 33590f13b2 Implement std::messages.
2001-08-07  Benjamin Kosnik  <bkoz@redhat.com>

	Implement std::messages.
	Make config a fully-nested directory.
	* config/locale: New directory.
	* config/c_locale_generic.cc: Move into locale subdirectory.
	* config/c_locale_generic.h: Same.
	* config/c_locale_gnu.cc: Same.
	* config/c_locale_gnu.h: Same.
	* config/c_locale_ieee_1003.1-200x.cc: Same.
	* config/c_locale_ieee_1003.1-200x_.h: Same.
	* config/codecvt_specializations_generic.h: Same.
	* config/codecvt_specializations_ieee_1003.1-200x.h: Same.
	* config/messages_members_gnu.h: Same.
	* config/messaages_members_gnu.cc: Same.
	* config/messages_members_generic.h: Same.
	* config/messaages_members_generic.cc: Same.
	* config/messages_members_ieee_1003.1-200x.h: Same.
	* config/messaages_members_ieee_1003.1-200x.cc: Same.
	* config/io: New directory.
	* config/basic_file_libio.h: Move into io subdirectory.
	* config/basic_file_libio.cc: Same.
	* config/c_io_libio.h: Same.
	* config/c_io_libio_codecvt.c: Same.
	* config/basic_file_stdio.h: Same.
	* config/basic_file_stdio.cc: Same.
	* config/c_io_stdio.h: Same.

	* po: New directory.
	* po/POTFILES.in: New file.
	* po/Makefile.am: New file.
	* po/Makefile.in: New file.
	* po/libstdc++.pot: Generic translation file.
	* po/fr.po: Preliminary French translation.
	* po/de.po: Preliminary German translation.
	* intl: New directory.
	* intl/Makefile.am: New file.
	* intl/Makefile.in: New file.
	* intl/string_literals.cc: New file.
	* acinclude.m4 (GLIBCPP_CONFIGURE): Bump VERSION to 3.1.0. Add
	requisite setup for gettext. Re-arrange.
	* aclocal.m4: Regenerate.
	* configure.in: Don't call GLIBCPP_CHECK_COMPILER_VERSION.
	Output Makefile bits for po and intl.
	* configure: Regenerate.
	* Makefile.am (SUBDIRS): Add intl, po. Add rule for dist.
	* Makefile.in: Regenerate.
	* acconfig.h: Add ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT, HAVE_STPCPY.
	* config.h.in: Regenerate.

	* acinclude.m4 (AC_REPLACE_STRINGFUNCS): Remove.

	* include/Makefile.am (install-data-local): Don't install Makefile.
	* include/Makefile.in: Regenerate.

	* include/bits/locale_facet.h (locale::facet::_S_clone_c_locale):
	Add member.
	* config/locale/c_locale_gnu.cc (_S_clone_c_locale): Add definition.
	* config/locale/c_locale_generic.cc: Same.
	* config/locale/c_locale_ieee_1003.1-200x.cc: Same.

	* include/bits/codecvt.h: Excise non-standard, non-required
	bits. This includes __enc_traits, and partial specializations of
	codecvt for __enc_traits.
	* src/codecvt.cc (__enc_traits::_S_max_size): Guard
	* config/codecvt_partials_ieee_1003.1-200x.h: New file.
	* config/codecvt_partials_generic.h: New file.
	* include/Makefile.am (allstamps): Add stamp-codecvt_model.
	(stamp-codecvt_model): Add.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add in codecvt configury.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/22_locale/codecvt_unicode_wchar_t.cc: Use macro guard.
	* testsuite/22_locale/codecvt_unicode_char.cc: Same.
	* testsuite/22_locale/ctor_copy_dtor.cc: And here.

	* include/bits/localefwd.h (class locale::facet): Add __enc_traits
	as a friend for _S_*_c_locale functions.
	* include/bits/codecvt.h (__enc_traits::__enc_traits): Add locale
	argument to default constructor so that CODESET information can be
	deduced.
	* include/bits/locale_facets.h (messages_byname):
	Re-implement. Remove specializations.
	* src/locale.cc (messages_byname<char>): Remove specialization.
	(messages_byname<wchar_t>): Same.
	* config/locale/c_locale_ieee_1003.1-200x.cc: New file.
	* config/locale/c_locale_ieee_1003.1-200x.h: New file.
	* config/locale/messages_members_ieee_1003.1-200x.cc: New file.
	* config/locale/messages_members_ieee_1003.1-200x.h: New file.
	* config/locale/messages_members_gnu.cc: New file.
	* config/locale/messages_members_gnu.h: New file.
	* config/locale/messages_members_generic.cc: New file.
	* config/locale/messages_members_generic.h: New file.

	* docs/html/configopts.html: Add documentation for new locale
	model, ieee_1003.1. Adjust other flags for current defaults.
	* docs/html/22_locale/locale.html: Update.
	* docs/html/22_locale/howto.html: Add link to messages.html. Organize.
	* docs/html/22_locale/messages.html: New.

	* src/Makefile.am (sources): Add messages_virtuals.cc.
	* src/Makefile.in: Regenerate.
	* include/Makefile.am (allstamps): Add stamp-messages_model.
	(stamp-messages_model): Add.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCPP_ENABLE_CLOCALE): Add in messages configury.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

	* testsuite_flags.in (--cxxflags): Add LOCALEDIR.
	* testsuite/lib/libstdc++-v3-dg.exp: Remove broken LD_LIBRARY_PATH
	bits for Irix.
	* acinclude (GLIBCPP_ENABLE_CLOCALE): Set glibcpp_localedir to the
	build directories message catalog base directory, and export.
	Eventually this should probably be made to deal with build and
	install directories. For now, punt on this as the library itself
	doesn't use message catalogs (yet).
	* testsuite/22_locale/messages.cc: New file.
	* testsuite/22_locale/messages_char_members.cc: New file.
	* testsuite/22_locale/messages_byname.cc: New file.

From-SVN: r44702
2001-08-08 02:49:01 +00:00
Stephen M. Webb 02d92e3b70 All occurrences of the __value_type() and __distance_type() functions...
2001-07-17  Stephen M. Webb   <stephen@bregmasoft.com>r

	All occurrences of the __value_type() and __distance_type()
	functions, which were required to support the HP STL, have been
	removed along with all the auxiliary forwarding functions that
	were required to support their use.

	The __iterator_category() function was pretty much left alone
	because there was no benefit to removing it and its use made code
	just a little more readable.

	Incidences of distance() with nonstandard argument list were
	replaced by calls to the standard function (only in the files
	affected by the removal of the other HP functions).

	The signature of the rotate() algorithm was changed to match the
	standard.

	Headers were reformatted under C++STYLE guidelines (indentation,
	linebreaks, typename keyword).

	* include/bits/stl_algo.h: replaced __value_type() and
	__distance_type() with iterator_traits, eliminated auxiliary
	support functions required to support said function usage.
	Changed nonstandard distance() call to standard call.

	* include/bits/stl_algobase.h: Same.
	* include/bits/stl_heap.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/stl_uninitialized.h: Same.
	* include/bits/stl_iterator_base_types.h (__value_type()):
	Removed.
	(__distance_type()): Removed.
	(value_type()): Gone.
	(distance_type()): Done in.
	(iterator_category()): Hasta la vista, baby.

	* include/bits/stl_iterator_base_funcs.h (iterator_category()):
	Replaced with __iterator_category().
	* include/backward/iterator.h: moved definition of value_type(),
	distance_type(), and iterator_category() out of std:: and into
	here.
	* testsuite/23_containers/vector_ctor.cc (test03): New testcases.
	* testsuite/23_containers/vector_modifiers.cc (test03): New testcases.
	* testsuite/25_algorithms/rotate.cc: New testcase.
	* testsuite/25_algorithms/copy.cc: New testcase.
	* testsuite/25_algorithms/sort.cc: Same.
	* testsuite/25_algorithms/heap.cc: Same.
	* testsuite/25_algorithms/partition.cc: Same.
	* testsuite/25_algorithms/binary_search.cc: Same.
	* testsuite/26_numerics/sum_diff.cc: Ditto.

From-SVN: r44117
2001-07-18 17:09:02 +00:00
Stephen M. Webb 4a9d51090a Makefile.am: New file encapsulating header generation rules.
2001-07-13  Stephen M. Webb  <stephen@bregmasoft.com>
            Loren J. Rittle  <ljrittle@acm.org>
            Phil Edwards  <pme@sources.redhat.com>

	* include/Makefile.am:  New file encapsulating header generation rules.
	* Makefile.am (SUBDIRS):  Prepend 'include' directory.
	* acinclude.m4:  Moved/removed rules for building various headers.
	* configure.in (AC_OUTPUT):  Add include/Makefile.
	* mkc++config:  Removed.

	* testsuite_flags.in:  Changed build-includes to match new scheme.
	* mknumeric_limits:  Likewise.
	* libio/Makefile.am:  Changed INCLUDES to maatch new header scheme.
	* libmath/Makefile.am:  Likewise.
	* libsupc++/Makefile.am:  Likewise.
	* src/Makefile.am:  Likewise; removed rules to build headers.
	* libmath/mathconf.h:  Changed #include'd header names to match.
	* libmath/stubs.c:  Likewise.
	* src/gen-num-limits.cc:  Likewise.

	* configure:  Regenerated.
	* config.h.in:  Regenerated.
	* aclocal.m4:  Regenerated.
	* Makefile.in:  Regenerated.
	* include/Makefile.in:  Regenerated.
	* libio/Makefile.in:  Regenerated.
	* libmath/Makefile.in:  Regenerated.
	* libsupc++/Makefile.in:  Regenerated.
	* src/Makefile.in:  Regenerated.
	* testsuite/Makefile.in:  Regenerated.

Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>
Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>

From-SVN: r43985
2001-07-13 16:47:56 +00:00
Phil Edwards 669f7a035a run_doxygen: Don't keep output from previous run.
2001-07-11  Phil Edwards  <pme@sources.redhat.com>

	* docs/doxygen/run_doxygen:  Don't keep output from previous run.
	* docs/doxygen/user.cfg.in:  Tweaks.
	* include/bits/c++config:  Documentation comments for Doxygen.
	* include/bits/char_traits.h:  Likewise.
	* include/bits/limits_generic.h:  Likewise.
	* include/bits/std_stdexcept.h:  Likewise.
	* include/bits/stl_pair.h:  Likewise.
	* libsupc++/exception:  Likewise.
	* libsupc++/new:  Likewise.
	* libsupc++/typeinfo:  Likewise.
	* libmath/Makefile.am:  Update and correct copyright.

From-SVN: r43948
2001-07-11 19:35:49 +00:00