D Compiler Bug?

Seb seb at wilzba.ch
Fri Feb 1 21:13:51 UTC 2019


On Thursday, 31 January 2019 at 17:31:22 UTC, Bottled Gin wrote:
> On Thursday, 31 January 2019 at 09:41:42 UTC, FeepingCreature 
> wrote:
>> What an amazing issue! I'm in love!
>>
>> I've given you a PR to reduce the test further. The issue is 
>> related to the circular import between foo and qux, and the 
>> fact that qux forces foo to do ~something~ with its vtable to 
>> enable its use in the hashmap.
>
> Thanks, I merged in your PR.
>
> I managed to minimize another issue which I believe could be 
> related. This time it is a compile time error which occurs only 
> when compiling separately. Compiling the modules together does 
> not result in Error.
>
> $ git clone https://github.com/dsnippet/circular.git
> $ cd circular
> $ ldc2 -c foo.d
>
> With LDC-1.14-beta1, I get:
>
> fred.d(4): Error: function void fred.qux!(bar).qux.thunk() does 
> not override any function, did you mean to override void 
> foo.foo.thunk()?
> fred.d(7): Error: template instance `fred.qux!(bar)` error 
> instantiating

I highly recommend opening issues for both bugs in Bugzilla (when 
it doesn't work with dmd either) or LDC's GitHub as this post 
will quickly disappear from the front page.


More information about the Digitalmars-d mailing list