OSDN Git Service

2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 9 Jul 2011 10:13:01 +0000 (10:13 +0000)
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 9 Jul 2011 10:13:01 +0000 (10:13 +0000)
commit339db54bdce71adca1d790413745f7e0d557b693
tree220d98d77838ae389eb4bbbfd1acdd2be8814bea
parent3115bda06f241a032e3e5dca50556203a98767a0
2011-07-09  Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/49668
* include/std/functional (__bind_simple): Define.
* include/std/future (_Task_setter): Parameterize by type of result
pointer instead of state object.
(_S_task_setter): Type deduction helper.
(_Task_state): Use _S_task_setter and __bind_simple.
(_Deferred_state, _Async_state): Store call wrapper directly not as
std::function. Use _S_task_setter and __bind_simple.
(_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
(async): Use new functions and __bind_simple.
* include/std/mutex (call_once): Use __bind_simple.
* include/std/thread (thread): Likewise. Remove unused headers.
* src/thread.cc: Add header.
* testsuite/30_threads/async/49668.cc: New.
* testsuite/30_threads/call_once/49668.cc: New.
* testsuite/30_threads/thread/cons/49668.cc: New.
* testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176073 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/std/functional
libstdc++-v3/include/std/future
libstdc++-v3/include/std/mutex
libstdc++-v3/include/std/thread
libstdc++-v3/src/thread.cc
libstdc++-v3/testsuite/30_threads/async/49668.cc [new file with mode: 0644]
libstdc++-v3/testsuite/30_threads/call_once/49668.cc [new file with mode: 0644]
libstdc++-v3/testsuite/30_threads/packaged_task/49668.cc [new file with mode: 0644]
libstdc++-v3/testsuite/30_threads/thread/cons/49668.cc [new file with mode: 0644]
libstdc++-v3/testsuite/30_threads/thread/cons/moveable.cc