title: Initializing container of unique_ptrs from initializer list fails with GCC 4.7
body: <p>I am trying to initialise an <code>std::vector&lt;std::unique_ptr&lt;std::string&gt;&gt;</code> in a way that is equivalent to an example from <a href="http://www.stroustrup.com/C++11FAQ.html#std-unique_ptr">Bjarne Stroustrup's C++11 FAQ</a>:</p>
  
  <pre><code>using namespace std;
  vector&lt;unique_ptr&lt;string&gt;&gt; vs { new string{"Doug"}, new string{"Adams"} }; // fails
  unique_ptr&lt;string&gt; ps { new string{"42"} }; // OK
  </code></pre>
  
  <p>I can see no reason why this syntax should fail. Is there something wrong with this way of initializing the container?<br>
  The compiler error message is huge; the relevant segment I find is below:</p>
  
  <blockquote>
    <p>/usr/lib/gcc-snapshot/lib/gcc/i686-linux-gnu/4.7.0/../../../../include/c++/4.7.0
    /bits/stl_construct.h:77:7: error: no matching function for call to
    <code>'std::unique_ptr&lt;std::basic_string&lt;char&gt; &gt;::unique_ptr(std::basic_string&lt;char&gt;&amp;)'</code></p>
  </blockquote>
  
  <p>What is the way to fix this error ?</p>