On Tuesday, 5 August 2014 at 17:02:28 UTC, Dicebot wrote:
On Tuesday, 5 August 2014 at 16:54:47 UTC, Stefan Koch wrote:
I'm not sure what you mean. Are you referring to things
like pragma msg?
to things like mixin("mixin(`writeln ("Hello World");`");
```
bool foo() { ... }
template bar(bool cond)
{
static if (cond)
enum bar = "int a;";
else
enum bar = "int b;";
}
mixin(bar!(foo()));
pragma(msg, is(typeof(a)));
```
Good luck doing parallel semantic analysis :D I am sure
deadalnix can give example much worse than that though.
Yes, this kind of thing, and it can get much more nasty if you
scatter the declaration in various scopes, or better in various
modules.