[dmd-internals] [D-Programming-Language/dmd] 10fc5c: fix Issue 14606 - Bad code with -inline and struct...
GitHub via dmd-internals
dmd-internals at puremagic.com
Sat May 30 17:04:01 PDT 2015
Branch: refs/heads/master
Home: https://github.com/D-Programming-Language/dmd
Commit: 10fc5c4227911d4abf4727a283e56afa0aedd783
https://github.com/D-Programming-Language/dmd/commit/10fc5c4227911d4abf4727a283e56afa0aedd783
Author: k-hara <k.hara.pg at gmail.com>
Date: 2015-05-26 (Tue, 26 May 2015)
Changed paths:
M src/e2ir.c
M src/expression.c
M test/runnable/inline.d
Log Message:
-----------
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.
Commit: 58047b08977cc82f09238e8ac6300dd5158a7acb
https://github.com/D-Programming-Language/dmd/commit/58047b08977cc82f09238e8ac6300dd5158a7acb
Author: Walter Bright <walter at walterbright.com>
Date: 2015-05-30 (Sat, 30 May 2015)
Changed paths:
M src/e2ir.c
M src/expression.c
M test/runnable/inline.d
Log Message:
-----------
Merge pull request #4683 from 9rnsr/fix14606
[REG2.067.0] Issue 14606 - Bad code with -inline and structs
Compare: https://github.com/D-Programming-Language/dmd/compare/7dd1d175f8cd...58047b08977c
More information about the dmd-internals
mailing list