From 2210e113db46ab6250957826156e418d027014a0 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Mon, 19 Jul 2010 06:40:24 +0000 Subject: [PATCH] 1.0.40.4: slight performance enhancement in gf initialisation in RAISE-METATYPE, use special variables to access system classes rather than FIND-CLASS. (LOAD-TIME-VALUE of FIND-CLASS doesn't work as it is too early in the PCL bootstrap...) --- src/pcl/early-low.lisp | 1 + src/pcl/wrapper.lisp | 14 +++++++------- version.lisp-expr | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/pcl/early-low.lisp b/src/pcl/early-low.lisp index b69c592..cbe9c77 100644 --- a/src/pcl/early-low.lisp +++ b/src/pcl/early-low.lisp @@ -103,6 +103,7 @@ *the-class-std-class* *the-class-standard-class* *the-class-funcallable-standard-class* + *the-class-forward-referenced-class* *the-class-method* *the-class-standard-method* *the-class-standard-reader-method* diff --git a/src/pcl/wrapper.lisp b/src/pcl/wrapper.lisp index 9027877..d7e804e 100644 --- a/src/pcl/wrapper.lisp +++ b/src/pcl/wrapper.lisp @@ -236,13 +236,13 @@ ;;; specialize cache implementation or discrimination nets, but this ;;; has not occurred as yet. (defun raise-metatype (metatype new-specializer) - (let ((slot (find-class 'slot-class)) - (standard (find-class 'standard-class)) - (fsc (find-class 'funcallable-standard-class)) - (condition (find-class 'condition-class)) - (structure (find-class 'structure-class)) - (built-in (find-class 'built-in-class)) - (frc (find-class 'forward-referenced-class))) + (let ((slot *the-class-slot-class*) + (standard *the-class-standard-class*) + (fsc *the-class-funcallable-standard-class*) + (condition *the-class-condition-class*) + (structure *the-class-structure-class*) + (built-in *the-class-built-in-class*) + (frc *the-class-forward-referenced-class*)) (flet ((specializer->metatype (x) (let* ((specializer-class (if (eq **boot-state** 'complete) (specializer-class-or-nil x) diff --git a/version.lisp-expr b/version.lisp-expr index d07ced6..00ce366 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.40.3" +"1.0.40.4" -- 1.7.10.4