Commit Graph

3286 Commits

Author SHA1 Message Date
Johannes Singler
c2ba97097b Add parallel mode.
2007-09-11  Johannes Singler  <singler@ira.uka.de>
	    Leonor Frias Moya  <lfrias@lsi.upc.edu>
            Felix Putze  <kontakt@felix-putze.de>
            Marius Elvert  <marius.elvert@ira.uka.de>
	    Felix Bondarenko  <f.bondarenko@web.de>
	    Robert Geisberger  <robert.geisberger@stud.uni-karlsruhe.de>
	    Robin Dapp  <r.dapp@freenet.de>
  	    Benjamin Kosnik  <bkoz@redhat.com>

	Add parallel mode.
	* include/parallel: New.
	* include/parallel/iterator.h: New.
	* include/parallel/multiway_merge.h: New.
	* include/parallel/parallel.h: New.
	* include/parallel/algorithm
	* include/parallel/find_selectors.h: New.
	* include/parallel/losertree.h: New.
	* include/parallel/list_partition.h: New.
	* include/parallel/types.h: New.
	* include/parallel/for_each.h: New.
	* include/parallel/multiseq_selection.h: New.
	* include/parallel/workstealing.h: New.
	* include/parallel/base.h: New.
	* include/parallel/par_loop.h: New.
	* include/parallel/numeric
	* include/parallel/features.h: New.
	* include/parallel/quicksort.h: New.
	* include/parallel/algorithmfwd.h: New.
	* include/parallel/equally_split.h: New.
	* include/parallel/compiletime_settings.h: New.
	* include/parallel/for_each_selectors.h: New.
	* include/parallel/basic_iterator.h: New.
	* include/parallel/omp_loop_static.h: New.
	* include/parallel/random_shuffle.h: New.
	* include/parallel/balanced_quicksort.h: New.
	* include/parallel/set_operations.h: New.
	* include/parallel/tags.h: New.
	* include/parallel/merge.h: New.
	* include/parallel/tree.h: New.
	* include/parallel/settings.h: New.
	* include/parallel/unique_copy.h: New.
	* include/parallel/multiway_mergesort.h: New.
	* include/parallel/numericfwd.h: New.
	* include/parallel/search.h: New.
	* include/parallel/partition.h: New.
	* include/parallel/compatibility.h: New.
	* include/parallel/algobase.h: New.
	* include/parallel/find.h: New.
	* include/parallel/partial_sum.h: New.
	* include/parallel/algo.h: New.
	* include/parallel/omp_loop.h: New.
	* include/parallel/queue.h: New.
	* include/parallel/timing.h: New.
	* include/parallel/sort.h: New.
	* include/parallel/checkers.h: New.
	* include/parallel/random_number.h: New.
	* include/bits/algorithmfwd.h: New.

	* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
	* configure.host: Add atomic_flags.
	* configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
	* src/Makefile.am: Add parallel_list rules.
	* include/Makefile.am: Add parallel files.
	* testsuite/Makefile.am (check-parallel): Add.
	(check-performance-parallel): Add.
	* config.h.in: Regenerate.
	* configure: Same.
	* libsupc++/Makefile.in: Same.
	* testsuite/Makefile.in: Same.
	* Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* include/Makefile.in: Same.
	* src/Makefile.in: Same.
	* po/Makefile.in: Same.
	
	* config/abi/pre/gnu.ver: Export parallel list bits.

	* docs/html/parallel_mode.html: New.
	* docs/html/documentation.html: Add link.
	* docs/doxygen/user.cfg.in: Adjust for new files and directory.
	* docs/doxygen/doxygroups.cc: Adjust namespace markup.

	* include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
	* include/debug/bitset: Same.
	* include/debug/multiset.h: Same.
	* include/debug/vector: Same.
	* include/debug/map.h: Same.
	* include/debug/deque: Same.
	* include/debug/list: Same.
	* include/debug/debug.h: Same.
	* include/debug/multimap.h: Same.
	* include/std/algorithm: Same.
	* include/std/numeric: Same.
	* include/std/bitset: Same.
	* include/std/string: Same.
	* include/ext/hash_map: Same.
	* include/ext/hash_set: Same.
	* include/bits/stl_list.h: Same.
	* include/bits/stl_map.h: Same.
	* include/bits/stl_algobase.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/stl_multimap.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/bits/stl_numeric.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/char_traits.h: Same.
	* include/bits/stl_algo.h: Same.
	* include/bits/c++config: Same.
	* include/bits/vector.tcc: Same.
	* include/bits/deque.tcc: Same.
	* include/bits/stl_bvector.h: Same.
	* include/bits/list.tcc: Same.
	* src/list.cc: Same.
	* src/parallel_list.cc: New.

	* testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
	* testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
	* scripts/testsuite_flags.in (--cxxparallelflags): New.
	* scripts/check_performance: Adjust.
	* testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
	* testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
	* testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
	* testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
	* testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
	* testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
	* testsuite/26_numerics/headers/numeric/
	parallel_numeric_mixed1.cc: New.
	* testsuite/26_numerics/headers/numeric/
	parallel_numeric_mixed2.cc: New.
	

Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
Co-Authored-By: Felix Bondarenko <f.bondarenko@web.de>
Co-Authored-By: Felix Putze <kontakt@felix-putze.de>
Co-Authored-By: Leonor Frias Moya <lfrias@lsi.upc.edu>
Co-Authored-By: Marius Elvert <marius.elvert@ira.uka.de>
Co-Authored-By: Robert Geisberger <robert.geisberger@stud.uni-karlsruhe.de>
Co-Authored-By: Robin Dapp <r.dapp@freenet.de>

