alias and __VERSION__ condition doesn't play well

vit vit at vit.vit
Tue Jan 18 12:19:36 UTC 2022


On Tuesday, 18 January 2022 at 12:05:38 UTC, Paul Backus wrote:
> On Tuesday, 18 January 2022 at 04:42:45 UTC, frame wrote:
>> At the very top of my module I have this declaration:
>>
>> ```d
>> static if (__VERSION__ >= 2098)
>> {
>>     alias Foo = TypeA;
>> }
>> else
>> {
>>     alias Foo = TypeB;
>> }
>> ```
>>
>> No problem inside the module itself but this doesn't work when 
>> imported from another module:
>> Error: undefined identifier `Foo`
>
> Works for me: https://run.dlang.io/is/XZlvQ8

It works until you have cyclic dependencies:

https://run.dlang.io/is/wDDcK5


More information about the Digitalmars-d-learn mailing list