changeset 5562:2b3d2ea74ce1

(byte-compile-condition-case): Disable warning about symbol not naming a condition. Allow a list of condition names.
author Richard M. Stallman <rms@gnu.org>
date Tue, 11 Jan 1994 07:21:47 +0000
parents fd7524d61a8d
children 50ada322de3e
files lisp/emacs-lisp/bytecomp.el
diffstat 1 files changed, 16 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/bytecomp.el	Tue Jan 11 05:49:41 1994 +0000
+++ b/lisp/emacs-lisp/bytecomp.el	Tue Jan 11 07:21:47 1994 +0000
@@ -2681,16 +2681,24 @@
       (while clauses
 	(let* ((clause (car clauses))
                (condition (car clause)))
-          (cond ((not (symbolp condition))
+          (cond ((not (or (symbolp condition)
+			  (and (listp condition)
+			       (let ((syms condition) (ok t))
+				 (while syms
+				   (if (not (symbolp (car syms)))
+				       (setq ok nil))
+				   (setq syms (cdr syms)))
+				 ok))))
                  (byte-compile-warn
-                   "%s is not a symbol naming a condition (in condition-case)"
+                   "%s is not a condition name or list of such (in condition-case)"
                    (prin1-to-string condition)))
-                ((not (or (eq condition 't)
-			  (and (stringp (get condition 'error-message))
-			       (consp (get condition 'error-conditions)))))
-                 (byte-compile-warn
-                   "%s is not a known condition name (in condition-case)" 
-                   condition)))
+;;                ((not (or (eq condition 't)
+;;			  (and (stringp (get condition 'error-message))
+;;			       (consp (get condition 'error-conditions)))))
+;;                 (byte-compile-warn
+;;                   "%s is not a known condition name (in condition-case)" 
+;;                   condition))
+		)
 	  (setq compiled-clauses
 		(cons (cons condition
 			    (byte-compile-top-level-body