[prev in list] [next in list] [prev in thread] [next in thread]
List: sbcl-commits
Subject: Re: [Sbcl-commits] master: Fix build under cmucl
From: Stas Boukarev <stassats () gmail ! com>
Date: 2022-11-30 22:21:24
Message-ID: CAF63=132H8agD7=LQN2+UjL76Ts8VzL=wcSxu+m8Ov8oNBfwgA () mail ! gmail ! com
[Download RAW message or body]
That breaks the build everywhere:
"obj/from-xc/src/code/late-globaldb.lisp-obj"
fatal error encountered in SBCL pid 3081 tid 3081:
Internal error #11 "Object is of the wrong type." at 0x52c1563e
SC: 0, Offset: 11 $1= 0x1000305ff7: list pointer
internal error too early in init, can't recover
SC: 3, Offset: 11 $2= 0x50127693: instance pointer
slot 0: 0x400030201 [raw]
slot 8: 0xffffffc5 [raw]
slot 9: 0x0 [raw]
slot 10: 0x0 [raw]
slot 11: 0xffffffffffffffff [raw]
0: fp=0x7fde9d1679e0 pc=0x52c1563e SB-ALIEN-INTERNALS::COMPUTE-LISP-REP-TYPE
On Thu, Dec 1, 2022 at 1:13 AM Douglas Katzman via Sbcl-commits
<sbcl-commits@lists.sourceforge.net> wrote:
>
> The branch "master" has been updated in SBCL:
> via e6196f5c107bd471b0329ae1219d777665c01020 (commit)
> from 3eb9065bb3818f0f6ea890f511f740f36066f99b (commit)
>
> - Log -----------------------------------------------------------------
> commit e6196f5c107bd471b0329ae1219d777665c01020
> Author: Douglas Katzman <dougk@google.com>
> Date: Wed Nov 30 17:06:32 2022 -0500
>
> Fix build under cmucl
> ---
> src/code/alieneval.lisp | 22 +++++++++++++---------
> 1 file changed, 13 insertions(+), 9 deletions(-)
>
> diff --git a/src/code/alieneval.lisp b/src/code/alieneval.lisp
> index 7a01c3944..f744ca53d 100644
> --- a/src/code/alieneval.lisp
> +++ b/src/code/alieneval.lisp
> @@ -785,9 +785,6 @@
> (define-alien-type-class (single-float :include (float (bits 32))
> :include-args (type)))
>
> -(define-alien-type-translator single-float ()
> - (load-time-value (make-alien-single-float-type :type 'single-float) t))
> -
> (define-alien-type-method (single-float :extract-gen) (type sap offset)
> (declare (ignore type))
> `(sap-ref-single ,sap (/ ,offset sb-vm:n-byte-bits)))
> @@ -795,9 +792,6 @@
> (define-alien-type-class (double-float :include (float (bits 64))
> :include-args (type)))
>
> -(define-alien-type-translator double-float ()
> - (load-time-value (make-alien-double-float-type :type 'double-float) t))
> -
> (define-alien-type-method (double-float :extract-gen) (type sap offset)
> (declare (ignore type))
> `(sap-ref-double ,sap (/ ,offset sb-vm:n-byte-bits)))
> @@ -807,9 +801,6 @@
>
> (define-alien-type-class (system-area-pointer))
>
> -(define-alien-type-translator system-area-pointer ()
> - (load-time-value (make-alien-system-area-pointer-type :bits sb-vm:n-machine-word-bits) t))
> -
> (define-alien-type-method (system-area-pointer :unparse) (type)
> (declare (ignore type))
> 'system-area-pointer)
> @@ -835,6 +826,19 @@
> (declare (ignore type))
> `(sap-ref-sap ,sap (/ ,offset sb-vm:n-byte-bits)))
>
> +;; CMUCL (sometimes/always?) does not permit using a structure constructor from
> +;; earlier in this file within a LOAD-TIME-VALUE form later in the file.
> +(macrolet ((def-singleton-type (type ctor)
> + #+sb-xc-host
> + (let ((pseudo-const (symbolicate "*" type "-TYPE*")))
> + `(progn (defvar ,pseudo-const ,ctor)
> + (define-alien-type-translator ,type () ,pseudo-const)))
> + #-sb-xc-host
> + `(define-alien-type-translator ,type () '(load-time-value ,ctor t))))
> + (def-singleton-type single-float (make-alien-single-float-type :type 'single-float))
> + (def-singleton-type double-float (make-alien-double-float-type :type 'double-float))
> + (def-singleton-type system-area-pointer
> + (make-alien-system-area-pointer-type :bits sb-vm:n-machine-word-bits)))
>
> ;;;; the ALIEN-VALUE type
>
>
> -----------------------------------------------------------------------
>
>
> hooks/post-receive
> --
> SBCL
>
>
> _______________________________________________
> Sbcl-commits mailing list
> Sbcl-commits@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/sbcl-commits
_______________________________________________
Sbcl-commits mailing list
Sbcl-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-commits
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic