Commit Graph

4632 Commits

Author SHA1 Message Date
Geoffrey Keating 0646b0597b configure.ac: Don't use GCC_NO_EXECUTABLES or clear GLIBCXX_IS_NATIVE on Darwin crosses.
* configure.ac: Don't use GCC_NO_EXECUTABLES or clear
	GLIBCXX_IS_NATIVE on Darwin crosses.
	* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Don't skip configuring
	the testsuite just because there's no symbol versioning.
	* configure: Regenerate.

From-SVN: r102718
2005-08-03 23:17:06 +00:00
Geoffrey Keating e010344025 acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Print status messages.
* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT_ancilliary): Print
	status messages.
	(GLIBCXX_CHECK_S_ISREG_OR_S_IFREG): Likewise.
	(GLIBCXX_CHECK_POLL): Likewise.
	(GLIBCXX_CHECK_WRITEV): Likewise.
	(GLIBCXX_CHECK_INT64_T): Likewise.
	(GLIBCXX_CHECK_LFS): Likewise.
	* configure: Regenerate.

From-SVN: r102710
2005-08-03 21:03:29 +00:00
Andrew Pinski 31537df3e5 make_exports.pl: Pass --strip-underscores to c++filt.
2005-07-30  Andrew Pinski  <pinskia@physics.uc.edu>

        * scripts/make_exports.pl: Pass --strip-underscores to c++filt.

From-SVN: r102595
2005-07-30 15:46:25 -07:00
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
Volker Reichelt dc5fef6a47 * include/std/std_valarray.h: Fix grammar in comments.
From-SVN: r102479
2005-07-28 12:23:53 +00:00
Geoffrey Keating a9fdd4720c Index: gcc/ChangeLog
2005-07-25  Geoffrey Keating  <geoffk@apple.com>

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

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

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

From-SVN: r102435
2005-07-27 18:28:32 +00:00
Dave Odell 7f50ddeef6 re PR libstdc++/23053 (Const-correctness issue in TR1 hashtable)
2005-07-25  Dave Odell  <evilalias@hotmail.com>

	PR libstdc++/23053
	* include/tr1/hashtable (hashtable<>::find_node): Const-ify.
	* testsuite/tr1/6_containers/unordered/hashtable/23053.cc: New.

From-SVN: r102372
2005-07-25 22:46:48 +00:00
Paolo Carlini 4fdfb2046e 2005-07-25 Paolo Carlini <pcarlini@suse.de>
Adjust date of last ChangeLog entry.

From-SVN: r102354
2005-07-25 08:49:37 +00:00
Paolo Carlini ceed88b131 re PR libstdc++/22515 (operator>>(istream, string/CharT*) can be faster)
2005-07-24  Paolo Carlini  <pcarlini@suse.de>

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

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

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

From-SVN: r102204
2005-07-20 22:07:57 +00:00
Paolo Carlini 39a72a9179 ctype_members.cc (do_is(mask, wchar_t)): Speed-up for the common case of mask == ctype_base::space...
2005-07-18  Paolo Carlini  <pcarlini@suse.de>

	* config/locale/gnu/ctype_members.cc (do_is(mask, wchar_t)):
	Speed-up for the common case of mask == ctype_base::space;
	otherwise, exit the loop earlier if the mask is one of the
	elementary ones.

From-SVN: r102137
2005-07-18 17:42:32 +00:00
Paolo Carlini dbd160bff8 PR libstdc++/21193 (float, double, long double)
2005-07-14  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21193 (float, double, long double)
	* include/tr1/functional (hash<float>, hash<double>):
	Reimplement exploiting the Fnv_hash<>::hash helper.
	(hash<long double>): Reimplement using frexp (in this
	case, due to random padding bits, the former approach
	is not generally viable).

From-SVN: r102043
2005-07-15 00:05:44 +00:00
Paolo Carlini 5a298377cf PR libstdc++/21193 (string & wstring)
2005-07-13  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21193 (string & wstring)
	* include/tr1/functional (hash<string>, hash<wstring>):
	Reimplement using the FNV hash.

	* include/tr1/functional: Trivial formatting fixes.

From-SVN: r101964
2005-07-13 10:47:40 +00:00
Paolo Carlini 8637038aa8 ostream.tcc (basic_ostream<>::operator<<(long), [...]): Don't deal with oct and hex and casts to unsigned here...
2005-07-11  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/ostream.tcc (basic_ostream<>::operator<<(long),
	basic_ostream<>::operator<<(long long)): Don't deal with oct
	and hex and casts to unsigned here...
	* include/bits/locale_facets.tcc (__int_to_char(_CharT*, long,
	const _CharT*, ios_base::fmtflags), __int_to_char(_CharT*, long
	long, const _CharT*, ios_base::fmtflags)): ... do that here,
	instead, as per Table 57.
	(num_put<>::_M_insert_int): Tidy treatment of numeric base and
	sign.
	* include/std/std_ostream.h (operator<<(short), operator<<(int)):
	Adjust logic, as per the letter of the resolution of DR117 [WP].
	* testsuite/22_locale/num_put/put/char/10.cc: New.
	* testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
	Likewise.
	* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
	Likewise.

