Bison:$1不返回整个令牌值

Bison:$1不返回整个令牌值,bison,flex-lexer,Bison,Flex Lexer,如果我尝试解析:var_I!=var_j,在评论中回答了什么:见 @Chris Dodd写道:看起来你在任何expr规则中都没有设置$$,所以当你读$2时应该得到随机垃圾…看起来你在任何expr规则中都没有设置$$,所以当你读$2时应该得到随机垃圾。。。 test: '( expr ')' { cout << $<string_type>2 << endl; } ; expr: or_expr

如果我尝试解析:var_I!=var_j,在评论中回答了什么:见


@Chris Dodd写道:看起来你在任何expr规则中都没有设置$$,所以当你读$2时应该得到随机垃圾…

看起来你在任何expr规则中都没有设置$$,所以当你读$2时应该得到随机垃圾。。。
test:   
    '( expr ')'
    {
        cout << $<string_type>2 << endl;
    }
    ;

expr:
    or_expr
    ;

or_expr:
    and_expr
    | or_expr T_OR and_expr
    ;

and_expr:
    equality_expr
    | and_expr T_AND equality_expr
    ;

equality_expr:
    relational_expr
    | equality_expr T_EQU relational_expr
    | equality_expr T_NEQ relational_expr
    ;

relational_expr:
    unary_expr 
    etc...