+ (symbolp slot)
+ (symbolp class))
+ (values t slot)))))
+
+(define-internal-pcl-function-name-syntax sb-pcl::fast-method (list)
+ (valid-function-name-p (cadr list)))
+
+(define-internal-pcl-function-name-syntax sb-pcl::slow-method (list)
+ (valid-function-name-p (cadr list)))
+
+(define-internal-pcl-function-name-syntax sb-pcl::ctor (list)
+ (valid-function-name-p (cadr list)))
+
+(defun sb-pcl::random-documentation (name type)
+ (cdr (assoc type (info :random-documentation :stuff name))))
+
+(defun sb-pcl::set-random-documentation (name type new-value)
+ (let ((pair (assoc type (info :random-documentation :stuff name))))
+ (if pair
+ (setf (cdr pair) new-value)
+ (push (cons type new-value)
+ (info :random-documentation :stuff name))))
+ new-value)
+
+(defsetf sb-pcl::random-documentation sb-pcl::set-random-documentation)