Commit Graph

758 Commits

Author SHA1 Message Date
Paolo Carlini
055f6a476c functional_hash.h (_Fnv_hash_base<>::hash): Change to template.
2010-03-02  Paolo Carlini  <paolo.carlini@oracle.com>  

	* include/bits/functional_hash.h (_Fnv_hash_base<>::hash): Change
	to template.
	* include/tr1/functional_hash.h (_Fnv_hash_base<>::hash): Likewise.
	* include/bits/vector.tcc (hash): Adjust.
	* include/bits/basic_string.h (hash): Likewise.
	* include/std/bitset (hash): Likewise.
	* src/hash-string-aux.cc (hash): Likewise.

From-SVN: r157185
2010-03-03 01:23:07 +00:00
Paolo Carlini
bea9840ef1 hash-long-double-aux.cc (hash<long double>:: operator()(long double)): Hash both -0 and +0 to 0.
2010-02-28  Paolo Carlini  <paolo.carlini@oracle.com>

       * src/hash-long-double-aux.cc (hash<long double>::
       operator()(long double)): Hash both -0 and +0 to 0.

From-SVN: r157120
2010-02-28 10:37:04 +00:00
Ed Smith-Rowland
018afad39f limits (__numeric_limits_base::max_digits10, [...]): Add.
2010-02-25  Ed Smith-Rowland  <3dw4rd@verizon.net>

	* include/std/limits (__numeric_limits_base::max_digits10,
	numeric_limits<>::max_digits10, numeric_limits<>::lowest): Add.
	* src/limits.cc: Define max_digits10.
	* config/abi/pre/gnu.ver: Adjust.
	* testsuite/18_support/numeric_limits/dr559.cc: Test max_digits10
	and lowest too.
	* testsuite/18_support/numeric_limits/lowest.cc: New.
	* testsuite/18_support/numeric_limits/max_digits10.cc: New.

From-SVN: r157067
2010-02-25 17:13:04 +00:00
Paolo Carlini
640f8e6548 functional_hash.h (__hash_combine): Remove.
2010-02-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/functional_hash.h (__hash_combine): Remove.
	(_Fnv_hash_base<>::hash(const char*, size_t)): Add defaulted
	hash parameter.
	(_Fnv_hash::__hash_combine(const _Tp&, size_t)): Add.
	* include/std/system_error (hash<system_error>): Adjust.
	* src/compatibility-c++0x.cc (hash<system_error>): Likewise.

From-SVN: r157065
2010-02-25 13:32:52 +00:00
Paolo Carlini
5c8db18ac6 functional_hash.h (struct _Fnv_hash): Rename to _Fnv_hash_base.
2010-02-23  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/functional_hash.h (struct _Fnv_hash): Rename
	to _Fnv_hash_base.
	(struct _Fnv_hash): Add, derives from the latter.
	(__hash_combine): Add.
	(hash<float>::operator()(float), hash<double>::operator()(double)):
	Adjust.
	* include/bits/basic_string.h (hash<string>, hash<wstring>,
	hash<u16string>, hash<u32string>): Adjust.
	* src/hash-string-aux.cc: Adjust.
	* src/compatibility-c++0x.cc (hash<error_code>): Use __hash_combine.
	* include/std/system_error (hash<error_code>): Likewise.
	* include/std/thread (struct hash<thread::id>): Add.
	* include/tr1/functional_hash.h : Rename to _Fnv_hash_base.
	(struct _Fnv_hash): Add, derives from the latter.
	(hash<float>::operator()(float), hash<double>::operator()(double)):
	Adjust.
	* testsuite/30_threads/thread/id/hash.cc: New.
	* testsuite/30_threads/thread/cons/assign_neg.cc: Adjust dg-error
	line number.
	* testsuite/30_threads/thread/cons/copy_neg.cc: Likewise.

From-SVN: r157005
2010-02-23 15:23:37 +00:00
Janis Johnson
5b557fc6e4 * src/compatibility-ldbl.cc: Include new hash-long-double-aux.cc.
From-SVN: r156982
2010-02-22 23:51:07 +00:00
Paolo Carlini
9dd17e69b7 hash-aux.cc: Rename to...
2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/hash-aux.cc: Rename to...
	* src/hash-string-aux.cc: ... this.
	* src/hash-long-double-aux.cc: New.
	* src/hash_c++0x.cc: Adjust.
	* src/hash_tr1.cc: Likewise.
	* src/compatibility-c++0x.cc: Likewise.

From-SVN: r156981
2010-02-22 22:54:49 +00:00
Paolo Carlini
15d81a3c31 functional_hash.h (hash<string>, [...]): Move, per DR 1182 to...
2010-02-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/functional_hash.h (hash<string>, hash<wstring>,
	hash<u16string>, hash<u32string>, hash<error_code>): Move, per
	DR 1182 to...
	* include/bits/basic_string.h: ... here.
	* include/std/system_error: ... and here, respectively.
	* src/hash-aux.cc (hash<long double>::operator()(long double)):
	Move definition...
	* src/hash_c++0x.cc: ... here, new file.
	* src/hash_tr1.cc: ... and here, tweak includes.
	* src/compatibility-c++0x.cc (hash, _Fnv_hash): Remove.
	* src/Makefile.am: Adjust.
	* src/Makefile.in: Regenerate.
	* include/std/functional: Include <bits/functexcept.h>.
	* include/std/unordered_set: Remove redundant include.
	* include/std/unordered_map: Likewise.
	* include/tr1/functional_hash.h: Remove spurious trailing semicolon.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove
	dg-excess.

