#include <iostream>
class Foo {
public:
Foo(int, int) {}
~Foo() {std::cout << "Foo\n"; }
};
Foo rbv();
int main()
{
Foo x = rbv(); // the return-value of rbv() goes into x
}
Foo rbv()
{
return Foo(42, 73); // suppose Foo has a ctor Foo::Foo(int a, int b)
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgRm9vIHsgCnB1YmxpYzoKCUZvbyhpbnQsIGludCkge30KCX5Gb28oKSB7c3RkOjpjb3V0IDw8ICJGb29cbiI7IH0KfTsKCkZvbyByYnYoKTsKCmludCBtYWluKCkKewogIEZvbyB4ID0gcmJ2KCk7IC8vIHRoZSByZXR1cm4tdmFsdWUgb2YgcmJ2KCkgZ29lcyBpbnRvIHgKfQoKRm9vIHJidigpCnsKICByZXR1cm4gRm9vKDQyLCA3Myk7IC8vIHN1cHBvc2UgRm9vIGhhcyBhIGN0b3IgRm9vOjpGb28oaW50IGEsIGludCBiKQp9