Update of /cvsroot/sbcl/sbcl/src/pcl
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv8415/src/pcl
Modified Files:
cpl.lisp macros.lisp std-class.lisp
Log Message:
1.0.42.24: print symbols with fully qualified names in critical places
Patch by Attila Lendvai, lp#622789.
Less room for package confusion this way.
Index: cpl.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/pcl/cpl.lisp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- cpl.lisp 14 Jul 2005 19:28:17 -0000 1.8
+++ cpl.lisp 2 Sep 2010 08:14:32 -0000 1.9
@@ -200,14 +200,16 @@
(defun cpl-error (class format-string &rest format-args)
(error "While computing the class precedence list of the class ~A.~%~A"
(if (class-name class)
- (format nil "named ~S" (class-name class))
+ (format nil "named ~/sb-impl::print-symbol-with-prefix/"
+ (class-name class))
class)
(apply #'format nil format-string format-args)))
(defun cpl-forward-referenced-class-error (class forward-class)
(flet ((class-or-name (class)
(if (class-name class)
- (format nil "named ~S" (class-name class))
+ (format nil "named ~/sb-impl::print-symbol-with-prefix/"
+ (class-name class))
class)))
(if (eq class forward-class)
(cpl-error class
@@ -256,7 +258,8 @@
(flet ((class-or-name (cpd)
(let ((class (cpd-class cpd)))
(if (class-name class)
- (format nil "named ~S" (class-name class))
+ (format nil "named ~/sb-impl::print-symbol-with-prefix/"
+ (class-name class))
class))))
(mapcar
(lambda (reason)
Index: macros.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/pcl/macros.lisp,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- macros.lisp 15 Sep 2009 11:07:39 -0000 1.31
+++ macros.lisp 2 Sep 2010 08:14:32 -0000 1.32
@@ -96,7 +96,8 @@
(ensure-non-standard-class symbol classoid))))))
(cond ((null errorp) nil)
((legal-class-name-p symbol)
- (error "There is no class named ~S." symbol))
+ (error "There is no class named ~
+ ~/sb-impl::print-symbol-with-prefix/." symbol))
(t
(error "~S is not a legal class name." symbol)))))
Index: std-class.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/pcl/std-class.lisp,v
retrieving revision 1.132
retrieving revision 1.133
diff -u -d -r1.132 -r1.133
--- std-class.lisp 6 Nov 2009 21:12:17 -0000 1.132
+++ std-class.lisp 2 Sep 2010 08:14:32 -0000 1.133
@@ -963,7 +963,7 @@
(style-warn
"~@<slot names with the same SYMBOL-NAME but ~
different SYMBOL-PACKAGE (possible package problem) ~
- for class ~S:~4I~@:_~<~@{~S~^~:@_~}~:>~@:>"
+ for class ~S:~4I~@:_~<~@{~/sb-impl::print-symbol-with-prefix/~^~:@_~}~:>~@:>"
class dupes)))
(let* ((slot (car slots))
(oslots (remove (slot-definition-name slot) (cdr slots)
|