From-SVN: r156971
2010-02-22 18:07:07 +00:00
Benjamin Kosnik
32ade5590e ios_locale.cc: Fixes for -pedantic.
2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>

	* src/ios_locale.cc: Fixes for -pedantic.
	* src/system_error.cc: Same.
	* src/locale.cc: Same.
	* src/list.cc: Same.
	* src/locale_facets.cc: Same.
	* src/locale_init.cc: Same.
	* src/ios.cc: Same.
	* config/locale/darwin/ctype_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/c_locale.cc: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.cc: Same.
	* config/locale/generic/collate_members.cc: Same.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/generic/c_locale.cc: Same.
	* config/locale/generic/monetary_members.cc: Same.
	* config/locale/generic/time_members.cc: Same.
	* config/io/basic_file_stdio.cc: Same.

	* libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
	* libsupc++/pointer_type_info.cc: Same.
	* libsupc++/eh_personality.cc: Same.

	* include/std/system_error: Throw spacing.
	* include/bits/locale_classes.h: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/ios_base.h: Same.

	* testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
	* testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New

From-SVN: r156822
2010-02-17 05:43:24 +00:00
Paolo Carlini
240c7f7f57 re PR libstdc++/16896 (Use of non-reserved names in stl_list.h)
2010-02-07  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/16896
	* include/bits/stl_list.h (_List_node_base::transfer): Rename
	to _M_transfer.
	(_List_node_base::reverse): Rename to _M_reverse.
	(_List_node_base::hook): Rename to _M_hook.
	(_List_node_base::unhook): Rename to _M_unhook; adjust callers.
	* include/bits/list.tcc: Adjust callers.
	* src/list.cc: Adjust.
	* src/compatibility.cc: Likewise.
	* src/compatibility-list.cc: New.
	* src/compatibility-debug_list.cc: Likewise.
	* src/compatibility-parallel_list.cc: Likewise.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Export _M_* symbols.

	* src/hash.cc: Rename to hash-aux.cc.
	* src/compatibility-ldbl.cc: Adjust.
	* src/compatibility-c++0x.cc: Likewise.
	* src/hash_tr1.cc: Likewise.

	* src/hashtable.cc: Rename to hashtable-aux.cc.
	* src/hashtable_c++0x.cc: Adjust.
	* src/hashtable_tr1.cc: Likewise.

	* src/limits_c++0x.cc: Fold...
	* src/limits.cc... here.

From-SVN: r156578
2010-02-07 18:36:48 +00:00
Jonathan Wakely
b7200e3fbe condition_variable (condition_variable_any): Provide definitions for all members.
2010-02-03  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/condition_variable (condition_variable_any): Provide
	definitions for all members.
	* src/condition_variable.cc (condition_variable_any): Adjust
	definitions.
	* config/abi/pre/gnu.ver: Adjust exports for condition_variable_any.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: New.
	* testsuite/30_threads/condition_variable_any/members/2.cc: New.
	* testsuite/30_threads/condition_variable_any/requirements/
	standard_layout.cc: Remove.
	* testsuite/30_threads/condition_variable_any/native_handle/
	typesizes.cc: Remove.

From-SVN: r156479
2010-02-03 20:16:22 +00:00
Paolo Carlini
cdf5f5a34d condition_variable (enum class cv_status): Add and use it throughout, per N3000.
2010-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/condition_variable (enum class cv_status): Add and
	use it throughout, per N3000.
	(condition_variable_any::wait<>(_Lock&), wait<>(_Lock&, _Predicate),
	wait_until<>(_Lock&, const chrono::time_point<>&, _Predicate)):
	Provide definitions.
	* src/condition_variable.cc (condition_variable_any::notify_one,
	condition_variable_any::notify_all): Likewise.
	* config/abi/pre/gnu.ver: Export.
	* testsuite/30_threads/condition_variable_any/requirements/
	typedefs.cc: New.
	* testsuite/30_threads/condition_variable_any/requirements/
	standard_layout.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Adjust.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
	Likewise.

