On Wednesday, 11 September 2013 at 19:46:25 UTC, Brian Schott wrote:
Yeah. D requires lookahead in both lexing and parsing. Some examples:

* String literals such as q{}
* If statements need to determine the difference between if (expression) and if (type identifier = expression) * Determining if something is a lamba expression or a function literal expression * Determining if something is a declaration or a statement or an expression.

Does not require lookahead.

* Differentiating between (type).identifier and a lambda expression

Yup !

* Differentiating between a type and an expression inside a typeid expression

Does not require lookahead.

* Differentiating between associative array key type and tuple slices in type suffixes

ditto.

Reply via email to