J'essaie d'écrire quelques règles simples et je reçois cette ambiguïtéantlr 3 ambiguïté
rule: field1 field2; //ambiguity between nsf1 and nsf2 even if I use lookahead k=4
field1: nsf1 | whatever1...;
field2: nsf2 | whatever2...;
nsf1: 'N' 'S' 'F' '1'; //meaning: no such field 1
nsf2: 'N' 'S' 'F' '2'; //meaning: no such field 2
Je comprends l'ambiguïté, mais je ne comprends pas pourquoi préanalyse ne résout pas cela.
J'ai une solution simple mais je ne l'aime pas:
règle: (NSF1 (NSF2 | whatever2)) | (quel que soit1 (nsf2 | quelquechose2));
Est-ce que quelqu'un a une solution plus élégante?
Merci beaucoup, Chris
faux problème en effet, il y avait une erreur dans ma description :-( merci – kcris