[llvm] r203431 - [PM] As Dave noticed in review, I had erroneously copied the move

Chandler Carruth chandlerc at gmail.com
Sun Mar 9 19:10:01 PDT 2014


On Sun, Mar 9, 2014 at 6:56 PM, David Blaikie <dblaikie at gmail.com> wrote:

>
> On Mar 9, 2014 6:41 PM, "Chandler Carruth" <chandlerc at gmail.com> wrote:
> >
> > Author: chandlerc
> > Date: Sun Mar  9 20:32:25 2014
> > New Revision: 203431
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=203431&view=rev
> > Log:
> > [PM] As Dave noticed in review, I had erroneously copied the move
> > constructors from the classes which only have a single reference member
> > to many other places.
>
> Is they any reason this type even had a move constrictor if it wasn't
> actually doing any move work? Might be good to remove it so it doesn't
> erroneously indoor anyone else to make the same mistake.
>
Sadly, yes.

If it doesn't have a move constructor, then it isn't movable. If it is
mixed with a move-only type for any reason, it stops being either movable
or copyable.

I mean, yes the same hacks that require us to write out special members
will save us there by forcing the user to write a move constructor that
moves one side and copies the other, but then later when we delete that
because MSVC is fixed, we'll get pretty horrible compile errors without any
real evidence of why.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140309/c7a49af2/attachment.html>


More information about the llvm-commits mailing list