No:void main() { auto s = S(); auto t = T!s(); t.fun; } struct S { void fun(){} } struct T(alias s){ static fun() { s.fun; } } Fails in 2.078.I don't know the reason. You would think that accessing s would be relative to T.fun's stack frame, and have nothing to do with an instance of T.
Right. This was the intention.
I would file a bug, and see what the compiler devs say.
ok, thanks.