Files
ldc/gen
Alexey Prokhin 0caba6672d Call postblit on a struct when appending it to an array. Use _d_arraycatnT to concatenate multiple arrays.
Before, _d_arraycatT was used to concatenate multiple arrays. That caused an issue when postblit
was called on a struct multiple times. The next code asserted due to the issue:

void main()
{
    static struct S
    {
        int x;
        int pad;
        this(this)
        {
            ++x;
        }
    }

    auto sarr = new S[1];
    auto sarr2 = sarr ~ sarr ~ sarr;
    assert(sarr2[0].x == 1);
    assert(sarr2[1].x == 1);
    assert(sarr2[2].x == 1);
    assert(sarr[0].x == 0);
}
2011-09-10 13:22:05 +04:00
..
2011-03-26 19:30:17 +03:00
2011-03-26 19:30:17 +03:00
2011-07-19 10:14:04 +04:00
2010-10-29 23:06:01 +02:00
2010-05-19 12:42:32 +02:00
2011-02-23 23:50:53 +01:00
2011-02-23 23:50:53 +01:00
2009-04-12 12:52:01 +02:00
2010-09-30 21:54:45 +04:00
2011-07-26 09:30:36 +04:00
2009-05-07 15:33:06 +02:00
2010-05-19 12:42:32 +02:00
2010-05-19 12:42:32 +02:00
2011-04-30 15:30:57 +04:00
2009-08-14 00:39:18 +02:00
2010-10-07 22:35:32 +04:00
2010-10-07 22:35:32 +04:00
2011-03-26 17:58:08 +03:00
2011-02-23 12:49:57 +03:00
2011-04-30 17:35:40 +04:00
2009-05-02 11:58:50 +02:00
2009-08-06 17:04:36 +02:00
2009-08-06 17:04:36 +02:00