summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2008-02-03 10:57:11 +0100
committerMatthias Benkard <code@mail.matthias.benkard.de>2008-02-03 10:57:11 +0100
commit36215d830f5762278f16d6c97e1ac7068653f366 (patch)
tree1e1ed4636402c14e56125bfad36a13b3f6b43782
parenta3250d19ef539e61f1499688d7d9737f4932fbc5 (diff)
Reintroduce Allegro CL compatibility hack.
darcs-hash:f167d79293e352583e396687af4c39c2cb597057
-rw-r--r--Lisp/data-types.lisp11
1 files changed, 11 insertions, 0 deletions
diff --git a/Lisp/data-types.lisp b/Lisp/data-types.lisp
index a857800..64979c0 100644
--- a/Lisp/data-types.lisp
+++ b/Lisp/data-types.lisp
@@ -39,6 +39,17 @@
:initform (cffi:null-pointer)))))
+;; The following may be needed by some implementations (namely Allegro
+;; CL).
+(eval-when (:compile-toplevel :load-toplevel :execute)
+ (loop for class-name in '(c2mop:funcallable-standard-object
+ c-pointer-wrapper)
+ for class = (find-class class-name nil)
+ when class
+ unless (c2mop:class-finalized-p class)
+ do (c2mop:finalize-inheritance class)))
+
+
;; FIXME: I'm not confident about this, but it is needed in order to
;; make (DEFCLASS SELECTOR ...) work.
(defmethod c2mop:validate-superclass ((class c2mop:funcallable-standard-class)