http://d.puremagic.com/issues/show_bug.cgi?id=6581
Dmitry Olshansky changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #8 from Kenji Hara 2011-09-20 13:50:24 PDT ---
Sorry, that was imcomplete.
(In reply to comment #6)
> Example:
> ubyte[B.sizeof] mem=void;
> emplace!B(mem.ptr);//Does this call to B's constructor call A's dtor on some
> kind of tra
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #7 from Kenji Hara 2011-09-20 13:39:38 PDT ---
(In reply to comment #6)
> Example:
> ubyte[B.sizeof] mem=void;
> emplace!B(mem.ptr);//Does this call to B's constructor call A's dtor on some
> kind of trash then?
void main()
{
u
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #6 from Dmitry Olshansky 2011-09-20
13:01:11 PDT ---
> > I should point out that move == swap & destroy, iff left side of assigment
> > _was_ initialized. A constructor may be called on chunk of uninitialized
> > memory
> > e.g. i
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #5 from Kenji Hara 2011-09-20 08:07:19 PDT ---
(In reply to comment #4)
> > Please note this line:
> > > a = A(dummy); // a(dummy) was a typo, thought it changes nothing
> >
> > This is "assignment", not initializing.
> > T
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #4 from Dmitry Olshansky 2011-09-20
07:37:10 PDT ---
> Please note this line:
> > a = A(dummy); // a(dummy) was a typo, thought it changes nothing
>
> This is "assignment", not initializing.
> The assignment of an object t
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #3 from Kenji Hara 2011-09-20 07:07:18 PDT ---
(In reply to comment #2)
> It might be more complicated then I thought, postblits of members do work.
> I'd better leave the cause of problem to thouse in the know. Another variation
>
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #2 from Dmitry Olshansky 2011-09-01
13:58:35 PDT ---
It might be more complicated then I thought, postblits of members do work.
I'd better leave the cause of problem to thouse in the know. Another variation
of test:
import std.std
http://d.puremagic.com/issues/show_bug.cgi?id=6581
--- Comment #1 from Dmitry Olshansky 2011-09-01
13:21:38 PDT ---
Simplifyied. My best guess is that postlblits for struct members are not
called.
struct A
{
static int cnt;
this(int dummy){ cnt++; }
this(this){ cnt++; }
~this(