cor3ntin wrote:

> > Per https://eel.is/c++draft/dcl.fct.def.default#2.2, the explicit object 
> > parameter of a defaulted special member function must be of the same type 
> > as the one of an equivalent implicitly defaulted function, ignoring 
> > references.
> 
> I could use an explanation as to how they must be the same type when 2.2 says 
> "...may be an explicit object member function whose explicit object parameter 
> is of (possibly different) type “reference to C”, in which case..."

That wording is terrible, but it's hard to phrase it better.
The type may be different but it is always a reference to `C` where C is the 
same type.

Ie it can be either `C&` or `C&&`. this is consistent with the fact that we 
allow ref-qualified functions.
There is some context here https://lists.isocpp.org/core/2023/07/14608.php

I had a chat with core on mattermost and there is agreement that the wording 
could be made clearer editorially.




https://github.com/llvm/llvm-project/pull/70176
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to