From-SVN: r156358
2010-01-29 16:59:55 +00:00
Jonathan Wakely
b3eed6fe78 re PR libstdc++/42201 ([C++0x] std::vector<std::unique_future<T>>::push_back fails)
2010-01-21  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/42201
	* include/std/future: Update to latest WP.
	* src/functexcept.cc (__throw_future_error): Use make_error_code.
	* testsuite/30_threads/async/any.cc: New.
	* testsuite/30_threads/async/async.cc: New.
	* testsuite/30_threads/async/sync.cc: New.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: New.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset.cc: Adjust.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/shared_future/cons/default.cc: New.
	* testsuite/30_threads/shared_future/cons/assign.cc: New.
	* testsuite/30_threads/shared_future/cons/copy.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move.cc: Adjust.
	* testsuite/30_threads/shared_future/cons/move_assign.cc: New.
	* testsuite/30_threads/shared_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_value.cc: Remove.
	* testsuite/30_threads/shared_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/shared_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/cons/default_neg.cc: Remove.
	* testsuite/30_threads/unique_future/cons/default.cc: New.
	* testsuite/30_threads/unique_future/cons/move_assign.cc: New.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/unique_future/cons/move.cc: Adjust.
	* testsuite/30_threads/unique_future/requirements/
        explicit_instantiation.cc: Adjust.
	* testsuite/30_threads/unique_future/members/is_ready.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_value.cc: Remove.
	* testsuite/30_threads/unique_future/members/has_exception.cc: Remove.
	* testsuite/30_threads/unique_future/members/valid.cc: New.
	* testsuite/30_threads/unique_future/members/get.cc: Adjust.
	* testsuite/30_threads/unique_future/members/get2.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_for.cc: Adjust.
	* testsuite/30_threads/unique_future/members/wait_until.cc: Adjust.
	* testsuite/30_threads/headers/future/types_std_c++0x.cc: Adjust.
	* testsuite/30_threads/promise/cons/alloc.cc: New.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Adjust.
	* testsuite/30_threads/promise/cons/move.cc: Adjust.
	* testsuite/30_threads/promise/cons/move_assign.cc: Adjust.
	* testsuite/30_threads/promise/members/get_future.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception.cc: Adjust.
	* testsuite/30_threads/promise/members/set_exception2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value2.cc: Adjust.
	* testsuite/30_threads/promise/members/set_value3.cc: Adjust.
	* testsuite/30_threads/promise/members/swap.cc: Adjust.

From-SVN: r156097
2010-01-21 00:01:47 +00:00
Benjamin Kosnik
ac2e5c890a re PR libstdc++/42456 (Revision 155377 failed some C++ atomic tests)
2009-12-21  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/42456
	* src/atomic.cc: Move _GLIBCXX_ASM_SYMVER define within guard.
	* config/abi/pre/gnu.ver: Add non-volatile exports.

From-SVN: r155393
2009-12-22 08:23:08 +00:00
Benjamin Kosnik
afd88205d8 atomic: Update to N3000.
2009-12-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/atomic: Update to N3000.
	* include/bits/atomic_0.h: Same.
	* include/bits/atomic_2.h: Same.
	* include/c_global/cstdatomic: Move...
	* include/bits/atomic_base.h: ...here.
	* include/c_compatibility/stdatomic.h: Just include atomic_base.h.
	* include/precompiled/stdc++.h: Adjust includes.
	* include/Makefile.am: Adjust files.
	* include/Makefile.in: Regenerate.
	* include/std/future: Adjust.
	* src/atomic.cc: Adjust, adjust exports for compatibility.
	* src/compatibility.cc: Move C++0x stuff...
	* src/compatibility-c++0x.cc: ...here.

	* doc/xml/manual/using.xml: Update.
	* doc/xml/manual/status_cxx200x.xml: Update.
	* doc/doxygen/user.cfg.in: Update.

	* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
	* testsuite/29_atomics/atomic_address/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_address/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: Same.
	* testsuite/29_atomics/atomic_integral/cons/direct_list.cc: Same.
	* testsuite/29_atomics/atomic_integral/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_integral/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_assignment.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/increment.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/bitwise.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/decrement.cc: Same.
	* testsuite/29_atomics/atomic_integral/operators/
	integral_conversion.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
	* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
	* testsuite/29_atomics/atomic_flag/requirements/
	standard_layout.cc: Same.
	* testsuite/29_atomics/atomic_flag/requirements/trivial.cc: Same.
	* testsuite/29_atomics/atomic_flag/clear/1.cc: Same.
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c
	* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c
	* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
	* testsuite/29_atomics/headers/stdatomic.h/functions.c
	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
	* testsuite/29_atomics/atomic/cons/single_value.cc: Same.
	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
	* testsuite/29_atomics/atomic/cons/default.cc: Same.
	* testsuite/29_atomics/atomic/cons/copy_list.cc: Same.
	* testsuite/29_atomics/atomic/cons/direct_list.cc: Same.
	* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
	1.cc: Same.
	* testsuite/29_atomics/atomic/requirements/base_classes.cc: Same.
	* testsuite/29_atomics/atomic/operators/integral_assignment.cc: Same.
	* testsuite/29_atomics/atomic/operators/integral_conversion.cc: Same.
	* testsuite/util/testsuite_common_types.h: Adjust.

	* testsuite/29_atomics/headers/cstdatomic: Move and adjust...
	* testsuite/29_atomics/headers/atomic: ...here.
	* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
	* testsuite/29_atomics/headers/atomic/functions_std_c++0x.cc: Same.
	* testsuite/29_atomics/headers/atomic/std_c++0x_neg.cc: Same.
	* testsuite/29_atomics/headers/atomic/macros.cc: Same.

	* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Add.
	* testsuite/29_atomics/atomic/cons/user_pod.cc: Add.

