Boost C++ Libraries: Ticket #8505: Add a C++11 conforming move semantics to function<> class https://svn.boost.org/trac10/ticket/8505 <p> C++11 std::function provides move semantics. It would be great if Boost.Function could provide it on C++11 compilers and use Boost.Move on C++ compilers that don't provide rvalue references. </p> <pre class="wiki">function(function&amp;&amp;); function&amp; operator=(function&amp;&amp;); template&lt;class F&gt; function&amp; operator=(F&amp;&amp;); </pre> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8505 Trac 1.4.3 Antony Polukhin Fri, 14 Jun 2013 07:29:21 GMT owner, status changed; cc set https://svn.boost.org/trac10/ticket/8505#comment:1 https://svn.boost.org/trac10/ticket/8505#comment:1 <ul> <li><strong>cc</strong> <span class="trac-author">antoshkka@…</span> added </li> <li><strong>owner</strong> changed from <span class="trac-author">Douglas Gregor</span> to <span class="trac-author">Antony Polukhin</span> </li> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> <p> This issue has been fixed in <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/7330" title="#7330: Patches: Patch adding move constructors and move assignments (closed: fixed)">#7330</a> without usage of Boost.Move. </p> <p> Discussion about adding Boost.Move to old libraries can be found <a class="ext-link" href="http://lists.boost.org/Archives/boost/2013/04/202436.php"><span class="icon">​</span>here</a>. In short: adding Boost.Move to existing libraries breaks user code. </p> <p> <code>template&lt;class F&gt; function&amp; operator=(F&amp;&amp;);</code> does not conform C++ Standard and may intentionally break users code on some compilers. </p> <p> Only one thing remains undone: update documentation. </p> Ticket Antony Polukhin Sat, 15 Jun 2013 06:59:31 GMT <link>https://svn.boost.org/trac10/ticket/8505#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8505#comment:2</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84787" title="Update documentation of Boost.Function and add info about rvalues ...">[84787]</a>) Update documentation of Boost.Function and add info about rvalues (refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8505" title="#8505: Feature Requests: Add a C++11 conforming move semantics to function&lt;&gt; class (closed: fixed)">#8505</a>) </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Antony Polukhin</dc:creator> <pubDate>Sat, 15 Jun 2013 07:06:28 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/8505#comment:3 https://svn.boost.org/trac10/ticket/8505#comment:3 <ul> <li><strong>status</strong> <span class="trac-field-old">assigned</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84788" title="Merge from trunk: * Update documentation of Boost.Function and add ...">[84788]</a>) Merge from trunk: </p> <ul><li>Update documentation of Boost.Function and add info about rvalues (fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8505" title="#8505: Feature Requests: Add a C++11 conforming move semantics to function&lt;&gt; class (closed: fixed)">#8505</a>) </li></ul> Ticket