summaryrefslogtreecommitdiff
path: root/Lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2008-02-11 22:36:35 +0100
committerMatthias Benkard <code@mail.matthias.benkard.de>2008-02-11 22:36:35 +0100
commit5bf2e17527634ba3597987bb5a3265503f26176f (patch)
treedb28422432e3b9692d680b495129b1e42dfb59d1 /Lisp
parentfc0f7fbe9b70b0b5c40a3ecbc8eaba58560c4ddb (diff)
Do not override VALIDATE-SUPERCLASS (FUNCALLABLE-STANDARD-CLASS STANDARD-CLASS) on CLISP.
darcs-hash:caed8a613bac4239d26a45281e0c15281d501a27
Diffstat (limited to 'Lisp')
-rw-r--r--Lisp/data-types.lisp14
1 files changed, 9 insertions, 5 deletions
diff --git a/Lisp/data-types.lisp b/Lisp/data-types.lisp
index 8ec2e49..333cc10 100644
--- a/Lisp/data-types.lisp
+++ b/Lisp/data-types.lisp
@@ -63,11 +63,15 @@
;; FIXME: I'm not confident about this, but it is needed in order to
;; make (DEFCLASS SELECTOR ...) work.
-(#+clisp ext:without-package-lock #+clisp (#:clos)
- #-clisp progn
- (defmethod c2mop:validate-superclass ((class c2mop:funcallable-standard-class)
- (superclass standard-class))
- t))
+;;
+;; On the other hand, CLISP's implementation notes specify this method
+;; to return true by default for "some `obvious' cases" [29.12] such as
+;; this one. Therefore, we needn't override it. In fact, we can't, at
+;; least without disabling #<PACKAGE CLOS>'s package lock.
+#-clisp
+(defmethod c2mop:validate-superclass ((class c2mop:funcallable-standard-class)
+ (superclass standard-class))
+ t)
(defclass selector (c2mop:funcallable-standard-object c-pointer-wrapper)