From-SVN: r128395
2007-09-11 22:32:51 +00:00
Benjamin Kosnik
9adfc73cd3 functional_hash.h: Add ext/numeric_traits.h.
2007-09-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/functional_hash.h: Add ext/numeric_traits.h.
	* include/tr1/functional_hash.h Same.
	* include/tr1/functional: Remove string, ext/type_traits.h includes.
	* include/tr1_impl/functional_hash.h: Move string, wstring
	definitions for std::<hash>::operator into separate file.
	* include/std/functional
	* src/hash.cc: New, move definitions here.
	* src/hash_c++0x.cc: Same.
	* src/Makefile.am: Add new source files.
	* configure: Regenerate.
	* Makefile.in: Same.
	* src/Makefile.in: Same.
	* po/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* testsuite/Makefile.in: Same.
	* config/abi/pre/gnu.ver: Add symbols.
	* config/abi/pre/gnu-versioned-namespace.ver: Same, fix.

From-SVN: r128278
2007-09-09 00:05:13 +00:00
Danny Smith
e4bf5dfca1 re PR libstdc++/33203 (libstdc++-v3 build broken on i386-pc-mingw32)
PR libstdc++/33203
	* configure.host (error_constants_dir):  New variable,
	defaulting to os/generic.
	( mingw32*): Overide default.
	* configure.ac (ERROR_CONSTANTS_SRCDIR): New.
	* configure: Regenerate.
	* include/Makefile.am (host_headers): Add
	$(ERROR_CONSTANTS_SRCDIR)/error_constants.h .
	* include/Makefile.in: Regenerate.
	* include/std/system_error (enum posix_errno): Remove.
	Include <bits/error_constants.h> instead.
	* config/os/mingw32/error_constants.h: New.
	* config/os/generic/error_constants.h: New.

From-SVN: r128228
2007-09-07 04:18:40 +00:00
Benjamin Kosnik
bd1a56a0c3 libstdc++.exp: Check CXXFLAGS.
2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/lib/libstdc++.exp: Check CXXFLAGS.
	* scripts/testsuite_flags.in: CXXFLAGS_default, matching dejagnu.

	* include/std/ostream: Spacing tweak.
	* include/ext/hashtable.h: Use <algorithm>.
	* include/ext/slist: Same.
	* include/ext/rope: Same.
	* include/bits/stl_function.h: Format.
	* include/tr1_impl/array: Remove section number in doxygen markup.
	* src/list.cc: Comment tweak.	
	
	* docs/doxygen/user.cfg.in: Update for include/tr1_impl.
	
	* testsuite/25_algorithms/search_n/iterator.cc: Add using declaration.
	* testsuite/25_algorithms/nth_element/1.cc:  Same.
	* testsuite/21_strings/char_traits/requirements/short/1.cc: Use
	char_type typedef to the underlying character type.	
	* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc:
	Remove -ansi -pedantic-errors.
	* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
	* testsuite/tr1/6_containers/headers/functional/synopsis.cc:
	Remove specializations.

