On 12/12/18 10:22 AM, Kagamin wrote:
On Tuesday, 11 December 2018 at 21:19:59 UTC, Steven Schveighoffer wrote:
If I add an int using a regular declaration or a straight mixin("int i0 = 5;"); then the variable shows up.

mixin template genInts()
{
     enum arr = [0];
     static foreach (t; arr)
     {
         mixin("int i0 = 5;");
     }
}

Still prints garbage.

I meant this:

mixin template genInts()
{
   mixin("int i0 = 5;");
}

It's still a static foreach + mixin + mixin template bug, all those are needed to make it fail.

What's interesting is that dmd thinks there is an i0 (there is no error on a missing symbol), but the ast printed doesn't show a declaration for it.

-Steve

Reply via email to