summaryrefslogtreecommitdiff
path: root/src/runtime/c/pgf/evaluator.h
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2014-10-16 10:00:32 +0000
committerkr.angelov <kr.angelov@gmail.com>2014-10-16 10:00:32 +0000
commit26ad164cecc65afd9420e0ac34a15d49b02e6cbf (patch)
tree327fb80f9d2281199737f6db0ca6bdcc336729c2 /src/runtime/c/pgf/evaluator.h
parentb70dba87bab5dfc8039f0b9f69e0851f92324f8b (diff)
finally proper stack unwind in the evaluator
Diffstat (limited to 'src/runtime/c/pgf/evaluator.h')
-rw-r--r--src/runtime/c/pgf/evaluator.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/runtime/c/pgf/evaluator.h b/src/runtime/c/pgf/evaluator.h
index 09b0afb2a..1f56d61a9 100644
--- a/src/runtime/c/pgf/evaluator.h
+++ b/src/runtime/c/pgf/evaluator.h
@@ -40,16 +40,12 @@ typedef struct {
typedef struct {
PgfClosure header;
int level;
- size_t n_args;
- PgfClosure* args[];
} PgfValueGen;
typedef struct {
PgfClosure header;
PgfEnv* env;
PgfMetaId id;
- size_t n_args;
- PgfClosure* args[];
} PgfValueMeta;
typedef struct {
@@ -68,11 +64,12 @@ struct PgfEvalGates {
PgfFunction evaluate_expr_thunk;
PgfFunction evaluate_indirection;
PgfFunction evaluate_value;
- PgfFunction evaluate_value_gen;
- PgfFunction evaluate_value_meta;
PgfFunction evaluate_value_lit;
PgfFunction evaluate_value_pap;
PgfFunction evaluate_value_lambda;
+ PgfFunction evaluate_value_const;
+ PgfFunction evaluate_meta;
+ PgfFunction evaluate_gen;
PgfFunction evaluate_caf;
PgfFunction update_closure;