diff options
author | Stephen Dolan <mu@netsoc.tcd.ie> | 2012-12-02 22:12:08 +0000 |
---|---|---|
committer | Stephen Dolan <mu@netsoc.tcd.ie> | 2012-12-02 22:12:08 +0000 |
commit | ea9db414edd078d8cb5e95a7694df7ae81d6daac (patch) | |
tree | c7b349f64d1d648256d4fab1ec50b6b018d7f983 /execute.c | |
parent | b6f2fbbe62be72e7eb52fda9f5ca5a8838869ae4 (diff) |
Clean up implementation of builtin functions.
Diffstat (limited to 'execute.c')
-rw-r--r-- | execute.c | 4 |
1 files changed, 1 insertions, 3 deletions
@@ -149,7 +149,6 @@ void print_error(jv value) { jv jq_next() { jv cfunc_input[MAX_CFUNCTION_ARGS]; - jv cfunc_output[MAX_CFUNCTION_ARGS]; assert(!forkable_stack_empty(&frame_stk)); uint16_t* pc = *frame_current_retaddr(&frame_stk); @@ -419,8 +418,7 @@ jv jq_next() { cfunc_input[i] = stack_pop().value; } struct cfunction* func = &frame_current_bytecode(&frame_stk)->globals->cfunctions[*pc++]; - func->fptr(cfunc_input, cfunc_output); - top.value = cfunc_output[0]; + top.value = cfunction_invoke(func, cfunc_input); if (jv_is_valid(top.value)) { stack_push(top); } else { |