Commit Graph

2350 Commits

Author SHA1 Message Date
Matt Austern
1985f1cdaa stl_construct.h (_Destroy): New three-argument overload that takes an allocator argument.
* include/bits/stl_construct.h (_Destroy): New three-argument
	overload that takes an allocator argument.  Another inline
	three-argument overload that takes std::allocator and dispatches
	to the two-argument version.
	* include/bits/stl_uninitialized.h (__uninitialized_fill_n_aux):
	Change return type to void to match uninitialized_fill_n.
	(__uninitialized_copy_a_): New function.  Like uninitialized_copy
	except that it takes an allocator and uses it for construct and
	destroy.  If the allocator is std::allocator, dispatches to
	uninitialized_copy.
	(__uninitialized_fill_a): Likewise.
	(__uninitialized_fill_n_a): Likewise.
	(__uninitialized_copy_copy): Give it an allocator argument.
	(__uninitialized_fill_copy): Likewise.
	(__uninitialized_copy_fill): Likewise.
	* include/bits/deque.tcc: Use new forms defined in stl_construct.h
	and stl_uninitialized.h.  Replace use of single-argument _Construct
	and _Destroy with use of allocator's construct and destroy methods.
	* include/bits/list.tcc: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_list.h: Likewise.
	* include/bits/stl_tree.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/vector.tcc: Likewise.
	* include/ext/hashtable.h: Use rebind so that allocator_type
	has correct type for a container's allocator.  Replace use of
	single-argument _Construct and _Destroy with use of allocator's
	construct and destroy methods.
	* include/ext/memory (__uninitialized_copy_n_a): New function.
	Like uninitialized_copy_n except that it takes an extra parameter,
	an allocator, and uses it for construct and destroy operations.
	* include/ext/rope: Use new forms defined in stl_construct.h,
	stl_uninitialized.h, and ext/memory.  Replace use of single-argument
	_Construct and _Destroy with allocator construct and destroy methods.
	* include/ext/ropeimpl.h: Likewise.
	* include/ext/slist.h: Likewise.
	* testsuite/testsuite_allocator.h (check_construct_destroy): New.
	* testsuite/testsuite_allocator.cc (check_construct_destroy): New.
	* testsuite/23_containers/deque/check_construct_destroy.cc: New.
	* testsuite/23_containers/list/check_construct_destroy.cc: New.
	* testsuite/23_containers/set/check_construct_destroy.cc: New.
	* testsuite/23_containers/vector/check_construct_destroy.cc: New.
	* testsuite/ext/hash_check_construct_destroy.cc: New.
	* testsuite/ext/slist_check_construct_destroy.cc: New.

From-SVN: r85265
2004-07-28 16:37:20 +00:00
GCC Administrator
66aeab7d97 Daily bump.
From-SVN: r85240
2004-07-28 00:16:17 +00:00
GCC Administrator
764c35da02 Daily bump.
From-SVN: r85212
2004-07-27 00:16:20 +00:00
GCC Administrator
7d07a70e45 Daily bump.
From-SVN: r85172
2004-07-26 00:16:19 +00:00
GCC Administrator
264c4bdccb Daily bump.
From-SVN: r85131
2004-07-25 00:16:15 +00:00
GCC Administrator
368bf4a184 Daily bump.
From-SVN: r85106
2004-07-24 00:16:13 +00:00
Benjamin Kosnik
1f34d12191 re PR libstdc++/16678 (warning: suggest parentheses around assignment used as truth value)
2004-07-23  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/16678
	* include/bits/locale_facets.tcc: Fix for -Werror.

From-SVN: r85103
2004-07-24 00:10:09 +00:00
GCC Administrator
ef453534c4 Daily bump.
From-SVN: r85067
2004-07-23 00:16:13 +00:00
GCC Administrator
7761cda3b4 Daily bump.
From-SVN: r85027
2004-07-22 00:16:15 +00:00
GCC Administrator
655ba9c71d Daily bump.
From-SVN: r84987
2004-07-21 00:16:12 +00:00
Danny Smith
5794581363 * include/c_std/std_cwchar.h (wcsstr): Correct signature.
From-SVN: r84945
2004-07-20 08:47:42 +00:00
GCC Administrator
a57c6d6b63 Daily bump.
From-SVN: r84939
2004-07-20 00:16:14 +00:00
GCC Administrator
11d6a97449 Daily bump.
From-SVN: r84906
2004-07-19 00:16:15 +00:00
GCC Administrator
b52cf5a743 Daily bump.
From-SVN: r84884
2004-07-18 00:16:11 +00:00
GCC Administrator
cd0408d8ff Daily bump.
From-SVN: r84847
2004-07-17 00:16:21 +00:00
GCC Administrator
1373fd361f Daily bump.
From-SVN: r84788
2004-07-16 00:16:13 +00:00
GCC Administrator
27f3c2ce8d Daily bump.
From-SVN: r84725
2004-07-15 00:16:17 +00:00
Paolo Carlini
368b7a304e re PR libstdc++/16505 ([3.4 only] std::uninitialized_fill_n() incorrect signature)
2004-07-14  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/16505
	* include/bits/stl_uninitialized.h (uninitialized_fill_n): Fix
	the signature to return void, as per 20.4.4.3.
	* include/bits/stl_vector.h (vector::vector(size_type,
	const value_type&, const allocator_type&), vector::vector(size_type),
	vector::_M_initialize_dispatch): Adjust callers.
	* include/bits/vector.tcc (vector<>::_M_fill_assign,
	vector<>::_M_fill_insert): Likewise.
	* testsuite/20_util/memory/16505.cc: New.

