Subject: bug#50898: 28.0.50; with-suppressed-warnings doesn't always work

From: Lars Ingebrigtsen <[email-masked]>
Date: Wed, 29 Sep 2021 20:53:41 +0200

For some time now, the only compilation warning in Emacs has been:

In toplevel form:
cedet/semantic/bovine/el.el:931:1: Warning: ‘define-child-mode’ is an obsolete
    macro (as of 27.1); use ‘define-derived-mode’ instead.

(It appears in two places.)  But I've forgotten to look into it.

This warning is supposed to be suppressed:

(with-suppressed-warnings ((obsolete define-child-mode))
  ;; FIXME: We should handle this some other way!
  (define-child-mode lisp-mode emacs-lisp-mode
    "Make `lisp-mode' inherit mode local behavior from `emacs-lisp-mode'."))

And this suppression did work at some point, I think?  But it's not
working any more.

I haven't tried to debug it (or bisect it) yet, but perhaps it's obvious
to somebody what change may have triggered this?  My uninformed guess
might be something to do with...  macros and when they are expanded?

I've added Stefan M to the CCs.

In GNU Emacs 28.0.50 (build 23, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
 of 2021-09-26 built on elva
Repository revision: 43ae8c828d853382bbc2a27b9e14b9fff6ba18b6
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux 11 (bullseye)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no