Bug #68183 [Opn->Csd]: Several postfix expressions are not valid for function call
[email protected] Fri, 11 Nov 2016 21:57:38 GMT
| Newsgroups | php.standards |
|---|---|
| Message-ID | <[email protected]> |
Edit report at https://bugs.php.net/bug.php?id=68183&edit=1 ID: 68183 Updated by: [email protected] Reported by: [email protected] Summary: Several postfix expressions are not valid for function call -Status: Open +Status: Closed Type: Bug Package: PHP Language Specification PHP Version: PHP-5.6 -Assigned To: +Assigned To: nikic Block user comment: N Private report: N Previous Comments: ------------------------------------------------------------------------ [2016-11-11 21:57:27] [email protected] Now at: https://github.com/php/php-langspec/blob/master/spec/10-expressions.md#member-access-operator member-selection-expression has been split into member-access-expression and member-call-expression. Additionally, both were adjusted to accurate specify what is allowed on their LHS (and RHS, for that matter). ------------------------------------------------------------------------ [2016-06-29 14:42:43] [email protected] > postfix-increment-expression > postfix-decrement-expression It is already stated that "the operand of the […] operators must be a modifiable lvalue that has scalar-compatible type. > exponentiation-expression I'm not sure to what you are referring to. The following works as expected (see <https://3v4l.org/YK35q>): trim('2') ** trim('3') > The meaning of y in $x->y() and $x->y differs so I am not sure > it should be swept into a single "member-selection-expression". Syntactically, it has to. > member-selection-expression > > it feels weird. I mean http://3v4l.org/ZeZR1 is not doable > without a separate variable. This issue has been addressed as of PHP 7.0.0. For PHP 5.6 the langspec is indeed in error, because the code would be syntactically valid and the langspec doesn't mention a respective constraint. ------------------------------------------------------------------------ [2014-10-08 08:16:10] [email protected] Description: ------------ Even in PHP 7 postfix-increment-expression postfix-decrement-expression exponentiation-expression These one produce syntax errors and make no sense especially because exponentation is definitely numeric while function names must start with a letter (or so I thought). member-selection-expression it feels weird. I mean http://3v4l.org/ZeZR1 is not doable without a separate variable. The meaning of y in $x->y() and $x->y differs so I am not sure it should be swept into a single "member-selection-expression". ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=68183&edit=1