From: Chong Yidong Date: Mon, 9 May 2011 01:24:00 +0000 (-0400) Subject: Various fixes to compilation-error-regexp-alist-alist. X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~61 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4c44026c141100262a535eaa1ca62bf11fce9ece;p=emacs.git Various fixes to compilation-error-regexp-alist-alist. * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Fix the ant regexp to handle end-line and end-column info from jikes. Re-introduce maven regexp. Give the ruby-Test::Unit regexp a higher priority to avoid clobbering by gnu. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 60b462e106b..a04afa93930 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2011-05-09 Chong Yidong + + * progmodes/compile.el (compilation-error-regexp-alist-alist): Fix + the ant regexp to handle end-line and end-column info from jikes. + Re-introduce maven regexp. Give the ruby-Test::Unit regexp a + higher priority to avoid clobbering by gnu. + 2011-05-08 Chong Yidong * cus-face.el (custom-declare-face): Call custom-theme-recalc-face diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 830de7d6244..60ad7cb0e9e 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -126,6 +126,9 @@ and a string describing how the process finished.") (defvar compilation-num-errors-found) +;; If you make any changes to `compilation-error-regexp-alist-alist', +;; be sure to run the ERT test in test/automated/compile-tests.el. + (defvar compilation-error-regexp-alist-alist '((absoft "^\\(?:[Ee]rror on \\|[Ww]arning on\\( \\)\\)?[Ll]ine[ \t]+\\([0-9]+\\)[ \t]+\ @@ -138,8 +141,8 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) " in line \\([0-9]+\\) of file \\([^ \n]+[^. \n]\\)\\.? " 2 1) (ant - "^[ \t]*\\[[^] \n]+\\][ \t]*\\([^: \n]+\\):\\([0-9]+\\):\\(?:\\([0-9]+\\):[0-9]+:[0-9]+:\\)?\ -\\( warning\\)?" 1 2 3 (4)) + "^[ \t]*\\[[^] \n]+\\][ \t]*\\([^: \n]+\\):\\([0-9]+\\):\\(?:\\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\):\\)?\ +\\( warning\\)?" 1 (2 . 4) (3 . 5) (4)) (bash "^\\([^: \n\t]+\\): line \\([0-9]+\\):" 1 2) @@ -194,6 +197,14 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) (jikes-file "^\\(?:Found\\|Issued\\) .* compiling \"\\(.+\\)\":$" 1 nil nil 0) + + + ;; This used to be pathologically slow on long lines (Bug#3441), + ;; due to matching filenames via \\(.*?\\). This might be faster. + (maven + ;; Maven is a popular free software build tool for Java. + "\\([0-9]*[^0-9\n]\\(?:[^\n :]\\| [^-/\n]\\|:[^ \n]\\)*?\\):\\[\\([0-9]+\\),\\([0-9]+\\)\\] " 1 2 3) + (jikes-line "^ *\\([0-9]+\\)\\.[ \t]+.*\n +\\(<-*>\n\\*\\*\\* \\(?:Error\\|Warnin\\(g\\)\\)\\)" nil 1 nil 2 0 @@ -205,6 +216,9 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) \\([0-9]+\\)\\(?::\\([0-9]+\\)\\)?\\(?:\\(:\\)\\|\\(,\\|$\\)\\)?" 1 2 3 (4 . 5)) + (ruby-Test::Unit + "^[\t ]*\\[\\([^\(].*\\):\\([1-9][0-9]*\\)\\(\\]\\)?:in " 1 2) + (gnu ;; The first line matches the program name for @@ -257,11 +271,6 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) (end-of-line) nil))) - ;; This regexp is pathologically slow on long lines (Bug#3441). - ;; (maven - ;; ;; Maven is a popular build tool for Java. Maven is Free Software. - ;; "\\(.*?\\):\\[\\([0-9]+\\),\\([0-9]+\\)\\]" 1 2 3) - ;; Should be lint-1, lint-2 (SysV lint) (mips-1 " (\\([0-9]+\\)) in \\([^ \n]+\\)" 2 1) @@ -302,9 +311,6 @@ during global destruction\\.$\\)" 1 2) "\\(?:Parse\\|Fatal\\) error: \\(.*\\) in \\(.*\\) on line \\([0-9]+\\)" 2 3 nil nil) - (ruby-Test::Unit - "[\t ]*\\[\\([^\(].*\\):\\([1-9][0-9]*\\)\\(\\]\\)?:$" 1 2) - (rxp "^\\(?:Error\\|Warnin\\(g\\)\\):.*\n.* line \\([0-9]+\\) char\ \\([0-9]+\\) of file://\\(.+\\)"