From-SVN: r101872
2005-07-11 09:48:31 +00:00
David Edelsohn 456f9beaad tree_order_statistics_join.cc: Change map_t to map_type.
* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc:
	Change map_t to map_type.

From-SVN: r101709
2005-07-07 09:35:25 -04: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
Paolo Carlini c1806f89e0 [multiple changes]
2005-07-01  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2004-10-28  Chris Jefferson  <chris@bubblescope.net>

	PR libstdc++/17441
	* include/bit/stl_algo.h (find(,,,input_iterator_tag),
	find(,,,random_access_interator_tag),
	find_if(,,,input_iterator_tag),
	find_if(,,,random_access_iterator_tag)): Uglify function name.
	(find, find_if): Use new uglified specialisation names.
	* testsuite/25_algorithms/find/17441.cc: New.

From-SVN: r101501
2005-07-01 08:25:11 +00:00
Ulrich Weigand 625684fa1c * include/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp
(PB_ASSOC_CLASS_C_DEC::s_highest_bit_1): Cast constant 1 to target
	type before shifting.

From-SVN: r101477
2005-06-30 21:33:31 +00:00
Paolo Carlini a81408c939 PR libstdc++/21244 (cont^2)
2005-06-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21244 (cont^2)
	* include/ext/bitmap_allocator.h: Convert everywhere
	bits_per_block to size_t.

From-SVN: r101438
2005-06-29 22:12:18 +00:00
Jonathan Wakely a65da37d5b basic_string.h, [...]: Fix Doxygen comments that use wrong parameter and function names.
* include/bits/basic_string.h, include/bits/locale_facets.h: Fix
	Doxygen comments that use wrong parameter and function names.

From-SVN: r101419
2005-06-29 13:18:08 +01:00
Paolo Carlini 7d31a1f437 lwg-active.html, [...]: Import Revision 37.
2005-06-29  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 37.
	* docs/html/ext/howto.html: Adjust.

From-SVN: r101418
2005-06-29 12:05:32 +00:00
Paolo Carlini c7b802913b 2005-06-29 Paolo Carlini <pcarlini@suse.de>
Fix typo in last ChangeLog entry.

From-SVN: r101417
2005-06-29 11:52:23 +00:00
Paolo Carlini d04e9b7fef re PR libstdc++/22131 (std::num_get fails for input with invalid groups)
2005-06-29  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22131
	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int,
	num_get<>::_M_extract_float, money_get<>::_M_extract):
	Adjust to assign the result also when digit grouping is
	wrong (but the grammar is correct), as per 22.2.2.1.2, p11-12
	(NB: consistently for money_get too).
	* config/locale/generic/c_locale.cc (__convert_from_v): Do
	not check ios_base::failbit at the outset.
	* config/locale/gnu/c_locale.cc: Likewise.
	* testsuite/22_locale/money_get/get/char/22131.cc: New.
	* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
	* testsuite/22_locale/num_get/get/char/12.cc: Adjust.
	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
	Likewise.

