October 14, 2023
https://issues.dlang.org/show_bug.cgi?id=24188

          Issue ID: 24188
           Summary: ICE (Illegal instruction) with missing imported symbol
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: major
          Priority: P1
         Component: dmd
          Assignee: nobody@puremagic.com
          Reporter: john.loughran.colvin@gmail.com

dev@dev:~/testCrash$ . ~/dlang/dmd-2.105.2/activate
dev@dev:~/testCrash$ tree
.
├── a
│   └── c.d
└── test.d

1 directory, 2 files
(dmd-2.105.2)dev@dev:~/testCrash$ cat test.d
auto b() {
    import a.c : D;

    struct A {
        D e;
    }
}
(dmd-2.105.2)dev@dev:~/testCrash$ cat a/c.d
(dmd-2.105.2)dev@dev:~/testCrash$ dmd a/c.d test.d
test.d(2): Error: module `c` from file a/c.d must be imported with 'import c;'
test.d(2): Error: size of type `D` is not known
test.d(2): Error: size of type `D` is not known
Illegal instruction

--