aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes
diff options
context:
space:
mode:
authorRoland McGrath <[email protected]>1992-09-29 23:59:26 +0000
committerRoland McGrath <[email protected]>1992-09-29 23:59:26 +0000
commit3f9e2e5121d21175914ec838e90f42c337a74dcf (patch)
treec388ee636ed8fe78f39e2bf58808bf4ec534ca32 /lisp/progmodes
parentc70e8d27e5c1f57e9867b416f6e5a4b5d6dc8794 (diff)
(compilation-parse-errors): When we reach FIND-AT-LEAST errors, keep going
until we have seen all the consecutive errors in the same file.
Diffstat (limited to 'lisp/progmodes')
-rw-r--r--lisp/progmodes/compile.el9
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!")))