标签: parsing global-variables bison abstract-syntax-tree
要返回完全构建的AST,我被告知我应该使用一个全局变量来存储它:
%{ AST::Root* root; %} %start program %% program: ... { $$ = root = new AST::Root(...) } ... ;
但这是唯一的方法吗?或者有更好的方法,可能是直接从yyparse()返回AST的方法吗?
yyparse()
答案 0 :(得分:1)
您可以使用%parse-param向yyparse()添加其他参数。有descrition
%parse-param