[Issue 14536] Calling destroy() on a on an extern(C++) class causes a segfault

d-bugmail at puremagic.com d-bugmail at puremagic.com
Fri Apr 27 07:46:52 UTC 2018


https://issues.dlang.org/show_bug.cgi?id=14536

Simen Kjaeraas <simen.kjaras at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |simen.kjaras at gmail.com

--- Comment #3 from Simen Kjaeraas <simen.kjaras at gmail.com> ---
>From what I can see, it's caused here:

https://github.com/dlang/druntime/blob/master/src/rt/lifetime.d#L1393

c is null, and the first iteration of the do-while loop tries to deref it.

Probably, line 1403 (_d_monitordelete) would also fail, since C++ classes don't
have the monitor. If it doesn't fail, it's unlikely to do anything nice.

--


More information about the Digitalmars-d-bugs mailing list