[Issue 4242] ICE(module.c): importing a module with same name as package

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu May 27 22:53:51 PDT 2010


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


Don <clugdbug at yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |patch
            Summary|ICE(module.c): module       |ICE(module.c): importing a
                   |naming conflict in          |module with same name as
                   |subfolder                   |package
           Severity|normal                      |regression


--- Comment #1 from Don <clugdbug at yahoo.com.au> 2010-05-27 22:53:49 PDT ---
This is a regression since DMD2.043. Only a single import is required (don't
need File2 in the test case).

PATCH:

Index: module.c
===================================================================
--- module.c    (revision 502)
+++ module.c    (working copy)
@@ -638,9 +638,16 @@
         Dsymbol *prev = dst->lookup(ident);
         assert(prev);
         Module *mprev = prev->isModule();
-        assert(mprev);
-        error(loc, "from file %s conflicts with another module %s from file
%s",
-            srcname, mprev->toChars(), mprev->srcfile->toChars());
+        if (mprev)
+            error(loc, "from file %s conflicts with another module %s from
file %s",
+                srcname, mprev->toChars(), mprev->srcfile->toChars());
+        else
+        {
+            Package *pkg = prev->isPackage();
+            assert(pkg);
+            error(loc, "from file %s conflicts with package name %s ",
+                srcname, pkg->toChars());
+        }
     }
     else
     {

-- 
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