Vinculación temporal a una referencia de valor
Tengo el siguiente código
string three()
{
return "three";
}
void mutate(string& ref)
{
}
int main()
{
mutate(three());
return 0;
}
Puedes ver que estoy pasandoTres() amudar método. Este código compila bien. Según tengo entendido, los temporales no pueden asignarse a referencias no constantes. Si es así, ¿cómo se está compilando este programa?
¿Alguna idea?
Editar:
Compiladores intentaron: VS 2008 y VS2010 Beta