From: Cyrus Harmon Date: Fri, 2 Mar 2007 22:43:43 +0000 (+0000) Subject: 1.0.3.15: timeval tv-usec should be suseconds-t not time-t X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=64533db68167ac8cbe3ea9fa0676fd799c3b9110;p=sbcl.git 1.0.3.15: timeval tv-usec should be suseconds-t not time-t * add suseconds-t to grovel-headers * fix timeval struct such that tv-usec is a suseconds-t instead of time-t * fix whitespace --- diff --git a/src/code/unix.lisp b/src/code/unix.lisp index 94bf062..cd9a6fc 100644 --- a/src/code/unix.lisp +++ b/src/code/unix.lisp @@ -185,10 +185,12 @@ SYSCALL-FORM. Repeat evaluation of SYSCALL-FORM if it is interrupted." ;; A time value that is accurate to the nearest ;; microsecond but also has a range of years. +;; CLH: Note that tv-usec used to be a time-t, but that this seems +;; problematic on Darwin x86-64 (and wrong). Trying suseconds-t. (define-alien-type nil (struct timeval (tv-sec time-t) ; seconds - (tv-usec time-t))) ; and microseconds + (tv-usec suseconds-t))) ; and microseconds ;;;; resourcebits.h diff --git a/src/runtime/x86-darwin-os.c b/src/runtime/x86-darwin-os.c index 66b49f5..46958cd 100644 --- a/src/runtime/x86-darwin-os.c +++ b/src/runtime/x86-darwin-os.c @@ -331,11 +331,11 @@ undefined_alien_handler(int signal, siginfo_t *siginfo, void *void_context) { kern_return_t catch_exception_raise(mach_port_t exception_port, - mach_port_t thread, - mach_port_t task, - exception_type_t exception, - exception_data_t code_vector, - mach_msg_type_number_t code_count) + mach_port_t thread, + mach_port_t task, + exception_type_t exception, + exception_data_t code_vector, + mach_msg_type_number_t code_count) { kern_return_t ret; int signal; diff --git a/tools-for-build/grovel-headers.c b/tools-for-build/grovel-headers.c index 628605e..eb4aee3 100644 --- a/tools-for-build/grovel-headers.c +++ b/tools-for-build/grovel-headers.c @@ -213,6 +213,7 @@ main(int argc, char *argv[]) DEFTYPE("ino-t", ino_t); DEFTYPE("time-t", time_t); + DEFTYPE("suseconds-t", suseconds_t); DEFTYPE("off-t", off_t); DEFTYPE("size-t", size_t); DEFTYPE("mode-t", mode_t); @@ -241,6 +242,7 @@ main(int argc, char *argv[]) DEFTYPE("off-t", off_t); DEFTYPE("size-t", size_t); DEFTYPE("time-t", time_t); + DEFTYPE("suseconds-t", suseconds_t); DEFTYPE("uid-t", uid_t); printf("\n"); diff --git a/version.lisp-expr b/version.lisp-expr index 8535bc6..2be4b32 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.3.14" +"1.0.3.15"