title: back_inserter for move-only type
body: <p>In the following code the object 'queue' is non-copyable, but is movable due to a std::mutex.</p>
  
  <pre><code>std::generate_n(std::back_inserter(thread_pool),
                  std::thread::hardware_concurrency,
                  [&amp;](){return std::thread(handler(), exiting, queue);});
  </code></pre>
  
  <p>VC++2012 is failing to compile due to a private copy constructor on the mutex.  It is failing to generate the copy constructor for queue.  Why would anything be trying to copy queue?  It appears to me that everything is taking it by reference, thus no copies.</p>