codea: equal
[uebersetzerbau-ss10.git] / codea / parser.y
index df669367a0cee977ba1b962e0d2f2734abb8f3fd..736cb233a8aa3073ab0547a7608bbfb493dfe4e8 100644 (file)
@@ -270,8 +270,13 @@ Expr:
 
        | Term '=' Term
          @{
-           @i @Expr.node@ = TREENULL;
                @i @Expr.exprcount@ = @Term.0.exprcount@ + @Term.1.exprcount@; fprintf(stderr, "(Expr)- Term = Term\n");
+           @i @Expr.node@ = new_node(O_EQ, @Term.0.node@, @Term.1.node@, @Expr.exprcount@);
+
+               @reg {
+                       @Term.0.node@->reg = @Expr.node@->reg;
+                       @Term.1.node@->reg = next_reg(@Term.0.node@->reg, @Expr.node@->skip, @Expr.gparamges@);
+               }
          @}
        ;