Commit Graph

4708 Commits

Author SHA1 Message Date
Jonathan Wakely
70826946ea re PR libstdc++/42019 (shared_ptr can not be used with -fno-rtti)
2009-11-20  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/42019
	* include/tr1/shared_ptr.h: Only use typeid when RTTI is enabled.
	* include/bits/shared_ptr_base.h: Likewise.
	* include/bits/shared_ptr.h: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/misc/42019.cc: New.
	* testsuite/20_util/shared_ptr/misc/42019.cc: New.

From-SVN: r154377
2009-11-20 21:23:02 +00:00
Paolo Carlini
3d68714e22 compatibility-c++0x.cc (_Fnv_hash<4>, [...]): Add.
2009-11-21  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/compatibility-c++0x.cc (_Fnv_hash<4>, _Fnv_hash<8>): Add.

From-SVN: r154361
2009-11-20 10:35:43 +00:00
Benjamin Kosnik
bf4967a1bd pool_allocator.cc: Adjust catch blocks.
2009-11-19  Benjamin Kosnik  <bkoz@redhat.com>

	* src/pool_allocator.cc: Adjust catch blocks.
	* src/bitmap_allocator.cc: Same.
	* src/localename.cc: Same.
	* src/ios.cc: Same.

	* libsupc++/cxxabi-forced.h: Adjust comments, markup.

	* testsuite/util/testsuite_hooks.h (copy_constructor::copyCount):
	Remove.
	(copy_constructor::dtorCount): Remove.
	* testsuite/23_containers/list/modifiers/1.h: Adjust.
	* testsuite/23_containers/list/modifiers/2.h: Same.
	* testsuite/23_containers/list/modifiers/3.h: Same.

From-SVN: r154341
2009-11-19 19:21:05 +00:00
Paolo Carlini
4a85780b75 re PR libstdc++/41622 ([DR 1245] [c++0x] std::hash<std::string>::operator() copies its argument)
2009-11-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41622
	* include/bits/functional_hash.h: Implement inline the various
	std::hash specializations, using, when appropriate, pass by
	const ref too, per DR 1245.
	* include/tr1_impl/functional_hash.h: Remove, move its contents...
	* include/tr1/functional_hash.h: ... here.
	* include/std/functional: Tweak includes.
	* src/hash_c++0x: Rename to...
	* src/compatibility-c++0x.cc: ... this, implementing compatibility
	std::hash<>::operator() specializations.
	* src/hash.cc: Do not mark specializations as throw().
	* src/Makefile.am: Adjust.
	* include/Makefile.am: Likewise.
	* src/Makefile.in: Regenerate.
	* include/Makefile.in: Likewise.
	* testsuite/util/testsuite_api.h: Define a dummy hash for
	NonDefaultConstructible.
	* testsuite/23_containers/unordered_map/requirements/
	explicit_instantiation/2.cc: Use it.
	* testsuite/23_containers/unordered_multimap/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_set/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/requirements/
	explicit_instantiation/2.cc: Likewise.

From-SVN: r154335
2009-11-19 16:55:25 +00:00
Johannes Singler
d95ba652ab partition.h (__parallel_partition): Correctly initialize chunk size.
2009-11-19  Johannes Singler  <singler@kit.edu>

        * include/parallel/partition.h (__parallel_partition): Correctly
        initialize chunk size.
        (__parallel_nth_element): Respect nth_element_minimal_n.  Use
        sequential nth_element as base case, instead of sequential sort.

From-SVN: r154333
2009-11-19 16:43:20 +00:00
Benjamin Kosnik
5a5e2828d2 profiler.h: Remove namespace markup.
2009-11-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/profile/impl/profiler.h: Remove namespace markup.

