0
我有个妈/减少我的野牛代码冲突:这个Bison代码中的转换/减少冲突在哪里?
expression : LBRACKET expression RBRACKET {$$ = $2;}
| fct_call {}
| operand {}
| expression operator_arith expression {$$ = new NBinaryOperation(*$1, $2, *$3);}
;
我可以解决它写着:
expression : LBRACKET expression RBRACKET compexp // {$$ = $2;}
| fct_call_in_exp compexp {}
| operand compexp {}
;
compexp : /* empty */ {/* Do smthg */}
| operator_arith expression {/* Do smthg */}
但它需要的修饰在我的节点结构。因此我正在寻找一种解决问题的新方法。 你能帮我吗?
祝您有美好的一天!