Подскажите, это в современных стандартах законно?
#include <iostream>
struct A {
void boo() const {
std::cout<<"I am alive"<<std::endl;
}
};
const A& foo() {
return A();
}
int main(void) {
const A& a = foo();
a.boo();
return 1;
}