summaryrefslogtreecommitdiff
path: root/src/runtime/c/pgf/evaluator.c
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2014-10-07 07:12:40 +0000
committerkr.angelov <kr.angelov@gmail.com>2014-10-07 07:12:40 +0000
commitde1b372ef7b412a4fdd35bff382d816403404cf3 (patch)
tree9900d6c2353e1ae47d08b22f8306d7548afa27d1 /src/runtime/c/pgf/evaluator.c
parent13c7721bc52ca2ee998c0a4347f15264c78a951b (diff)
the indirection should be done in the evaluate_expr_thunk gate instead of in the pgf_evaluate_expr_thunk function. this ensures lazyness
Diffstat (limited to 'src/runtime/c/pgf/evaluator.c')
-rw-r--r--src/runtime/c/pgf/evaluator.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/src/runtime/c/pgf/evaluator.c b/src/runtime/c/pgf/evaluator.c
index a53279cb3..eebaefd98 100644
--- a/src/runtime/c/pgf/evaluator.c
+++ b/src/runtime/c/pgf/evaluator.c
@@ -72,10 +72,6 @@ repeat:;
val->args[i] = args[n_args-i-1];
}
- PgfIndirection* indir = (PgfIndirection*) thunk;
- indir->header.code = state->eval_gates->evaluate_indirection;
- indir->val = &val->header;
-
res = &val->header;
break;
}
@@ -165,10 +161,6 @@ repeat:;
lambda->expr = expr;
}
-
- PgfIndirection* indir = (PgfIndirection*) thunk;
- indir->header.code = state->eval_gates->evaluate_indirection;
- indir->val = res;
}
break;
}
@@ -190,10 +182,6 @@ repeat:;
res = tmp_env->closure;
- PgfIndirection* indir = (PgfIndirection*) thunk;
- indir->header.code = state->eval_gates->evaluate_indirection;
- indir->val = res;
-
if (n_args > 0) {
PgfValuePAP* val = gu_new_flex(state->pool, PgfValuePAP, args, n_args);
val->header.code = state->eval_gates->evaluate_value_pap;