From-SVN: r155377
2009-12-21 19:00:34 +00:00
Jimmy Guo
4ef8972563 re PR libstdc++/40088 (Creating a std::ostringstream object locks a global mutex)
2009-12-18  Jimmy Guo  <jguo@yahoo-inc.com>

	PR libstdc++/40088
	* src/locale_init.cc (locale::locale()): Optimize the common case
	where _S_global still points to _S_classic.

From-SVN: r155342
2009-12-18 09:41:03 +00:00
Paolo Carlini
45ed58a81f re PR libstdc++/42198 ([C++0x] Using std::thread without -pthread causes immediate crash)
2009-12-17  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42198
	* src/thread.cc (thread::_M_start_thread): Throw system_error
	immediately if the thread system is inactive.

From-SVN: r155308
2009-12-17 11:09:05 +00:00
Jonathan Wakely
ec903a9c42 functional (function::function): Move construct target.
2009-12-15  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/functional (function::function): Move construct target.
	(function::operator=): Use perfect forwarding for argument.
	(function::operator()): Use new __throw_bad_function_call.
	* include/bits/functexcept.h (__throw_bad_function_call): Declare.
	* src/functexcept.cc (__throw_bad_function_call): Define.
	* config/abi/pre/gnu.ver: Add new symbol.
	* testsuite/20_util/function/cons/move_target.cc: New.
	* testsuite/20_util/function/assign/move_target.cc: New.

From-SVN: r155261
2009-12-15 17:42:47 +00:00
Ralf Wildenhues
43e02a8a71 Sync from git Libtool and regenerate.
/:
	PR target/38384
	PR bootstrap/40972
	* libtool.m4: Sync from git Libtool.
	* ltoptions.m4: Likewise.
	* ltversion.m4: Likewise.
	* lt~obsolete.m4: Likewise.
	* ltmain.sh: Likewise.

boehm-gc/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.

fixincludes/:
	* configure: Regenerate.

gcc/:
	* configure: Regenerate.

libffi/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

libgomp/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/classpath/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* doc/api/Makefile.in: Regenerate.
	* examples/Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/jsr166/Makefile.in: Regenerate.
	* external/relaxngDatatype/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* lib/Makefile.in: Regenerate.
	* native/Makefile.in: Regenerate.
	* native/fdlibm/Makefile.in: Regenerate.
	* native/jawt/Makefile.in: Regenerate.
	* native/jni/Makefile.in: Regenerate.
	* native/jni/classpath/Makefile.in: Regenerate.
	* native/jni/gconf-peer/Makefile.in: Regenerate.
	* native/jni/gstreamer-peer/Makefile.in: Regenerate.
	* native/jni/gtk-peer/Makefile.in: Regenerate.
	* native/jni/java-io/Makefile.in: Regenerate.
	* native/jni/java-lang/Makefile.in: Regenerate.
	* native/jni/java-math/Makefile.in: Regenerate.
	* native/jni/java-net/Makefile.in: Regenerate.
	* native/jni/java-nio/Makefile.in: Regenerate.
	* native/jni/java-util/Makefile.in: Regenerate.
	* native/jni/midi-alsa/Makefile.in: Regenerate.
	* native/jni/midi-dssi/Makefile.in: Regenerate.
	* native/jni/native-lib/Makefile.in: Regenerate.
	* native/jni/qt-peer/Makefile.in: Regenerate.
	* native/jni/xmlj/Makefile.in: Regenerate.
	* native/plugin/Makefile.in: Regenerate.
	* resource/Makefile.in: Regenerate.
	* scripts/Makefile.in: Regenerate.
	* tools/Makefile.in: Regenerate.

libjava/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libmudflap/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/:
	* configure: Regenerate.

libssp/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

libstdc++-v3/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

lto-plugin/:
	* configure: Regenerate.
	* Makefile.in: Regenerate.

zlib/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

From-SVN: r155012
2009-12-05 17:18:53 +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
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
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
Benjamin Kosnik
3808dfec58 re PR libstdc++/40654 ([C++0x] atomic.cc: 'd' is used uninitialized warning)
2009-10-15  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/40654
	PR libstdc++/40826
	* src/atomic.cc (atomic_flag_test_and_set_explicit): Add
	static_cast from base to derived.
	(atomic_flag_clear_explicit): Same.
	* include/bits/atomic_2.h (__atomic2::atomic_flag): Public derivation.
	Remove value type constructor.
	* include/bits/atomic_0.h (__atomic0::atomic_flag): Same.
	* include/std/future (_Future_state): Use ATOMIC_FLAG_INIT to
	initialized the atomic_flag member.

From-SVN: r152895
2009-10-16 07:47:33 +00:00
Paolo Carlini
af0b8d73e3 re PR libstdc++/41037 (dec not set in cerr flags)
2009-09-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/41037
	* src/ios_init.cc (ios_base::Init::Init): Properly initialize cerr
	and wcerr flags.
	* testsuite/27_io/objects/char/41037.cc: New.
	* testsuite/27_io/objects/wchar_t/41037.cc: Likewise.

From-SVN: r151692
2009-09-14 17:01:05 +00:00
Ralf Wildenhues
878f62e5bd Override all per-target *_LINK variables correctly.
boehm-gc/:
	* Makefile.am (libgcjgc_la_LINK, gctest_LINK): New.
	(gctest_LDADD): Depend on libgcjgc.la instead of ./libgcjgc.la,
	so that library dependency resolution works with portable make.
	* Makefile.in: Regenerate.

