Thread overview
[Issue 23444] Can't append non-copyable struct value to an array
Dec 17, 2022
Iain Buclaw
Apr 04, 2023
RazvanN
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=23444

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
April 04, 2023
https://issues.dlang.org/show_bug.cgi?id=23444

RazvanN <razvan.nitu1305@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |razvan.nitu1305@gmail.com

--- Comment #1 from RazvanN <razvan.nitu1305@gmail.com> ---
This seems to be done on purpose, see this comment: https://issues.dlang.org/show_bug.cgi?id=7579#c5 .

In short, if you concatenate a struct instance with a disabled postblit you subject yourself to the possibility of the runtime doing copies behind your back (for example, when reallocations happen). This seems pretty nasty because the alternative would be to accept this code and then either do copies that do not call the postblit behind the scenes or have some druntime internal failures (provided that the hooks are properly templated).

--
March 08
https://issues.dlang.org/show_bug.cgi?id=23444

Paul Backus <snarwin+bugzilla@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |INVALID

--