digitalmars.D.bugs - [Issue 22016] New: [REG2.067] Wrong code with enum comparison in
- d-bugmail puremagic.com (30/30) Jun 11 2021 https://issues.dlang.org/show_bug.cgi?id=22016
https://issues.dlang.org/show_bug.cgi?id=22016 Issue ID: 22016 Summary: [REG2.067] Wrong code with enum comparison in void ternary with side effects Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Keywords: wrong-code Severity: major Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: dlang-bugzilla thecybershadow.net /////////////// test.d ////////////// enum E { one = 1 } int i; void gun(int n) { return n == E.one ? ++i : (){}(); } void main() { gun(1); assert(i == 1); } ///////////////////////////////////// Introduced in https://github.com/dlang/dmd/pull/3979 --
Jun 11 2021