*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