我需要解析的程序应采用以下形式:
program : [declaration]+
;
这应该表示:该程序包含一个或多个声明。
当然,声明本身也以类似的方式定义,依此类推...
目前,我在Bison解析器上看到+的错误。
我如何用野牛正确地定义一个或多个条件?
最佳答案
一个或多个:
declarations
: declaration
| declarations declaration
;
零个或多个:
declarations
: /* empty */
| declarations declaration
;