summaryrefslogtreecommitdiffstats
path: root/builtin.c
diff options
context:
space:
mode:
authorStephen Dolan <mu@netsoc.tcd.ie>2013-06-18 01:07:18 +0100
committerStephen Dolan <mu@netsoc.tcd.ie>2013-06-18 01:07:18 +0100
commit824ce76cecd11863f6c86cf04e3a56075cbcd30a (patch)
treec1cff96b8d5e0464a11de677c9e7827d5f6b578c /builtin.c
parent2a18f97d12d48dcf92fbbfb15aea0fd02f763283 (diff)
Simplify block functions for variables
Diffstat (limited to 'builtin.c')
-rw-r--r--builtin.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/builtin.c b/builtin.c
index 60be1bcc..a2adb1ac 100644
--- a/builtin.c
+++ b/builtin.c
@@ -528,20 +528,18 @@ static block bind_bytecoded_builtins(block b) {
};
for (unsigned i=0; i<sizeof(builtin_def_1arg)/sizeof(builtin_def_1arg[0]); i++) {
builtins = BLOCK(builtins, gen_function(builtin_def_1arg[i].name,
- gen_op_block_unbound(CLOSURE_PARAM, "arg"),
+ gen_param("arg"),
builtin_def_1arg[i].code));
}
}
{
- block rangevar = block_bind(gen_op_var_unbound(STOREV, "rangevar"),
- gen_noop(), OP_HAS_VARIABLE);
+ block rangevar = gen_op_var_fresh(STOREV, "rangevar");
block init = BLOCK(gen_op_simple(DUP), gen_call("start", gen_noop()), rangevar);
block range = BLOCK(init,
gen_call("end", gen_noop()),
- gen_op_var_bound(RANGE, rangevar));
+ gen_op_bound(RANGE, rangevar));
builtins = BLOCK(builtins, gen_function("range",
- BLOCK(gen_op_block_unbound(CLOSURE_PARAM, "start"),
- gen_op_block_unbound(CLOSURE_PARAM, "end")),
+ BLOCK(gen_param("start"), gen_param("end")),
range));
}