<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2014/1/15 Pierre Talbot <span dir="ltr"><<a href="mailto:ptalbot@hyc.io" target="_blank">ptalbot@hyc.io</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> void push_data(boost::coroutines::coroutine<std::string>::push_type& sink)<br> {<br> � sink("test1");<br> � t = std::thread(push_data2, std::move(sink));<br> }<br></blockquote></div><br></div><div class="gmail_extra">'sink' is synthesized by the framework and is attached to coroutine-stack.<br></div><div class="gmail_extra">because you move the synth. coroutine, the code inside the framework can't access it any more (therefore the assertion from intrusive_ptr<>).<br> </div></div>