void delegate() → void delegate() shared
@safe shared(void delegate()) f(void delegate() d)
{
return d;
}
@safe void delegate() shared g(shared(void delegate()) d)
{
return delegate() shared { d(); };
}
@safe void delegate() shared very_bad(void delegate() d)
{
return g(f(d));
}
void main()
{
}
INFO