title: Deleted function on powerPC compiler, not on gcc
body: <p>In my current project we have to compile a source for openSUSE - 12.1 and for powerPC.<br>
  The project is written in C++11.</p>
  
  <p>The openSUS build is done with gcc-4.7.2<br>
  The powerPC build with powerpc-e500v2-linux-gnuspe</p>
  
  <p>I have a pure virtual base class (virtual destructor and some virtual functions), let's call it VirtualIf</p>
  
  <p>I now want to do this:</p>
  
  <pre><code>someStdMap[key] = std::vector&lt;std::unique_ptr&lt;VirtualIf&gt; &gt;();
  </code></pre>
  
  <p>to initialize the vector with unique ptr's and</p>
  
  <pre><code>someStdMap[key].push_back(std::move(uniquePtrToVirtualIf));
  </code></pre>
  
  <p>To add them to that vector</p>
  
  <p>This works perfectly on the gcc builds but fails on the powerPC build with:</p>
  
  <pre><code>deleted function 'std::unique_ptr&lt;_Tp, _Tp_Deleter&gt;...
  </code></pre>
  
  <p>on both lines.</p>
  
  <p>I know this error means that the default constructor is deleted, but why? and why the difference between the 2 compilers ? And how can i fix this for the arm build?</p>