From a05af4f16fc6a79f3725b9c7b46d5967b3dfcaf7 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Wed, 2 Dec 2009 08:54:43 +0000 Subject: [PATCH] 1.0.33.3: restore buildability from CMUCL - Add extra keyword in the ftype declaration for %DEFKNOWN (oh, the irony); - move the THREAD structure into the cross-compiler, so that MUTEX slots can be declared to have type (OR NULL THREAD); - IGNORE on non-binding in saptran (build failure reported by xme@gmx.net) --- NEWS | 7 ++++--- src/code/target-thread.lisp | 12 ------------ src/code/thread.lisp | 12 ++++++++++++ src/compiler/knownfun.lisp | 6 +++--- src/compiler/saptran.lisp | 2 +- version.lisp-expr | 2 +- 6 files changed, 21 insertions(+), 20 deletions(-) diff --git a/NEWS b/NEWS index 488934f4e..4eb69e3e9 100644 --- a/NEWS +++ b/NEWS @@ -1,10 +1,11 @@ ;;;; -*- coding: utf-8; fill-column: 78 -*- - changes relative to sbcl-1.0.33: * enhancement: SB-INTROSPECT:DEFTYPE-LAMBDA-LIST now also works on most builtin types. - * bug fix: #p"\\\\" can now be read without error on Win32 (reported by -Willem Broekema; launchpad bug #489698). + * bug fix: #p"\\\\" can now be read without error on Win32. (reported by + Willem Broekema; launchpad bug #489698). + * bug fix: some minor code rearrangements to reenable warning-free building + from CMUCL (reported by xme@gmx.net; launchpad bug #491104) changes in sbcl-1.0.33 relative to sbcl-1.0.32: * new port: support added for x86-64 NetBSD. (thanks to Aymeric Vincent) diff --git a/src/code/target-thread.lisp b/src/code/target-thread.lisp index a73ec3105..ad831974e 100644 --- a/src/code/target-thread.lisp +++ b/src/code/target-thread.lisp @@ -103,18 +103,6 @@ instead.") (setf (fdocumentation '*current-thread* 'variable) "Bound in each thread to the thread itself.") -(defstruct (thread (:constructor %make-thread)) - #!+sb-doc - "Thread type. Do not rely on threads being structs as it may change -in future versions." - name - %alive-p - os-thread - interruptions - (interruptions-lock (make-mutex :name "thread interruptions lock")) - result - (result-lock (make-mutex :name "thread result lock"))) - #!+sb-doc (setf (fdocumentation 'thread-name 'function) diff --git a/src/code/thread.lisp b/src/code/thread.lisp index a44b7630b..029633c5a 100644 --- a/src/code/thread.lisp +++ b/src/code/thread.lisp @@ -11,6 +11,18 @@ (in-package "SB!THREAD") +(def!struct (thread (:constructor %make-thread)) + #!+sb-doc + "Thread type. Do not rely on threads being structs as it may change +in future versions." + name + %alive-p + os-thread + interruptions + (interruptions-lock (make-mutex :name "thread interruptions lock")) + result + (result-lock (make-mutex :name "thread result lock"))) + (def!struct mutex #!+sb-doc "Mutex type." diff --git a/src/compiler/knownfun.lisp b/src/compiler/knownfun.lisp index ddfd4c82c..e12181513 100644 --- a/src/compiler/knownfun.lisp +++ b/src/compiler/knownfun.lisp @@ -200,11 +200,11 @@ (declaim (ftype (function (list list attributes &key (:derive-type (or function null)) (:optimizer (or function null)) - (:destroyed-constant-args (or function null))) + (:destroyed-constant-args (or function null)) + (:result-arg (or index null))) *) %defknown)) -(defun %defknown (names type attributes &key derive-type optimizer destroyed-constant-args - result-arg) +(defun %defknown (names type attributes &key derive-type optimizer destroyed-constant-args result-arg) (let ((ctype (specifier-type type)) (info (make-fun-info :attributes attributes :derive-type derive-type diff --git a/src/compiler/saptran.lisp b/src/compiler/saptran.lisp index ed407c8cc..19945d2b5 100644 --- a/src/compiler/saptran.lisp +++ b/src/compiler/saptran.lisp @@ -109,7 +109,7 @@ (sap+ sap (+ offset1 offset2)))))) (macrolet ((def (fun &optional setp value-type) - (declare (ignorable value-type) (ignore element-size)) + (declare (ignorable value-type)) `(progn (deftransform ,fun ((sap offset ,@(when setp `(new-value))) * *) (splice-fun-args sap 'sap+ 2) diff --git a/version.lisp-expr b/version.lisp-expr index 6d6c89b30..3df304650 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.33.2" +"1.0.33.3" -- 2.11.4.GIT