私はこのようなルールを書くことができないことに気づきました:
ausdruck: label=ausdruck 'x' #One
| label='foo' #Two
;
次のエラーが発生します。
label'label'タイプが前の定義と一致しません:TOKEN_LABEL!= RULE_LABEL
これは、1回のラベルがパーサールールを参照し、もう1回はレクサールールを参照するためです。ルールを少し変更すると:
ausdruck: label=ausdruck 'x' #One
| label2='foo' #Two
;
すべてが正常に動作します。しかし、なぜ?私の最初の試みの何が問題になっていますか?