Thread overview
[Issue 20321] Uncontrollable blitting should be preventable for proper elaborate copy semantics
Oct 26, 2019
kinke
Nov 20, 2019
Dlang Bot
October 26, 2019
https://issues.dlang.org/show_bug.cgi?id=20321

kinke <kinke@gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kinke@gmx.net

--- Comment #1 from kinke <kinke@gmx.net> ---
Thx, I've just hacked LDC to get this testcase green (on Win64 at least): https://github.com/ldc-developers/ldc/pull/3204

--
October 26, 2019
https://issues.dlang.org/show_bug.cgi?id=20321

--- Comment #2 from Suleyman Sahmi (سليمان السهمي) <sahmi.soulaimane@gmail.com> ---
DMD PR https://github.com/dlang/dmd/pull/10510

--
November 20, 2019
https://issues.dlang.org/show_bug.cgi?id=20321

--- Comment #3 from Dlang Bot <dlang-bot@dlang.rocks> ---
@SSoulaimane updated dlang/dmd pull request #10539 "Fix the concat assign case of Issue 20321 in a frontend solution" mentioning this issue:

- Issue 20321 - Move CatElemAssign logic to the frontend

  Solves one of the cases of issue 20321 which wasn't straight forward to solve
in the backend since elablorate copy semantics are currently understood by the
semantic phase only.

  See issues 17448 and 20321.

  The problem is solved by avoiding `doCopyOrMove()` which only partially helps
the backend with elaborate copy.

  This goes hand in hand with the effort being spent on templatizing druntime,
this benefit from that effort actually.

https://github.com/dlang/dmd/pull/10539

--