[Issue 290] New: "U" shaped import name conflicts when using Fully Qualified names

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed Aug 16 17:33:19 PDT 2006


http://d.puremagic.com/issues/show_bug.cgi?id=290

           Summary: "U" shaped import name conflicts when using Fully
                    Qualified names
           Product: D
           Version: 0.164
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Keywords: rejects-valid
          Severity: major
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla at digitalmars.com
        ReportedBy: brunodomedeiros+bugz at gmail.com
 BugsThisDependsOn: 209


In a "U" shaped structure of imports, name conflicts occur on the bottom module
(main) when accessing top module entities (pack.tier2*) with a fully qualified
name, as both tier1 modules think they have a different pack. Code:

---- main.d ----
import tier1_A;
import tier1_B;

alias pack DUMMY;
auto x1 = &pack.tier2_A.foonumA;
auto x2 = &pack.tier2_B.foonumB; 
// any the above gets the error:
// import tier1_A.pack conflicts with tier1_B.pack at tier1_B.d(3)

---- tier1_A.d ----
module tier1_A;

public import pack.tier2_A;

---- tier1_B.d ----
module tier1_B;

public import pack.tier2_B;

---- pack/tier2_A.d ----
module pack.tier2_A;
int foonumA; 

---- pack/tier2_B.d ----
module pack.tier2_B;
int foonumB;


-- 




More information about the Digitalmars-d-bugs mailing list