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: [email protected]
ReportedBy: [email protected]
--- Comment #0 from Maxim Fomin <[email protected]> 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: -------