From-SVN: r154272
2009-11-17 21:35:21 +00:00
Benjamin Kosnik
9ee6a74058 bitset: Tweak doxygen markup.
2009-11-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/profile/bitset: Tweak doxygen markup.
	* include/profile/deque: Same.
	* include/profile/list: Same.
	* include/profile/map.h: Same.
	* include/profile/multimap.h: Same.
	* include/profile/multiset.h: Same.
	* include/profile/set.h: Same.
	* include/profile/unordered_map: Same.
	* include/profile/vector: Same.

	* include/profile/impl/profiler_container_size.h: Use namespace
	__gnu_profile instead of __cxxprof_impl.
	* include/profile/impl/profiler.h: Same.
	(_GLIBCXX_PROFILE_IMPL_REENTRANCE_GUARD): To
	_GLIBCXX_PROFILE_REENTRANCE_GUARD.
	Remove namespace __cxxprof_guard.
	(__reentrance_guard): De-templatize.
	(__reentrance_guard::__inside_cxxprof_impl): To
	__reentrance_guard::_S_get_in.

	* include/profile/impl/profiler_hash_func.h: Use namespace
	__gnu_profile instead of __cxxprof_impl.
	* include/profile/impl/profiler_hashtable_size.h: Same.
	* include/profile/impl/profiler_map_to_unordered_map.h: Same.
	* include/profile/impl/profiler_node.h: Same.
	* include/profile/impl/profiler_state.h: Same.
	* include/profile/impl/profiler_trace.h: Same.
	* include/profile/impl/profiler_vector_size.h: Same.
	* include/profile/impl/profiler_vector_to_list.h: Same.
	* doc/xml/manual/profile_mode.xml: Update.

From-SVN: r154269
2009-11-17 20:45:32 +00:00
Benjamin Kosnik
1ceb9e066c bitset: Add doxygen markup.
2009-11-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/debug/bitset: Add doxygen markup.
	* include/debug/deque: Same.
	* include/debug/list: Same.
	* include/debug/map.h: Same.
	* include/debug/multimap.h: Same.
	* include/debug/set.h: Same.
	* include/debug/multiset.h: Same.
	* include/debug/unordered_map: Same.
	* include/debug/unordered_set: Same.
	* include/debug/string: Same.
	* include/debug/vector: Same.

From-SVN: r154268
2009-11-17 20:38:33 +00:00
Steve Ward
ceaaa5ce51 cxxabi.h (__cxa_demangle): Fix typo in comment.
2009-11-15  Steve Ward  <planet36@gmail.com>

	* libsupc++/cxxabi.h (__cxa_demangle): Fix typo in comment.

