[Issue 7373] New: (Regression git) Renamed imports conflict with other implicitly imported symbols

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Jan 26 10:40:36 PST 2012


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

           Summary: (Regression git) Renamed imports conflict with other
                    implicitly imported symbols
           Product: D
           Version: D1
          Platform: x86
        OS/Version: Linux
            Status: NEW
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody at puremagic.com
        ReportedBy: leandro.lucarella at sociomantic.com


--- Comment #0 from Leandro Lucarella <leandro.lucarella at sociomantic.com> 2012-01-26 10:40:22 PST ---
This is how to reproduce the regression:

        echo 'module m1; struct S {}' > m1.d
        echo 'module m2; struct S {}' > m2.d
        echo 'module m3; import m1; import S = m2; S.S s;' > m3.d
        dmd -c m3.d

This works without the fix, but with the fix I get this errors:

        m3.d(1): Error: m1.S at m1.d(1) conflicts with m2 at m3.d(1)
        m3.d(1): Error: no property 'S' for type 'S'
        m3.d(1): Error: S.S is used as a type
        m3.d(1): Error: variable m3.s voids have no value

The only important is the first one. If you change m3 like this it works again:

        echo 'module m3; import m1; import X = m2; alias X S; S.S s;' > m3.d
                                           ^       ^^^^^^^^^

A git bisect show this commit as the one introducing the regression:
merge D2 pull 591 (93a643aba6f62db1b7658c2bfb51f9d0b576c337)

https://github.com/D-Programming-Language/dmd/commit/93a643aba6f62db1b7658c2bfb51f9d0b576c337
https://github.com/D-Programming-Language/dmd/pull/591

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list