libgfortran/:
	* Makefile.am (libgfortranbegin_la_LINK): New.
	* Makefile.in: Regenerate.

libgomp/:
	* Makefile.am (libgomp_la_LINK): New.
	* Makefile.in: Regenerate.

libjava/:
	* Makefile.am (libgij_la_LINK, libjvm_la_LINK): New.
	* Makefile.in: Regenerate.

libstdc++-v3/:
	* src/Makefile.am (libstdc___la_LINK): New.
	* src/Makefile.in: Regenerate.

From-SVN: r151627
2009-09-11 05:02:20 +00:00
Benjamin Kosnik
880b527fd8 revert: compatibility.cc: Make C++0x safe, add in explicit casts to bool for stream sentry objects.
2009-09-04  Benjamin Kosnik  <bkoz@redhat.com>

	Revert.
	2009-08-06  Benjamin Kosnik  <bkoz@redhat.com>
	* src/compatibility.cc: Make C++0x safe, add in explicit casts to
	bool for stream sentry objects.
	* include/bits/istream.tcc: Same.
	* include/bits/ostream.tcc: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/ostream_insert.h: Same.
	* src/istream.cc: Same.

From-SVN: r151445
2009-09-05 00:18:07 +00:00
Jonathan Wakely
41bc3c4a82 re PR libstdc++/41005 ([C++0x] Unable to link fstream open and ctor with std::string argument.)
2009-08-26  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/41005
	* configure.ac: Bump libtool_VERSION to 6:14:0.
	* configure: Regenerate.
	* src/Makefile.am: Compile fstream-inst.cc as C++0x.
	* src/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Add new symbols and disambiguate old ones,
	move <future> symbols to 3.4.14 version.
	* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.14 version.

From-SVN: r151126
2009-08-26 20:03:24 +01:00
Ralf Wildenhues
5213506e24 Regenerate tree using Autoconf 2.64 and Automake 1.11.
config/:
	* override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64.

:
	* configure: Regenerate.

intl/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

libiberty/:
	* config.in: Regenerate.
	* configure: Regenerate.

boehm-gc/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/gc_config.h.in: Regenerate.

fixincludes/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

gcc/:
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

libgcc/:
	* configure: Regenerate.

gnattools/:
	* configure: Regenerate.

libada/:
	* configure: Regenerate.

libcpp/:
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

libdecnumber/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.in: Regenerate.

libffi/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.

libgomp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/classpath/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* doc/api/Makefile.in: Regenerate.
	* examples/Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/jsr166/Makefile.in: Regenerate.
	* external/relaxngDatatype/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/config.h.in: Regenerate.
	* lib/Makefile.in: Regenerate.
	* native/Makefile.in: Regenerate.
	* native/fdlibm/Makefile.in: Regenerate.
	* native/jawt/Makefile.in: Regenerate.
	* native/jni/Makefile.in: Regenerate.
	* native/jni/classpath/Makefile.in: Regenerate.
	* native/jni/gconf-peer/Makefile.in: Regenerate.
	* native/jni/gstreamer-peer/Makefile.in: Regenerate.
	* native/jni/gtk-peer/Makefile.in: Regenerate.
	* native/jni/java-io/Makefile.in: Regenerate.
	* native/jni/java-lang/Makefile.in: Regenerate.
	* native/jni/java-math/Makefile.in: Regenerate.
	* native/jni/java-net/Makefile.in: Regenerate.
	* native/jni/java-nio/Makefile.in: Regenerate.
	* native/jni/java-util/Makefile.in: Regenerate.
	* native/jni/midi-alsa/Makefile.in: Regenerate.
	* native/jni/midi-dssi/Makefile.in: Regenerate.
	* native/jni/native-lib/Makefile.in: Regenerate.
	* native/jni/qt-peer/Makefile.in: Regenerate.
	* native/jni/xmlj/Makefile.in: Regenerate.
	* native/plugin/Makefile.in: Regenerate.
	* resource/Makefile.in: Regenerate.
	* scripts/Makefile.in: Regenerate.
	* tools/Makefile.in: Regenerate.

libjava/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/config.h.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/libltdl/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config-h.in: Regenerate.
	* configure: Regenerate.

libmudflap/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

libssp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.

libstdc++-v3/:
	* Makefile.in: Regenerate.
	* acinclude.m4: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

zlib/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r151014
2009-08-22 13:22:20 +00:00
Ralf Wildenhues
84fec8a537 LIBTOOLFLAGS, and *_LINK fixes for Automake 1.11
boehm-gc/:
	* Makefile.am (LTCOMPILE, LTLINK): Add $(AM_LIBTOOLFLAGS)
	and $(LIBTOOLFLAGS).
	* Makefile.in: Regenerate.

libgfortran/:
	* Makefile.am (libgfortran_la_LINK): Add $(libgfortran_la_LDFLAGS).
	* Makefile.in: Regenerate.

