#include <iostream>
class base
{
private:
struct inner { char c_; };
inner i_;
public:
virtual ~base() {}
base() : i_{'a'} {}
protected:
inner f() { return i_; }
};
class derived : public base
{
public:
void g()
{
auto i = f();
std::cout << i.c_ << '\n';
}
};
int main()
{
derived d;
d.g();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgYmFzZQp7CnByaXZhdGU6CiAgICBzdHJ1Y3QgaW5uZXIgeyBjaGFyIGNfOyB9OwogICAgaW5uZXIgaV87CnB1YmxpYzoKICAgIHZpcnR1YWwgfmJhc2UoKSB7fQogICAgYmFzZSgpIDogaV97J2EnfSB7fQpwcm90ZWN0ZWQ6CiAgICBpbm5lciBmKCkgeyByZXR1cm4gaV87IH0KfTsKCmNsYXNzIGRlcml2ZWQgOiBwdWJsaWMgYmFzZQp7CnB1YmxpYzoKICAgIHZvaWQgZygpCiAgICB7CiAgICAgICAgYXV0byBpID0gZigpOwogICAgICAgIHN0ZDo6Y291dCA8PCBpLmNfIDw8ICdcbic7CiAgICB9Cn07CgppbnQgbWFpbigpCnsKICAgIGRlcml2ZWQgZDsKICAgIGQuZygpOwp9Cg==