about summary refs log tree commit diff stats
path: root/cutil.lisp
diff options
context:
space:
mode:
authorDarren Bane <darren.bane@gmail.com>2020-10-12 00:52:56 +0100
committerDarren Bane <darren.bane@gmail.com>2020-10-12 00:52:56 +0100
commit84d897e941a679529d4f00ea5952196c40656b5f (patch)
treeece8dcddf6802acb2af5ca95c9c606e68569e290 /cutil.lisp
parenta8b5dbd231cd839449e9e391697c8bde9ae1cede (diff)
downloadlsp-84d897e941a679529d4f00ea5952196c40656b5f.tar.gz
Trying to get cbasic.lisp to compile; WIP
Diffstat (limited to 'cutil.lisp')
-rw-r--r--cutil.lisp11
1 files changed, 9 insertions, 2 deletions
diff --git a/cutil.lisp b/cutil.lisp
index 2f10099..e651b11 100644
--- a/cutil.lisp
+++ b/cutil.lisp
@@ -1,5 +1,5 @@
 (defpackage #:cutil
-  (:use #:common-lisp :closer-mop)
+  (:use #:common-lisp)
   (:export
    #:<abstract-class>))
 (in-package #:cutil)
@@ -7,8 +7,15 @@
 (defclass <abstract-class> (standard-class) ())
 (defmethod make-instance ((self <abstract-class>) &key)
   (error "Cannot instantiate abstract class ~A" (class-name self)))
+
+;;; These are copied from cl-abstract-classes in Quicklisp.
+;;; It turns out you do need both.
+;;; Maybe someday I'll understand why :-)
 (defmethod closer-mop:validate-superclass ((class <abstract-class>)
-					   (superclass standard-class))
+					   (superclass cl:standard-class))
+  t)
+(defmethod closer-mop:validate-superclass ((class cl:standard-class)
+					   (superclass <abstract-class>))
   t)
 
 (provide "cutil")