aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoland McGrath1993-04-07 18:26:27 +0000
committerRoland McGrath1993-04-07 18:26:27 +0000
commitd4035a267df4fdd37219971fe4f28970916b14fb (patch)
treec46540c9e3a28d5fd948e32139b8ea74442fd48c
parent9ffaad2e3849c3a7800db901ce9eeee778c7af07 (diff)
downloademacs-d4035a267df4fdd37219971fe4f28970916b14fb.tar.gz
emacs-d4035a267df4fdd37219971fe4f28970916b14fb.zip
(compilation-error-regexp-alist): Fixed MIPS CC regexp to match file
names longer than one char. (compilation-parse-errors): Error if compilation-error-regexp-alist is nil.
-rw-r--r--lisp/progmodes/compile.el10
1 files changed, 6 insertions, 4 deletions
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 4ab8a8549ec..ec2ef2b7266 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -128,7 +128,7 @@ or when it is used with \\[next-error] or \\[compile-goto-error].")
128 ;; "foo.f", line 3: Error: syntax error near end of statement 128 ;; "foo.f", line 3: Error: syntax error near end of statement
129 ;; or MIPS RISC CC - the one distributed with Ultrix: 129 ;; or MIPS RISC CC - the one distributed with Ultrix:
130 ;; ccom: Error: foo.c, line 2: syntax error 130 ;; ccom: Error: foo.c, line 2: syntax error
131 ("\\b\"?\\([^,\" \n\t]\\)\"?, line \\([0-9]+\\):" 1 2) 131 ("\\b\"?\\([^,\" \n\t]+\\)\"?, line \\([0-9]+\\):" 1 2)
132 132
133 ;; IBM AIX PS/2 C version 1.1: 133 ;; IBM AIX PS/2 C version 1.1:
134 ;; ****** Error number 140 in line 8 of file errors.c ****** 134 ;; ****** Error number 140 in line 8 of file errors.c ******
@@ -883,7 +883,8 @@ See variable `compilation-parse-errors-function' for the interface it uses."
883 ;; Compile an alist (IDX FILE LINE), where IDX is the number of the 883 ;; Compile an alist (IDX FILE LINE), where IDX is the number of the
884 ;; subexpression for an entire error-regexp, and FILE and LINE are the 884 ;; subexpression for an entire error-regexp, and FILE and LINE are the
885 ;; numbers for the subexpressions giving the file name and line number. 885 ;; numbers for the subexpressions giving the file name and line number.
886 (setq alist compilation-error-regexp-alist 886 (setq alist (or compilation-error-regexp-alist
887 (error "compilation-error-regexp-alist is empty!"))
887 subexpr (1+ error-group)) 888 subexpr (1+ error-group))
888 (while alist 889 (while alist
889 (setq error-regexp-groups (cons (list subexpr 890 (setq error-regexp-groups (cons (list subexpr
@@ -939,9 +940,10 @@ See variable `compilation-parse-errors-function' for the interface it uses."
939 (while (and alist 940 (while (and alist
940 (null (match-beginning (car (car alist))))) 941 (null (match-beginning (car (car alist)))))
941 (setq alist (cdr alist))) 942 (setq alist (cdr alist)))
943 (setq losing-data (match-data))
942 (if alist 944 (if alist
943 (setq alist (car alist)) 945 (setq alist (car alist))
944 (error "compilation-parse-errors: Impossible regexp match!")) 946 (error "compilation-parse-errors: impossible regexp match!"))
945 947
946 ;; Extract the file name and line number from the error message. 948 ;; Extract the file name and line number from the error message.
947 (let ((beginning-of-match (match-beginning 0)) ;looking-at nukes 949 (let ((beginning-of-match (match-beginning 0)) ;looking-at nukes
@@ -991,7 +993,7 @@ See variable `compilation-parse-errors-function' for the interface it uses."
991 ) 993 )
992 ) 994 )
993 (t 995 (t
994 (error "compilation-parse-errors: impossible regexp match!"))) 996 (error "compilation-parse-errors: known groups didn't match!")))
995 997
996 (message "Parsing error messages...%d (%d%% of buffer)" 998 (message "Parsing error messages...%d (%d%% of buffer)"
997 compilation-num-errors-found 999 compilation-num-errors-found