dmd: Module X conflicts with itself (Was: Re: RDMD on Windows)
Andrej Mitrovic
andrej.mitrovich at gmail.com
Sun Aug 22 10:44:04 PDT 2010
Well then I think I've found some new bugs in RDMD & xfbuild:
Files:
root/main.d
root/socket.d
main.d:
module main;
import alt.socket;
void main()
{
foo();
}
socket.d:
module alt.socket;
import std.stdio : writeln;
void foo()
{
writeln("test");
}
$ RDMD main.d
main.d(2): Error: module socket is in file 'alt\socket.d' which cannot be read
import path[0] = .
import path[1] = C:\DMD\dmd2\windows\bin\..\..\src\phobos
import path[2] = C:\DMD\dmd2\windows\bin\..\..\src\druntime\import
$ xfbuild +o=main.exe main.d socket.d
main.d(4): Error: module socket is in file 'alt\socket.d' which cannot be read
import path[0] = C:\DMD\dmd2\windows\bin\..\..\src\phobos
import path[1] = C:\DMD\dmd2\windows\bin\..\..\src\druntime\import
Build failed: 'dmd @xfbuild.a00e00.rsp' returned 1.
DSSS fails as well.
But DMD works:
$ dmd main.d socket.d
$ main.exe
> test
Rory Mcguire Wrote:
> In Java yes. I D you can use the module declaration to "move" a module.
> e.g.
> filename: socket.d;
> module: alt.socket;
>
> to import you'd do "import alt.socket;" even if the file is in the same
> directory as the module using the file.
More information about the Digitalmars-d-learn
mailing list