From-SVN: r101416
2005-06-29 11:48:53 +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
Paolo Carlini ec5537cc33 re PR libstdc++/22102 ([DR233] Implement resolution of DR 233)
2005-06-27  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/22102
	* include/bits/stl_tree.h (insert_unique(iterator, const _Val&),
	insert_equal((iterator, const _Val&)): Reimplement to check both
	before and after, as per the algorithm "ignore hint if wrong" of
	ISO paper N1780.

From-SVN: r101355
2005-06-27 16:35:49 +00:00
Benjamin Kosnik fd1e17264b documentation.html: Add link for policy based associative containers docs.
2005-06-27  Benjamin Kosnik  <bkoz@redhat.com>
	    Ami Tavory  <pbassoc@gmail.com>

	* docs/html/documentation.html: Add link for policy based
	associative containers docs.
	* docs/html/ext/pb_assoc/Std_hash_set_impl.jpg: New.
	* docs/html/ext/pb_assoc/acks.html: New.
	* docs/html/ext/pb_assoc/balls_and_bins.jpg: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr_compound_data.html: New.
	* docs/html/ext/pb_assoc/basic_assoc_cntnr_no_data.html: New.
	* docs/html/ext/pb_assoc/basic_ds_tag.html: New.
	* docs/html/ext/pb_assoc/basic_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/basic_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/basic_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/basic_ms_tag.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/
	  basic_tree_assoc_cntnr_const_node_iterator.html: New.
	* docs/html/ext/pb_assoc/
	  basic_tree_assoc_cntnr_node_iterator.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev.html: New.
	* docs/html/ext/pb_assoc/basic_tree_assoc_cntnr_rev_it.html: New.
	* docs/html/ext/pb_assoc/basic_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/cc_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/cc_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/
	  cc_hash_max_collision_check_resize_trigger.html: New.
	* docs/html/ext/pb_assoc/cc_hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/cd.jpg: New.
	* docs/html/ext/pb_assoc/component_requirements.html: New.
	* docs/html/ext/pb_assoc/compound_data_enabled_ms_tag.html: New.
	* docs/html/ext/pb_assoc/compound_data_type.html: New.
	* docs/html/ext/pb_assoc/compound_ds_tag.html: New.
	* docs/html/ext/pb_assoc/concepts.html: New.
	* docs/html/ext/pb_assoc/contact.html: New.
	* docs/html/ext/pb_assoc/counter_update_metadata.html: New.
	* docs/html/ext/pb_assoc/counter_update_policy.html: New.
	* docs/html/ext/pb_assoc/data_enabled_ms_tag.html: New.
	* docs/html/ext/pb_assoc/design.html: New.
	* docs/html/ext/pb_assoc/different_underlying_dss.jpg: New.
	* docs/html/ext/pb_assoc/direct_mask_range_hashing.html: New.
	* docs/html/ext/pb_assoc/direct_mod_range_hashing.html: New.
	* docs/html/ext/pb_assoc/disclaimer.html: New.
	* docs/html/ext/pb_assoc/ds_gen.html: New.
	* docs/html/ext/pb_assoc/ds_tag_cd.jpg: New.
	* docs/html/ext/pb_assoc/ds_traits.html: New.
	* docs/html/ext/pb_assoc/embedded_lists_1.jpg: New.
	* docs/html/ext/pb_assoc/embedded_lists_2.jpg: New.
	* docs/html/ext/pb_assoc/examples.html: New.
	* docs/html/ext/pb_assoc/exception_guarantees_specifics.html: New.
	* docs/html/ext/pb_assoc/find_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/find_iterators_cd.jpg: New.
	* docs/html/ext/pb_assoc/find_iterators_range_ops_1.jpg: New.
	* docs/html/ext/pb_assoc/find_iterators_range_ops_2.jpg: New.
	* docs/html/ext/pb_assoc/generics.html: New.
	* docs/html/ext/pb_assoc/gp_hash_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/gp_hash_ds_tag.html: New.
	* docs/html/ext/pb_assoc/gp_hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_and_probe_general.html: New.
	* docs/html/ext/pb_assoc/hash_based_containers.html: New.
	* docs/html/ext/pb_assoc/hash_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_exponential_size_policy.html: New.
	* docs/html/ext/pb_assoc/hash_fn.html: New.
	* docs/html/ext/pb_assoc/hash_load_check_resize_trigger.html: New.
	* docs/html/ext/pb_assoc/hash_policies.html: New.
	* docs/html/ext/pb_assoc/hash_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/hash_prime_size_policy.html: New.
	* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram.jpg: New.
	* docs/html/ext/pb_assoc/hash_range_hashing_seq_diagram2.jpg: New.
	* docs/html/ext/pb_assoc/hash_ranged_hash_range_hashing_fns.jpg: New.
	* docs/html/ext/pb_assoc/hash_standard_resize_policy.html: New.
	* docs/html/ext/pb_assoc/home.html: New.
	* docs/html/ext/pb_assoc/index.html: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram1.jpg: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram2.jpg: New.
	* docs/html/ext/pb_assoc/insert_resize_sequence_diagram3.jpg: New.
	* docs/html/ext/pb_assoc/insert_type_methods.html: New.
	* docs/html/ext/pb_assoc/interface.html: New.
	* docs/html/ext/pb_assoc/interval_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/introduction.html: New.
	* docs/html/ext/pb_assoc/invalidation_guarantee_cd.jpg: New.
	* docs/html/ext/pb_assoc/invalidation_guarantee_erase.jpg: New.
	* docs/html/ext/pb_assoc/lib_download.html: New.
	* docs/html/ext/pb_assoc/linear_probe_fn.html: New.
	* docs/html/ext/pb_assoc/list_updates.html: New.
	* docs/html/ext/pb_assoc/lu_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/lu_based_containers.html: New.
	* docs/html/ext/pb_assoc/lu_cd.jpg: New.
	* docs/html/ext/pb_assoc/lu_ds_tag.html: New.
	* docs/html/ext/pb_assoc/lu_ops.jpg: New.
	* docs/html/ext/pb_assoc/mmap_value_utils.html: New.
	* docs/html/ext/pb_assoc/motivation.html: New.
	* docs/html/ext/pb_assoc/move_to_front_update_metadata.html: New.
	* docs/html/ext/pb_assoc/move_to_front_update_policy.html: New.
	* docs/html/ext/pb_assoc/ms_cd.jpg: New.
	* docs/html/ext/pb_assoc/ms_gen.html: New.
	* docs/html/ext/pb_assoc/ms_tag_cd.jpg: New.
	* docs/html/ext/pb_assoc/ms_traits.html: New.
	* docs/html/ext/pb_assoc/node_invariant_invalidations.jpg: New.
	* docs/html/ext/pb_assoc/node_invariants.html: New.
	* docs/html/ext/pb_assoc/node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/non_unique_mapping.html: New.
	* docs/html/ext/pb_assoc/non_unique_mapping_containers.jpg: New.
	* docs/html/ext/pb_assoc/null_data_type.html: New.
	* docs/html/ext/pb_assoc/null_hash_fn.html: New.
	* docs/html/ext/pb_assoc/null_probe_fn.html: New.
	* docs/html/ext/pb_assoc/order_by_key.html: New.
	* docs/html/ext/pb_assoc/order_statistics_key.html: New.
	* docs/html/ext/pb_assoc/order_statistics_key_cmp.html: New.
	* docs/html/ext/pb_assoc/order_statistics_node_updator.html: New.
	* docs/html/ext/pb_assoc/ov_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/overview.html: New.
	* docs/html/ext/pb_assoc/pb_assoc_ex.html: New.
	* docs/html/ext/pb_assoc/portability.html: New.
	* docs/html/ext/pb_assoc/quadratic_probe_fn.html: New.
	* docs/html/ext/pb_assoc/range_invalidation_guarantee.html: New.
	* docs/html/ext/pb_assoc/rank_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/rationale_null_node_updator.jpg: New.
	* docs/html/ext/pb_assoc/rb_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/reference_iterator.jpg: New.
	* docs/html/ext/pb_assoc/references.html: New.
	* docs/html/ext/pb_assoc/regression_tests.html: New.
	* docs/html/ext/pb_assoc/resize_general.html: New.
	* docs/html/ext/pb_assoc/resize_policies.html: New.
	* docs/html/ext/pb_assoc/resize_policy_cd.jpg: New.
	* docs/html/ext/pb_assoc/restoring_node_invariants.jpg: New.
	* docs/html/ext/pb_assoc/sample_node_updator.hpp: New.
	* docs/html/ext/pb_assoc/sample_probe_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_probe_fn.html: New.
	* docs/html/ext/pb_assoc/sample_range_hashing.hpp: New.
	* docs/html/ext/pb_assoc/sample_range_hashing.html: New.
	* docs/html/ext/pb_assoc/sample_ranged_hash_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_ranged_hash_fn.html: New.
	* docs/html/ext/pb_assoc/sample_ranged_probe_fn.hpp: New.
	* docs/html/ext/pb_assoc/sample_ranged_probe_fn.html: New.
	* docs/html/ext/pb_assoc/sample_resize_policy.hpp: New.
	* docs/html/ext/pb_assoc/sample_resize_policy.html: New.
	* docs/html/ext/pb_assoc/sample_resize_trigger.hpp: New.
	* docs/html/ext/pb_assoc/sample_size_policy.hpp: New.
	* docs/html/ext/pb_assoc/sample_update_policy.hpp: New.
	* docs/html/ext/pb_assoc/size_policies_general.html: New.
	* docs/html/ext/pb_assoc/splay_tree_ds_tag.html: New.
	* docs/html/ext/pb_assoc/timing_tests.html: New.
	* docs/html/ext/pb_assoc/toc.html: New.
	* docs/html/ext/pb_assoc/tree_assoc_cntnr.html: New.
	* docs/html/ext/pb_assoc/
	  tree_assoc_cntnr_const_node_iterator.html: New.
	* docs/html/ext/pb_assoc/tree_assoc_cntnr_node_iterator.html: New.
	* docs/html/ext/pb_assoc/tree_based_containers.html: New.
	* docs/html/ext/pb_assoc/tree_cd.jpg: New.
	* docs/html/ext/pb_assoc/trigger_policies_general.html: New.
	* docs/html/ext/pb_assoc/tutorial.html: New.
	* docs/html/ext/pb_assoc/update_seq_diagram.jpg: New.
	* include/Makefile.am: Add assoc_srcdir, assoc_builddir, assoc_subdir,
	assoc_headers.
	* include/Makefile.in: Regenerate.
	* include/ext/typelist.h: New.
	* include/ext/pb_assoc/assoc_cntnr.hpp: New.
	* include/ext/pb_assoc/data_type.hpp: New.
	* include/ext/pb_assoc/ds_trait.hpp: New.
	* include/ext/pb_assoc/exception.hpp: New.
	* include/ext/pb_assoc/hash_policy.hpp: New.
	* include/ext/pb_assoc/lu_policy.hpp: New.
	* include/ext/pb_assoc/ms_trait.hpp: New.
	* include/ext/pb_assoc/tree_policy.hpp: New.
	* include/ext/pb_assoc/trivial_iterator_def.hpp: New.
	* include/ext/pb_assoc/detail/assoc_cntnr_base.hpp: New.
	* include/ext/pb_assoc/detail/cond_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ds_trait_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_types_traits.hpp: New.
	* include/ext/pb_assoc/detail/map_debug_base.hpp: New.
	* include/ext/pb_assoc/detail/mapping_level_imp.hpp: New.
	* include/ext/pb_assoc/detail/ms_category_imp.hpp: New.
	* include/ext/pb_assoc/detail/ms_trait_imp.hpp: New.
	* include/ext/pb_assoc/detail/order_statistics_imp.hpp: New.
	* include/ext/pb_assoc/detail/standard_policies.hpp: New.
	* include/ext/pb_assoc/detail/standard_sizes.hpp: New.
	* include/ext/pb_assoc/detail/type_utils.hpp: New.
	* include/ext/pb_assoc/detail/typelist.hpp: New.
	* include/ext/pb_assoc/detail/types_traits.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
     	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  d_find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  d_insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_assoc_cntnr/
	  iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_hash_assoc_cntnr/
	  resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  node_iteration_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  r_erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  r_range_iteration_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  range_iteration_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/basic_tree_assoc_cntnr/
	  split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  bin_search_tree_.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  cond_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  cond_key_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  r_erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/bin_search_tree_/
	  split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  cond_key_dtor_entry_dealtor.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  constructor_destructor_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  debug_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  debug_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  erase_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  erase_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  find_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  insert_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  insert_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  resize_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/
	  resize_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp: New.
	* include/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp: New.
	* include/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp: New.
	* include/ext/pb_assoc/detail/gp_hash_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  constructor_destructor_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  debug_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  debug_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  erase_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  erase_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  find_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  find_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
  	  insert_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  insert_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  resize_no_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/gp_ht_map_/
	  resize_store_hash_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  direct_mask_range_hashing_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  direct_mod_range_hashing_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/
	  mask_based_range_hashing.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp: New.
	* include/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp: New.
	* include/ext/pb_assoc/detail/lu_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_assoc_cntnr/
	  policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/lu_map_.hpp: New.
	* include/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/
  	  counter_lu_metadata_imp.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp: New.
	* include/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/node.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp: New.
	* include/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  cc_hash_max_collision_resize_trigger_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_exponential_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_load_check_resize_trigger_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_prime_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  hash_standard_resize_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/
	  ht_prime_size_policy_imp.hpp: New.
	* include/ext/pb_assoc/detail/resize_policy/size_base.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/
	  constructors_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/node.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp: New.
	* include/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/tree_assoc_cntnr/
	  constructor_destructor_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/tree_policy/
	  null_node_updator_imp.hpp: New.
	* include/ext/pb_assoc/detail/tree_policy/
	  order_statistics_imp.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_append.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_apply.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_at_index.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_contains.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_filter.hpp: New.
	* include/ext/pb_assoc/detail/typelist/typelist_transform.hpp: New.
	* include/ext/pb_assoc/detail/typelist/
	  typelist_typelist_append.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  const_find_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  const_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/
	  find_iterator.hpp: New.
	* include/ext/pb_assoc/detail/unordered_iterator/iterator.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  constructor_destructor_and_related.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  erase_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	  erase_if_pred.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	insert_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	invalidation_guarantee_selector.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	it_value_type_traits.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/iterator.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	iterator_fn_imps.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	value_type_adapter.hpp: New.
	* include/ext/pb_assoc/detail/value_type_adapter/
	value_type_traits.hpp: New.
	* testsuite/Makefile.am (CLEANFILES): Add .o, .dat, .cc.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/testsuite_common_types.h: New.
	* testsuite/testsuite_visualization.h: New.
	* testsuite/ext/pb_assoc/example/basic_map.cc: New.
	* testsuite/ext/pb_assoc/example/basic_multimap.cc: New.
	* testsuite/ext/pb_assoc/example/basic_set.cc: New.
	* testsuite/ext/pb_assoc/example/ds_traits.cc: New.
	* testsuite/ext/pb_assoc/example/erase_if.cc: New.
	* testsuite/ext/pb_assoc/example/extract_key.cc: New.
	* testsuite/ext/pb_assoc/example/hash_find_neg.cc: New.
	* testsuite/ext/pb_assoc/example/hash_illegal_resize.cc: New.
	* testsuite/ext/pb_assoc/example/hash_initial_size.cc: New.
	* testsuite/ext/pb_assoc/example/hash_load_set_change.cc: New.
	* testsuite/ext/pb_assoc/example/hash_mod.cc: New.
	* testsuite/ext/pb_assoc/example/hash_resize.cc: New.
	* testsuite/ext/pb_assoc/example/hash_resize_neg.cc: New.
	* testsuite/ext/pb_assoc/example/hash_shift_mask.cc: New.
	* testsuite/ext/pb_assoc/example/mapping_level.cc: New.
	* testsuite/ext/pb_assoc/example/mapping_level_neg.cc: New.
	* testsuite/ext/pb_assoc/example/ms_traits.cc: New.
	* testsuite/ext/pb_assoc/example/ranged_hash.cc: New.
	* testsuite/ext/pb_assoc/example/store_hash.cc: New.
	* testsuite/ext/pb_assoc/example/tree_intervals.cc: New.
	* testsuite/ext/pb_assoc/example/tree_join.cc: New.
	* testsuite/ext/pb_assoc/example/tree_order_statistics.cc: New.
	* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc: New.
	* testsuite/ext/pb_assoc/example/tree_split.cc: New.
	* testsuite/performance/20_util/allocator/(insert.cc,
	  insert_insert.cc, list_sort_search.cc, map_mt_find.cc, map_thread.cc,
	  producer_consumer.cc): Recast to use typelists and move to...
	* testsuite/performance/23_containers/find/map.cc: New.
	* testsuite/performance/23_containers/index/map.cc: New.
	* testsuite/performance/23_containers/insert/associative.cc: New.
	* testsuite/performance/23_containers/insert/sequence.cc: New.
	* testsuite/performance/23_containers/insert_erase/associative.cc: New.
	* testsuite/performance/23_containers/producer_consumer/
	(associative.cc, sequence.cc): New.
	* testsuite/performance/23_containers/sort_search/list.cc: New.
	* testsuite/performance/23_containers/container_benchmark.cc: Remove.
	* testsuite/performance/23_containers/map_create_fill.cc: Move...
	* testsuite/performance/23_containers/create/map.cc: ...here.
	* testsuite/performance/23_containers/set_create_from_sorted.cc: Move.
	* testsuite/performance/23_containers/create_from_sorted/set.cc: here.
	* testsuite/performance/23_containers/list_create_fill_sort.cc: Move...
	* testsuite/performance/23_containers/create_sort/list.cc: ...here.
	* testsuite/performance/23_containers/set_insert_from_sorted.cc: Move.
	* testsuite/performance/23_containers/insert_from_sorted/set.cc: here.

Co-Authored-By: Ami Tavory <pbassoc@gmail.com>

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

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

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

From-SVN: r101204
2005-06-20 06:48:28 +00:00
Jakub Jelinek 5ef55e37b8 baseline_symbols.txt: Update.
2005-06-17  Jakub Jelinek  <jakub@redhat.com>
            Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

From-SVN: r101149
2005-06-18 06:14:43 +00:00
Paolo Carlini d5f261c135 [multiple changes]
2005-06-17  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2005-01-12  Christopher Jefferson <chris@bubblescope.net>

	* include/bits/stl_function.h (mem_fun_t, const_mem_fun_t,
	mem_fun_ref_t, const_mem_fun_ref_t, mem_fun1_t, const_mem_fun1_t,
	mem_fun1_ref_t, const_mem_fun1_ref_t): Remove overloads for void
	return type, just an old HP/SGI workaround.
	* testsuite/20_util/functional/binders.cc: Move to...
	* testsuite/20_util/functional/binders/3113.cc: ...here.
	* testsuite/20_util/functional/binders/1.cc: New.

From-SVN: r101139
2005-06-17 21:51:34 +00:00
Jonathan Wakely 0ec56ba325 * docs/html/21_strings/gotw29a.txt: Update code to corrected version.
From-SVN: r101130
2005-06-17 17:26:13 +01:00
Benjamin Kosnik bb2b2a2472 [multiple changes]
2005-06-17  Jakub Jelinek  <jakub@redhat.com>
            Benjamin Kosnik  <bkoz@redhat.com>

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

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

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

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

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

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

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

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

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

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

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

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

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

From-SVN: r101125
2005-06-17 07:33:56 +00:00
Paolo Carlini 7ffd2d94ca hashtable: Trivial formatting fixes.
2005-06-15  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/hashtable: Trivial formatting fixes.
	* include/tr1/unordered_map: Likewise.
	* include/tr1/unordered_set: Likewise.

From-SVN: r100988
2005-06-15 17:48:00 +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
Benjamin Kosnik fdeeef7f2a re PR libstdc++/21955 (std::stringbuf vs. in_avail)
2005-06-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/21955
	* include/std/std_sstream.h (basic_stringbuf::showmanyc): Add.
	Remove unnecessary this->_M_mode decoration.
	* include/bits/fstream.tcc: Adjust line spacing.
	* testsuite/27_io/basic_streambuf/in_avail/char/1.cc: New, test
	base class behavior.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: New.
	* testsuite/27_io/basic_stringbuf/in_avail/char/1.cc: Match
	filebuf behavior.
	* testsuite/27_io/basic_stringbuf/in_avail/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/str/wchar_t/1.cc: Same.
	* testsuite/27_io/basic_stringbuf/str/char/1.cc: Same.
	* testsuite/27_io/basic_streambuf/in_avail/char/9701-3.cc: Move...
	* testsuite/27_io/basic_filebuf/in_avail/char/9701-3.cc: ...here.

From-SVN: r100770
2005-06-08 17:29:44 +00:00
Benjamin Kosnik 225962a09b acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex tests.
2005-06-07  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_C99): Use C++ compiler for complex
	tests.
	* configure: Regenerated.

