[Issue 14860] Destructor is not called for block assignment
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Sun Aug 2 04:07:55 PDT 2015
https://issues.dlang.org/show_bug.cgi?id=14860
--- Comment #2 from github-bugzilla at puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos
https://github.com/D-Programming-Language/phobos/commit/35f1f6226aa523305e41f3dee68fbb0ce8fafdf4
Supplemental fix for issue 14860
`task[] = RTask.init;` has two bugs:
1. `RTask` is a nested struct, so `RTask.init` contains null context pointer.
2. That is a block assignment, so there is a possibility to call
`RTask.~this()` on garbage objects (stack allocated `buf` is initialized by
`void`).
Fixed to use `emplaceRef` on each elements.
https://github.com/D-Programming-Language/phobos/commit/deeab6c867fbed479fe57604a52f25e360f0b410
Merge pull request #3522 from 9rnsr/fix14860
Supplemental fix for issue 14860
--
More information about the Digitalmars-d-bugs
mailing list