1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-14 09:39:42 +00:00

(compilation-parse-errors-filename-function):

New variable.
(compilation-parse-errors): Use it.
This commit is contained in:
Gerd Moellmann 2001-10-25 07:47:48 +00:00
parent 5a2e524f26
commit e335e1949d

View File

@ -1,6 +1,7 @@
;;; compile.el --- run compiler as inferior of Emacs, parse error messages
;; Copyright (C) 1985, 86, 87, 93, 94, 95, 96, 97, 98, 1999, 2001 Free Software Foundation, Inc.
;; Copyright (C) 1985, 86, 87, 93, 94, 95, 96, 97, 98, 1999, 2001
;; Free Software Foundation, Inc.
;; Author: Roland McGrath <roland@gnu.org>
;; Maintainer: FSF
@ -133,6 +134,11 @@ It should read in the source files which have errors and set
`compilation-error-list' to a list with an element for each error message
found. See that variable for more info.")
(defvar compilation-parse-errors-filename-function nil
"Function to call to post-process filenames while parsing error messages.
It takes one arg FILENAME which is the name of a file as found
in the compilation output, and should return a transformed file name.")
;;;###autoload
(defvar compilation-process-setup-function nil
"*Function to call to customize the compilation process.
@ -1944,6 +1950,13 @@ An error message with no file name and no file name has been seen earlier"))
(setq filename
(concat comint-file-name-prefix filename)))
;; If compilation-parse-errors-filename-function is
;; defined, use it to process the filename.
(when compilation-parse-errors-filename-function
(setq filename
(funcall compilation-parse-errors-filename-function
filename)))
;; Some compilers (e.g. Sun's java compiler, reportedly)
;; produce bogus file names like "./bar//foo.c" for file
;; "bar/foo.c"; expand-file-name will collapse these into