On 18.08.2015 at 22:47, Arne Blankerts wrote: > while playing around with the new group use syntax, I stumbled upon an > inconsistency of which I'm not sure whether or not it is expected. > For the "classic" syntax, while technically pointless, a leading \ for > the name is considered valid and works identical to a line without it: > > <?php > > namespace foo; > > use \some\bar; > use some\baz; > > > With the new group syntax, the version with a leading \ is considered > invalid - a lint will PHP Parse error: syntax error, unexpected '{', > expecting identifier (T_STRING): > > <?php > > namespace foo; > use some\{ bar, baz }; > use \some\{ bar, baz }; > > > > > Is this a bug or feature?
It seems to me that is an oversight. The resolution would be rather simple, cf. <https://github.com/php/php-src/blob/php-7.0.0beta3/Zend/zend_language_parser.y#L366-L375>. However, while looking at the grammar, I've noticed that the entities inside the braces may start with a backslash, what I consider rather strange (particularly as there has to be a backslash immediately before the opening brace). -- Christoph M. Becker -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php