private void pushEx(ExpressionStack stack, List<Exprent> exprlist, Exprent exprent, VarType vartype) {
    int varIndex = VarExprent.STACK_BASE + stack.size();
    VarExprent var = new VarExprent(varIndex, vartype == null ? exprent.getExprType() : vartype, varProcessor);
    var.setStack(true);

    exprlist.add(new AssignmentExprent(var, exprent, null));
    stack.push(var.copy());
  }
private void pushEx(ExpressionStack stack, List<Exprent> exprlist, Exprent exprent, VarType vartype)