libjava/:
	* Makefile.am (libgcj_la_LINK, libgcj_tools_la_LINK)
	(lib_gnu_awt_xlib_la_LINK, libgcj_bc_la_LINK, jv_convert_LINK)
	(gcj_dbtool_LINK, gc_analyze_LINK, gij_LINK, ecjx_LINK)
	(gappletviewer_LINK, gjarsigner_LINK, gkeytool_LINK)
	(gjar_LINK, gjavah_LINK, gcjh_LINK, gnative2ascii_LINK)
	(gorbd_LINK, grmid_LINK, gserialver_LINK, gtnameserv_LINK)
	(grmic_LINK, grmiregistry_LINK, gjdoc_LINK): Add $(gjdoc_LDFLAGS).
	(GCJLINK, LIBLINK, CXXLINK): Add $(LIBTOOLFLAGS).
	* Makefile.in: Regenerate.

libstdc++-v3/:
	* libsupc++/Makefile.am (LTCOMPILE, LTCXXCOMPILE, CXXLINK): Add
	$(LIBTOOLFLAGS).
	* libsupc++/Makefile.in: Regenerate.
	* src/Makefile.am (LTCXXCOMPILE, CXXLINK): Add $(AM_LIBTOOLFLAGS)
	and $(LIBTOOLFLAGS).
	* src/Makefile.in: Regenerate.

libgomp/:
	* Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
	* Makefile.in: Regenerate.

libobjc/:
	* Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).

From-SVN: r151013
2009-08-22 12:43:24 +00:00
Uros Bizjak
34d3575322 compatibility-ldbl.cc: Include cmath.
* src/compatibility-ldbl.cc: Include cmath.

From-SVN: r150736
2009-08-14 10:35:55 +02:00
Benjamin Kosnik
2019698b6b compatibility-ldbl.cc: Include tr1/functional.
2009-08-13  Benjamin Kosnik  <bkoz@redhat.com>

	* src/compatibility-ldbl.cc: Include tr1/functional.

From-SVN: r150731
2009-08-14 01:45:36 +00:00
Benjamin Kosnik
5d32a15e3b compatibility-ldbl.cc: Add explicit namespace scope.
2009-08-12  Benjamin Kosnik  <bkoz@redhat.com>

	* src/compatibility-ldbl.cc: Add explicit namespace scope.

From-SVN: r150707
2009-08-12 22:05:50 +00:00
Benjamin Kosnik
41ca42469f future: Move error handling bits outside macro guard.
2009-08-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/future: Move error handling bits outside macro guard.
	* src/future.cc: Adjust.

	* include/precompiled/stdc++.h: Add future.
	* doc/xml/manual/using.xml: Same.

From-SVN: r150642
2009-08-11 04:30:35 +00:00
Benjamin Kosnik
a00e37691d hashtable.cc: Just definitions.
2009-08-10  Benjamin Kosnik  <bkoz@redhat.com>

	* src/hashtable.cc: Just definitions.
	* src/hashtable_c++0x.cc: Compile C++0x versions.
	* src/hash.cc: Same.
	* src/hash_c++0x.cc: Same.
	src/hash_tr1.cc: Compile TR1 versions.
	src/hashtable_tr1.cc: Same.

	* src/limits_c++0x.cc: Sync build error handling.

	* src/Makefile.am (sources): Change hash.cc to hash_tr1.cc,
	hashtable.cc to hashtable_tr1.cc.
	* src/Makefile.in: Regenerate.

From-SVN: r150641
2009-08-11 01:24:59 +00:00
Benjamin Kosnik
8d1b99e26a future: Fixes for -fno-exceptions.
2009-08-10  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/future: Fixes for -fno-exceptions.
	* include/bits/functexcept.h: Same.
	* libsupc++/exception_ptr.h: Same.
	* src/pool_allocator.cc: Same.
	* src/future.cc: Same.
	* src/functexcept.cc: Same.
	* config/abi/pre/gnu.ver: New exports.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
	* testsuite/30_threads/packaged_task/cons/copy_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/shared_future/cons/assign_neg.cc: Same.
	* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
	* testsuite/30_threads/promise/cons/copy_neg.cc: Same.

	* testsuite/23_containers/deque/operators/1.cc: Separate in two...
	* testsuite/23_containers/deque/operators/2.cc: New.

From-SVN: r150633
2009-08-10 18:24:47 +00:00
Paolo Carlini
ac517fcbcc hash.cc (hash<string>::operator()(string), hash<wstring>::operator()(wstring)): Do not decorate as throwing nothing.
2009-08-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* src/hash.cc (hash<string>::operator()(string),
	hash<wstring>::operator()(wstring)): Do not decorate as throwing
	nothing.
	* include/bits/functional_hash.h (hash<error_code>::
	operator()(error_code)): Likewise.

From-SVN: r150566
2009-08-07 10:13:44 +00:00
Benjamin Kosnik
21da6d0f10 compatibility.cc: Make C++0x safe, add in explicit casts to bool for stream sentry objects.
2009-08-06  Benjamin Kosnik  <bkoz@redhat.com>

	* src/compatibility.cc: Make C++0x safe, add in explicit casts to
        bool for stream sentry objects.
        * include/bits/istream.tcc: Same.
        * include/bits/ostream.tcc: Same.
        * include/bits/basic_string.tcc: Same.
	* include/bits/ostream_insert.h: Same.
        * src/istream.cc: Same.

