Asignación de este puntero a rvalue referencia a un puntero
¿Debería compilarse la siguiente muestra?
struct B;
struct A
{
A(B*&&){}
};
struct B : A
{
B() : A(this){}
};
int main(){}
EnLWS con clang compila, pero con gcc obtengo:
no hay conversión conocida para el argumento 1 de 'B * const' a 'B * &&'
y si agrego unconst
se compila.
También me gustaría señalar que MSVC también se equivoca:
no se puede convertir el parámetro 2 de 'B * const' a 'B * &&'
Parece que tenemos un error en dos compiladores.
Errores archivados