Je syntaxe commePourquoi dois-je un changement réduire/conflit sur la ')' et non '('?
%(var)
et
%var
et (var)
Mes règles sont quelque chose comme
optExpr:
| '%''('CommaLoop')'
| '%' CommaLoop
CommaLoop:
val | CommaLoop',' val
Expr:
MoreRules
| '(' val ')'
Le pr oblem est il ne semble pas pouvoir dire si) appartient à %(CommaLoop)
ou % (val)
mais il se plaint sur le) au lieu du (. Que diable? Ne devrait-il pas se plaindre au (
? et comment devrais-je corriger l'erreur? Je pense que faire un jeton %(
est une bonne solution, mais je veux être sûr pourquoi $(
n'est pas une erreur avant de le faire.
La solution était de faire% (un jeton, plus tard j'ai dû enlever '%' CommaLoop –