瀏覽代碼

Raise correct error when terminal is used within another terminal, by not defined

tags/gm/2021-09-23T00Z/github.com--lark-parser-lark/0.11.3
Erez Sh 3 年之前
父節點
當前提交
e56efad1fe
共有 1 個檔案被更改,包括 4 行新增1 行删除
  1. +4
    -1
      lark/load_grammar.py

+ 4
- 1
lark/load_grammar.py 查看文件

@@ -743,7 +743,10 @@ def resolve_term_references(term_dict):
if item.type == 'RULE':
raise GrammarError("Rules aren't allowed inside terminals (%s in %s)" % (item, name))
if item.type == 'TERMINAL':
term_value = term_dict[item]
try:
term_value = term_dict[item]
except KeyError:
raise GrammarError("Terminal used but not defined: %s" % item)
assert term_value is not None
exp.children[0] = term_value
changed = True


Loading…
取消
儲存