Mercurial > emacs
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 |