Boost C++ Libraries: Ticket #13520: Cant add capture-by-move lambda to channel https://svn.boost.org/trac10/ticket/13520 <p> The following code isnt working if the <code>test</code> is move-only </p> <pre class="wiki">using task = std::function&lt;void()&gt;; boost::fibers::buffered_channel&lt;task&gt; ch{1024}; test tst; ch.push([t{std::move(tst)}]() { t.print(); }); </pre><p> Full repro: <a class="ext-link" href="http://coliru.stacked-crooked.com/a/88dec3ea76a41ea1"><span class="icon">​</span>http://coliru.stacked-crooked.com/a/88dec3ea76a41ea1</a> </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/13520 Trac 1.4.3 kreuzerkrieg@… Sun, 15 Apr 2018 14:41:36 GMT <link>https://svn.boost.org/trac10/ticket/13520#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/13520#comment:1</guid> <description> <p> I retract my claim. I forgot (again) that std::function must be copyable and copyconstructible. The problem is in the std::function stored in the channel and not the channel itself </p> </description> <category>Ticket</category> </item> <item> <dc:creator>anonymous</dc:creator> <pubDate>Sun, 15 Apr 2018 14:42:45 GMT</pubDate> <title>severity changed https://svn.boost.org/trac10/ticket/13520#comment:2 https://svn.boost.org/trac10/ticket/13520#comment:2 <ul> <li><strong>severity</strong> <span class="trac-field-old">Problem</span> → <span class="trac-field-new">Not Applicable</span> </li> </ul> Ticket