From-SVN: r150539
2009-08-06 19:33:33 +00:00
Paolo Carlini
6f0398bb14 istream.tcc (basic_istream<>::operator>>(short&), [...]): Implement resolution of DR 696, [Ready] in Frankfurt.
2009-07-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/istream.tcc (basic_istream<>::operator>>(short&),
	basic_istream<>::operator>>(int&)): Implement resolution of DR 696,
	[Ready] in Frankfurt.
	* include/tr1_impl/regex (regex_traits<>::value): Adjust.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc:
	New.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/dr696.cc:
	Likewise.
	* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
	Adjust.
	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
	Likewise.
	* doc/xml/manual/intro.xml: Add an entry for DR 696.

	* include/bits/istream.tcc: Minor clean-up to the initializers of the
	__err locals.
	* include/bits/ostream.tcc: Likewise.
	* src/compatibility.cc: Likewise.
	* src/istream.cc: Likewise.

From-SVN: r149704
2009-07-16 12:41:03 +00:00
Jonathan Wakely
c910ceff6a future: New.
2009-06-21  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/future: New.
	* include/Makefile.am: Add.
	* include/Makefile.in: Regenerate.
	* src/future.cc: New.
	* src/Makefile.am: Add.
	* src/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Add export.
	* testsuite/30_threads/headers/future/std_c++0x_neg.cc: New.
	* testsuite/30_threads/headers/future/types_std_c++0x.cc: New.
	* testsuite/30_threads/packaged_task/cons/1.cc: New.
	* testsuite/30_threads/packaged_task/cons/2.cc: New.
	* testsuite/30_threads/packaged_task/cons/assign_neg.cc: New.
	* testsuite/30_threads/packaged_task/cons/copy_neg.cc: New.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc: New.
	* testsuite/30_threads/packaged_task/cons/move.cc: New.
	* testsuite/30_threads/packaged_task/members/boolconv.cc: New.
	* testsuite/30_threads/packaged_task/members/get_future.cc: New.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: New.
	* testsuite/30_threads/packaged_task/members/invoke.cc: New.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: New.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: New.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: New.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: New.
	* testsuite/30_threads/packaged_task/members/reset.cc: New.
	* testsuite/30_threads/packaged_task/members/reset2.cc: New.
	* testsuite/30_threads/packaged_task/members/swap.cc: New.
	* testsuite/30_threads/packaged_task/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/promise/cons/1.cc: New.
	* testsuite/30_threads/promise/cons/assign_neg.cc: New.
	* testsuite/30_threads/promise/cons/copy_neg.cc: New.
	* testsuite/30_threads/promise/cons/move_assign.cc: New.
	* testsuite/30_threads/promise/cons/move.cc: New.
	* testsuite/30_threads/promise/members/get_future.cc: New.
	* testsuite/30_threads/promise/members/get_future2.cc: New.
	* testsuite/30_threads/promise/members/set_exception.cc: New.
	* testsuite/30_threads/promise/members/set_exception2.cc: New.
	* testsuite/30_threads/promise/members/set_value.cc: New.
	* testsuite/30_threads/promise/members/set_value2.cc: New.
	* testsuite/30_threads/promise/members/set_value3.cc: New.
	* testsuite/30_threads/promise/members/swap.cc: New.
	* testsuite/30_threads/promise/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/shared_future/cons/assign_neg.cc: New.
	* testsuite/30_threads/shared_future/cons/copy.cc: New.
	* testsuite/30_threads/shared_future/cons/default_neg.cc: New.
	* testsuite/30_threads/shared_future/cons/move.cc: New.
	* testsuite/30_threads/shared_future/members/get.cc: New.
	* testsuite/30_threads/shared_future/members/get2.cc: New.
	* testsuite/30_threads/shared_future/members/has_exception.cc: New.
	* testsuite/30_threads/shared_future/members/has_value.cc: New.
	* testsuite/30_threads/shared_future/members/is_ready.cc: New.
	* testsuite/30_threads/shared_future/members/wait.cc: New.
	* testsuite/30_threads/shared_future/members/wait_for.cc: New.
	* testsuite/30_threads/shared_future/members/wait_until.cc: New.
	* testsuite/30_threads/shared_future/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/unique_future/cons/assign_neg.cc: New.
	* testsuite/30_threads/unique_future/cons/copy_neg.cc: New.
	* testsuite/30_threads/unique_future/cons/default_neg.cc: New.
	* testsuite/30_threads/unique_future/cons/move.cc: New.
	* testsuite/30_threads/unique_future/members/get.cc: New.
	* testsuite/30_threads/unique_future/members/get2.cc: New.
	* testsuite/30_threads/unique_future/members/has_exception.cc: New.
	* testsuite/30_threads/unique_future/members/has_value.cc: New.
	* testsuite/30_threads/unique_future/members/is_ready.cc: New.
	* testsuite/30_threads/unique_future/members/wait.cc: New.
	* testsuite/30_threads/unique_future/members/wait_for.cc: New.
	* testsuite/30_threads/unique_future/members/wait_until.cc: New.
	* testsuite/30_threads/unique_future/requirements/
	explicit_instantiation.cc: New.
	* testsuite/performance/30_threads/future/polling.cc: New.

