From 0ab31e4a9ffda94e1e741f9a4b0df5aff3c62570 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 19 Jul 2006 19:20:11 +0000 Subject: [PATCH] (compilation-error-regexp-alist-alist) : Try to rule out false positives due to time stamps. (compilation-mode-font-lock-keywords): Remove rules made redundant because of the above change. Add `segmentation fault' to the known and highlighted compilation termination messages. --- lisp/ChangeLog | 8 ++++++++ lisp/progmodes/compile.el | 20 ++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 5d661248832..b99fffcf5db 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2006-07-19 Stefan Monnier + + * progmodes/compile.el (compilation-error-regexp-alist-alist) : + Try to rule out false positives due to time stamps. + (compilation-mode-font-lock-keywords): Remove rules made redundant + because of the above change. Add `segmentation fault' to the known and + highlighted compilation termination messages. + 2006-07-19 Kim F. Storm * progmodes/grep.el (grep-find-ignored-directories): diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 525c462d4eb..e8c09113d39 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -226,14 +226,19 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) ;; I have no idea what this first line is supposed to match, but it ;; makes things ambiguous with output such as "foo:344:50:blabla" since ;; the "foo" part can match this first line (in which case the file - ;; name as "344"). To avoid this, we disallow filenames exclusively - ;; composed of digits. --Stef + ;; name as "344"). To avoid this, the second line disallows filenames + ;; exclusively composed of digits. --Stef + ;; Similarly, we get lots of false positives with messages including + ;; times of the form "HH:MM:SS" where MM is taken as a line number, so + ;; the last line tries to rule out message where the info after the + ;; line number starts with "SS". --Stef "^\\(?:[[:alpha:]][-[:alnum:].]+: ?\\)?\ \\([0-9]*[^0-9\n].*?\\): ?\ \\([0-9]+\\)\\(?:\\([.:]\\)\\([0-9]+\\)\\)?\ \\(?:-\\([0-9]+\\)?\\(?:\\3\\([0-9]+\\)\\)?\\)?:\ \\(?: *\\(\\(?:Future\\|Runtime\\)?[Ww]arning\\|W:\\)\\|\ - *\\([Ii]nfo\\(?:\\>\\|rmationa?l?\\)\\|I:\\|instantiated from\\)\\)?" + *\\([Ii]nfo\\(?:\\>\\|rmationa?l?\\)\\|I:\\|instantiated from\\)\\|\ +\[0-9]?\\(?:[^0-9\n]\\|$\\)\\|[0-9][0-9][0-9]\\)" 1 (2 . 5) (4 . 6) (7 . 8)) (lcc @@ -405,12 +410,7 @@ you may also want to change `compilation-page-delimiter'.") "Value of `page-delimiter' in Compilation mode.") (defvar compilation-mode-font-lock-keywords - '(;; Don't highlight this as a compilation message. - ("^Compilation started at.*" - (0 '(face nil message nil help-echo nil mouse-face nil) t)) - ("^Compiling file .*" - (0 '(face nil message nil help-echo nil mouse-face nil) t)) - ;; configure output lines. + '(;; configure output lines. ("^[Cc]hecking \\(?:[Ff]or \\|[Ii]f \\|[Ww]hether \\(?:to \\)?\\)?\\(.+\\)\\.\\.\\. *\\(?:(cached) *\\)?\\(\\(yes\\(?: .+\\)?\\)\\|no\\|\\(.*\\)\\)$" (1 font-lock-variable-name-face) (2 (compilation-face '(4 . 3)))) @@ -421,7 +421,7 @@ you may also want to change `compilation-page-delimiter'.") ("^Compilation \\(finished\\).*" (0 '(face nil message nil help-echo nil mouse-face nil) t) (1 compilation-info-face)) - ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?.*" + ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\|segmentation fault\\)\\(?:.*with code \\([0-9]+\\)\\)?.*" (0 '(face nil message nil help-echo nil mouse-face nil) t) (1 compilation-error-face) (2 compilation-error-face nil t))) -- 2.39.2