X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Falloc.c;h=78fc49fef772cfe9b337dfe1db7a45966b3f5373;hb=ee90e535c985f697c71d839083aed16710f846fd;hp=e10634de20c76727da85b0b745b0af7133e3c40f;hpb=3a0f3612dc2bbf3e4e8e7395bcbbf8cd1791b963;p=sbcl.git diff --git a/src/runtime/alloc.c b/src/runtime/alloc.c index e10634d..78fc49f 100644 --- a/src/runtime/alloc.c +++ b/src/runtime/alloc.c @@ -58,16 +58,16 @@ pa_alloc(int bytes) * we push it onto the lisp control stack, and read it back * off after any potential GC has finished */ #ifndef LISP_FEATURE_C_STACK_IS_CONTROL_STACK -#ifdef LISP_FEATURE_STACK_GROWS_DOWNARD_NOT_UPWARD +#ifdef LISP_FEATURE_STACK_GROWS_DOWNWARD_NOT_UPWARD #error "!C_STACK_IS_CONTROL_STACK and STACK_GROWS_DOWNWARD_NOT_UPWARD is not supported" #endif + *current_control_stack_pointer = (lispobj) result; current_control_stack_pointer += 1; - *current_control_stack_pointer = result; #endif do_pending_interrupt(); #ifndef LISP_FEATURE_C_STACK_IS_CONTROL_STACK - result = *current_control_stack_pointer; current_control_stack_pointer -= 1; + result = (lispobj *) *current_control_stack_pointer; #endif } #else