vsk added a comment.
Thanks! This is definitely the right fix, since it fixes up
implicitly-generated move constructors as well. However, I think the test can
be simpler (while also checking that move constructors are handled correctly).
E.g:
struct A {
void operator=(const A &a) {}
void operator=(const A &&a) {}
};
struct B {
A a;
B &operator=(const B &b) = default;
B &operator=(B &&b) = default;
};
int main() {
B b1, b2;
b1 = b2;
b2 = static_cast<B &&>(b1);
return 0;
}
http://reviews.llvm.org/D16947
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits