[Issue 14606] [REG2.067.0] Bad code with -inline and structs

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Sat May 30 17:04:04 PDT 2015


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

--- Comment #4 from github-bugzilla at puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/10fc5c4227911d4abf4727a283e56afa0aedd783
fix Issue 14606 - Bad code with -inline and structs

The wrong-code had caused by the combination of special memset expression
`(struct = 0)` and inlining field variable initialization with NRVO. The
extended inlining had introduced ConstructExp(ref_var, 0), but it was wrongly
handled as reference initialization in AssignExp::toElem().

To fix that, use `BlitExp` for the memset expression always, and avoid
confusion with the ref initialization.

https://github.com/D-Programming-Language/dmd/commit/58047b08977cc82f09238e8ac6300dd5158a7acb
Merge pull request #4683 from 9rnsr/fix14606

 [REG2.067.0] Issue 14606 - Bad code with -inline and structs

--


More information about the Digitalmars-d-bugs mailing list