diff --git a/src/consspaceobject.c b/src/consspaceobject.c index da0be0b..d3628e6 100644 --- a/src/consspaceobject.c +++ b/src/consspaceobject.c @@ -204,7 +204,7 @@ struct cons_pointer make_symbol( wint_t c, struct cons_pointer tail ) { */ struct cons_pointer make_special( struct cons_pointer src, struct cons_pointer ( *executable ) - ( struct struct stack_frame * frame, + ( struct stack_frame * frame, struct cons_pointer env ) ) { struct cons_pointer pointer = allocate_cell( SPECIALTAG ); struct cons_space_object *cell = &pointer2cell( pointer ); diff --git a/src/consspaceobject.h b/src/consspaceobject.h index e87255a..f5f1e25 100644 --- a/src/consspaceobject.h +++ b/src/consspaceobject.h @@ -425,9 +425,8 @@ struct cons_pointer make_function( struct cons_pointer src, */ struct cons_pointer make_special( struct cons_pointer src, struct cons_pointer ( *executable ) - ( struct cons_pointer s_expr, - struct cons_pointer env, - struct stack_frame * frame ) ); + ( struct stack_frame * frame, + struct cons_pointer env ) ); /** * Construct a string from this character and this tail. A string is diff --git a/src/repl.c b/src/repl.c index 968306d..476aebe 100644 --- a/src/repl.c +++ b/src/repl.c @@ -13,6 +13,7 @@ #include "lispops.h" #include "read.h" #include "print.h" +#include "stack.h" /** * The read/eval/print loop @@ -33,7 +34,7 @@ repl( FILE * in_stream, FILE * out_stream, FILE * error_stream, input.offset ); print( error_stream, input ); - struct stack_frame *frame = make_empty_frame( NIL, oblist ); + struct stack_frame *frame = make_empty_frame( NULL, oblist ); frame->arg[0] = input; struct cons_pointer value = lisp_eval( frame, oblist ); free_stack_frame( frame );