DMD-Win64 emit's debuginfo that looks like:
- instance 0x0000022610005360
- libep@sharedptr@ep@RefCounted
libep@sharedptr@ep@Safe {...}
rc 2
libep@i@icomponent@ep@IComponent {...}
+ pImpl 0x0000022610021120
+ uid "logger0"
Notice the 2 entries in the debuginfo with value {...}, those are interfaces.
When debugging in visual studio normally, the _vtable ptr is present in the structs, and you can expand it to show the list of functions present in the vtable.
DMD seems to write the vtable's as some opaque object, and I can't expand and see what functions are present.
Please make the vtable expandable and list the functions in the debuginfo.
Comment #1 by turkeyman — 2018-05-09T23:53:57Z
MSVC emits the vptr as "__vfptr", which is a pointer to an array of void*
Please have DMD match this array of void* convention, so we can inspect the state of the vtable in D just the same as in C++?