https://issues.dlang.org/show_bug.cgi?id=16197

Max Samukha <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #7 from Max Samukha <[email protected]> ---
(In reply to Steven Schveighoffer from comment #6)

> 
> BTW, the postblit for the -1 values seems incorrect...

Definitely incorrect (dmd):

struct Elem {
    int x = -1;
    this(this) { writeln("POSTBLIT ", x); }
    ~this()    { writeln("DTOR "    , x); }
}

struct Ctr {
    Elem[1] arr;
}

void main() {
    auto p = Ctr();
}

prints:

POSTBLIT 
DTOR 


Should be either two destructors or no postblit. For "Elem arr" instead of
"Elem[1] arr", only the destructor is correctly called once.

--

Reply via email to