List of DMD dependency issue (which would be sloved by a task based system)

Stefan Koch uplink.coder at googlemail.com
Fri Dec 4 08:31:51 UTC 2020


On Friday, 4 December 2020 at 07:20:38 UTC, Mr T. wrote:
> Here's one *not* depending on declaration order, an ambiguity 
> bug:
>
> ----------------------------------
> // main.d
> import ma;
> import mb;
> immutable X = Y;    // no error!
> int main() {
>     return 0;
> //    return Y;  // error: ma.Y conflicts with mb.Y
> }
> ----------------------------------
> module ma;
> enum Y = 48;
> ----------------------------------
> module mb;
> import main;
> //static if (true)    // main.d: error on X: ma.Y conflicts 
> with mb.Y
> static if (X == 48) // no error!
>     enum Y = 64;
> ----------------------------------

This is a very interesting one.
I think that task-based on demand resolution could help in fixing 
this bug as well.

Thanks for sharing.


More information about the Digitalmars-d mailing list