title: Generic lambda argument for std::pair
body: <p>I'm trying to see if this is possible in the C++14 generic lambda, but I cannot find a right way to express it (or perhaps it is not possible). The simplified example is:</p>
  
  <pre><code>auto confirmOperation = [](auto pr){
    assert(pr.second);
  };
  </code></pre>
  
  <p>The idea is that if you pass it an <code>std::pair</code> where the <code>second</code> is a <code>bool</code> (such as what is returned from <code>emplace</code> functions), it can look at this bool.</p>
  
  <p>If this was a template parameter instead, I could explicitly show the <code>pair</code> with the types of the pair as generic, but I don't think that is possible with a lambda? Thus instead I mark the entire argument as generic, and thus the compiler doesn't seem able to deduce that I'm passing it the return of a map's <code>emplace()</code>.</p>
  
  <p>Any way to do this?</p>