GNU bug report logs - #29585
26.0.90; Elint gives spurious warning with condition-case-unless-debug

Previous Next

Package: emacs;

Reported by: "John Wiegley" <johnw <at> gnu.org>

Date: Tue, 5 Dec 2017 22:27:02 UTC

Severity: minor

Tags: fixed

Found in version 26.0.90

Fixed in version 27.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: "John Wiegley" <johnw <at> gnu.org>
To: 29585 <at> debbugs.gnu.org
Subject: bug#29585: 26.0.90; Elint gives spurious warning with condition-case-unless-debug
Date: Tue, 05 Dec 2017 14:26:08 -0800
Wherever condition-case-unless-debug is used, elint will complain with:

use-package-core.el:1292:Warning: Not an error symbol in error handler: debug

This is due to the definition of condition-case-unless-debug:

--8<---------------cut here---------------start------------->8---
(defmacro condition-case-unless-debug (var bodyform &rest handlers)
  "Like `condition-case' except that it does not prevent debugging.
More specifically if `debug-on-error' is set then the debugger will be invoked
even if this catches the signal."
  (declare (debug condition-case) (indent 2))
  `(condition-case ,var
       ,bodyform
     ,@(mapcar (lambda (handler)
                 `((debug ,@(if (listp (car handler)) (car handler)
                              (list (car handler))))
                   ,@(cdr handler)))
               handlers)))
--8<---------------cut here---------------end--------------->8---

Maybe elint needs to be taught about this case?

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2




This bug report was last modified 5 years and 313 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.