July 22, 2019
https://issues.dlang.org/show_bug.cgi?id=20072

          Issue ID: 20072
           Summary: [2.087.0] Mixin templates: no property `somevar` for
                    type `some.Type`, did you mean
                    `some.Type.__anonymous.somevar`?
           Product: D
           Version: D2
          Hardware: x86
                OS: Windows
            Status: NEW
          Severity: regression
          Priority: P1
         Component: dmd
          Assignee: nobody@puremagic.com
          Reporter: gooberman@gmail.com

Regression from 2.086.1

I haven't been able to isolate a code example for this yet, but the basic flow is:

* some.Type declaration
* Mixin a template that defines somevar and a function
* Function calls a templated function that takes this as the templated
parameter
* New function calls back expecting somevar to be there
* Error message occurs

Needless to say, pragma( msg, __traits( allMembers, some.Type ).stringof )
right before I try accessing that variable in the templated function shows the
member right there in the member list.

If anyone can spot why that anonymous scope isn't being imported back in to the object without the code example, that'll save me hours trying to reproduce it in an isolated code example.

There's no way I can upgrade past 2.086.1 while this is broken.

--