Subject: bug#77732: grep-edit-buffer errors with incionsistent behaviour

From: Eli Zaretskii <[email-masked]>
Date: Tue, 22 Apr 2025 18:30:00 +0300

> From: Johann Höchtl <[email-masked]>
> Date: Tue, 22 Apr 2025 17:11:49 +0200
> Cc: [email-masked], [email-masked], [email-masked]
> 
> I extracted grep.el from grep.el.gz
> I loaded the patch and applied it to grep.el
> The hunks applied successfully
> 
> I retried my rgrep opperation and got this in messages:
> 
> Source file ‘c:/Users/HoechtlJ/AppData/Local/Emacs/share/emacs/31.0.50/lisp/progmodes/grep.el’ newer
> than byte-compiled file; using older file
> Making completion list...
> compilation-start: Symbol’s value as variable is void: grep-compilation-transform-finished-rules [2 times]
> 
> So I renamed grep.el.gz to grep.elgz.o and grep.elc to grep.elc.o
> 
> Still no luck but the compilation error remains compilation-start: Symbol’s value as variable is void:
> grep-compilation-transform-finished-rules 
> 
> A new native byte compiled version of grep.el was created though.
> 
> Is the compilation error actually misleading? It seems as if I get the error
> 
> Source file ‘c:/Users/HoechtlJ/AppData/Local/Emacs/share/emacs/31.0.50/lisp/progmodes/grep.el’ newer
> than byte-compiled file; using older file
> Making completion list...
> compilation-start: Symbol’s value as variable is void: grep-compilation-transform-finished-rule 
> 
> using older file would indicate that it is using grep.elc but it seems Emacs does in fact use the NEW pathed
> grep.el 

To save yourself from all this trouble, patch grep.el in the source
tree, and then say "make install".  This will compile the patched
grep.el and will install it in the correct place.