From-SVN: r128225
2007-09-07 03:01:53 +00:00
Benjamin Kosnik
551fe1a243 re PR libstdc++/29367 (pb_ds hash containers vs. _GLIBCXX_DEBUG)
2007-09-06  Benjamin Kosnik  <bkoz@redhat.com>
	
	PR libstdc++/29367
	* include/ext/pb_ds/detail/map_debug_base.hpp: From this..
	* include/ext/pb_ds/detail/debug_map_base.hpp: ...to this.
	Rename map_debug_base to debug_map_base, add std::pair output
	extractors, change duplicate map_debug_base typedef in containers
	to debug_base. Use m_store_extra_indicator for m_store_hash_indicator.
	* include/ext/pb_ds/*: Likewise.
	* include/Makefile.am: Same.
	* include/Makefile.in: Regenerate.

From-SVN: r128221
2007-09-07 02:20:58 +00:00
Paolo Carlini
ccd04b9f89 stl_vector.h (_Vector_base<>::_M_allocate): Do not call _M_impl.allocate when __n == 0.
2007-09-06  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_vector.h (_Vector_base<>::_M_allocate):
	Do not call _M_impl.allocate when __n == 0.
	* testsuite/23_containers/vector/zero_sized_allocations.cc: New.

From-SVN: r128220
2007-09-07 01:37:31 +00:00
Roger Sayle
7336815f6f acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EBADMSG for darwin.
	* configure: Regenerate.
	* include/std/system_error: Guard.
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
	line numbers.

From-SVN: r128154
2007-09-05 21:30:04 +00:00
Paolo Carlini
d46c958bfa re PR libstdc++/33293 (inlining std::inner_product())
2007-09-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/33293
	* include/bits/stl_numeric.h (accumulate, inner_product):
	Add inline function-specifier.

From-SVN: r128053
2007-09-03 17:48:31 +00:00
Benjamin Kosnik
e4e5e7f5f8 acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR, ENOSTR, ETIME for freebsd.
2007-08-29  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENODATA, ENOSR,
	ENOSTR, ETIME for freebsd.	
	* configure: Regenerate.
	* include/std/system_error: Guard.	
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
	line numbers.

From-SVN: r127912
2007-08-29 19:53:50 +00:00
Paolo Carlini
44d5230cc3 re PR libstdc++/33128 (std::tr1::uniform_int returns value out of range)
2007-08-28  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/33128
	* include/tr1_impl/random (uniform_int<>::_M_call): Deal with
	__urng() returning negative values.
	* testsuite/tr1/5_numerical_facilities/random/uniform_int/33128.cc:
	New.

From-SVN: r127849
2007-08-28 08:48:24 +00:00
Benjamin Kosnik
c6a8035acf acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENOLINK, EPROTO for netbsd.
2007-08-24  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ENOLINK, EPROTO
	for netbsd.
	* configure: Regenerate.
	* include/std/system_error: Guard.	
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
	line numbers.

From-SVN: r127772
2007-08-24 15:19:36 +00:00
Benjamin Kosnik
0646d8a378 system_error: New file.
2007-08-23  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/system_error: New file.
	* src/system_error.cc: New file.
	* src/Makefile.am (sources): Add.
	* src/Makefile.in: Regenerate.	
	* include/Makefile.am (std_headers): Add system_error.
	* include/Makefile.in: Regenerate.
	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): New.
	* configure.ac: Call it.
	* config.h.in: Regenerate.
	* include/bits/functional_hash.h: Add hash<error_code>.
 	* include/std/ostream: Add inserters for error_code.
	
	* docs/doxygen/user.cfg.in: Add system_error.

	* config/abi/pre/gnu.ver(GLIBCXX_3.4.10): Add new symbols.

	* testsuite/19_diagnostics/error_code: New.
	* testsuite/19_diagnostics/error_code/cons: Same.
	* testsuite/19_diagnostics/error_code/cons/1.cc: Same.
	* testsuite/19_diagnostics/error_code/operators: Same.
	* testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
	* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
	* testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
	* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
	* testsuite/19_diagnostics/error_category: Same.
	* testsuite/19_diagnostics/error_category/cons: Same.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
	* testsuite/19_diagnostics/error_category/cons/default.cc: Same.
	* testsuite/19_diagnostics/error_category/operators: Same.
	* testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
	* testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
	* testsuite/19_diagnostics/headers/system_error: Same.
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.
	* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Same.
	* testsuite/19_diagnostics/system_error: Same.
	* testsuite/19_diagnostics/system_error/
	cons_virtual_derivation.cc: Same.
	* testsuite/19_diagnostics/system_error/cons-1.cc: Same.
	* testsuite/19_diagnostics/system_error/what-1.cc: Same.
	* testsuite/19_diagnostics/system_error/what-2.cc: Same.
	* testsuite/19_diagnostics/system_error/what-big.cc: Same.
	* testsuite/19_diagnostics/system_error/what-3.cc: Same.
	* testsuite/19_diagnostics/system_error/what-4.cc: Same.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
	error_code.cc: Same.
	* testsuite/27_io/basic_ostream/inserters_other/char/
	error_code.cc: Same.
	* testsuite/tr1/6_containers/hash/operators: New.
	* testsuite/tr1/6_containers/hash/operators/size_t.cc: Same.
	
	* testsuite/23_containers/hash: Move...
	* testsuite/20_util/hash: ... here.
	* testsuite/20_util/hash/operators: New.
	* testsuite/20_util/hash/operators/size_t.cc: New.

	* testsuite/20_util/function_objects/bad_function_call: Move...
	* testsuite/20_util/bad_function_call: ...here.

From-SVN: r127744
2007-08-23 16:16:41 +00:00
Benjamin Kosnik
65be6ddd76 Makefile.am (install-data-local): Remove pch-install rules.
2007-08-21  Benjamin Kosnik  <bkoz@montsouris.artheist.org>

	* include/Makefile.am (install-data-local): Remove pch-install rules.
	(host_headers): Add stdc++.h, stdtr1c++.h, extc++.h.
	* include/Makefile.in: Regenerate.
	* config.h.in: Same.

	* scripts/check_compile: Remove space between outputs.	
	* include/ext/throw_allocator.h: Correct doxygen markup.	
	* include/bits/char_traits.h: Correct spacing.
	* include/bits/stl_function.h: Same, for 80 column.
	* include/std/valarray: Same.
	* testsuite/util/testsuite_iterators.h: Same.	
	* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Format.

From-SVN: r127685
2007-08-22 01:26:43 +00:00
Chris Fairles
6c9bfe999d re PR libstdc++/33098 ([c++0x] __is_convertible_helper in type_traits uses deprecated add_reference)
2007-08-17  Chris Fairles  <chris.fairles@gmail.com>

	PR libstdc++/33098
	* include/std/type_traits (__is_convertible_helper):
	Use add_lvalue_reference.

From-SVN: r127588
2007-08-17 16:39:10 +00:00
Johannes Willkomm
5837d3c8f0 re PR libstdc++/33084 (Small typo in valarray header)
2007-08-17  Johannes Willkomm  <willkomm@sc.rwth-aachen.de>

	PR libstdc++/33084
	* include/std/valarray (operator _Op(const _Tp&,
	const valarray<>&)): Fix typo.
	* testsuite/26_numerics/numeric_arrays/valarray/33084.cc: New.

From-SVN: r127579
2007-08-17 09:27:06 +00:00
Paolo Carlini
2ee0c1fb57 DR 660, [Ready] in Toronto.
2007-08-02  Paolo Carlini  <pcarlini@suse.de>

	DR 660, [Ready] in Toronto.
	* include/bits/stl_function.h (bit_and, bit_or, bit_xor): Add.
	* testsuite/20_util/function_objects/dr660.cc: New.
	* docs/html/ext/howto.html: Add an entry for DR 660, update.

	* docs/html/ext/lwg-closed.html, docs/html/ext/lwg-active.html,
	docs/html/ext/lwg-defects.html: Import Revision 49.

From-SVN: r127166
2007-08-02 17:39:51 +00:00
Paolo Carlini
c2fe93f7ba re PR libstdc++/32908 (Miss lexicographical_compare random access override)
2007-07-30  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/32908
	* include/bits/stl_algobase.h (struct __lc_rai): New.
	(lexicographical_compare(_II1, _II1, _II2, _II2),
	lexicographical_compare(_II1, _II1, _II2, _II2, _Compare)): Use it.
	* testsuite/performance/25_algorithms/lexicographical_compare.cc: New.

From-SVN: r127073
2007-07-30 21:14:52 +00:00
Paolo Carlini
bd12160ab8 re PR libstdc++/32907 (Inefficient operator== in std::string)
2007-07-27  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/32907
	* include/bits/basic_string.h (operator==(const basic_string<_CharT>&,
	const basic_string<_CharT>&)): Add.
	(operator!=): Forward to operator==.
	* include/ext/vstring.h(operator==(const __versa_string<_CharT,
	std::char_traits<_CharT>, std::allocator<_CharT>, _Base>&,
	const __versa_string<_CharT, std::char_traits<_CharT>,
	std::allocator<_CharT>, _Base>&)): Add.
	(operator!=): Forward to operator==.

	* include/ext/sso_string_base.h (_M_compare): Remove.

From-SVN: r126988
2007-07-27 17:25:04 +00:00
Paolo Carlini
f425a30a1e utility (identity, [...]): Add.
2007-07-10  Paolo Carlini  <pcarlini@suse.de>

	* include/std/utility (identity, move, forward): Add.
	* testsuite/20_util/move/requirements/explicit_instantiation.cc: New.
	* testsuite/20_util/move/1.cc: New.
	* testsuite/20_util/identity/value.cc: New.
	* testsuite/20_util/identity/requirements/typedefs.cc: New.
	* testsuite/20_util/identity/requirements/explicit_instantiation.cc:
	New.
	* testsuite/20_util/forward/requirements/explicit_instantiation.cc:
	New.
	* testsuite/20_util/forward/1.cc: New.
	* testsuite/20_util/forward/1_neg.cc: New.

From-SVN: r126524
2007-07-10 19:28:07 +00:00
Jim Xochellis
58b9f26a61 stl_algo.h (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Tidy.
2007-07-09  Jim Xochellis  <jimxoch@yahoo.gr>
	    Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h (search(_ForwardIterator1,
	_ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Tidy.
	(search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
	_ForwardIterator2, _BinaryPredicate)): Likewise.

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

From-SVN: r126479
2007-07-09 09:00:34 +00:00
Joerg Richter
68d64ccd47 re PR libstdc++/31957 (Build of compiler fails with 'error: #endif without #if')
2007-07-05  Joerg Richter  <joerg.richter@pdv-fs.de>

	PR libstdc++/31957
	* include/Makefile.am: Work around an AIX sed oddity.
	* include/Makefile.in: Regenerate.

From-SVN: r126362
2007-07-05 11:45:24 +00:00
Jim Xochellis
e5e941450f stl_algo.h (search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Simplify general case loop to a for(;;).
2007-07-04  Jim Xochellis  <jimxoch@yahoo.gr>

	* include/bits/stl_algo.h (search(_ForwardIterator1,
	_ForwardIterator1, _ForwardIterator2, _ForwardIterator2)): Simplify
	general case loop to a for(;;).
	(search(_ForwardIterator1, _ForwardIterator1, _ForwardIterator2,
	_ForwardIterator2, _BinaryPredicate)): Likewise; remove redundant
	inner loop.

From-SVN: r126347
2007-07-05 00:50:56 +00:00
Paolo Carlini
5dddb7e5eb re PR libstdc++/31518 (_GLIBCXX_DEBUG error message formatter line width not configurable)
2007-07-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/31518
	* include/debug/formatter.h (_Error_formatter::_M_get_max_length): New.
	(_Error_formatter::_Error_formatter): Use it.
	* src/debug.cc: Define.
	(_Error_formatter::_M_error): Tweak.
	* configure.ac: Adjust version to 6:10:0.
	* config/abi/pre/gnu.ver: Export _Error_formatter::_M_get_max_length
	at GLIBCXX_3.4.10.
	* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.10.
	* docs/html/debug.html: Document.
	* configure: Regenerate.

From-SVN: r126287
2007-07-04 00:09:22 +00:00
Douglas Gregor
5edfe9e86f type_traits (__make_unsigned): Remove invalid wchar_t specialization.
2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>

	* include/std/type_traits (__make_unsigned): Remove invalid
	wchar_t specialization.
	(__make_signed): Remove invalid wchar_t specialization.

From-SVN: r126184
2007-07-02 02:33:26 +00:00
Benjamin Kosnik
949d9ae181 throw_allocator.h: Fixes for -fno-exceptions.
2007-06-26  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/throw_allocator.h: Fixes for -fno-exceptions.
	* testsuite/util/testsuite_shared.cc: Same.
	* testsuite/util/io/illegal_input_error.hpp: Same.
	* testsuite/util/io/verified_cmd_line_input.cc: Same.

	* libsupc++/typeinfo (type_info): Correct comment formatting,
	clarify member access and public interface.
	* libsupc++/exception: Less compressed comments.
	* libsupc++/new: Same.

From-SVN: r126016
2007-06-26 11:01:15 +00:00
Paolo Carlini
046d30f4e0 stl_list.h: Rename guard macro consistently with file name.
2007-06-18  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_list.h: Rename guard macro consistently with
	file name.
	* include/bits/stl_algobase.h: Likewise.
	* include/bits/stl_map.h: Likewise.
	* include/bits/stl_queue.h: Likewise.
	* include/bits/stl_set.h: Likewise.
	* include/bits/stl_stack.h: Likewise.
	* include/bits/stl_iterator_base_types.h: Likewise.
	* include/bits/stl_multimap.h: Likewise.
	* include/bits/stl_pair.h: Likewise.
	* include/bits/stl_vector.h: Likewise.
	* include/bits/stl_deque.h: Likewise.
	* include/bits/stl_multiset.h: Likewise.
	* include/bits/stl_iterator_base_funcs.h: Likewise.
	* include/bits/stl_algo.h: Likewise.
	* include/bits/stl_iterator.h: Likewise.
	* include/bits/stl_tempbuf.h: Likewise.
	* include/bits/stl_bvector.h: Likewise.
	* include/bits/stl_function.h: Likewise.
	* include/bits/stl_tree.h: Likewise.

From-SVN: r125815
2007-06-18 17:22:53 +00:00
Paolo Carlini
28b69d5df0 cmath: Tweak includes.
2007-06-13  Paolo Carlini  <pcarlini@suse.de>

	* include/c_global/cmath: Tweak includes.
	* include/std/memory: Likewise.
	* include/std/complex: Likewise.
	* include/tr1/memory: Likewise.
	* include/tr1/complex: Likewise.
	* include/tr1/cmath: Likewise; do not wrap special functions
	in #ifndef __GXX_EXPERIMENTAL_CXX0X__.

From-SVN: r125671
2007-06-13 07:31:39 +00:00
Francesco Palagi
9735f6ba52 fstream: Add Table 92 in comment.
2007-06-08  Francesco Palagi  <palagi@arcetri.astro.it>

	* include/std/fstream: Add Table 92 in comment.

From-SVN: r125571
2007-06-08 13:16:38 +00:00
Paolo Carlini
266a2cbaec re PR libstdc++/32233 (warning in stl_vector.h:832)
2007-06-06  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/32233
	* include/bits/stl_vector.h (_M_fill_initialize): Fix return type.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r125499
2007-06-06 18:44:02 +00:00
Paolo Carlini
4a27a739a2 type_traits (is_reference, [...]): Remove.
2007-06-02  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1_impl/type_traits (is_reference, add_reference,
	remove_reference): Remove.
	* include/tr1/type_traits (is_reference, add_reference,
	remove_reference): Add.
	* include/std/type_traits (is_lvalue_reference, is_rvalue_reference,
	is_reference, remove_reference, add_lvalue_reference,
	add_rvalue_reference): Add.
	* include/tr1_impl/boost_shared_ptr.h (operator*): Adjust.
	* testsuite/20_util/add_lvalue_reference/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/add_lvalue_reference/value.cc: Likewise.
	* testsuite/20_util/add_rvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
	* testsuite/20_util/is_lvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_lvalue_reference/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
	* testsuite/20_util/is_rvalue_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_rvalue_reference/requirements/
	typedefs.cc: Likewise.
	* testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
	* testsuite/20_util/is_reference/requirements/
	explicit_instantiation.cc: Likewise.
	* testsuite/20_util/is_reference/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_reference/value.cc: Likewise.
	* testsuite/20_util/remove_reference/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/remove_reference/value.cc: Likewise.

	* testsuite/tr1/4_metaprogramming/add_const/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/add_const/value.cc: ... here.
	* testsuite/tr1/4_metaprogramming/add_cv/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/add_cv/value.cc: ... here.
	* testsuite/tr1/4_metaprogramming/add_pointer/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/add_pointer/value.cc: ... here.
	* testsuite/tr1/4_metaprogramming/add_reference/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/add_reference/value.cc: ... here.
	* testsuite/tr1/4_metaprogramming/add_volatile/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/add_volatile/value.cc: ... here.
	* testsuite/tr1/4_metaprogramming/aligned_storage/requirements/
	typedefs.cc: Move...
	* testsuite/tr1/4_metaprogramming/aligned_storage/value.cc: ... here.

From-SVN: r125283
2007-06-02 17:24:09 +00:00
Benjamin Kosnik
b8637750d3 throw_allocator.h (__throw_allocator::allocate): Throw bad_alloc for out of memory conditions.
2007-06-01  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/throw_allocator.h (__throw_allocator::allocate):
	Throw bad_alloc for out of memory conditions.	
	* testsuite/ext/throw_allocator/deallocate_global.cc: New.
	* testsuite/ext/throw_allocator/check_delete.cc: Same.
	* testsuite/ext/throw_allocator/check_allocate_max_size.cc: Same.
	* testsuite/ext/throw_allocator/check_deallocate_null.cc: Same.
	* testsuite/ext/throw_allocator/explicit_instantiation.cc: Same.
	* testsuite/ext/throw_allocator/check_new.cc: Same.
	* testsuite/ext/throw_allocator/deallocate_local.cc: Same.

From-SVN: r125261
2007-06-01 10:09:40 +00:00
Paolo Carlini
e133ace8d9 re PR libstdc++/31426 (TR1 includes do not work with -std=c++0x)
2007-05-31  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/31426
	* include/bits/c++config: Remove namespace association bits
	from tr1 to std.

	* include/ext/type_traits.h (__promote, __promote2,
	__promote3, __promote4): Add.

	* include/bits/hashtable.h: New.
	* include/bits/functional_hash.h: Likewise.
	* include/tr1/hashtable.h: Likewise.

	* include/tr1_impl/random: New.
	* include/tr1_impl/cinttypes: Likewise.
	* include/tr1_impl/cstdlib: Likewise.
	* include/tr1_impl/unordered_map: Likewise.
	* include/tr1_impl/cstdio: Likewise.
	* include/tr1_impl/boost_shared_ptr.h: Likewise.
	* include/tr1_impl/cctype: Likewise.
	* include/tr1_impl/random.tcc: Likewise.
	* include/tr1_impl/tuple: Likewise.
	* include/tr1_impl/functional_hash.h: Likewise.
	* include/tr1_impl/hashtable: Likewise.
	* include/tr1_impl/cmath: Likewise.
	* include/tr1_impl/type_traitsfwd.h: Likewise.
	* include/tr1_impl/hashtable_policy.h: Likewise.
	* include/tr1_impl/cfenv: Likewise.
	* include/tr1_impl/unordered_set: Likewise.
	* include/tr1_impl/functional: Likewise.
	* include/tr1_impl/utility: Likewise.
	* include/tr1_impl/complex: Likewise.
	* include/tr1_impl/type_traits: Likewise.
	* include/tr1_impl/cwchar: Likewise.
	* include/tr1_impl/cstdint: Likewise.
	* include/tr1_impl/regex: Likewise.
	* include/tr1_impl/array: Likewise.
	* include/tr1_impl/cwctype: Likewise.

	* include/tr1/type_traitsfwd.h: Remove.
	* include/tr1/boost_shared_ptr.h: Likewise.
	* include/tr1/common.h: Likewise.
	* include/tr1/hashtable: Likewise.
	* include/tr1/hashtable_policy.h: Likewise.
	* include/tr1/random.tcc: Likewise.

	* include/c_global/cinttypes: Include tr1_impl/cinttypes.
	* include/c_global/cstdlib: Likewise for cstdlib.
	* include/c_global/cstdio: Likewise for cstdio.
	* include/c_global/cctype: Likewise for cctype.
	* include/c_global/cmath: Likewise for cmath.
	* include/c_global/cfenv: Likewise for cfenv.
	* include/c_global/cwchar: Likewise for cwchar.
	* include/c_global/cstdint: Likewise for cstdint.
	* include/c_global/cwctype: Likewise for cwctype.
	* include/tr1/cinttypes: Likewise for cinttypes.
	* include/tr1/cstdlib: Likewise for cstdlib.
	* include/tr1/cstdio: Likewise for cstdio.
	* include/tr1/cctype: Likewise for cctype.
	* include/tr1/cmath: Likewise for cmath.
	* include/tr1/cfenv: Likewise for cfenv.
	* include/tr1/cwchar: Likewise for cwchar.
	* include/tr1/cstdint: Likewise for cstdint.
	* include/tr1/cwctype: Likewise for cwctype.
	* include/tr1/functional_hash.h: Likewise for functional_hash.

	* include/std/tuple: Include tr1_impl/tuple.
	* include/std/utility: Likewise for utility.
	* include/std/type_traits: Likewise for type_traits.
	(is_pod): Just forward to __is_pod.
	(has_trivial_default_constructor): Just forward to
	__has_trivial_constructor.
	(has_trivial_copy_constructor): Just forward to __has_trivial_copy.
	(has_trivial_assign): Just forward to __has_trivial_assign.
	(has_trivial_destructor): Just forward to __has_trivial_destructor.
	(has_nothrow_default_constructor): Just forward to
	__has_nothrow_constructor.
	(has_nothrow_copy_constructor): Just forward to __has_nothrow_copy.
	(has_nothrow_assign): Just forward to __has_nothrow_assign.
	(is_base_of): Just forward to __is_base_of.
	(is_signed, is_unsigned): Implement according to the C++0x
	specifications.
	* include/std/memory: Likewise for memory.
	* include/std/regex: Likewise for regex.
	* include/std/random: Likewise for random.
	* include/std/unordered_map: Likewise for unordered_map.
	* include/std/unordered_set: Likewise for unordered_set.
	* include/std/functional: Likewise for functional.
	* include/std/complex: Likewise for complex.
	* include/std/array: Likewise for array.
	* include/tr1/tuple: Likewise for tuple.
	* include/tr1/utility: Likewise for utility.
	* include/tr1/type_traits: Likewise for type_traits
	* include/tr1/memory: Likewise for memory.
	* include/tr1/regex: Likewise for regex.
	* include/tr1/random: Likewise for random.
	* include/tr1/unordered_map: Likewise for unordered_map.
	* include/tr1/unordered_set: Likewise for unordered_set.
	* include/tr1/functional: Likewise for functional.
	* include/tr1/complex: Likewise for complex.
	* include/tr1/array: Likewise for array.

	* include/c_global/ctgmath: Tweak.
	* include/c_global/cstdarg: Likewise.
	* include/c_global/ctime: Likewise.
	* include/c_global/climits: Likewise.
	* include/c_global/cfloat: Likewise.	
	* include/c_global/ccomplex: Likewise.
	* include/c_global/cstdbool: Likewise.

	* include/tr1/poly_laguerre.tcc: Tweak, don't use _GLIBCXX_TR1.
	* include/tr1/riemann_zeta.tcc: Likewise.
	* include/tr1/beta_function.tcc: Likewise.
	* include/tr1/exp_integral.tcc: Likewise.
	* include/tr1/hypergeometric.tcc: Likewise.
	* include/tr1/modified_bessel_func.tcc: Likewise.
	* include/tr1/legendre_function.tcc: Likewise.
	* include/tr1/special_function_util.h: Likewise.
	* include/tr1/bessel_function.tcc: Likewise.
	* include/tr1/poly_hermite.tcc: Likewise.
	* include/tr1/ell_integral.tcc: Likewise.
	* include/tr1/gamma.tcc: Likewise.
	* include/tr1/stdlib.h: Likewise.
	* include/tr1/math.h: Likewise.

	* include/tr1/complex.h: Minor tweaks.
	* include/tr1/wctype.h: Likewise.
	* include/tr1/wchar.h: Likewise.
	* include/tr1/inttypes.h: Likewise.
	* include/tr1/tgmath.h: Likewise.
	* include/tr1/cstdbool: Likewise.
	* include/tr1/cfloat: Likewise.
	* include/tr1/ccomplex: Likewise.
	* include/tr1/ctime: Likewise.
	* include/tr1/climits: Likewise.
	* include/tr1/ctgmath: Likewise.
	* include/tr1/cstdarg: Likewise.

	* testsuite/tr1/headers.cc: Move...
	* testsuite/tr1/headers/all.cc: ... here.
	* testsuite/tr1/using_namespace_std_tr1.cc: Move...
	* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: ... here.
	* testsuite/tr1/headers/using_namespace_std_tr1.cc ... here.
	* testsuite/tr1/headers/c++200x/using_namespace_std_tr1.cc: New.

	* testsuite/20_util/tuple/requirements/explicit_instantiation.cc:
	Adjust namespace.
	* testsuite/20_util/has_nothrow_copy_constructor/value.cc: Adjust to
	the C++0x requirements.
	* testsuite/20_util/has_nothrow_default_constructor/value.cc: Likewise.
	* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
	* testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.

	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
	dg-error lines.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
	Likewise.
	* testsuite/20_util/headers/type_traits/types_std_c++0x_neg.cc:
	Un-xfail.

	* testsuite/20_util/is_signed/value.cc: New.
	* testsuite/20_util/is_signed/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_signed/requirements/explicit_instantiation.cc:
	Likewise.
	* testsuite/20_util/is_unsigned/value.cc: Likewise..
	* testsuite/20_util/is_unsigned/requirements/typedefs.cc: Likewise.
	* testsuite/20_util/is_unsigned/requirements/explicit_instantiation.cc:
	Likewise.

	* include/Makefile.am: Adjust.	
	* include/Makefile.in: Regenerate.

From-SVN: r125244
2007-05-31 23:37:56 +00:00
Paolo Carlini
f4c5578ffb PR c++/32158 (libstdc++ bits)
2007-05-31  Paolo Carlini  <pcarlini@suse.de>

	PR c++/32158 (libstdc++ bits)
	* include/bits/stl_uninitialized.h (__uninitialized_copy_aux,
	__uninitialized_fill_aux, __uninitialized_fill_n_aux):
	Remove.
	(struct __uninitialized_copy, struct __uninitialized_fill,
	struct __uninitialized_fill_n): Add.
	(uninitialized_copy, uninitialized_fill, uninitialized_fill_n):
	Adjust.
	* testsuite/20_util/specialized_algorithms/32158.cc: New.

	* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
	_InputIterator, _ForwardIterator)): Robustify vs non-POD input.

	* include/bits/stl_vector.h (_M_fill_initialize): New.
	(vector(size_type, const value_type&, const allocator_type&),
	_M_initialize_dispatch(_Integer, _Integer, __true_type)): Use it.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
	Adjust dg-error line.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
	Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r125223
2007-05-31 11:13:57 +00:00
Paolo Carlini
67a7356b32 2007-05-27 Paolo Carlini <pcarlini@suse.de>
* include/tr1/boost_shared_ptr.h
	(_Sp_counted_base<_S_mutex>::_M_add_ref_lock()): Do not wrap in
	#ifdef __GTHREADS.

2007-05-27  Paolo Carlini  <pcarlini@suse.de>

	* include/c_global/cwchar: Do not include <ctime>.
	* include/c_std/cwchar: Likewise.
	* include/ext/throw_allocator.h: Do it here.

From-SVN: r125112
2007-05-27 14:50:21 +00:00
Paolo Carlini
8679a8ef55 concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.
2007-05-24  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.

From-SVN: r125044
2007-05-24 22:18:07 +00:00
Steve Ellcey
1cf3d07da6 ltmain.sh: Update from ToT Libtool.
* ltmain.sh: Update from ToT Libtool.
        * libtool.m4: Update from ToT Libtool.
        * ltsugar.m4: New. Update from ToT Libtool.
        * ltversion.m4: New. Update from ToT Libtool.
        * ltoptions.m4: New. Update from ToT Libtool.
        * ltconfig: Remove.
        * ltcf-c.sh: Remove.
        * ltcf-cxx.sh: Remove.
        * ltcf-gcj.sh: Remove.
	* Regenerate all subdirs

From-SVN: r125032
2007-05-24 16:37:27 +00:00
Paolo Carlini
da5a2efd39 stl_algo.h: Shuffle the functions to better match the order in the standard.
2007-05-20  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algo.h: Shuffle the functions to better match the
	order in the standard.

From-SVN: r124874
2007-05-20 17:48:36 +00:00
Paolo Carlini
1d1c53d561 stl_algobase.h (mismatch): Move...
2007-05-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (mismatch): Move...
	* include/bits/stl_algo.h: ... here.

From-SVN: r124792
2007-05-17 11:52:06 +00:00
Benjamin Kosnik
95440e3ee0 cmath: Guard special math with __GXX_EXPERIMENTAL_CXX0X__.
2007-05-17  Benjamin Kosnik  <bkoz@redhat.com>

	* include/tr1/cmath: Guard special math with
	__GXX_EXPERIMENTAL_CXX0X__.
	* testsuite/26_numerics/headers/cmath/types_std_c++0x_neg.cc:
	Remove xfail.

From-SVN: r124791
2007-05-17 11:37:27 +00:00
Paolo Carlini
a576fe880e locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid unnecessary casts, do widenings just in time.
2007-05-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Minor tweaks, avoid
	unnecessary casts, do widenings just in time.

From-SVN: r124790
2007-05-17 09:01:27 +00:00
Paolo Carlini
56f78eecdc allocator.h: Do not include cpp_type_traits.h.
2007-05-14  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/allocator.h: Do not include cpp_type_traits.h.

From-SVN: r124716
2007-05-14 14:47:39 +00:00
Paolo Carlini
ee60de3614 postypes.h (class fpos<>): Remove redundant forward declaration.
2007-05-14  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/postypes.h (class fpos<>): Remove redundant forward
	declaration.

From-SVN: r124709
2007-05-14 10:52:05 +00:00
Paolo Carlini
de5e4138e5 stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.
2007-05-13  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_tempbuf.h (return_temporary_buffer(_Tp*)): Inline.

From-SVN: r124654
2007-05-13 16:23:20 +00:00
Paolo Carlini
c1cd4e0958 type_traitsfwd.h: Fix include guard typo.
2007-05-13  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/type_traitsfwd.h: Fix include guard typo.

From-SVN: r124652
2007-05-13 10:08:13 +00:00
Paolo Carlini
538075fe42 pod_char_traits.h (char_traits<>::move): Use __builtin_memmove.
2007-05-11  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/pod_char_traits.h (char_traits<>::move):
	Use __builtin_memmove.
	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
	collate_byname(const char*, size_t)): Use __builtin_strcmp.
	* include/bits/locale_facets.h: Use __builtin_mem* and
	__builtin_str* everywhere.
	* include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
	Use __builtin_strcmp.
	* include/bits/char_traits.h: Use __builtin_mem* everywhere.
	* include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
	Use __builtin_memcpy and __builtin_memmove.
	* include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
	size_t __refs)): Use __builtin_strcmp.
	* include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
	* config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
	and __builtin_memcpy.
	* config/locale/gnu/messages_members.h: Likewise.
	* config/locale/gnu/time_members.h: Likewise.
	* config/locale/generic/c_locale.h: Likewise.
	* config/locale/generic/messages_members.h: Likewise.
	* config/locale/generic/time_members.h: Likewise.
	* config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
	* config/os/tpf/ctype_noninline.h: Likewise.
	* config/locale/generic/codecvt_members.cc: Include <cstring>. 
	* config/locale/generic/ctype_members.cc: Likewise.
	* config/locale/generic/collate_members.cc: Likewise.
	* config/locale/gnu/c++locale_internal.h: Likewise.
	* config/locale/darwin/ctype_members.cc: Likewise.
	* src/ctype.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
	* config/locale/gnu/messages_members.cc: Avoid strdup.
	* config/locale/gnu/monetary_members.cc: Likewise.
	* config/locale/gnu/time_members.cc: Likewise.	
	* config/locale/gnu/time_members.cc: Likewise.
	* config/locale/generic/c_locale.cc: Likewise.

From-SVN: r124623
2007-05-11 18:58:08 +00:00
Benjamin Kosnik
8339896e55 stdexcept: Remove extra spacing.
2007-05-11  Benjamin Kosnik  <bkoz@redhat.com>

       * include/std/stdexcept: Remove extra spacing.

        * testsuite/19_diagnostics/stdexceptions.cc: Break into...
        * testsuite/19_diagnostics/bad_exception: ...this. Populate.
        * testsuite/19_diagnostics/logic_error: ... this.
        * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
        * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
        * testsuite/19_diagnostics/runtime_error: ...this.
        * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
        * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
        * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
        * testsuite/19_diagnostics/23591_thread-1.c: Move...
        * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.

From-SVN: r124621
2007-05-11 16:05:57 +00:00
Benjamin Kosnik
fb8ffd109a type_traits (make_signed): Remove specializations for floating point types.
2007-05-08  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/type_traits (make_signed): Remove specializations
	for floating point types.
	(make_unsigned): Same.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Fix.
	* testsuite/20_util/make_signed/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Same.

From-SVN: r124543
2007-05-08 12:10:48 +00:00
Jason Merrill
fba10f59ff cxxabi-internal.h: Remove, to be replaced by...
* libsupc++/cxxabi-internal.h: Remove, to be replaced by...
        * libsupc++/cxxabi-forced.h: ...this new file.
        * include/ext/vstring.tcc: Include cxxabi-forced.h instead.
        * include/bits/istream.tcc: Likewise.
        * include/bits/ostream.tcc: Likewise.
        * include/bits/basic_string.tcc: Likewise.
        * include/bits/ostream_insert.h: Likewise.
        * include/bits/fstream.tcc: Likewise.
        * include/std/bitset: Likewise.
        * libsupc++/cxxabi.h: Restore previous contents.
        * Makefile.am (headers): Add cxxabi-forced.h.
        * Makefile.in: Regenerate.

From-SVN: r124539
2007-05-08 02:50:32 -04:00
Jason Merrill
04055200ed * include/bits/ostream.tcc (operator<<(char*)): Add __s.
From-SVN: r124522
2007-05-07 18:44:54 -04:00
Jason Merrill
d05f74f16e re PR other/28145 (C++ (throw() and catch(...) {/* fall through */ } ) and pthread cancellation are incompatible (at least with NPTL))
PR c++/28145
        * libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
        New classes.
        * libsupc++/eh_exception.cc: Define their destructors.
        * config/abi/pre/gnu.ver: Export their type_infos.
        * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
        * libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
        matches a forced unwind, and a handler for abi::__foreign_exception
        matches a foreign exception.

        * include/bits/istream.tcc: Rethrow forced unwind.
        * include/bits/ostream.tcc: Likewise.
        * include/bits/ostream_insert.h: Likewise.
        * include/bits/basic_string.tcc (operator>>, getline): Likewise.
        * include/bits/fstream.tcc (basic_filebuf::close): Likewise.
        * include/ext/vstring.cc (operator>>, getline): Likewise.
        * src/istream.cc: Likewise.
        * src/compatibility.cc (basic_istream::ignore): Likewise.
        * include/std/bitset (operator>>): Likewise.
        * include/std/fstream (basic_filebuf::close): Remove throw() spec.
        * libsupc++/cxxabi-internal.h: Split out from...
        * libsupc++/cxxabi.h: ...here.

From-SVN: r124517
2007-05-07 17:27:54 -04:00