diff options
author | Keith Packard <keithp@keithp.com> | 2017-12-01 18:28:16 +0100 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2017-12-01 18:28:16 +0100 |
commit | 98923ae1189f062b8b94120d47a56892db25493f (patch) | |
tree | eb585acd5600f529397077cddbe7edcecfb1d0a3 /src/lisp/ao_lisp_make_const.c | |
parent | 835bf4131f9e20575bfdf2179462ebdf54a14761 (diff) |
altos/lisp: Split out frame vals from frame struct
This lets the frame be resized without moving the base structure. The
plan is to allow all frames to be resized, not just the global frame.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/lisp/ao_lisp_make_const.c')
-rw-r--r-- | src/lisp/ao_lisp_make_const.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lisp/ao_lisp_make_const.c b/src/lisp/ao_lisp_make_const.c index f23d34db..f9bb5452 100644 --- a/src/lisp/ao_lisp_make_const.c +++ b/src/lisp/ao_lisp_make_const.c @@ -326,10 +326,11 @@ main(int argc, char **argv) ao_lisp_collect(AO_LISP_COLLECT_FULL); for (f = 0; f < ao_lisp_frame_global->num; f++) { - val = ao_has_macro(ao_lisp_frame_global->vals[f].val); + struct ao_lisp_frame_vals *vals = ao_lisp_poly_frame_vals(ao_lisp_frame_global->vals); + val = ao_has_macro(vals->vals[f].val); if (val != AO_LISP_NIL) { printf("error: function %s contains unresolved macro: ", - ao_lisp_poly_atom(ao_lisp_frame_global->vals[f].atom)->name); + ao_lisp_poly_atom(vals->vals[f].atom)->name); ao_lisp_poly_write(val); printf("\n"); exit(1); |