diff options
Diffstat (limited to 'src/lib/eval.c')
| -rw-r--r-- | src/lib/eval.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/lib/eval.c b/src/lib/eval.c index f0cdc55..0da90db 100644 --- a/src/lib/eval.c +++ b/src/lib/eval.c @@ -1,19 +1,17 @@ #include "aplwc_internal.h" struct aplwc_value * -eval_line(struct aplwc_line *line) +eval_line(struct aplwc *aplwc, struct aplwc_line *line) { struct aplwc_value *value; - struct aplwc *aplwc; - aplwc = line->aplwc; + UNUSED_PARAMETER(line); + assert(aplwc->last_error == APLWC_OK); - value = memory_alloc_aplwc_value(&aplwc->memory); - if(value == NULL) - aplwc->last_error = APLWC_OUT_OF_MEMORY; - value->aplwc = aplwc; - value->tag = VALUE_NULL; - + value = memory_alloc_aplwc_value(aplwc); + if(value != NULL) + value->tag = VALUE_NULL; + return value; } |