From 8f805077d7cb0e48f4b908c6b71e3c28b75d76bd Mon Sep 17 00:00:00 2001 From: pmai <pmai> Date: Fri, 18 Oct 2002 23:31:03 +0000 Subject: [PATCH] Checked in a fix from SBCL for the "exporting symbols breaks PCL" bug, as pointed out on cmucl-imp by Christophe Rhodes. The original SBCL changelog says: 0.7.6.24: fixing tonym's GRUFFALO bug (from #lisp)... ...made MAKE-INSTANCE-FUNCTION-SYMBOL use two colons whether or not the symbol is currently exported, so that EXPORTing the class name after class definition and before class use doesn't lose track of the function ...incremented fasl file format to reflect this (The whole PCL approach of encoding stuff into hairy symbol names interned in odd places is still broken, as can easily be demonstrated by renaming packages. But that's unlikely to be fixed soon, and maybe in the meantime this easy fix can help a little.) --- pcl/fast-init.lisp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pcl/fast-init.lisp b/pcl/fast-init.lisp index 44f100580..20627ade3 100644 --- a/pcl/fast-init.lisp +++ b/pcl/fast-init.lisp @@ -26,7 +26,7 @@ ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/fast-init.lisp,v 1.10 2002/09/07 13:16:48 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/Attic/fast-init.lisp,v 1.11 2002/10/18 23:31:03 pmai Exp $") ;;; ;;; This file defines the optimized make-instance functions. ;;; @@ -135,8 +135,11 @@ (*print-length* nil) (*print-level* nil) (*print-circle* nil) (*print-case* :upcase) (*print-pretty* nil)) - (intern (format nil "MAKE-INSTANCE ~S ~S ~S" - class-name keys allow-other-keys-p)))))))) + (intern (format nil "MAKE-INSTANCE ~A::~A ~S ~S" + (package-name (symbol-package class-name)) + (symbol-name class-name) + keys + allow-other-keys-p)))))))) (defun make-instance-1 (class initargs) (apply #'make-instance class initargs)) -- GitLab