[frustration, sorry] Import conflict madness.

Bruno Medeiros brunodomedeirosATgmail at SPAM.com
Mon Jun 19 07:40:15 PDT 2006


Chris Miller wrote:
> Here's a simple example of the issue:
> 
> 
> // -- foo.d --
> private import std.stdio;
> 
> 
> // -- bar.d --
> private import std.stdio;
> 
> 
> // -- test.d --
> 
> import foo, bar;
> 
> void main()
> {
>     char[] hi = std.string.toString(3);
> }
> 
> 
> DMD 0.160:
>    foo.d(1): import foo.std conflicts with bar.std at bar.d(1)
> 
> 
> Of course, the code in test.d is a mistake, but look how unhelpful the 
> error message is. It will blame a library's code for a mistake the 
> library-user made.
> 
> Also notice that it's considering *private* imports, which shouldn't 
> even be available to test.d.

It's considering private imports because of bug 48, but this issue is 
not the same as bug 48, it is a separate bug, because it also happens 
with public imports.
Submitted as bug 209.


-- 
Bruno Medeiros - CS/E student
http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D



More information about the Digitalmars-d mailing list