On 2/23/16 6:05 AM, Nicholas Wilson wrote:
On Tuesday, 23 February 2016 at 10:47:17 UTC, Rene Zwanenburg wrote:
On Tuesday, 23 February 2016 at 09:16:08 UTC, Nicholas Wilson wrote:
struct A
{
int blah;
}
class B
{
A* a;
this(A* _a)
{
writeln(_a)
a =_a;
}
}
class C : B
{
this(A* _a)
{
writeln(_a)
super(_a);
}
}
int main(string[] args)
{
A a;
writeln(&a);
C c = new C(&a);
}
prints
7FFF56E787F8
7FFF56E787F8
null
??? What is happening here?
I can't reproduce this. After making a few changes to get the code to
compile (adding ; after the first two writeln's, and changing int main
to void main), everything works as expected. Which compiler and
version are you using?
v2.067-devel-e431363
I "fixed" it see above.
This is not a released version. Using both 2.067.1 and 2.068.0, I get
the expected behavior. There could have been a regression fixed between
that version and the release, I suggest you try a released version:
http://dlang.org/download.html#dmd
-Steve