Circular reference error gone after inspecting members
Yuxuan Shui
yshuiv7 at gmail.com
Sat Aug 25 14:17:27 UTC 2018
On Saturday, 25 August 2018 at 14:13:18 UTC, rikki cattermole
wrote:
> On 26/08/2018 2:10 AM, Yuxuan Shui wrote:
>> The offending code base is a little big and hard to reduce.
>> I'll try if code is required, but here is the gist of the
>> problem:
>>
>> This snippet of code in my project:
>>
>> ...
>> alias tmp = genCode!T;
>> enum str = tmp.str; // This line here
>> ...
>>
>> Generate a circular reference error.
>>
>> However, if I do:
>>
>> ...
>> alias tmp = genCode!T;
>> pragma(msg, __traits(allMembers, tmp));
>> enum str = tmp.str; // This line here
>> ...
>>
>> Then the error is gone.
>>
>> Anyone has any idea what could the problem be?
>
> If that pragma(msg) does indeed make it disappear (check -v to
> confirm), then its a bug.
Alright then. I'll spend sometime and see if I can make a minimal
example.
More information about the Digitalmars-d-learn
mailing list