From-SVN: r100713
2005-06-07 16:52:32 +00:00
Adrian Straetling e0374221d9 s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
2005-06-07  Adrian Straetling  <straetling@de.ibm.com>

gcc/ChangeLog:
	* config/s390/s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
	("type"): Add "sem" to 'type' attribute.
	("memory_barrier", "*memory_barrier", "sync_compare_and_swapdi",
	"sync_compare_and_swapsi", "sync_compare_and_swap_ccdi",
	"sync_compare_and_swap_ccsi", "*sync_compare_and_swap_ccdi",
	"*sync_compare_and_swap_ccsi"): New patterns.
	* config/s390/2064.md: ("z_sem"): New insn_reservation.
	* config/s390/2084.md: ("x_sem"): New insn_reservation.
	* config/s390/s390.c: (s390_compare_emitted): New global variable.
	(s390_emit_compare): Do not emit comparison again after cas.
	* config/s390/s390.h (s390_compare_emitted): Declare.

libstdc++/ChangeLog:
	* config/cpu/s390/atomicity.h: (__exchange_and_add,
	__atomic_add): Use the builtins for atomic memory operations.

From-SVN: r100711
2005-06-07 16:35:27 +00:00
Paolo Carlini 17e2915c27 PR libstdc++/21770 (cont: __gnu_debug::string)
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: __gnu_debug::string)
	* include/debug/string: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference, size_type, difference_type.
	* testsuite/21_strings/basic_string/2.cc: New.

