Speed up 'msft' and 'watcom' compilation error regexps
They have similar structure, and both suffer from being able to match leading spaces in multiple ways which leads to bad performance when backtracking (bug#39595). * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist): Improved 'msft' and 'watcom' regexps.
This commit is contained in:
@@ -221,7 +221,7 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1))
|
||||
;; considered before EDG.
|
||||
;; The message may be a "warning", "error", or "fatal error" with
|
||||
;; an error code, or "see declaration of" without an error code.
|
||||
"^ *\\([0-9]+>\\)?\\(\\(?:[a-zA-Z]:\\)?[^:(\t\n]+\\)(\\([0-9]+\\)) ?\
|
||||
"^ *\\([0-9]+>\\)?\\(\\(?:[a-zA-Z]:\\)?[^ :(\t\n][^:(\t\n]*\\)(\\([0-9]+\\)) ?\
|
||||
: \\(?:see declaration\\|\\(?:warnin\\(g\\)\\|[a-z ]+\\) C[0-9]+:\\)"
|
||||
2 3 nil (4))
|
||||
|
||||
@@ -455,7 +455,7 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?"
|
||||
"^\\([^, \n\t]+\\), line \\([0-9]+\\), char \\([0-9]+\\)[:., (-]" 1 2 3)
|
||||
|
||||
(watcom
|
||||
"^[ \t]*\\(\\(?:[a-zA-Z]:\\)?[^:(\t\n]+\\)(\\([0-9]+\\)): ?\
|
||||
"^[ \t]*\\(\\(?:[a-zA-Z]:\\)?[^ :(\t\n][^:(\t\n]*\\)(\\([0-9]+\\)): ?\
|
||||
\\(?:\\(Error! E[0-9]+\\)\\|\\(Warning! W[0-9]+\\)\\):"
|
||||
1 2 nil (4))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user