June 05, 2022 [Issue 23112] code passes @nogc, allocates anyway | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=23112 --- Comment #6 from Walter Bright <bugzilla@digitalmars.com> --- Regarding `f` as escaping produces far too many false positives. 1. semantic3 (the function body) analysis is done for a function. No gc use is found, and no escapes of an aliased reference are found, so the function is inferred @nogc. This also enables some NRVO optimizations. 2. code is generated that depends on the @nogc inferred attribute of the function, and/or does NRVO. 3. code is generated via another template getting expanded that escapes the alias reference. 4. this gets detected by the code the decides whether to generate a closure or not, and now (2) is invalid, but it's too late. -- |
July 22, 2022 [Issue 23112] code passes @nogc, allocates anyway | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=23112 Dlang Bot <dlang-bot@dlang.rocks> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #7 from Dlang Bot <dlang-bot@dlang.rocks> --- dlang/dmd pull request #14183 "fix Issue 23112 - code passes @nogc, allocates anyway" was merged into master: - 7797df8b69ef91210753293060ca9454f078d35d by Walter Bright: fix Issue 23112 - code passes @nogc, allocates anyway https://github.com/dlang/dmd/pull/14183 -- |
August 08, 2022 [Issue 23112] code passes @nogc, allocates anyway | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=23112 Iain Buclaw <ibuclaw@gdcproject.org> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://issues.dlang.org/sh | |ow_bug.cgi?id=23287 -- |
Copyright © 1999-2021 by the D Language Foundation