0
语法规则我有一个野牛规则劈裂野牛
block: LBRACE { some code } decls stmts RBRACE {more code }
;
的问题是,“更多的代码”一节中,我有
$$ = $3 ;
基本上,我想块的返回值成为stmts。当我这样做时,Bison说:“$ 3块没有类型。”如果我删除包含一些代码的代码块并将其粘贴到后面的块中,野牛不会抱怨。我有stmts和它的所有衍生物声明为类型。那么这是不是由野牛允许的?我可以对语法进行修改以适应这种情况,但仅使用上述内容将会非常繁琐和容易。