On 19/02/2011 13:18, Oliver wrote:
Hello,
I have the following code that works.
What? The code you've posted doesn't work.
I'd like to change the t tsData to ts tsData, but this does segfault.
The code you've posted throws an AV, and correctly so. If you change tsData to a ts, it
runs successfully. At least in 2.051 Windows. Is something different happening on your
setup?
I do not understand how I dereferece the ts struct correctly.
You don't dereference a struct, you dereference a pointer.
<snip>
struct rs {
int i;
union {
int intData;
//ts tsData;
t tsData;
};
this( int i, int d, ref int[] data) {
this.i = i;
this.tsData.d = d;
this.tsData.intData = data;
}
}
<snip>
You have not initialised tsData. Consequently, you are trying to dereference a null
pointer. Hence the segfault.
For it to work with tsData being a pointer, you need to add something like this:
this.tsData = new ts;
Stewart.