Boost C++ Libraries: Ticket #11093: Limitations of unique_ptr in C++03 mode https://svn.boost.org/trac10/ticket/11093 <p> This is a follow-up of a thread on boost-dev mailing list which touches the topic of boost::movelib::unique_ptr emulation in C++03. </p> <p> One of such limitations is related to copy initialization expressions: </p> <div class="wiki-code"><div class="code"><pre><span class="n">unique_ptr</span><span class="o">&lt;</span><span class="n">Derived</span><span class="o">&gt;</span> <span class="n">x</span> <span class="o">=</span> <span class="n">make_unique</span><span class="o">&lt;</span><span class="n">Derived</span><span class="o">&gt;</span><span class="p">();</span> <span class="n">unique_ptr</span><span class="o">&lt;</span><span class="n">Base</span><span class="o">&gt;</span> <span class="n">y</span> <span class="o">=</span> <span class="n">move</span><span class="p">(</span><span class="n">x</span><span class="p">);</span> </pre></div></div><p> which won't compile, while: </p> <div class="wiki-code"><div class="code"><pre><span class="n">unique_ptr</span><span class="o">&lt;</span><span class="n">Derived</span><span class="o">&gt;</span> <span class="n">x</span> <span class="o">=</span> <span class="n">make_unique</span><span class="o">&lt;</span><span class="n">Derived</span><span class="o">&gt;</span><span class="p">();</span> <span class="n">unique_ptr</span><span class="o">&lt;</span><span class="n">Base</span><span class="o">&gt;</span> <span class="n">y</span><span class="p">(</span><span class="n">move</span><span class="p">(</span><span class="n">x</span><span class="p">));</span> </pre></div></div><p> will compile without any problems. </p> <p> There are probably some other limitations. It would be best if they were documented. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11093 Trac 1.4.3