virtual void visitAssign(POETAssign* assign) { POETCode* r1 = assign->get_lhs(), *r2 = assign->get_rhs(); try { r2 = apply(r2); if (r2 == 0) r2 = EMPTY; res = assign_AST(r2, r1); } catch (Error err) { std::cerr << "From invoking " << SHORT(assign->toString(DEBUG_NO_VAR),500) << "\n"; throw err; } if (user_debug) { std::cerr << assign->toString() << "\n===>" << res->toString() << "\n"; } }
virtual void visitAssign(POETAssign* assign) { check_localVar(assign->get_rhs()); apply(assign->get_rhs(),fullmatch); res = assign_AST(res, assign->get_lhs()); if (fullmatch != 0) fullmatch=EMPTY; }