\\(?: characters? \\([0-9]+\\)-?\\([0-9]+\\)?:\\)?\\([ \n]Warning\\(?: [0-9]+\\)?:\\)?\\)"
2 (3 . 4) (5 . 6) (7))
+ (cmake
+ "^CMake \\(?:Error\\|\\(Warning\\)\\) at \\(.*\\):\\([1-9][0-9]*\\) ([^)]+):$"
+ 2 3 nil (1))
+ (cmake-info
+ "^ \\(?: \\*\\)?\\(.*\\):\\([1-9][0-9]*\\) ([^)]+)$"
+ 1 2 nil 0)
+
(comma
"^\"\\([^,\" \n\t]+\\)\", line \\([0-9]+\\)\
\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4))
(funcall compilation-process-setup-function))
(and outwin (compilation-set-window-height outwin))
;; Start the compilation.
- (if (fboundp 'start-process)
+ (if (fboundp 'make-process)
(let ((proc
(if (eq mode t)
;; comint uses `start-file-process'.
In the former case, FILENAME may be relative or absolute.
The file-structure looks like this:
- ((FILENAME [DIR-FROM-PREV-MSG]) FMT LINE-STRUCT...)"
+ ((FILENAME [TRUE-DIRNAME]) FMT ...)
+
+TRUE-DIRNAME is the `file-truename' of DIRNAME, if given."
(or (gethash file compilation-locs)
;; File was not previously encountered, at least not in the form passed.
;; Let's normalize it and look again.
(let ((fs (compilation-get-file-structure file)))
(cl-assert (eq fs (gethash file compilation-locs)))
(cl-assert (eq fs (gethash (cons (caar fs) (cadr (car fs)))
- compilation-locs)))
+ compilation-locs)))
(maphash (lambda (k v)
(if (eq v fs) (remhash k compilation-locs)))
compilation-locs)))