Bug 22536 – CTFE: Missing destruction of array literal argument for scope slice parameter

Status
NEW
Severity
blocker
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2021-11-22T15:39:32Z
Last change time
2024-12-13T19:19:23Z
Keywords
pull
Assigned to
No Owner
Creator
kinke
Moved to GitHub: dmd#20010 →

Comments

Comment #0 by kinke — 2021-11-22T15:39:32Z
void foo(T)(scope T[]) {} int bar() { int numDtor; struct S { int x; ~this() { ++numDtor; } } foo([S(1), S(2)]); return numDtor; } void main() { assert(bar() == 2); } static assert(bar() == 2); // fails, returns 0
Comment #1 by dlang-bot — 2022-01-06T15:26:21Z
@RazvanN7 created dlang/dmd pull request #13496 "Fix Issue 22536 - CTFE: Missing destruction of array literal argument for scope slice parameter" fixing this issue: - Fix Issue 22536 - CTFE: Missing destruction of array literal argument for scope slice parameter https://github.com/dlang/dmd/pull/13496
Comment #2 by robert.schadek — 2024-12-13T19:19:23Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/20010 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB