https://d.puremagic.com/issues/show_bug.cgi?id=1687
yebblies <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #5 from yebblies <[email protected]> 2013-11-16 16:42:33 EST --- I'm pretty sure this bug was fixed by https://github.com/D-Programming-Language/dmd/pull/2441 https://github.com/D-Programming-Language/dmd/pull/2441/files#diff-51c17721512749ee0a457d576c82eb2eR638 This code ===================== extern (C++) interface A { void foo(); void bar(); } void main() { A a; a.foo(); } ==================== Generates: __Dmain PROC NEAR ; COMDEF __Dmain xor eax, eax ; 0000 _ 31. C0 // a = null mov ecx, eax ; 0002 _ 89. C1 mov edx, dword ptr [eax] ; 0004 _ 8B. 10 // edx = a.__vptr[0] call dword ptr [edx] ; 0006 _ FF. 12 // edx() xor eax, eax ; 0008 _ 31. C0 ret ; 000A _ C3 __Dmain ENDP ie foo is called from vtbl index 0 (In reply to comment #4) > This segfaults: > > extern (C++) interface A { void foo(); void bar(); } > > extern (C++) class B : A { void foo() { } void bar() { } } > > void main() > { > A a = new B; > a.foo(); > } > > It actually segfaults even without the interface and the call. It does? What platform? Are you using git head or a release? -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
