From 38747051bbe8bf893363c99374118e237e252cb7 Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Sun, 10 Feb 2008 17:36:08 +0100 Subject: System definition: Copy the system prior to compilation instead of after it. darcs-hash:73cfed6be2a95e02cf75bcd8cc6b26abf3778a9e --- Lisp/defpackage.lisp | 2 +- Lisp/libobjcl.lisp | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) (limited to 'Lisp') diff --git a/Lisp/defpackage.lisp b/Lisp/defpackage.lisp index 6b5f8eb..1854cfd 100644 --- a/Lisp/defpackage.lisp +++ b/Lisp/defpackage.lisp @@ -17,7 +17,7 @@ (defpackage #:mulk.objective-cl (:nicknames #:objcl #:objective-cl #:mulk.objcl) - (:use #:cl #:cffi #:split-sequence) + (:use #:closer-common-lisp #:cffi #:split-sequence) (:shadow #:foreign-pointer) ;; Functions diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index 5616f71..6b14115 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -354,11 +354,13 @@ conventional case for namespace identifiers in Objective-C." 'objective-c-meta-class) superclass (class-of superclass)) - (c2mop:ensure-class - (objc-fake-meta-class-name->symbol class-name-string) - :metaclass 'objective-c-meta-class - :pointer class-ptr - :direct-superclasses (list superclass))))) + (let ((fake-metaclass-name + (objc-fake-meta-class-name->symbol class-name-string))) + (or (find-class fake-metaclass-name nil) + (c2mop:ensure-class fake-metaclass-name + :metaclass 'objective-c-meta-class + :pointer class-ptr + :direct-superclasses (list superclass))))))) (or (find-class class-name nil) (c2mop:ensure-class class-name :metaclass metaclass -- cgit v1.2.3