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

--- Comment #0 from Leandro Lucarella <> 
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)

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to