[Issue 10082] New: Multiple mixin template instantiations are not checked

d-bugmail at puremagic.com d-bugmail at puremagic.com
Tue May 14 04:59:28 PDT 2013


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

           Summary: Multiple mixin template instantiations are not checked
           Product: D
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: accepts-invalid, ice
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: nobody at puremagic.com
        ReportedBy: maxim at maxim-fomin.ru


--- Comment #0 from Maxim Fomin <maxim at maxim-fomin.ru> 2013-05-14 04:59:27 PDT ---
mixin template  T()
{
   int foo()
   {
      return 0;
   }
}

class A
{
   mixin T;
   mixin T;
}

void main()
{
   auto x = &A.foo;
}

DMD v2.063-devel-4ed3396 DEBUG
__overloadset
[main.d(17)] __overloadset Internal error: e2ir.c 776

Note, if A.foo is not referenced dmd emits two eponymous symbols. I believe
this is related to the bug when code which retrieves same method via delegate
and via __traits(getOverloads) is compiled and crashes at runtime.

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