Atribuindo este ponteiro para rvalue referência a um ponteiro
O exemplo a seguir deve compilar?
struct B;
struct A
{
A(B*&&){}
};
struct B : A
{
B() : A(this){}
};
int main(){}
EmLWS com o clang ele compila, mas com o gcc eu recebo:
nenhuma conversão conhecida para o argumento 1 de 'B * const' para 'B * &&'
e se eu adicionar umconst
compila.
Gostaria também de salientar que o MSVC também está errado:
não é possível converter o parâmetro 2 de 'B * const' para 'B * &&'
então parece que temos um bug em dois compiladores.
BUGS ARQUIVADOS