www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 20352] New: Error: cannot implicitly convert expression

https://issues.dlang.org/show_bug.cgi?id=20352

          Issue ID: 20352
           Summary: Error: cannot implicitly convert expression
                    `__withSym` of type `A*` to `uint`
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Keywords: rejects-valid
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: elpenguino+D gmail.com

a.d:
```
module a;

struct A {
        import b : B;
}
```
b.d:
```
module b;

struct B {
         uint t;
}

void f() {
        import a : A;
        with (A.init) {
                auto f = B();
        }
}
```
Also try a struct B with zero fields ("Error: more initializers than fields")
and a struct B with an A* field ("Error: struct B does not overload ()")

--
Nov 03 2019