On 25/09/2018 22:08, Void-995 wrote:
I almost finished my -gc for Natvis experiment (to use MS C++ Debugger
from VS Code, fully translating type names from what comes from DMD
frontend to valid C++ type name so Natvis works), but then I encountered
dAssocArray, which has form of: void* as CodeView structure member,
KeyType __key_t and ValueType __val_t as nested types.
As for someone who just found about CodeView today: what is nested type,
what is the deal with void*, what to do with __key_t and __val_t to get
values.
Nested types are types declared in another type, e.g. in C++
struct dAssocArray
{
typedef int __key_t;
typedef long __val_t;
void* ptr;
};
The AA data structures are not exposed by the compiler, but the mago
debugger rebuilds them from these types.