*cough* attached...

Cheers,

 -- Nikodemus

---------- Forwarded message ----------
From: Nikodemus Siivola <nikode...@random-state.net>
Date: 29 March 2011 08:33
Subject: Elephant patch for current SBCL
To: quickl...@googlegroups.com, elephant-devel@common-lisp.net,
ablumb...@common-lisp.net, rr...@common-lisp.net,
iesl...@common-lisp.net


Attached a darcs diff against the 1.0 repository, which restores
buildability on recent SBCLs.

As of 1.0.46.11, various internals changed broke Elephant. I haven't
tested the attached patch very carefully, but it builds and passes
Elephant's own tests.

As near as I can tell the code I excised should never (well, for the
past few years at any rate) have been needed on SBCL.

Cheers,

 -- Nikodemus
diff -rN old-elephant-1.0/src/elephant/package.lisp new-elephant-1.0/src/elephant/package.lisp
3,4c3,4
< ;;; migrate.lisp - 
< ;;; 
---
> ;;; migrate.lisp -
> ;;;
6c6
< ;;; 
---
> ;;;
27c27
<   (:documentation 
---
>   (:documentation
30c30
<   #+cmu  
---
>   #+cmu
63,64c63,64
< 		+slot-unbound+) 
<   #+cmu  
---
> 		+slot-unbound+)
>   #+cmu
68c68
<   #+cmu  
---
>   #+cmu
72,73c72,73
<   #+sbcl 
<   (:import-from :sb-mop 
---
>   #+sbcl
>   (:import-from :sb-mop
96c96
< 		compute-slots)                                
---
> 		compute-slots)
101,103d100
< 		slot-definition-reader-function
< 		slot-definition-writer-function
< 		slot-definition-boundp-function
183c180
<   #+lispworks  
---
>   #+lispworks
209,211c206,208
<   (:export 
<    #:*store-controller* 
<    #:store-controller #:controller-root #:controller-class-root 
---
>   (:export
>    #:*store-controller*
>    #:store-controller #:controller-root #:controller-class-root
215c212
<    #:optimize-layout 
---
>    #:optimize-layout
218c215
<    #:persistent-collection 
---
>    #:persistent-collection
227c224
<    ;; PSets 
---
>    ;; PSets
234,235c231,232
<    ;; Associations 
<    #:get-association-index #:add-association #:remove-association 
---
>    ;; Associations
>    #:get-association-index #:add-association #:remove-association
242c239
<    #:indexed-btree #:make-indexed-btree 
---
>    #:indexed-btree #:make-indexed-btree
248c245
<    #:remove-current-kv 
---
>    #:remove-current-kv
272c269
<    #:get-instances-by-class 
---
>    #:get-instances-by-class
287c284
<    #:set-oid-spec #:*inhibit-slot-copy* 
---
>    #:set-oid-spec #:*inhibit-slot-copy*
327c324
<   
---
> 
diff -rN old-elephant-1.0/src/elephant/slots.lisp new-elephant-1.0/src/elephant/slots.lisp
4c4
< ;;; 
---
> ;;;
7c7
< ;;; 
---
> ;;;
108c108
< ;; ALLEGRO 
---
> ;; ALLEGRO
122c122
< #+nil 
---
> #+nil
172c172
< ;; CMU / SBCL
---
> ;; CMUCL
175c175
< #+(or cmu sbcl)
---
> #+cmu
181c181
< #+(or cmu sbcl)
---
> #+cmu
188c188
< #+(or cmu sbcl)
---
> #+cmu
193,214d192
< 
< #+sbcl ;; CMU also?  Old code follows...
< (defmethod initialize-internal-slot-functions ((slot-def persistent-effective-slot-definition))
<   (let ((name (slot-definition-name slot-def)))
<     (setf (slot-definition-reader-function slot-def)
< 	  (make-persistent-reader name))
<     (setf (slot-definition-writer-function slot-def)
< 	  (make-persistent-writer name))
<     (setf (slot-definition-boundp-function slot-def)
< 	  (make-persistent-slot-boundp name)))
<   (call-next-method)) ;;  slot-def)
< 
< #+sbcl ;; CMU also?  Old code follows...
< (defmethod initialize-internal-slot-functions ((slot-def cached-effective-slot-definition))
<   (let ((name (slot-definition-name slot-def)))
<     (setf (slot-definition-reader-function slot-def)
< 	  (make-persistent-reader name))
<     (setf (slot-definition-writer-function slot-def)
< 	  (make-persistent-writer name))
<     (setf (slot-definition-boundp-function slot-def)
< 	  (make-persistent-slot-boundp name)))
<   (call-next-method)) ;;  slot-def)
_______________________________________________
elephant-devel site list
elephant-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/elephant-devel

Reply via email to