¿Es un error que el compilador de Microsoft VS C ++ puede inicializar una referencia de un objeto temporal [duplicado]

Posible duplicado:
Enlace temporal a una referencia de lvalue

Con el compilador C ++ VS2008, los códigos se compilan sin error de compilación.

class A{};

int main(){
    A& a_ref = A(); 
    return 0;
}

Creo que el estándar C ++, tanto C ++ 2003 como el próximo C ++ 0x, no lo permiten. Y también recibo un error de tiempo de compilación con el compilador gcc.

e modo que lo que quiero saber es si se trata de un error conocido para que el compilador VS permita inicializar la referencia desde un objeto temporal.

¿O es una extensión de función del compilador VS? En caso afirmativo, ¿cuál es el ciclo de vida del objeto temporal?

Respuestas a la pregunta(1)

Su respuesta a la pregunta