Merge branch 'develop'

This commit is contained in:
Oliver Kowalke 2016-07-01 17:58:57 +02:00
commit c547163f0e
3 changed files with 17 additions and 9 deletions

View File

@ -31,3 +31,6 @@ boostbook coro
# Absolute path for images: # Absolute path for images:
<format>pdf:<xsl:param>img.src.path=$(here)/html/ <format>pdf:<xsl:param>img.src.path=$(here)/html/
; ;
alias boostdoc : coro
: : : <implicit-dependency>coro ;

View File

@ -109,9 +109,7 @@ pull_coroutine< T >::control_block::control_block( context::preallocated palloc,
bvalid{ false }, bvalid{ false },
storage{} { storage{} {
// enter coroutine-fn in order to have first value available after ctor (of `*this`) returns // enter coroutine-fn in order to have first value available after ctor (of `*this`) returns
auto result = ctx( nullptr); resume();
ctx = std::move( std::get< 0 >( result) );
set( std::get< 1 >( result) );
} }
template< typename T > template< typename T >
@ -260,9 +258,7 @@ pull_coroutine< T & >::control_block::control_block( context::preallocated pallo
except{}, except{},
t{ nullptr } { t{ nullptr } {
// enter coroutine-fn in order to have first value available after ctor (of `*this`) returns // enter coroutine-fn in order to have first value available after ctor (of `*this`) returns
auto result = ctx( nullptr); resume();
ctx = std::move( std::get< 0 >( result) );
t = std::get< 1 >( result);
} }
template< typename T > template< typename T >
@ -382,7 +378,7 @@ pull_coroutine< void >::control_block::control_block( context::preallocated pall
state{ state_t::unwind }, state{ state_t::unwind },
except{} { except{} {
// enter coroutine-fn in order to have first value available after ctor (of `*this`) returns // enter coroutine-fn in order to have first value available after ctor (of `*this`) returns
ctx = ctx(); resume();
} }
inline inline

View File

@ -26,7 +26,8 @@ project boost/coroutine2/test
<threading>multi <threading>multi
; ;
run test_coroutine.cpp : test-suite minimal :
[ run test_coroutine.cpp :
: : : :
[ requires cxx11_auto_declarations [ requires cxx11_auto_declarations
cxx11_constexpr cxx11_constexpr
@ -38,4 +39,12 @@ run test_coroutine.cpp :
cxx11_nullptr cxx11_nullptr
cxx11_rvalue_references cxx11_rvalue_references
cxx11_template_aliases cxx11_template_aliases
cxx11_variadic_templates ] ; cxx11_variadic_templates ] ] ;
test-suite full :
minimal ;
test-suite extra ;
explicit minimal ;
explicit extra ;