diff --git a/pcl/braid.lisp b/pcl/braid.lisp
index 8082f5a40171f194f6ea31f68b002b8d52f02060..04936205942ec9ebc88697df819007c44d7784d8 100644
--- a/pcl/braid.lisp
+++ b/pcl/braid.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/braid.lisp,v 1.18 2000/08/06 19:12:33 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/braid.lisp,v 1.19 2001/07/08 16:24:39 pw Exp $")
 ;;;
 ;;; Bootstrapping the meta-braid.
 ;;;
@@ -604,9 +604,26 @@
   (setq *boot-state* 'braid)
   )
 
+
+(define-condition no-applicable-method (type-error)
+  ((function :reader no-applicable-method-function :initarg :function)
+   (arguments :reader no-applicable-method-arguments :initarg :arguments))
+  (:report (lambda (condition stream)
+             (format stream "No matching method for the generic-function ~S,~@
+when called with arguments ~S."
+                     (no-applicable-method-function condition)
+                     (no-applicable-method-arguments condition)))))
+
 (defmethod no-applicable-method (generic-function &rest args)
   (cerror "Retry call to ~S"
-	  "No matching method for the generic-function ~S,~@
-          when called with arguments ~S."
-	  generic-function args)
+          'no-applicable-method
+          :function generic-function
+          :arguments args)
   (apply generic-function args))
+
+;; (defmethod no-applicable-method (generic-function &rest args)
+;;   (cerror "Retry call to ~S"
+;; 	  "No matching method for the generic-function ~S,~@
+;;           when called with arguments ~S."
+;; 	  generic-function args)
+;;   (apply generic-function args))