Heh, I just tried to outsmart the compiler by mixing in a version
declaration from another file, but it complains about version being
defined after use.
E.g.
ctfe.d:
version = foo;
main.d:
mixin(import("ctfe.d"));
version(foo) // won't fly, version foo defined after use
{
}