Report errors in the member file.

This commit is contained in:
Dominik Pantůček 2023-03-19 21:49:54 +01:00
parent 9a71545e3e
commit 39554768b3
4 changed files with 76 additions and 15 deletions

View file

@ -39,6 +39,8 @@
member-existing?
member-format
member-suspended-months
member-source
print-member-source
member-record-tests!
)
@ -50,7 +52,9 @@
period
testing
month
member-file)
member-file
listing
ansi)
;; Prints human-readable information
(define (print-member-record-info mr)
@ -170,6 +174,26 @@
0))
0))
;; Returns source (including error) information
(define (member-source mr)
(mr-ref mr member-file-error-symbol))
;; Nicely prints the member source with any errors recorded.
(define (print-member-source mr)
(let* ((ms (member-source mr))
(file-name (car ms))
(lines (cadr ms))
(hls (cddr ms)))
(print file-name ":")
(print-source-listing
lines
hls
-1
a:error a:default
"" "" ; Not used
"..." ; Not used
)))
;; Performs module self-tests.
(define (member-record-tests!)
(run-tests