Hi all,
Is there another way to get access to Voldemort class methods,
or private class members, other than using "pragma(mangle, ...)"
on user symbols?
Example code:
In library, and _should not_ be changed :
```
Object getObject() {
class Vold : Object {
int store;
this(int i) {
store = i;
}
}
return new Vold(2);
}
class Thread
{
private:
static struct AAA
{
int i;
}
__gshared AAA* sm_cbeg;
}
```
And then the code seeking access:
```
pragma(mangle, "mangled name of Vold's constructor")
private extern(C) void defaultTraceInfoCtor(Object) @nogc;
struct A
{
int i;
}
__gshared extern {
pragma(mangle, "the mangled symbol name") A* sm_cbeg;
}
```
Go mad on the "code seeking access" :-) The problem is that the
types of `defaultTraceInfoCtor` and `sm_cbeg` are incorrect. If I
can get the types to match (internally in the compiler), I'm
happy.
Thanks,
Johan