From 4023b1bec2412344e5eea4a33cd85dd662149c67 Mon Sep 17 00:00:00 2001 From: Juho Snellman Date: Mon, 18 Jun 2007 16:18:34 +0000 Subject: [PATCH 1/1] 1.0.6.51: clean up compiler warnings in the runtime * Patch by Robert Brown. --- src/runtime/alloc.c | 4 +-- src/runtime/alloc.h | 4 +++ src/runtime/backtrace.c | 6 ++-- src/runtime/bsd-os.c | 17 ++++++---- src/runtime/core.h | 2 +- src/runtime/coreparse.c | 5 +-- src/runtime/darwin-langinfo.c | 1 + src/runtime/darwin-os.c | 2 +- src/runtime/gencgc.c | 29 ++++++++-------- src/runtime/interr.c | 2 +- src/runtime/interrupt.c | 10 +++--- src/runtime/interrupt.h | 13 +++---- src/runtime/largefile.c | 2 +- src/runtime/ppc-arch.c | 10 +++--- src/runtime/ppc-arch.h | 2 ++ src/runtime/ppc-darwin-os.c | 75 +++++++++++++++++++++-------------------- src/runtime/pseudo-atomic.h | 5 +-- src/runtime/pthread-lutex.c | 4 +-- src/runtime/purify.c | 3 +- src/runtime/save.c | 4 +-- src/runtime/validate.c | 2 ++ src/runtime/x86-64-arch.c | 1 - src/runtime/x86-64-arch.h | 2 ++ src/runtime/x86-arch.h | 2 ++ version.lisp-expr | 2 +- 25 files changed, 115 insertions(+), 94 deletions(-) diff --git a/src/runtime/alloc.c b/src/runtime/alloc.c index 0638ddc..78fc49f 100644 --- a/src/runtime/alloc.c +++ b/src/runtime/alloc.c @@ -61,13 +61,13 @@ pa_alloc(int bytes) #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 = result; + *current_control_stack_pointer = (lispobj) result; current_control_stack_pointer += 1; #endif do_pending_interrupt(); #ifndef LISP_FEATURE_C_STACK_IS_CONTROL_STACK current_control_stack_pointer -= 1; - result = *current_control_stack_pointer; + result = (lispobj *) *current_control_stack_pointer; #endif } #else diff --git a/src/runtime/alloc.h b/src/runtime/alloc.h index 0f2714c..3735f9f 100644 --- a/src/runtime/alloc.h +++ b/src/runtime/alloc.h @@ -15,6 +15,10 @@ #include "sbcl.h" #include "runtime.h" +#ifdef LISP_FEATURE_GENCGC +extern lispobj *alloc(int bytes); +#endif + extern lispobj alloc_cons(lispobj car, lispobj cdr); extern lispobj alloc_number(long n); extern lispobj alloc_string(char *str); diff --git a/src/runtime/backtrace.c b/src/runtime/backtrace.c index 42ddb2e..e7420e9 100644 --- a/src/runtime/backtrace.c +++ b/src/runtime/backtrace.c @@ -286,9 +286,8 @@ backtrace(int nframes) static int altstack_pointer_p (void *p) { #ifndef LISP_FEATURE_WIN32 - char* stack_start = ((char *) arch_os_get_current_thread()) - + dynamic_values_bytes; - char* stack_end = stack_start + 32*SIGSTKSZ; + void* stack_start = arch_os_get_current_thread() + dynamic_values_bytes; + void* stack_end = stack_start + 32*SIGSTKSZ; return (p > stack_start && p <= stack_end); #else @@ -578,7 +577,6 @@ void backtrace(int nframes) { void *fp; - int i; #if defined(LISP_FEATURE_X86) asm("movl %%ebp,%0" : "=g" (fp)); diff --git a/src/runtime/bsd-os.c b/src/runtime/bsd-os.c index dffa492..8c97396 100644 --- a/src/runtime/bsd-os.c +++ b/src/runtime/bsd-os.c @@ -152,16 +152,17 @@ boolean is_valid_lisp_addr(os_vm_address_t addr) { struct thread *th; - if(in_range_p(addr, READ_ONLY_SPACE_START, READ_ONLY_SPACE_SIZE) || - in_range_p(addr, STATIC_SPACE_START , STATIC_SPACE_SIZE) || - in_range_p(addr, DYNAMIC_SPACE_START , dynamic_space_size)) + + if (in_range_p(addr, READ_ONLY_SPACE_START, READ_ONLY_SPACE_SIZE) || + in_range_p(addr, STATIC_SPACE_START, STATIC_SPACE_SIZE) || + in_range_p(addr, DYNAMIC_SPACE_START, dynamic_space_size)) return 1; for_each_thread(th) { - if(((os_vm_address_t)th->control_stack_start <= addr) && - (addr < (os_vm_address_t)th->control_stack_end)) + if (((os_vm_address_t)th->control_stack_start <= addr) && + (addr < (os_vm_address_t)th->control_stack_end)) return 1; - if(in_range_p(addr, (lispobj)th->binding_stack_start, - BINDING_STACK_SIZE)) + if (in_range_p(addr, (lispobj) th->binding_stack_start, + BINDING_STACK_SIZE)) return 1; } return 0; @@ -266,7 +267,9 @@ static void sigsegv_handler(int signal, siginfo_t *info, void* void_context) { os_context_t *context = arch_os_get_context(&void_context); +#if 0 unsigned int pc = (unsigned int *)(*os_context_pc_addr(context)); +#endif os_vm_address_t addr; addr = arch_get_bad_addr(signal, info, context); diff --git a/src/runtime/core.h b/src/runtime/core.h index 57df1cb..ce2ec8f 100644 --- a/src/runtime/core.h +++ b/src/runtime/core.h @@ -39,6 +39,6 @@ extern os_vm_offset_t search_for_embedded_core(char *file); * against a .core built without :SB-SHOW (or against various grosser * mismatches, e.g. a .core built with an old version of the code * against a runtime with patches which add new C code) */ -extern unsigned char build_id[]; +extern char build_id[]; #endif diff --git a/src/runtime/coreparse.c b/src/runtime/coreparse.c index e7dbdfd..d657bac 100644 --- a/src/runtime/coreparse.c +++ b/src/runtime/coreparse.c @@ -38,10 +38,11 @@ /* lutex stuff */ #if defined(LISP_FEATURE_SB_THREAD) && defined(LISP_FEATURE_SB_LUTEX) #include "genesis/sap.h" +#include "pthread-lutex.h" #endif -unsigned char build_id[] = +char build_id[] = #include "../../output/build-id.tmp" ; @@ -324,7 +325,7 @@ load_core_file(char *file, os_vm_offset_t file_offset) struct lutex *lutex = lutexes_to_resurrect[i]; FSHOW((stderr, "re-init'ing lutex @ %p\n", lutex)); - lutex_init(lutex); + lutex_init((tagged_lutex_t) lutex); } free(lutexes_to_resurrect); diff --git a/src/runtime/darwin-langinfo.c b/src/runtime/darwin-langinfo.c index c1be651..a655553 100644 --- a/src/runtime/darwin-langinfo.c +++ b/src/runtime/darwin-langinfo.c @@ -17,6 +17,7 @@ */ #include +#include #include "darwin-langinfo.h" char *nl_langinfo(nl_item item) diff --git a/src/runtime/darwin-os.c b/src/runtime/darwin-os.c index 4f7aa71..45738df 100644 --- a/src/runtime/darwin-os.c +++ b/src/runtime/darwin-os.c @@ -28,7 +28,7 @@ char * os_get_runtime_executable_path() { char path[PATH_MAX + 1]; - size_t size = sizeof(path); + uint32_t size = sizeof(path); if (_NSGetExecutablePath(path, &size) == -1) return NULL; diff --git a/src/runtime/gencgc.c b/src/runtime/gencgc.c index 3b2f2f0..92df103 100644 --- a/src/runtime/gencgc.c +++ b/src/runtime/gencgc.c @@ -50,9 +50,9 @@ #include "genesis/hash-table.h" #include "genesis/instance.h" #include "genesis/layout.h" - -#ifdef LUTEX_WIDETAG -#include "genesis/lutex.h" +#include "gencgc.h" +#if defined(LUTEX_WIDETAG) +#include "pthread-lutex.h" #endif /* forward declarations */ @@ -1938,7 +1938,7 @@ reap_lutexes (generation_index_t gen) { while (lutex) { struct lutex *next = lutex->next; if (!lutex->live) { - lutex_destroy(lutex); + lutex_destroy((tagged_lutex_t) lutex); gencgc_unregister_lutex(lutex); } lutex = next; @@ -1997,7 +1997,7 @@ scav_lutex(lispobj *where, lispobj object) static lispobj trans_lutex(lispobj object) { - struct lutex *lutex = native_pointer(object); + struct lutex *lutex = (struct lutex *) native_pointer(object); lispobj copied; size_t words = CEILING(sizeof(struct lutex)/sizeof(lispobj), 2); gc_assert(is_lisp_pointer(object)); @@ -2005,13 +2005,14 @@ trans_lutex(lispobj object) /* Update the links, since the lutex moved in memory. */ if (lutex->next) { - lutex->next->prev = native_pointer(copied); + lutex->next->prev = (struct lutex *) native_pointer(copied); } if (lutex->prev) { - lutex->prev->next = native_pointer(copied); + lutex->prev->next = (struct lutex *) native_pointer(copied); } else { - generations[lutex->gen].lutexes = native_pointer(copied); + generations[lutex->gen].lutexes = + (struct lutex *) native_pointer(copied); } return copied; @@ -2115,6 +2116,8 @@ search_dynamic_space(void *pointer) (lispobj *)pointer)); } +#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) + /* Is there any possibility that pointer is a valid Lisp object * reference, and/or something else (e.g. subroutine call return * address) which should prevent us from moving the referred-to thing? @@ -2387,8 +2390,6 @@ possibly_valid_dynamic_space_pointer(lispobj *pointer) return 1; } -#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) - /* Adjust large bignum and vector objects. This will adjust the * allocated region if the size has shrunk, and move unboxed objects * into unboxed pages. The pages are not promoted here, and the @@ -2563,8 +2564,6 @@ maybe_adjust_large_object(lispobj *where) return; } -#endif - /* Take a possible pointer to a Lisp object and mark its page in the * page_table so that it will not be relocated during a GC. * @@ -2578,8 +2577,6 @@ maybe_adjust_large_object(lispobj *where) * It is also assumed that the current gc_alloc() region has been * flushed and the tables updated. */ -#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) - static void preserve_pointer(void *addr) { @@ -2696,7 +2693,7 @@ preserve_pointer(void *addr) gc_assert(page_table[addr_page_index].dont_move != 0); } -#endif +#endif // defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) /* If the given page is not write-protected, then scan it for pointers @@ -3856,7 +3853,9 @@ garbage_collect_generation(generation_index_t generation, int raise) unsigned long bytes_freed; page_index_t i; unsigned long static_space_size; +#if defined(LISP_FEATURE_X86) || defined(LISP_FEATURE_X86_64) struct thread *th; +#endif gc_assert(generation <= HIGHEST_NORMAL_GENERATION); /* The oldest generation can't be raised. */ diff --git a/src/runtime/interr.c b/src/runtime/interr.c index 8d0b01b..b24b726 100644 --- a/src/runtime/interr.c +++ b/src/runtime/interr.c @@ -54,7 +54,7 @@ lose(char *fmt, ...) va_list ap; fprintf(stderr, "fatal error encountered in SBCL pid %d",getpid()); #if defined(LISP_FEATURE_SB_THREAD) - fprintf(stderr, "(tid %lu)",thread_self()); + fprintf(stderr, "(tid %lu)", (unsigned long) thread_self()); #endif if (fmt) { fprintf(stderr, ":\n"); diff --git a/src/runtime/interrupt.c b/src/runtime/interrupt.c index 78bafeb..3597ee1 100644 --- a/src/runtime/interrupt.c +++ b/src/runtime/interrupt.c @@ -898,8 +898,10 @@ arrange_return_to_lisp_function(os_context_t *context, lispobj function) *(register_save_area + 7) = *os_context_register_addr(context,reg_EAX); *(register_save_area + 8) = *context_eflags_addr(context); - *os_context_pc_addr(context) = call_into_lisp_tramp; - *os_context_register_addr(context,reg_ECX) = register_save_area; + *os_context_pc_addr(context) = + (os_context_register_t) call_into_lisp_tramp; + *os_context_register_addr(context,reg_ECX) = + (os_context_register_t) register_save_area; #else /* return address for call_into_lisp: */ @@ -1158,9 +1160,7 @@ low_level_unblock_me_trampoline(int signal, siginfo_t *info, void *void_context) void undoably_install_low_level_interrupt_handler (int signal, - void handler(int, - siginfo_t*, - void*)) + interrupt_handler_t handler) { struct sigaction sa; diff --git a/src/runtime/interrupt.h b/src/runtime/interrupt.h index a373662..4e0a45f 100644 --- a/src/runtime/interrupt.h +++ b/src/runtime/interrupt.h @@ -27,6 +27,8 @@ #define REAL_SIGSET_SIZE_BYTES ((NSIG/8)) extern void check_blockables_blocked_or_lose(); +extern void check_gc_signals_unblocked_or_lose(); +extern void unblock_gc_signals(); static inline void sigcopyset(sigset_t *new, sigset_t *old) @@ -80,13 +82,12 @@ extern void do_pending_interrupt(void); extern void interrupt_thread_handler(int, siginfo_t*, void*); extern void sig_stop_for_gc_handler(int, siginfo_t*, void*); #endif -extern void undoably_install_low_level_interrupt_handler (int signal, - void - handler(int, - siginfo_t*, - void*)); +typedef void (*interrupt_handler_t)(int, siginfo_t *, void *); +extern void undoably_install_low_level_interrupt_handler ( + int signal, + interrupt_handler_t handler); extern unsigned long install_handler(int signal, - void handler(int, siginfo_t*, void*)); + interrupt_handler_t handler); extern union interrupt_handler interrupt_handlers[NSIG]; diff --git a/src/runtime/largefile.c b/src/runtime/largefile.c index a75339f..b71a77f 100644 --- a/src/runtime/largefile.c +++ b/src/runtime/largefile.c @@ -63,7 +63,7 @@ lstat_largefile(const char *file_name, struct stat *buf) { struct dirent64 * readdir_largefile(DIR *dir) { - return readdir(dir); + return readdir64(dir); } #endif diff --git a/src/runtime/ppc-arch.c b/src/runtime/ppc-arch.c index e2d5c67..11be9fd 100644 --- a/src/runtime/ppc-arch.c +++ b/src/runtime/ppc-arch.c @@ -21,6 +21,7 @@ #include "interrupt.h" #include "interr.h" #include "breakpoint.h" +#include "alloc.h" #if defined(LISP_FEATURE_GENCGC) #include "gencgc-alloc-region.h" @@ -422,9 +423,10 @@ arch_handle_single_step_trap(os_context_t *context, int trap) } static void -sigtrap_handler(int signal, siginfo_t *siginfo, os_context_t *context) +sigtrap_handler(int signal, siginfo_t *siginfo, void *void_context) { unsigned int code; + os_context_t *context = void_context; #ifdef LISP_FEATURE_LINUX os_restore_fp_control(context); @@ -469,7 +471,7 @@ sigtrap_handler(int signal, siginfo_t *siginfo, os_context_t *context) return; } - interrupt_handle_now(signal, code, context); + interrupt_handle_now(signal, (siginfo_t *)code, context); #ifdef LISP_FEATURE_DARWIN /* Work around G5 bug */ DARWIN_FIX_CONTEXT(context); @@ -479,8 +481,8 @@ sigtrap_handler(int signal, siginfo_t *siginfo, os_context_t *context) void arch_install_interrupt_handlers() { - undoably_install_low_level_interrupt_handler(SIGILL,sigtrap_handler); - undoably_install_low_level_interrupt_handler(SIGTRAP,sigtrap_handler); + undoably_install_low_level_interrupt_handler(SIGILL, sigtrap_handler); + undoably_install_low_level_interrupt_handler(SIGTRAP, sigtrap_handler); } void diff --git a/src/runtime/ppc-arch.h b/src/runtime/ppc-arch.h index 0c5f964..be871d8 100644 --- a/src/runtime/ppc-arch.h +++ b/src/runtime/ppc-arch.h @@ -16,4 +16,6 @@ release_spinlock(lispobj *word) #define ARCH_HAS_LINK_REGISTER +extern void ppc_flush_icache(os_vm_address_t address, os_vm_size_t length); + #endif /* _PPC_ARCH_H */ diff --git a/src/runtime/ppc-darwin-os.c b/src/runtime/ppc-darwin-os.c index f9ab445..dfec5c5 100644 --- a/src/runtime/ppc-darwin-os.c +++ b/src/runtime/ppc-darwin-os.c @@ -21,7 +21,8 @@ #include #include #include -#include "bsd-os.h" +#include "arch.h" +#include "interr.h" /* for declaration of lose */ #ifdef LISP_FEATURE_SB_THREAD #error "Define threading support functions" @@ -40,82 +41,84 @@ os_context_register_addr(os_context_t *context, int offset) ppc_saved_state_t *state = &context->uc_mcontext->ss; switch(offset) { case 0: - return &state->r0; + return (os_context_register_t *) &state->r0; case 1: - return &state->r1; + return (os_context_register_t *) &state->r1; case 2: - return &state->r2; + return (os_context_register_t *) &state->r2; case 3: - return &state->r3; + return (os_context_register_t *) &state->r3; case 4: - return &state->r4; + return (os_context_register_t *) &state->r4; case 5: - return &state->r5; + return (os_context_register_t *) &state->r5; case 6: - return &state->r6; + return (os_context_register_t *) &state->r6; case 7: - return &state->r7; + return (os_context_register_t *) &state->r7; case 8: - return &state->r8; + return (os_context_register_t *) &state->r8; case 9: - return &state->r9; + return (os_context_register_t *) &state->r9; case 10: - return &state->r10; + return (os_context_register_t *) &state->r10; case 11: - return &state->r11; + return (os_context_register_t *) &state->r11; case 12: - return &state->r12; + return (os_context_register_t *) &state->r12; case 13: - return &state->r13; + return (os_context_register_t *) &state->r13; case 14: - return &state->r14; + return (os_context_register_t *) &state->r14; case 15: - return &state->r15; + return (os_context_register_t *) &state->r15; case 16: - return &state->r16; + return (os_context_register_t *) &state->r16; case 17: - return &state->r17; + return (os_context_register_t *) &state->r17; case 18: - return &state->r18; + return (os_context_register_t *) &state->r18; case 19: - return &state->r19; + return (os_context_register_t *) &state->r19; case 20: - return &state->r20; + return (os_context_register_t *) &state->r20; case 21: - return &state->r21; + return (os_context_register_t *) &state->r21; case 22: - return &state->r22; + return (os_context_register_t *) &state->r22; case 23: - return &state->r23; + return (os_context_register_t *) &state->r23; case 24: - return &state->r24; + return (os_context_register_t *) &state->r24; case 25: - return &state->r25; + return (os_context_register_t *) &state->r25; case 26: - return &state->r26; + return (os_context_register_t *) &state->r26; case 27: - return &state->r27; + return (os_context_register_t *) &state->r27; case 28: - return &state->r28; + return (os_context_register_t *) &state->r28; case 29: - return &state->r29; + return (os_context_register_t *) &state->r29; case 30: - return &state->r30; + return (os_context_register_t *) &state->r30; case 31: - return &state->r31; + return (os_context_register_t *) &state->r31; case 41: /* PT_DAR */ - return &context->uc_mcontext->es.dar; + return (os_context_register_t *) &context->uc_mcontext->es.dar; case 42: /* PT_DSISR */ - return &context->uc_mcontext->es.dsisr; + return (os_context_register_t *) &context->uc_mcontext->es.dsisr; + default: + lose("bad offset to os_context_register_addr"); } } os_context_register_t * os_context_lr_addr(os_context_t *context) { - return &context->uc_mcontext->ss.lr; + return (os_context_register_t *) &context->uc_mcontext->ss.lr; } os_context_register_t * diff --git a/src/runtime/pseudo-atomic.h b/src/runtime/pseudo-atomic.h index bd0cc55..df5e900 100644 --- a/src/runtime/pseudo-atomic.h +++ b/src/runtime/pseudo-atomic.h @@ -53,8 +53,9 @@ #elif defined(LISP_FEATURE_PPC) && defined(LISP_FEATURE_GENCGC) #define set_alloc_pointer(value) \ - (dynamic_space_free_pointer = \ - (value) | (((unsigned long)dynamic_space_free_pointer) & LOWTAG_MASK)) + (dynamic_space_free_pointer = \ + ((lispobj *) \ + ((value) | (((unsigned long)dynamic_space_free_pointer) & LOWTAG_MASK)))) #define get_alloc_pointer() \ ((unsigned long) dynamic_space_free_pointer & ~LOWTAG_MASK) diff --git a/src/runtime/pthread-lutex.c b/src/runtime/pthread-lutex.c index 1f2f414..6365214 100644 --- a/src/runtime/pthread-lutex.c +++ b/src/runtime/pthread-lutex.c @@ -22,11 +22,11 @@ #include "arch.h" #include "target-arch-os.h" #include "os.h" +#include "pthread-lutex.h" +#include "gencgc.h" #include "genesis/lutex.h" -typedef unsigned long tagged_lutex_t; - #if 1 # define lutex_assert(ex) \ do { \ diff --git a/src/runtime/purify.c b/src/runtime/purify.c index a1f21b6..aa809b9 100644 --- a/src/runtime/purify.c +++ b/src/runtime/purify.c @@ -34,6 +34,7 @@ #include "genesis/primitive-objects.h" #include "genesis/static-symbols.h" #include "genesis/layout.h" +#include "gencgc.h" /* We don't ever do purification with GENCGC as of 1.0.5.*. There was * a lot of hairy and fragile ifdeffage in here to support purify on @@ -497,7 +498,7 @@ ptrans_otherptr(lispobj thing, lispobj header, boolean constant) return ptrans_unboxed(thing, header); #ifdef LUTEX_WIDETAG case LUTEX_WIDETAG: - gencgc_unregister_lutex(native_pointer(thing)); + gencgc_unregister_lutex((struct lutex *) native_pointer(thing)); return ptrans_unboxed(thing, header); #endif diff --git a/src/runtime/save.c b/src/runtime/save.c index 837a231..db6b77c 100644 --- a/src/runtime/save.c +++ b/src/runtime/save.c @@ -230,7 +230,7 @@ save_to_filehandle(FILE *file, char *filename, lispobj init_function, file); { unsigned char *p; - for (p = build_id; *p; ++p) + for (p = (unsigned char *)build_id; *p; ++p) write_lispobj(*p, file); } @@ -302,7 +302,7 @@ save_to_filehandle(FILE *file, char *filename, lispobj init_function, #if defined(LISP_FEATURE_SB_THREAD) && defined(LISP_FEATURE_SB_LUTEX) if(n_lutexes > 0) { long offset; - printf("writing %d lutexes to the core...\n", n_lutexes); + printf("writing %ld lutexes to the core...\n", n_lutexes); write_lispobj(LUTEX_TABLE_CORE_ENTRY_TYPE_CODE, file); /* word count of the entry */ write_lispobj(4, file); diff --git a/src/runtime/validate.c b/src/runtime/validate.c index dd1dfd7..0efa39f 100644 --- a/src/runtime/validate.c +++ b/src/runtime/validate.c @@ -22,6 +22,8 @@ #include "globals.h" #include "interr.h" #include "validate.h" +#include "interr.h" /* for declaration of lose */ + static void ensure_space(lispobj *start, unsigned long size) diff --git a/src/runtime/x86-64-arch.c b/src/runtime/x86-64-arch.c index 84082a0..611bee6 100644 --- a/src/runtime/x86-64-arch.c +++ b/src/runtime/x86-64-arch.c @@ -231,7 +231,6 @@ arch_handle_single_step_trap(os_context_t *context, int trap) void sigtrap_handler(int signal, siginfo_t *info, void *void_context) { - int code = info->si_code; os_context_t *context = (os_context_t*)void_context; unsigned int trap; diff --git a/src/runtime/x86-64-arch.h b/src/runtime/x86-64-arch.h index baa5b8d..10df5d8 100644 --- a/src/runtime/x86-64-arch.h +++ b/src/runtime/x86-64-arch.h @@ -9,6 +9,8 @@ #error genesis/config.h (or sbcl.h) must be included before this file #endif +#include "interr.h" /* for declaration of lose() */ + #define ARCH_HAS_STACK_POINTER /* FIXME: Do we also want diff --git a/src/runtime/x86-arch.h b/src/runtime/x86-arch.h index 82daa19..bf5d158 100644 --- a/src/runtime/x86-arch.h +++ b/src/runtime/x86-arch.h @@ -9,6 +9,8 @@ #error genesis/config.h (or sbcl.h) must be included before this file #endif +#include "interr.h" /* for declaration of lose() */ + #define ARCH_HAS_STACK_POINTER /* FIXME: Do we also want diff --git a/version.lisp-expr b/version.lisp-expr index a8763bf..fae7cf9 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.6.50" +"1.0.6.51" -- 1.7.10.4