digitalmars.D.bugs - [Issue 22117] New: Can't store scope pointer in a SumType
- d-bugmail puremagic.com (31/31) Jul 11 2021 https://issues.dlang.org/show_bug.cgi?id=22117
https://issues.dlang.org/show_bug.cgi?id=22117 Issue ID: 22117 Summary: Can't store scope pointer in a SumType Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: enhancement Priority: P1 Component: phobos Assignee: nobody puremagic.com Reporter: snarwin+bugzilla gmail.com As of DMD 2.097.0, the following program fails to compile with `-preview=dip1000`: --- void main() safe { import std.sumtype; int n = 123; SumType!(int*) s = &n; } --- The error message is: --- Error: reference to local variable `n` assigned to non-scope parameter `value` calling std.sumtype.SumType!(int*).SumType.this --- Since the sumtype instance `s` is a local variable with shorter lifetime than `n`, it should be able to store a pointer to `n`. --
Jul 11 2021