GNU bug report logs - #78221
31.0.50; Improving *-change-functions notifications

Previous Next

Package: emacs;

Reported by: Stefan Monnier <monnier <at> iro.umontreal.ca>

Date: Fri, 2 May 2025 21:49:02 UTC

Severity: normal

Found in version 31.0.50

Full log


Message #62 received at 78221 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Alan Mackenzie <acm <at> muc.de>
Cc: 78221 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>, yantar92 <at> posteo.net,
 joaotavora <at> gmail.com
Subject: Re: bug#78221: 31.0.50; Improving *-change-functions notifications
Date: Sun, 04 May 2025 11:27:23 -0400
> The right tool to find these is cflow, combined with grep and awk (or
> python or perl or whatever) to search and filter cflow's output.  I've
> used these before.

Do you happen to remember the magic incantation to let `cflow` process
our sources correctly?  I tried the rule below and the errors file
suggests that the preprocessing is done correctly (it's full of
complaints but only about redefinitions), yet the result doesn't include
any info about the functions called by `insert_1_both` or
`Fput_text_property` (to take two randomly sampled cases of interest).


        Stefan


diff --git a/src/Makefile.in b/src/Makefile.in
index e4fc2fef711..2c7aa92f9b9 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -699,6 +699,18 @@ MAKE_PDUMPER_FINGERPRINT =
 MAKE_PDUMPER_FINGERPRINT =
 endif
 
+cgraph.cflow:
+	cflow --all --brief --cpp='$(CC) -E $(ALL_CFLAGS)' \
+	    $(ALLOBJS:.o=.c) 				   \
+	    >$@ 2>$@.errors
+
+cgraph-rev.cflow:
+	cflow --reverse --all --brief --cpp='$(CC) -E $(ALL_CFLAGS)' \
+	    $(ALLOBJS:.o=.c) 					     \
+	    >$@ 2>$@.errors
+
+flowcharts: cgraph-rev.cflow cgraph.cflow
+
 ## We have to create $(etc) here because init_cmdargs tests its
 ## existence when setting Vinstallation_directory (FIXME?).
 ## This goes on to affect various things, and the emacs binary fails





This bug report was last modified 32 days ago.

Previous Next


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