comparison lisp/progmodes/compile.el @ 40902:95bf86aa6120

(compile-goto-error): Fix previous change in the case where subsequent errors have not been parsed yet because they are in a different source file.
author Richard M. Stallman <rms@gnu.org>
date Sat, 10 Nov 2001 23:19:43 +0000
parents c3b8e6d5266f
children 5dd37d315c33
comparison
equal deleted inserted replaced
40901:f2a856e8a39c 40902:95bf86aa6120
1423 ;; The marker can point nowhere if we previously 1423 ;; The marker can point nowhere if we previously
1424 ;; failed to find the relevant file. See 1424 ;; failed to find the relevant file. See
1425 ;; compilation-next-error-locus. 1425 ;; compilation-next-error-locus.
1426 (or (null (marker-buffer (caar compilation-error-list))) 1426 (or (null (marker-buffer (caar compilation-error-list)))
1427 (and (> (point) (caar compilation-error-list)) 1427 (and (> (point) (caar compilation-error-list))
1428 (cdr compilation-error-list) 1428 (>= (point)
1429 ;; Don't skip too far: the text between two errors 1429 ;; Don't skip too far: the text between
1430 ;; belongs to the first. Especially since this 1430 ;; two errors belongs to the first. This
1431 ;; in-between text might be other errors on the same 1431 ;; in-between text might be other errors
1432 ;; line (see compilation-skip-to-next-location). 1432 ;; on the same line (see
1433 (>= (point) (caar (cdr compilation-error-list)))))) 1433 ;; compilation-skip-to-next-location).
1434 (if (null (cdr compilation-error-list))
1435 compilation-parsing-end
1436 (caar (cdr compilation-error-list)))))))
1434 (setq compilation-error-list (cdr compilation-error-list))) 1437 (setq compilation-error-list (cdr compilation-error-list)))
1435 (or compilation-error-list 1438 (or compilation-error-list
1436 (error "No error to go to"))) 1439 (error "No error to go to")))
1437 (select-window (posn-window (event-end event))) 1440 (select-window (posn-window (event-end event)))
1438 1441
1460 ;; The marker can point nowhere if we previously 1463 ;; The marker can point nowhere if we previously
1461 ;; failed to find the relevant file. See 1464 ;; failed to find the relevant file. See
1462 ;; compilation-next-error-locus. 1465 ;; compilation-next-error-locus.
1463 (or (null (marker-buffer (caar compilation-error-list))) 1466 (or (null (marker-buffer (caar compilation-error-list)))
1464 (and (> (point) (caar compilation-error-list)) 1467 (and (> (point) (caar compilation-error-list))
1465 (cdr compilation-error-list) 1468 (>= (point)
1466 (>= (point) (caar (cdr compilation-error-list)))))) 1469 ;; Don't skip too far: the text between
1470 ;; two errors belongs to the first. This
1471 ;; in-between text might be other errors
1472 ;; on the same line (see
1473 ;; compilation-skip-to-next-location).
1474 (if (null (cdr compilation-error-list))
1475 compilation-parsing-end
1476 (caar (cdr compilation-error-list)))))))
1467 (setq compilation-error-list (cdr compilation-error-list))) 1477 (setq compilation-error-list (cdr compilation-error-list)))
1468 1478
1469 (push-mark) 1479 (push-mark)
1470 (next-error 1)) 1480 (next-error 1))
1471 1481