From-SVN: r148765
2009-06-21 15:02:09 +01:00
Paolo Carlini
aaf19a5069 re PR libstdc++/40094 (FAIL: ext/throw_allocator/deallocate_global.cc execution test)
2009-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
	
	PR libstdc++/40094
	Revert:
	2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>
	* include/ext/throw_allocator.h (throw_allocator_base): Avoid
	out of line member functions definitions.
	(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
	Remove, use static locals instead.
	(throw_allocator_base::do_check_allocated, print_to_string): Declare.
	* src/throw_allocator.cc: New.
	* src/Makefile.am: Add.
	* config/abi/pre/gnu.ver: Add exports.
	* src/Makefile.in: Regenerate.

From-SVN: r147789
2009-05-22 01:32:49 +00:00
Paolo Carlini
e2792913bd re PR libstdc++/40094 (FAIL: ext/throw_allocator/deallocate_global.cc execution test)
2009-05-21  Paolo Carlini  <paolo.carlini@oracle.com>
	
	PR libstdc++/40094
	Revert:
	2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>
	* include/ext/throw_allocator.h (throw_allocator_base): Avoid
	out of line member functions definitions.
	(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
	Remove, use static locals instead.
	(throw_allocator_base::do_check_allocated, print_to_string): Declare.
	* src/throw_allocator.cc: New.
	* src/Makefile.am: Add.
	* config/abi/pre/gnu.ver: Add exports.
	* src/Makefile.in: Regenerate.

From-SVN: r147788
2009-05-22 01:28:50 +00:00
Paolo Carlini
c8036448d1 re PR libstdc++/40184 (locale(const char* std_name) can create invalid facets for nonuniform locale)
2009-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40184
	* include/bits/locale_classes.h (locale::facet::_S_lc_ctype_c_locale):
	Declare...
	* config/locale/gnu/c_locale.cc: ... and define.
	* config/locale/generic/c_locale.cc: Define.
	* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
	Use it.
	* testsuite/22_locale/locale/cons/40184.cc: New.

From-SVN: r147714
2009-05-19 18:20:47 +00:00
Jonathan Wakely
5c64575096 mutex: Move std::lock_error to ...
2009-05-13  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* include/std/mutex: Move std::lock_error to ...
	* src/compatibility.cc: Here.
	* src/mutex.cc: Likewise.
	* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
	for lock types and remove std::lock_error check.

From-SVN: r147609
2009-05-16 11:09:02 +01:00
Paolo Carlini
0f136367bc re PR libstdc++/40160 (-fno-rtti vs _GLIBCXX_DEBUG)
2009-05-15  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/40160
	* include/debug/formatter.h (_Parameter::_Parameter): Don't use
	typeid when __GXX_RTTI is undefined.
	* src/debug.cc (_Error_formatter::_Parameter::_M_print_field): Adjust
	for null _M_variant._M_iterator._M_type,
	_M_variant._M_iterator._M_seq_type, _M_variant._M_sequence._M_type.
	* testsuite/21_strings/basic_string/40160.cc: New.

From-SVN: r147599
2009-05-15 22:25:24 +00:00
Ben Elliston
420162073c compatibility.cc (_ZTIe, [...]): Change type to const void * const.
* src/compatibility.cc (_ZTIe, _ZTIPe, _ZTIPKe): Change type to
	const void * const.

From-SVN: r147455
2009-05-13 10:16:08 +10:00
Paolo Carlini
9fcf9c24a1 throw_allocator.h (throw_allocator_base): Avoid out of line member functions definitions.
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/throw_allocator.h (throw_allocator_base): Avoid
	out of line member functions definitions.
	(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
	Remove, use static locals instead.
	(throw_allocator_base::do_check_allocated, print_to_string): Declare.
	* src/throw_allocator.cc: New.
	* src/Makefile.am: Add.
	* config/abi/pre/gnu.ver: Add exports.
	* src/Makefile.in: Regenerate.

From-SVN: r147264
2009-05-08 00:39:28 +00:00
Matthias Klose
76104d42a4 re PR libstdc++/40038 (symbols ceill@GLIBCXX_3.4.3 not exported)
2009-05-07  Matthias Klose  <doko@ubuntu.com>

	PR libstdc++/40038
	* src/math_stubs_long_double.cc: Add ceill.

From-SVN: r147217
2009-05-07 06:55:15 +00:00
Jonathan Wakely
efdb734755 re PR libstdc++/39909 (non-TLS version of std::call_once causes terminate)
2009-05-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/39909
	* include/std/mutex (__get_once_functor_lock, __get_once_mutex,
	__set_once_functor_lock_ptr): Replace global lock object with local
	locks on global mutex.
	* src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
	__set_once_functor_lock_ptr): Likewise, keeping old function to
	preserve ABI.
	(__once_proxy): Use pointer to local lock if set, global lock
	otherwise.
	* config/abi/pre/gnu.ver: Add new symbols to new ABI version.
	* testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
	* testsuite/30_threads/call_once/39909.cc: New.

From-SVN: r147137
2009-05-05 22:32:38 +01:00