diff options
author | Alan Mackenzie <acm@muc.de> | 2018-11-28 13:15:50 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2018-11-28 13:19:04 +0000 |
commit | 1ca436a33c7de612e44409841d6bed0fe6268141 (patch) | |
tree | 688efed7f76dc37d3556b1ebaa9c379e5a9c0dba /lisp/emacs-lisp/trace.el | |
parent | cef3f8fbf98296eaa59f80716db33b4f8689889a (diff) | |
download | emacs-1ca436a33c7de612e44409841d6bed0fe6268141.tar.gz emacs-1ca436a33c7de612e44409841d6bed0fe6268141.tar.bz2 emacs-1ca436a33c7de612e44409841d6bed0fe6268141.zip |
Make compilation mode work with warnings from compiled buffer functions
In particular, warning messages from compile_defun now contain the source
buffer name and line and column numbers. Typing CR on such a warning now
moves to the pertinent place in the source buffer.
This fixes bug #33475
* lisp/emacs-lisp/bytecomp.el (top-level): Require compile.elc?.
(emacs-lisp-compilation-file-name-or-buffer)
(emacs-lisp-compilation-parse-errors-filename-function): New
variables/constants.
(emacs-lisp-compilation-mode): New mode derived from compilation-mode.
(byte-compile-log-file): Check byte-compile-current-file for being a string,
not merely non-nil. Change wording in message from "buffer" to "in buffer".
Go into emacs-lisp-compilation-mode rather than the plain compilation-mode.
(compile-defun): Bind byte-compile-current-file to current-buffer, not nil.
* lisp/progmodes/compilation-mode
(compilation-parse-errors-filename-function): Amend comments to specify that
this function may return a buffer, and that it need not save the match data.
(Several places): Amend comments to allow for the use of a buffer rather than
a file name.
(compilation-next-error-function): If the "file name" in file struct is
actually a buffer, use it rather than compilation-find-file's result.
(compilation-get-file-structure): save-match-data around the call to
compilation-parse-errors-filename-function. Only call
command-line-normalize-file-name when `filename' is a string.
Diffstat (limited to 'lisp/emacs-lisp/trace.el')
0 files changed, 0 insertions, 0 deletions