ma.d
module ma;
struct A{ }
mb.d
module mb;
import ma : A;
struct B{ }
main.d
import ma;
import mb;
void main(){
A a;
}
编译时:
main.d(6):错误:ma.A at ma.d(3)与mb.A在mb.d(2)冲突
在mb.d
A
不公开导入,为什么会出错?
奇怪的是,以下代码编译:
main.d
import mb;
void main(){
A a;
}
那么,这是另一个DMD错误,还是我误解了进口和公共进口的运作方式?