November 06, 2017 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 --- Comment #10 from RazvanN <razvan.nitu1305@gmail.com> --- (In reply to timon.gehr from comment #9) > (In reply to timon.gehr from comment #8) > > (In reply to RazvanN from comment #1) > > > Issuing an error is the correct behavior. As you can see in the grammar [1], *(x)++ is parsed the following way: *UnaryExpression. If a parenthesis is encountered, then the parser expects a type : (type).identifier/templateInstance. > > > > That is the bug. The grammar allows the derivation > > > > UnaryExpression > > \ > > PowExpression > > \ > > PostfixExpression > > \ > > PostfixExpression ++ > > \ > > ( PrimaryExpression ) > > \ > > ... > > \ > > Identifier > > > > Should have been: > > UnaryExpression > \ > PowExpression > \ > PostfixExpression > \ > PostfixExpression ++ > \ > PrimaryExpression > \ > ( Expression ) > \ > ... > \ > Identifier That is correct. I looked at the code which tests that the content of the parentheses is a type and at the UnaryExpression expression grammar so I presumed that you cannot have the given construct. I understand now that indeed this is not acceptable behavior. Thanks -- |
May 05, 2018 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 Seb <greensunny12@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |greensunny12@gmail.com --- Comment #11 from Seb <greensunny12@gmail.com> --- PR https://github.com/dlang/dmd/pull/8218 -- |
October 24, 2022 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 RazvanN <razvan.nitu1305@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |buknik95@yandex.ru --- Comment #12 from RazvanN <razvan.nitu1305@gmail.com> --- *** Issue 15463 has been marked as a duplicate of this issue. *** -- |
December 17, 2022 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 Iain Buclaw <ibuclaw@gdcproject.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P3 -- |
July 13, 2023 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 Dlang Bot <dlang-bot@dlang.rocks> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull --- Comment #13 from Dlang Bot <dlang-bot@dlang.rocks> --- @ntrel created dlang/dmd pull request #15410 "Fix Issue 7184 - parse error on *(x)++" fixing this issue: - Fix Issue 7184 - parse error on *(x)++ https://github.com/dlang/dmd/pull/15410 -- |
July 14, 2023 [Issue 7184] parse error on *(x)++ | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=7184 Dlang Bot <dlang-bot@dlang.rocks> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution|--- |FIXED --- Comment #14 from Dlang Bot <dlang-bot@dlang.rocks> --- dlang/dmd pull request #15410 "Fix Issue 7184 - parse error on *(x)++" was merged into master: - 50e5492929f4afe27177824371407094d93029dc by Nick Treleaven: Fix Issue 7184 - parse error on *(x)++ https://github.com/dlang/dmd/pull/15410 -- |
Copyright © 1999-2021 by the D Language Foundation