<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Sep 2, 2014 at 2:38 PM, Duncan P. N. Exon Smith <span dir="ltr"><<a href="mailto:dexonsmith@apple.com" target="_blank">dexonsmith@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5"><br>
> On 2014 Aug 26, at 18:26, Rafael Espíndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br>
><br>
>> Actually I did mean && - it's not uncommon for APIs to take by movement then<br>
>> fail to move-from in their failure path. Granted in the C++ standard library<br>
>> that failure is demonstrated by throwing an exception, whereas this has a<br>
>> return result.<br>
><br>
> OK, so this patch (on top of all previous which were already<br>
> committed) changes the & to &&. I personally find a<br>
> "foo(std::move(bar))" that doesn't always move bar to be a bit<br>
> confusing, but if that is common, I am OK with it.<br>
<br>
</div></div>I agree that this is a bit unexpected, but I think David's right that<br>
it's better than the alternative.<br></blockquote><div><br>*nod* 'preciate the second opinion. I could be convinced either way, but at least wanted to float the idea.<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It's probably worth documenting the failure behaviour in the doxygen.<br></blockquote><div><br>Yep - whether it's by T& or T&&, it should be documented.<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Otherwise (assuming David agrees) this LGTM.</blockquote></div><br>Yep yep.</div></div>