1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-25 07:28:20 +00:00

Support Guile backtraces in compilation mode.

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
	Add Guile regexpses.

	* etc/compilation.txt (file): Add Guile backtrace example.

	* test/automated/compile-tests.el (compile--test-error-line):
	Grok FILE being nil.  Allows for Guile tests to pass.
	(compile-tests--test-regexps-data): Add Guile tests.
This commit is contained in:
Jan Nieuwenhuizen 2014-08-13 21:17:21 +02:00
parent 01fe01d59e
commit 8f944212cf
6 changed files with 43 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2014-08-08 Jan Nieuwenhuizen <janneke@gnu.org>
* compilation.txt (file): Add Guile backtrace example.
2014-08-09 Reuben Thomas <rrt@sc3d.org>
* PROBLEMS: Remove msdos/is_exec.c and sigaction.c.

View File

@ -261,6 +261,26 @@ file:G:/cygwin/dev/build-myproj.xml:54: Compiler Adapter 'javac' can't be found.
{standard input}:27041: Warning: end of file not at end of a line; newline inserted
* Guile backtrace, 2.0.11
symbols: guile-file, guile-line
Backtrace:
In ice-9/boot-9.scm:
157: 6 [catch #t #<catch-closure 196e3e0> ...]
In unknown file:
?: 5 [apply-smob/1 #<catch-closure 196e3e0>]
In ice-9/boot-9.scm:
63: 4 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
432: 3 [eval # #]
In unknown file:
?: 2 [eval (main (command-line)) #<directory (gud-break) 1962510>]
In /home/janneke/vc/guile/examples/gud-break.scm:
1038: 1 [main ("gud-break.scm")]
1033: 0 [stderr "~a:hello world\n" (# # #)]
* Lucid Compiler, lcc 3.x
symbol: lcc

View File

@ -1,3 +1,8 @@
2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
* progmodes/compile.el (compilation-error-regexp-alist-alist):
Add Guile regexpses.
2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
* progmodes/gud.el (guiler): New function. Starts the Guile REPL;

View File

@ -477,6 +477,8 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?"
;;
"^\\([^ \t\r\n(]+\\) (\\([0-9]+\\):\\([0-9]+\\)) "
1 2 3)
(guile-file "^In \\(.+\\):\n" 1)
(guile-line "^ *\\([0-9]+\\): *\\([0-9]+\\)" nil 1 2)
)
"Alist of values for `compilation-error-regexp-alist'.")

View File

@ -1,3 +1,9 @@
2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
* automated/compile-tests.el (compile--test-error-line): Grok FILE
being nil. Allows for Guile tests to pass.
(compile-tests--test-regexps-data): Add Guile tests.
2014-08-11 Glenn Morris <rgm@gnu.org>
* automated/data/files-bug18141.el.gz: New file.

View File

@ -190,6 +190,10 @@
1 nil 54 "G:/cygwin/dev/build-myproj.xml")
("{standard input}:27041: Warning: end of file not at end of a line; newline inserted"
1 nil 27041 "{standard input}")
;; Guile
("In foo.scm:\n" 1 nil nil "foo.scm")
(" 63:4 [call-with-prompt prompt0 ...]" 1 4 63 nil)
("1038: 1 [main (\"gud-break.scm\")]" 1 1 1038 nil)
;; lcc
("E, file.cc(35,52) Illegal operation on pointers" 1 52 35 "file.cc")
("W, file.cc(36,52) blah blah" 1 52 36 "file.cc")
@ -338,7 +342,8 @@ END-LINE, if that matched.")
(setq end-line (cdr line) line (car line)))
(and (equal (compilation--loc->col loc) col)
(equal (compilation--loc->line loc) line)
(equal (caar (compilation--loc->file-struct loc)) file)
(or (not file)
(equal (caar (compilation--loc->file-struct loc)) file))
(or (null end-col)
(equal (car (cadr (nth 2 (compilation--loc->file-struct loc))))
end-col))