[cfe-dev] Move constructor forces copy assignment to be implicitly defaulted?

Steve Ramsey clang at lucena.com
Mon May 28 17:04:34 PDT 2012

On May 28, 2012, at 4:04 PM, Steve Ramsey wrote:
> This paragraph features in my nightmares. I go back every few weeks and try and parse it again, but I still get confused. In my current interpretation, it’s saying that a copy constructor will always be declared, whether implicitly or explicitly; any implicitly declared copy constructor will always be defined as deleted unless there are no implicitly or explicitly declared move special member functions.

Actually, before Howard hits me with the Language Lawyer Bat again, I should add a clarification to the end of that last sentence: “otherwise it will be defined as defaulted.” That bit is important because the difference between being “defined” and being “defined as defaulted” is that “defaulted” can mean “deleted” depending on the circumstances.


More information about the cfe-dev mailing list