[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 --- Comment #10 from Dlang Bot --- dlang/dmd pull request #9725 "Followup 19774" was merged into stable: - b8d4101ae586d993aaf40e4eaf5f2708b31c3f8e by RazvanN7: Follow up for Issue 19774 - fix opDollar https://github.com/dlang/dmd/pull/9725 --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 Dlang Bot changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #9 from Dlang Bot --- dlang/dmd pull request #9696 "Fix Issue 19774 - wrong code caused by opIndex" was merged into stable: - 92b0a9967f59c0de24c2a2a3f9ae9e9103a514af by RazvanN7: Fix Issue 19774 - wrong code caused by opIndex https://github.com/dlang/dmd/pull/9696 --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 Dlang Bot changed: What|Removed |Added Keywords||pull --- Comment #8 from Dlang Bot --- @RazvanN7 created dlang/dmd pull request #9696 "Fix Issue 19774 - wrong code caused by opIndex" fixing this issue: - Fix Issue 19774 - wrong code caused by opIndex https://github.com/dlang/dmd/pull/9696 --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 johanenge...@weka.io changed: What|Removed |Added CC||johanenge...@weka.io --- Comment #7 from johanenge...@weka.io --- fyi with LDC: the bug is that `return bar()[1];` first calls the destructor on the temporary returned by `bar()`, and _after_ that calls opIndex. Clearly the order of those calls should be reversed. --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 --- Comment #6 from Mihails Strasuns --- Interesting that expanded code works fine when supplied manually. --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 Mihails Strasuns changed: What|Removed |Added CC||mihails.stras...@gmail.com --- Comment #5 from Mihails Strasuns --- Quick check with -vcg-ast shows that for opIndex different intermediate AST gets generated compared to regular function call: C foo() { C __dop3 = bar(); return __dop3.opIndex(1); } vs C foo() { return ((C __tmpfordtor3 = bar();) , __tmpfordtor3).zzz(); } --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 John Colvin changed: What|Removed |Added CC||john.loughran.colvin@gmail. ||com Severity|major |regression --- Comment #4 from John Colvin --- Changed to regression because it worked up to and including 2.066.0 --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 --- Comment #3 from Илья Ярошенко --- Another one similar issue https://issues.dlang.org/show_bug.cgi?id=19793 --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 --- Comment #2 from Илья Ярошенко --- Thank you, the reduced variant is much more generalised, looks more dangerous. --
[Issue 19774] wrong code caused by opIndex
https://issues.dlang.org/show_bug.cgi?id=19774 Илья Ярошенко changed: What|Removed |Added Summary|wrong code caused by|wrong code caused by |generic variadic opIndex|opIndex --