Official compiler

Timon Gehr via Digitalmars-d digitalmars-d at puremagic.com
Sat Feb 27 12:05:06 PST 2016


On 26.02.2016 23:41, Walter Bright wrote:
> On 2/26/2016 1:10 PM, Timon Gehr wrote:
>> Different passes are not really required once semantic analysis becomes
>> asynchronous. Just keep track of semantic analysis dependencies, with
>> strong and
>> weak dependencies and different means to resolve cycles of weak
>> dependencies.
>> Then write the semantic analysis of each component in a linear fashion
>> and pause
>> it whenever it depends on information that has not yet been obtained,
>> until that
>> information is computed.
>
> I'll put you in charge of debugging that :-)

I am/was (I have not worked on it a lot lately). I haven't found it to 
be particularly hard to debug.
It is likely the best way to fix the "forward reference error" situation.
My code which does this does not compile on DMD versions after 2.060 due 
to forward reference issues. I have just reduced one of them: 
https://issues.dlang.org/show_bug.cgi?id=15733


More information about the Digitalmars-d mailing list