diff options
author | Darren Bane <darren.bane@gmail.com> | 2020-10-12 00:52:56 +0100 |
---|---|---|
committer | Darren Bane <darren.bane@gmail.com> | 2020-10-12 00:52:56 +0100 |
commit | 84d897e941a679529d4f00ea5952196c40656b5f (patch) | |
tree | ece8dcddf6802acb2af5ca95c9c606e68569e290 /cutil.lisp | |
parent | a8b5dbd231cd839449e9e391697c8bde9ae1cede (diff) | |
download | lsp-84d897e941a679529d4f00ea5952196c40656b5f.tar.gz |
Trying to get cbasic.lisp to compile; WIP
Diffstat (limited to 'cutil.lisp')
-rw-r--r-- | cutil.lisp | 11 |
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") |