From-SVN: r84720
2004-07-14 23:57:34 +00:00
Benjamin Kosnik
780028b6cf mt_allocator.html: Add docs for _Tune.
2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/ext/mt_allocator.html: Add docs for _Tune.
	* include/ext/mt_allocator.h (__mt_alloc::_S_get_options): Make public.
	(__mt_alloc::_S_set_options): Same.
	Add to comments.

2004-07-13  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add allocator defaults
	for linux.
	* configure: Regenerated.

From-SVN: r84674
2004-07-14 06:37:17 +00:00
GCC Administrator
bd09f5b8f1 Daily bump.
From-SVN: r84660
2004-07-14 00:16:12 +00:00
GCC Administrator
d39a988094 Daily bump.
From-SVN: r84592
2004-07-13 00:16:13 +00:00
Benjamin Kosnik
81f80f5feb abi.html: Remove non-public qualification.
2004-07-12  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/abi.html: Remove non-public qualification.

	* include/bits/concurrence.h: Tweak comments.

From-SVN: r84586
2004-07-12 23:40:49 +00:00
GCC Administrator
186af37b4d Daily bump.
From-SVN: r84539
2004-07-12 00:16:13 +00:00
GCC Administrator
b2877863e1 Daily bump.
From-SVN: r84483
2004-07-11 00:16:12 +00:00
GCC Administrator
4c6a63ccbc Daily bump.
From-SVN: r84425
2004-07-10 00:16:13 +00:00
GCC Administrator
3bc0b10f9d Daily bump.
From-SVN: r84333
2004-07-09 00:16:13 +00:00
Paolo Carlini
b714a4192e gslice.h: Trivial formatting fixes.
2004-07-08  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/gslice.h: Trivial formatting fixes.
	* include/bits/gslice_array.h: Likewise.
	* include/bits/indirect_array.h: Likewise.
	* include/bits/mask_array.h: Likewise.
	* include/bits/slice_array.h: Likewise.
	* include/bits/valarray_after.h: Likewise.
	* include/bits/valarray_array.h: Likewise.
	* include/bits/valarray_before.h: Likewise.
	* include/std/std_valarray.h: Likewise.

From-SVN: r84312
2004-07-08 20:48:04 +00:00
Benjamin Kosnik
75f29cdded re PR c++/16169 (-Weffc++ item 15 improvements)
2004-07-08  Benjamin Kosnik  <bkoz@redhat.com>

	PR c++/16169
	* include/bits/basic_string.h (basic_string::operator=): Revert.

From-SVN: r84296
2004-07-08 15:56:21 +00:00
GCC Administrator
d1ae24b3f5 Daily bump.
From-SVN: r84248
2004-07-08 00:16:15 +00:00
Paolo Carlini
9f9000d177 re PR libstdc++/16401 (ostringstream in gcc 3.4.x very slow for big data)
2004-07-07  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/16401
	* include/bits/sstream.tcc (overflow): When reallocating _M_string
	use an exponential grow policy.
	* testsuite/27_io/basic_stringbuf/overflow/char/1.cc: New.
	* testsuite/performance/27_io/stringbuf_overflow.cc: New.

From-SVN: r84235
2004-07-07 21:48:01 +00:00
GCC Administrator
314fbb7be7 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r84183.2
2004-07-07 00:16:18 +00:00
GCC Administrator
aac1d259ac Daily bump.
From-SVN: r84142
2004-07-06 00:16:10 +00:00
GCC Administrator
91a8b4596b Daily bump.
From-SVN: r84102
2004-07-05 00:16:11 +00:00
Paolo Carlini
43da93a728 basic_string.h: Trivial formatting fixes and/or const-ification of some variables.
2004-07-04  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h: Trivial formatting fixes and/or
	const-ification of some variables.
	* include/bits/deque.tcc: Likewise.
	* include/bits/stl_algobase.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_construct.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_pair.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/vector.tcc: Likewise.

From-SVN: r84090
2004-07-04 17:57:58 +00:00
GCC Administrator
61b35a3e46 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r84066.2
2004-07-04 00:16:13 +00:00
GCC Administrator
96683b8ffd Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r84039.2
2004-07-03 00:16:14 +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
Paolo Carlini
5e91e92ede type_traits.h (_Is_normal_iterator): Move...
2004-07-02  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/type_traits.h (_Is_normal_iterator): Move...
	* include/bits/cpp_type_traits.h: ... here, renamed to
	__is_normal_iterator and consistent with the other traits.
	* include/bits/stl_algobase.h (__copy_ni1, __copy_ni2): Convert
	to the struct __copy_normal and three specializations.
	(__copy_backward_output_normal_iterator,
	__copy_backward_input_normal_iterator): Likewise, convert to
	the struct __copy_backward_normal and three specializations.
	(copy, copy_backward): Use the latter.
	(__copy_aux, __copy_backward_aux): Very minor tweaks.

