xxxxxxxxxx
auto makeI(int m)
{
static struct S
{
int m;
auto inner()
{
class I
{
auto get() { return m; }
}
return new I;
}
}
scope s = S(m);
return s.inner();
}
void main()
{
auto i = makeI(5);
function()
{
// clean stack
pragma(inline, false);
long[0x500] a = 0;
}();
assert(i.get() == 5);
}