On Wednesday, 4 September 2013 at 08:56:10 UTC, Rory McGuire wrote: A template should get evaluated in the calling context. No, in D templates use declaration scope (unless they are template mixins).
A template should get evaluated in the calling context.