From-SVN: r84019
2004-07-02 14:49:09 +00:00
GCC Administrator
f16ee2a09a Daily bump.
From-SVN: r84006
2004-07-02 00:16:12 +00:00
Paolo Carlini
695e0fbfe0 stl_algobase.h (__copy_trivial): Remove.
2004-07-01  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (__copy_trivial): Remove.
	(__copy_aux2): Rewrite as __copy_aux to use __is_pointer,
	__is_trivially_copyable, __are_same and __copy::copy.
	(__copy): Rewrite as a class template and two specializations.
	(__copy_ni2): Simplify, just call __copy_aux.

	* include/bits/stl_algobase.h (__copy_backward_aux): Add __are_same
	check.
	* testsuite/25_algorithms/copy/1.cc, 2.cc, 3.cc, 4.cc: Test also
	for destination value type != source value type.

From-SVN: r83991
2004-07-01 17:53:21 +00:00
Benjamin Kosnik
f65d320115 Per Bothner <per@bothner.com > Mohan Embar <gnustuff@thisiscool.com>
2004-07-01  Benjamin Kosnik  <bkoz@redhat.com>
            Per Bothner  <per@bothner.com >
	    Mohan Embar  <gnustuff@thisiscool.com>

	PR libstdc++/16248
	* include/bits/concurrence.h (__glibcxx_mutex_type): New.
	(__glibcxx_mutex): Encapsulate mutex init function into type for
	threaded configurations without __GTHREAD_MUTEX_INIT.
	(lock::lock): Make device member a reference.
	(lock::~lock): Same.
	* include/ext/pool_allocator.h (__pool_base::_M_get_mutex): Change
	to mutex_type.
	* src/allocator.cc: Same.

Co-Authored-By: Mohan Embar <gnustuff@thisiscool.com>
Co-Authored-By: Per Bothner <per@bothner.com>

From-SVN: r83985
2004-07-01 14:49:29 +00:00
Brad Spencer
1190bcd85d mt_allocator.h: Handle allocations at static initialization that happen before _S_options is...
2004-06-30  Brad Spencer  <spencer@infointeractive.com>

	* include/ext/mt_allocator.h: Handle allocations at static
	initialization that happen before _S_options is (automatically)
	constructed; set _S_init even if _M_force_new is true.

From-SVN: r83949
2004-07-01 02:21:51 +00:00
GCC Administrator
1730c8f5a7 Daily bump.
From-SVN: r83944
2004-07-01 00:16:14 +00:00
Paolo Carlini
badd64ad92 [multiple changes]
2004-06-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
            Paolo Carlini  <pcarlini@suse.de>

	* include/bits/cpp_type_traits.h: Add __is_pointer and
	__is_trivially_copyable.
	* include/bits/stl_algobase.h (fill, fill_n): Slightly
	tweak to use the latter.
	(__copy_backward_dispatch): Remove.
	(__copy_backward_aux): Rewrite to use __is_pointer and
	__is_trivially_copyable and __copy_backward::copy_b.
	(__copy_backward): Rewrite as a class template and two
	specializations.

2004-06-30  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/25_algorithms/copy.cc: Move to...
	* testsuite/25_algorithms/copy/1.cc: ... here, extend.
	* testsuite/25_algorithms/copy/2.cc: New.
	* testsuite/25_algorithms/copy/3.cc: New.
	* testsuite/25_algorithms/copy/4.cc: New.

From-SVN: r83897
2004-06-30 09:20:18 +00:00
GCC Administrator
9d75385f5c Daily bump.
From-SVN: r83886
2004-06-30 00:16:13 +00:00
GCC Administrator
b1fe2e047c Daily bump.
From-SVN: r83834
2004-06-29 00:16:15 +00:00
Paolo Carlini
ff89096a6e cpp_type_traits.h: Move the additions to namespace __gnu_internal outside of namespace std...
2004-06-28  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/cpp_type_traits.h: Move the additions to
	namespace __gnu_internal outside of namespace std; trivial
	formatting fixes.

From-SVN: r83806
2004-06-28 19:04:03 +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
Paolo Bonzini
e4cb0c0441 Makefile.am: Give a .gch extension to the PCH files, not only to the directory.
2004-06-28  Paolo Bonzini  <bonzini@gnu.org>

	* include/Makefile.am: Give a .gch extension to
	the PCH files, not only to the directory.
	* include/Makefile.in: Regenerate.

From-SVN: r83777
2004-06-28 11:14:44 +00:00
GCC Administrator
e6d6c95a52 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83755.2
2004-06-28 00:16:15 +00:00