diff options
-rw-r--r-- | lisp/progmodes/compile.el | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 29290527cb..39b62179b7 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -942,9 +942,16 @@ See variable `compilation-parse-errors-function' for the interface it uses." (cons (cons (point-marker) (cons filename linenum)) compilation-error-list)))) - (setq compilation-num-errors-found (1+ compilation-num-errors-found)) + (setq compilation-num-errors-found + (1+ compilation-num-errors-found)) (and find-at-least (>= compilation-num-errors-found find-at-least) ;; We have found as many new errors as the user wants. + ;; We continue to parse until we have seen all + ;; the consecutive errors in the same file, + ;; so the error positions will be recorded as markers + ;; in this buffer that might change. + (not (equal (car (cdr (nth 0 compilation-error-list))) + (car (cdr (nth 1 compilation-error-list))))) (setq found-desired t))) (t (error "compilation-parse-errors: impossible regexp match!"))) |