From-SVN: r154191
2009-11-15 20:59:55 +00:00
Paolo Carlini
33913cfa99 forward_list.h (forward_list<>::erase_after): Change signature per N2988, return void; simplify.
2009-11-13  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/forward_list.h (forward_list<>::erase_after):
	Change signature per N2988, return void; simplify.
	(_Fwd_list_base<>::_M_erase_after): Likewise return void.
	(forward_list<>::~forward_list): Do not call _M_erase_after
	unnecessarily, the base class destructor already does it.
	(forward_list<>::splice_after(const_iterator position,
	forward_list&&, const_iterator i): Check position != i and
	position != ++i.
	* include/bits/forward_list.tcc (_Fwd_list_base<>::
	_M_erase_after(typename _Node_base::_Pointer): Simplify.
	(_Fwd_list_base<>::_M_erase_after(typename _Node_base::_Pointer,
	typename _Node_base::_Pointer): Fix (remove the correct range
	of element) and simplify (update __pos->_M_next at the end).
	* testsuite/23_containers/forward_list/modifiers/3.cc: Adjust
	and extend.
	* testsuite/23_containers/forward_list/ext_pointer/
	modifiers/3.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Tweak dg-error line numbers.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r154174
2009-11-13 22:41:49 +00:00
Paolo Carlini
8ad7097c11 algorithm: Include <utility>, per UK-300.
2009-11-13  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/algorithm: Include <utility>, per UK-300.
	* include/bits/stl_algobase.h: Don't do it here.

From-SVN: r154152
2009-11-13 15:06:28 +00:00
Paolo Carlini
7274deff73 type_traits (declval): Add, per DR 1255.
2009-11-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/type_traits (declval): Add, per DR 1255.
	(__is_convertible_helper, common_type): Use it.
	* include/bits/move.h: Mention std::declval.
	* testsuite/20_util/declval/requirements/1.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
	* testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
	* testsuite/20_util/common_type/requirements/
	explicit_instantiation.cc: Extend.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r154140
2009-11-13 02:25:12 +00:00
Paolo Carlini
03b2a9a5ac stl_algobase.h: Include the full <utility>, per UK-300.
2009-11-12  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algobase.h: Include the full <utility>, per
	UK-300.
	* include/bits/stl_algo.h: Tweak includes.

From-SVN: r154126
2009-11-12 18:45:23 +00:00
Jason Merrill
0a8fff5778 Makefile.am: Remove use of baseline_file.
* testsuite/Makefile.am: Remove use of baseline_file.
	* testsuite/Makefile.in: Likewise.

From-SVN: r154114
2009-11-11 23:44:32 -05:00
Jason Merrill
fae927d3bd re PR c++/39131 (decimal float point: ICE on typeid( 0.dd ))
PR c++/39131
	* rtti.c (emit_support_tinfos): Add DFP types.
	* config/abi/pre/gnu.ver: Add DFP types.
	* testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.4.

From-SVN: r154113
2009-11-11 23:44:24 -05:00
Paolo Carlini
a4ecd144bb basic_string.h (to_string(int), [...]): Add, per resolution of DR 1261.
2009-11-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/basic_string.h (to_string(int), to_string(unsigned),
	to_string(long), to_string(unsigned long), to_string(float),
	to_string(double), to_wstring(int), to_wstring(unsigned),
	to_wstring(long), to_wstring(unsigned long), to_wstring(float),
	to_wstring(double)): Add, per resolution of DR 1261.
	* include/ext/vstring.h: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	dr1261.cc: Add.
	* testsuite/21_strings/basic_string/numeric_conversions/wchar_t/
	dr1261.cc: Likewise.

From-SVN: r154102
2009-11-11 19:57:48 +00:00
Benjamin Kosnik
8eead16e5e user.cfg.in: Regenerate, add files.
2009-11-09  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/doxygen/user.cfg.in: Regenerate, add files.
	* libsupc++/eh_ptr.cc: Format.
	* libsupc++/exception_ptr.h: Same.
	* libsupc++/cxxabi.h(recursive_init_error): Move declaration here.
	* libsupc++/guard.cc: From here.
	* libsupc++/nested_exception.h: Add markup.

From-SVN: r154054
2009-11-09 22:09:30 +00:00
Johannes Singler
8b0c13a824 multiway_merge.h (multiway_merge_*, [...]): Replace int by appropriate difference_type (typedef to _SeqNumber) or _ThreadIndex.
2009-11-09  Johannes Singler  <singler@kit.edu>

	* include/parallel/multiway_merge.h (multiway_merge_*,
	__sequential_multiway_merge, parallel_multiway_merge): Replace
	int by appropriate difference_type (typedef to _SeqNumber) or
	_ThreadIndex.
	* include/parallel/multiseq_selection.h (multiseq_partition,
	multiseq_selection): Replace int by appropriate difference_type
	(typedef to _SeqNumber)
	* include/parallel/base.h (__get_max_threads): Replace int by
	_ThreadIndex.
	* include/parallel/balanced_quicksort.h
	(__qsb_local_sort_with_helping, __parallel_sort_qsb): Likewise.
	* include/parallel/set_operations.h (__parallel_set_operation):
	Likewise.
	* include/parallel/unique_copy.h (__parallel_unique_copy): Likewise.
	* include/parallel/multiway_mergesort.h (_SplitConsistently,
	parallel_sort_mwms_pu, parallel_sort_mwms): Likewise.
	* include/parallel/partial_sum.h (__parallel_partial_sum_linear):
	Likewise.
	* include/parallel/partition.h (__parallel_partition): Replace int
	by appropriate difference_type or _ThreadIndex.

From-SVN: r154039
2009-11-09 16:36:59 +00:00
Jason Merrill
624d3e5760 sso_string_base.h (_M_mutate): Remove extra 'const'.
2009-11-08  Jason Merrill  <jason@redhat.com>

	* include/ext/sso_string_base.h (_M_mutate): Remove extra 'const'.

From-SVN: r154025
2009-11-09 00:26:03 +00:00
Benjamin Kosnik
8e32aa11c7 user.cfg.in: Adjust includes.
2009-11-06  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/doxygen/user.cfg.in: Adjust includes.

	* doc/doxygen/doxygroups.cc: Move group markup.
	* include/tr1_impl/regex: Change " to '. Add group markup.
	* include/std/utility: Same.
	* include/std/type_traits: Same.
	* include/std/streambuf: Same.
	* include/std/iosfwd: Same.
	* include/std/limits: Same.
	* include/std/sstream: Same.
	* include/profile/impl/profiler_state.h: Same.
	* include/profile/impl/profiler_hashtable_size.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/stl_iterator_base_types.h: Same.
	* include/bits/stream_iterator.h: Same.
	* include/bits/stl_iterator.h: Same.
	* include/bits/stl_tempbuf.h: Same.
	* include/bits/streambuf_iterator.h: Same.
	* libsupc++/exception: Same.
	* libsupc++/cxxabi.h: Same.
	* include/tr1_impl/type_traits: Same.

	* include/parallel/multiway_merge.h: Change @__c to @c, @__f to @f.
	* include/parallel/list_partition.h: Same.
	* include/parallel/for_each.h: Same.
	* include/parallel/workstealing.h: Same.
	* include/parallel/base.h: Same.
	* include/parallel/equally_split.h: Same.
	* include/parallel/random_shuffle.h: Same.
	* include/parallel/balanced_quicksort.h: Same.
	* include/parallel/merge.h: Same.
	* include/parallel/multiway_mergesort.h: Same.
	* include/parallel/compatibility.h: Same.
	* include/parallel/queue.h: Same.
	* include/parallel/checkers.h: Same.
	* include/parallel/random_number.h: Same.


	* include/c_global/csignal: Change # to \#.
	* include/c_global/cstdlib: Same.
	* include/c_global/cstdio: Same.
	* include/c_global/cstdarg: Same.
	* include/c_global/cctype: Same.
	* include/c_global/cerrno: Same.
	* include/c_global/cstdatomic: Same.
	* include/c_global/cmath: Same.
	* include/c_global/ciso646: Same.
	* include/c_global/ctime: Same.
	* include/c_global/clocale: Same.
	* include/c_global/climits: Same.
	* include/c_global/cassert: Same.
	* include/c_global/csetjmp: Same.
	* include/c_global/cwchar: Same.
	* include/c_global/cfloat: Same.
	* include/c_global/cstring: Same.
	* include/c_global/cstddef: Same.
	* include/c_global/cwctype: Same.

	* include/std/memory: Only dance around boost_sp_counted_base.h.
	* include/tr1_impl/boost_sp_counted_base.h: Add markup.
	* include/tr1/shared_ptr.h: Strip markup.
	* include/bits/shared_ptr.h: Move base types...
	* include/bits/shared_ptr_base.h: ...here.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* configure: Same.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
	Adjust line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.

From-SVN: r153980
2009-11-06 22:15:17 +00:00
Paolo Carlini
77d16198fc multiway_merge.h: Simple formatting and uglification fixes.
2009-11-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/multiway_merge.h: Simple formatting and
	uglification fixes.
	* include/parallel/find_selectors.h: Likewise.
	* include/parallel/losertree.h: Likewise.
	* include/parallel/list_partition.h: Likewise.
	* include/parallel/for_each.h: Likewise.
	* include/parallel/multiseq_selection.h: Likewise.
	* include/parallel/workstealing.h: Likewise.
	* include/parallel/par_loop.h: Likewise.
	* include/parallel/numeric: Likewise.
	* include/parallel/quicksort.h: Likewise.
	* include/parallel/equally_split.h: Likewise.
	* include/parallel/omp_loop_static.h: Likewise.
	* include/parallel/random_shuffle.h: Likewise.
	* include/parallel/balanced_quicksort.h: Likewise.
	* include/parallel/tags.h: Likewise.
	* include/parallel/set_operations.h: Likewise.
	* include/parallel/merge.h: Likewise.
	* include/parallel/unique_copy.h: Likewise.
	* include/parallel/multiway_mergesort.h: Likewise.
	* include/parallel/search.h: Likewise.
	* include/parallel/partition.h: Likewise.
	* include/parallel/partial_sum.h: Likewise.
	* include/parallel/find.h: Likewise.
	* include/parallel/queue.h: Likewise.
	* include/parallel/omp_loop.h: Likewise.
	* include/parallel/checkers.h: Likewise.
	* include/parallel/sort.h: Likewise.

From-SVN: r153966
2009-11-06 11:39:35 +00:00
Jonathan Wakely
21a15d9f83 re PR libstdc++/41949 (std::endl documentation contains bad link)
2009-11-06  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/41949
	* include/std/ostream: Adjust link.

From-SVN: r153961
2009-11-06 08:38:02 +00:00
Paolo Carlini
338311e5d7 multiway_merge.h: Simple formatting and uglification fixes.
2009-11-05  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/multiway_merge.h: Simple formatting and
	uglification fixes.
	* include/parallel/losertree.h: Likewise.
	* include/parallel/base.h: Likewise.
	* include/parallel/par_loop.h: Likewise.
	* include/parallel/omp_loop_static.h: Likewise.
	* include/parallel/multiway_mergesort.h: Likewise.
	* include/parallel/partial_sum.h: Likewise.
	* include/parallel/omp_loop.h: Likewise.

From-SVN: r153939
2009-11-05 14:06:13 +00:00
Benjamin Kosnik
dc5de59088 009-11-04 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/25_algorithms/fill/5.cc: Move...
	* testsuite/25_algorithms/fill_n/1.cc: ...here.

From-SVN: r153929
2009-11-05 02:55:08 +00:00
Paolo Carlini
d87f43c358 multiway_merge.h: Simple formatting and uglification fixes.
2009-11-04  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/multiway_merge.h: Simple formatting and
	uglification fixes.
	* include/parallel/losertree.h: Likewise.

From-SVN: r153907
2009-11-04 18:48:21 +00:00
David Krauss
6e924e079b re PR libstdc++/41351 (std::rotate on RAI does not conform to ISO complexity requirement)
2009-11-03  David Krauss  <potswa@mac.com>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41351
	* include/bits/stl_algo.h (__rotate(_RandomAccessIterator,
	_RandomAccessIterator, _RandomAccessIterator,
	random_access_iterator_tag)): Rewrite to use only std::swap in
	general and std::copy/std::copy_backward when safe.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r153860
2009-11-03 18:16:34 +00:00
Benjamin Kosnik
c36abf0326 future: Use base class with nested types.
2009-11-02  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/future: Use base class with nested types.
	(__future_base): New.
	(__future_base::_Result_base): From _Future_result_base.
	(__future_base::_Result): From _Future_result.
	(__future_base::_Move_result): From _Move_future_result.
	(__future_base::_Ptr): From _Future_ptr.
	(__future_base::_State): From _Future_state.
	(__basic_future): From _Future_impl.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust line
	numbers.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Same.

From-SVN: r153834
2009-11-03 00:47:48 +00:00
Paolo Carlini
cc1e250414 chrono (struct __common_rep_type): New.
2009-10-31  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/chrono (struct __common_rep_type): New.
	(duration_cast(const duration<>&),
	duration<>::duration(const _Rep2&),
	duration<>::duration(const duration<>&),
	operator*(const duration<>&, const _Rep2&),
	operator*(const _Rep1&, const duration<>&),
	operator/(const duration<>&, const _Rep2&),
	time_point_cast(const time_point<>&)): Implement resolution of
	DR 1177 ([Ready] in Santa Cruz), change to not participate to
	overload resolution if the constraints are not met. 
	* testsuite/20_util/duration/cons/1_neg.cc: Adjust dg-errors.
	* testsuite/20_util/duration/cons/dr974.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
	dg-error line numbers.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.

From-SVN: r153787
2009-11-01 00:35:40 +00:00
Gerald Pfeifer
2c42b33914 intro.xml: Refer to our bugs page instead of Bugzilla directly.
* doc/xml/manual/intro.xml: Refer to our bugs page instead of
	Bugzilla directly.

From-SVN: r153775
2009-10-31 12:00:44 +00:00
Jerry Quinn
52669d592b mangle.c (mangle_type_string_for_rtti): Reapply 153734.
/gcc/cp
2009-10-30  Jerry Quinn  <jlquinn@optonline.net>

	* mangle.c (mangle_type_string_for_rtti): Reapply 153734.
	(needs_fake_anon): Likewise.
	(write_name): Likewise.
	(write_nested_name): Likewise.
	* cp-tree.h (mangle_type_string_for_rtti): Likewise.
	(get_anonymous_namespace): Likewise.
	* name-lookup.c (get_anonymous_namespace_name): Likewise.
	* rtti.c (tinfo_name): Likewise, with +1 in the second 
	build_string call fixed.
	(tinfo_base_init): Likewise.

libstdc++/
2009-10-30  Jerry Quinn  <jlquinn@optonline.net>

	* libsupc++/tinfo.cc (operator=(const type_info&)): Reapply 153734.
	* libsupc++/typeinfo (type_info::name()): Likewise.
	* libsupc++/tinfo2.cc (before):  Likewise.

From-SVN: r153768
2009-10-30 22:23:59 +00:00
Paolo Carlini
a20c8540db random.h: Fix typo in static_assert text.
2009-10-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/random.h: Fix typo in static_assert text.

From-SVN: r153767
2009-10-30 21:31:23 +00:00
Paolo Carlini
f6d08b433b re PR libstdc++/41759 ([C++0x] <random> static_assert phrasing should be positive)
2009-10-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41759
	* include/bits/random.h: Tweak a bit the text of some static_asserts.

From-SVN: r153762
2009-10-30 17:39:18 +00:00
Paolo Carlini
297f34d719 type_traits (__is_convertible_simple): Remove.
2009-10-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/type_traits (__is_convertible_simple): Remove.
	(__is_convertible_helper): Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r153743
2009-10-30 13:12:08 +00:00
Jerry Quinn
2ea9fa8a9b tinfo.cc (operator=(const type_info&)): Revert 153734.
2009-10-30  Jerry Quinn  <jlquinn@optonline.net>

	* libsupc++/tinfo.cc (operator=(const type_info&)): Revert 153734.
	* libsupc++/typeinfo (type_info::name()): Likewise.
	* libsupc++/tinfo2.cc (before):  Likewise.

2009-10-30  Jerry Quinn  <jlquinn@optonline.net>

	* mangle.c (mangle_type_string_for_rtti): Revert 153734.
	(needs_fake_anon): Likewise.
	(write_name): Likewise.
	(write_nested_name): Likewise.
	* cp-tree.h (mangle_type_string_for_rtti): Likewise.
	(get_anonymous_namespace): Likewise.
	* name-lookup.c (get_anonymous_namespace_name): Likewise.
	* rtti.c (tinfo_name): Likewise.
	(tinfo_base_init): Likewise.

From-SVN: r153742
2009-10-30 12:20:38 +00:00
Jerry Quinn
1e43a145b1 mangle.c (mangle_type_string_for_rtti): Revert r149964.
2009-10-28  Jerry Quinn  <jlquinn@optonline.net>

	* mangle.c (mangle_type_string_for_rtti): Revert r149964.
	(needs_fake_anon): Likewise.
	(write_name): Likewise.
	(write_nested_name): Likewise.
	* cp-tree.h (mangle_type_string_for_rtti): Likewise.
	(get_anonymous_namespace): Likewise.
	* name-lookup.c (get_anonymous_namespace_name): Likewise.
	* rtti.c (tinfo_name): Insert '*' in front of private names.
	(tinfo_base_init): Use it.

2009-10-28  Jerry Quinn  <jlquinn@optonline.net>

	* libsupc++/tinfo.cc (operator=(const type_info&)): Compare by
	pointer if name begins with '*'.
	* libsupc++/typeinfo (type_info::name()): Likewise.
	* libsupc++/tinfo2.cc (before):  Likewise.

From-SVN: r153734
2009-10-30 05:17:50 +00:00
Paolo Carlini
6581b14bdf PR libstdc++/40925 (again)
2009-10-29  Paolo Carlini  <paolo.carlini@oracle.com>
  	    Douglas Gregor  <doug.gregor@gmail.com>

	PR libstdc++/40925 (again)
	* include/bits/stl_pair.h (pair<_T1, _T2>::pair(_U1&&, const _T2&),
	pair<_T1, _T2>::pair(const _T1&, _U2&&)): Add, to deal correctly
	with move-only types in the presence of "null pointers".
	* testsuite/20_util/pair/40925.cc: Extend.

Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>

From-SVN: r153733
2009-10-30 02:29:14 +00:00
Paolo Carlini
2d0269f683 type_traits (__is_int_or_cref): Remove.
2009-10-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/type_traits (__is_int_or_cref): Remove.
	(__is_convertible_helper): Fix per C++0x and simplify (the hack to
	suppress warnings isn't necessary anymore).
	* testsuite/20_util/is_convertible/requirements/typedefs.cc: New.
	* testsuite/20_util/is_convertible/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_convertible/value.cc: Likewise.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.

From-SVN: r153728
2009-10-29 23:23:29 +00:00
Paolo Carlini
28a371ae13 40925.cc: Minor comment fix.
2009-10-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/pair/40925.cc: Minor comment fix.

From-SVN: r153727
2009-10-29 19:45:36 +00:00
Paolo Carlini
d858307d7b [multiple changes]
2009-10-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40925
	* include/bits/stl_pair.h (pair<_T1, _T2>::pair(_U1&&, _U2&&)):
	Use enable_if to remove it from the overload set when either _U1
	is not convertible to _T1 or _U2 is not convertible to _T2.
	(pair<>::pair(_U1&&, _Arg0&&, _Args&&...)): Remove.

2009-10-29  Douglas Gregor  <doug.gregor@gmail.com>

	PR libstdc++/40925
	* testsuite/20_util/pair/40925.cc: Add.

From-SVN: r153725
2009-10-29 19:26:04 +00:00
Paolo Carlini
dd6c7cdf81 decimal: Minor formatting and uglification fixes.
2009-10-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/decimal/decimal: Minor formatting and uglification fixes.
	* include/decimal/decimal.h: Likewise.

From-SVN: r153701
2009-10-29 13:07:21 +00:00
Paolo Carlini
de5b9f12c5 stl_iterator_base_funcs.h: (next): Change template parameter name consistently with the resolution of DR...
2009-10-28  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_iterator_base_funcs.h: (next): Change
	template parameter name consistently with the resolution
	of DR 1011 ([Ready] in Santa Cruz).

From-SVN: r153654
2009-10-28 13:07:00 +00:00
Johannes Singler
15e2a6c05e re PR libstdc++/40852 ([parallel-mode] parallel sort run time increases ~10 fold when vector size gets over ~4*10^9)
2009-10-28  Johannes Singler  <singler@kit.edu>

        PR libstdc++/40852
        * include/parallel/multiseq_selection.h
        (multiseq_partition, multiseq_selection):  Avoid intermediate
        values exceeding the integer type range for very large inputs.

From-SVN: r153648
2009-10-28 10:04:03 +00:00
Paolo Carlini
9c67ec2204 chrono (duration<>::duration(const duration<>&)): Fix per the straightforward resolution of DR 974.
2009-10-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/chrono (duration<>::duration(const duration<>&)): Fix
	per the straightforward resolution of DR 974.
	* testsuite/20_util/duration/cons/dr974.cc: Add.

From-SVN: r153581
2009-10-27 01:18:10 +00:00
Jakub Jelinek
89c74f4afa re PR libstdc++/38923 (symbol versioning disabled due to non-portable sed script)
PR libstdc++/38923
	* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Avoid using too many
	*s.  Accept ld version without text in ()s.
	* configure: Regenerated.

	* acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
	*s.  Accept ld version without text in ()s.
	* configure: Regenerated.

From-SVN: r153570
2009-10-26 21:28:24 +01:00
Jason Merrill
20f2653ef0 PR c++/38796, Core issue 906
PR c++/38796, Core issue 906
gcc/cp
	* cp-tree.h (DECL_DEFAULTED_OUTSIDE_CLASS_P): New.
	(DECL_DEFAULTED_IN_CLASS_P): New.
	* class.c (user_provided_p): Non-static.
	(check_methods): Use it.
	(check_bases_and_members): Check defaulted fns.
	(defaultable_fn_p): Move and rename to...
	* method.c (defaultable_fn_check): ...this.
	(defaulted_late_check): New.
	* pt.c (tsubst_decl): Call it.
	* decl2.c (grokfield): Adjust.
	* decl.c (cp_finish_decl): Adjust.
	(grok_special_member_properties): Use user_provided_p.
libstdc++-v3
	* include/std/future (~Future_result_base): Default outside class
	body.
	* include/std/system_error (error_category()): Likewise.
	* libsupc++/nested_exception.h (nested_exception): Remove
	exception specifications from defaulted methods.

From-SVN: r153565
2009-10-26 15:07:14 -04:00
Paolo Carlini
927dc7c69e re PR libstdc++/41773 (Many libstdc++ failures)
2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41773
	Revert:
	2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
	const _Alloc&)): New, declare.
	(_S_construct(_CharT*, _CharT*, const _Alloc&),
	_S_construct(const _CharT*, const _CharT*, const _Alloc&),
	_S_construct(iterator, iterator, const _Alloc&),
	_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
	forward to the latter.
	* include/bits/basic_string.tcc (_S_construct(const _CharT*,
	size_type, const _Alloc&)): Define.
	(basic_string(const basic_string&, size_type, size_type),
	basic_string(const basic_string&, size_type, size_type,
	const _Alloc&), basic_string(const _CharT*, size_type,
	const _Alloc&), basic_string(const _CharT*, const _Alloc&),
	basic_string(initializer_list<>, const _Alloc&)): Call the latter.
	* config/abi/pre/gnu.ver: Remove recently added exports.
	* src/string-inst.cc: Remove instantiations.

From-SVN: r153040
2009-10-20 21:54:22 +00:00
Paolo Carlini
b6a182f28e re PR libstdc++/41763 (valarray_array.h seems to overuse __restrict__)
2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41763
	* include/bits/valarray_array.h (__valarray_default_construct,
	__valarray_fill_construct, __valarray_copy_construct, __valarray_sum
	__valarray_destroy_elements, __valarray_product): Do not qualify with
	__restrict__ pointers accessing data also accessed by other pointers.

From-SVN: r153039
2009-10-20 21:21:11 +00:00
Paolo Carlini
50e9ed7c6c basic_string.h (_S_construct(const _CharT*, size_type, const _Alloc&)): New, declare.
2009-10-20  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/basic_string.h (_S_construct(const _CharT*, size_type,
	const _Alloc&)): New, declare.
	(_S_construct(_CharT*, _CharT*, const _Alloc&),
	_S_construct(const _CharT*, const _CharT*, const _Alloc&),
	_S_construct(iterator, iterator, const _Alloc&),
	_S_construct(const_iterator, const_iterator, const _Alloc&)): New,
	forward to the latter.
	* include/bits/basic_string.tcc (_S_construct(const _CharT*,
	size_type, const _Alloc&)): Define.
	(basic_string(const basic_string&, size_type, size_type),
	basic_string(const basic_string&, size_type, size_type,
	const _Alloc&), basic_string(const _CharT*, size_type,
	const _Alloc&), basic_string(const _CharT*, const _Alloc&),
	basic_string(initializer_list<>, const _Alloc&)): Call the latter.
	* config/abi/pre/gnu.ver: Remove recently added exports.
	* src/string-inst.cc: Remove instantiations.

From-SVN: r153023
2009-10-20 16:24:18 +00:00
Phil Muldoon
8345c8e427 printers.py (StdTuplePrinter): New printer.
2009-10-20  Phil Muldoon <pmuldoon@redhat.com>

	* python/libstdcxx/v6/printers.py (StdTuplePrinter): New printer.
	(build_libstdcxx_dictionary): Add StdTuplePrinter registration.

From-SVN: r153013
2009-10-20 13:52:34 +00:00
Benjamin Kosnik
02be8f4a8a stdatomic.h: Include cstdatomic if __cplusplus.
2009-10-16  Benjamin Kosnik  <bkoz@redhat.com>

	* include/c_compatibility/stdatomic.h: Include cstdatomic if
	__cplusplus.

From-SVN: r152918
2009-10-16 20:17:39 +00:00