From-SVN: r100693
2005-06-07 02:55:06 +00:00
Paolo Carlini 09952accc4 PR libstdc++/21770 (cont: debug-mode)
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770 (cont: debug-mode)
	* include/debug/deque: Use _Base typedefs for pointer, const_pointer,
	reference, const_reference.
	* include/debug/list: Likewise.
	* include/debug/map.h: Likewise.
	* include/debug/multimap.h: Likewise.
	* include/debug/multiset.h: Likewise.
	* include/debug/set.h: Likewise.
	* include/debug/vector: Likewise.

From-SVN: r100692
2005-06-07 02:23:44 +00:00
Paolo Carlini 2fecaef4af [multiple changes]
2005-06-06  Paolo Carlini  <pcarlini@suse.de>

        Port from libstdcxx_so_7-branch:
	2004-09-24  Paolo Carlini  <pcarlini@suse.de>
		    Jonathan Wakely  <redi@gcc.gnu.org>

	* include/bits/stl_list.h (list::list(size_type, value_type,
	const allocator_type&): Implement according to the letter of the
	standard, i.e., don't use two overloads, not equivalent in case
	of non default constructible T.
	(list::resize(size_type, const value_type&)): Fix the signature:
	according to the standard the second argument is by value; also,
	don't use two overloads.
	* include/bits/list.tcc (list::resize(size_type, const value_type&)):
	Adjust consistently the signature.
	* include/bits/stl_deque.h (deque::deque(size_type, value_type,
	const allocator_type&)): Likewise.
	(deque::resize(size_type, const value_type&)): Likewise.
	* include/bits/stl_vector.h (vector::vector(size_type, value_type,
	const allocator_type&)): Likewise.
	(vector::resize(size_type, const value_type&)): Likewise.
	* testsuite/testsuite_hooks.h: Add NonDefaultConstructible test type.
	* testsuite/23_containers/deque/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/list/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/map/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/set/explicit_instantiation/2.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation/2.cc: New.

	* include/bits/deque.tcc: Minor formatting fix.

From-SVN: r100668
2005-06-06 16:59:55 +00:00
Peter Doerfler 50068e44db stl_function.h: ...
2005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>

	* include/bits/stl_function.h: ... and another one.

From-SVN: r100657
2005-06-06 10:00:34 +00:00
Peter Doerfler 5380bc7e61 stl_function.h: Fix typo in comment.
2005-06-06  Peter Doerfler  <doerfler@techinfo.rwth-aachen.de>

	* include/bits/stl_function.h: Fix typo in comment.

From-SVN: r100654
2005-06-06 09:21:07 +00:00
Paolo Carlini 9d997b96c2 acinclude.m4 ([GLIBCXX_ENABLE_C99]): Check clog, clogf, clogl too for ac_c99_complex.
2005-06-05  Paolo Carlini  <pcarlini@suse.de>

	* acinclude.m4 ([GLIBCXX_ENABLE_C99]): Check clog, clogf, clogl
	too for ac_c99_complex.
	* configure: Regenerate.

From-SVN: r100639
2005-06-05 21:58:52 +00:00
Paolo Carlini 4fd20a8f82 re PR libstdc++/21770 (rebinding allocator::value type vs. container::value_type)
2005-06-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/21770
	* include/bits/stl_deque.h: Add concept-check. In class _Deque_base
	rebind _Alloc to  _Tp_alloc_type, change _Deque_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/deque.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_list.h: Add concept-check. In class _List_base
	rebind _Alloc to _Tp_alloc_type and add _M_get_Tp_allocator(), which
	returns the allocator (of type _Node_alloc_type) converted to
	_Tp_alloc_type. Use everywhere _M_get_Tp_allocator() instead of
	get_allocator().
	* include/bits/list.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_vector.h: Add concept-check. In class _Vector_base
	rebind _Alloc to _Tp_alloc_type, change _Vector_impl to inherit from
	the latter and add _M_get_Tp_allocator() which returns it. Use
	everywhere _M_get_Tp_allocator() instead of get_allocator().
	* include/bits/vector.tcc: Likewise, use _M_get_Tp_allocator().
	* include/bits/stl_map.h: Add concept-check. Rebind _Alloc to
	_Pair_alloc_type and use it for _Rb_tree.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_multiset.h: Add concept-check. Rebind _Alloc to
	_Key_alloc_type and use it for _Rb_tree.
	* include/bits/stl_set.h: Likewise.
	* include/bits/basic_string.h: Rebind _Alloc to _CharT_alloc_type and
	use it for the allocator typedefs.
	* testsuite/21_strings/basic_string/1.cc: New.
	* testsuite/23_containers/deque/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/deque/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/deque/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/list/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/list/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/list/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/map/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/map/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/map/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multimap/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multimap/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multimap/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/multiset/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/multiset/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/multiset/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/set/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/set/explicit_instantiation/1.cc: .. here.
	* testsuite/23_containers/set/explicit_instantiation/3.cc: New.
	* testsuite/23_containers/vector/explicit_instantiation.cc: Move to...
	* testsuite/23_containers/vector/explicit_instantiation/1.cc: ... here.
	* testsuite/23_containers/vector/explicit_instantiation/3.cc: New.

From-SVN: r100546
2005-06-03 17:07:48 +00:00
Nathan Sidwell 646221d67d re PR c++/21280 (#pragma interface, templates, and "inline function used but never defined")
PR c++/21280
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust expected errors.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.

From-SVN: r100499
2005-06-02 17:48:58 +00:00
Paolo Carlini 87d33b419b PR libstdc++/20534 (contd)
2005-05-31  Paolo Carlini  <pcarlini@suse.de>

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

From-SVN: r100405
2005-05-31 18:31:55 +00:00
Paolo Carlini d5c405cc71 std_complex.h (log(const complex<_Tp>&)): When _GLIBCXX_USE_C99_COMPLEX, forward to __builtin_clog/clogf/clogl.
2005-05-30  Paolo Carlini  <pcarlini@suse.de>

	* include/std/std_complex.h (log(const complex<_Tp>&)): When
	_GLIBCXX_USE_C99_COMPLEX, forward to __builtin_clog/clogf/clogl.

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

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

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

From-SVN: r100304
2005-05-28 21:57:03 +00:00
Paolo Carlini 8dabce9822 abi.html: Mention 3.4.0 as the current baseline; add a notice about the configure options.
2005-05-27  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/abi.html: Mention 3.4.0 as the current baseline; add
	a notice about the configure options.

From-SVN: r100277
2005-05-27 21:27:48 +00:00