mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-17 11:10:18 +02:00
a number of small compilation fixes
* ice-9/boot-9.scm: Allow a compiled load of posix, networking, and deprecated files. * module/language/scheme/translate.scm (lookup-transformer): Lookup the sc-macro by value, not by name. Works around the fact that compiled macros don't have names, which is probably a bug. * module/system/base/compile.scm (syntax-error) (call-with-compile-error-catch): Throw and catch a key that's not used by anyone else. Write error messages to the error port. * module/system/repl/repl.scm (default-catch-handler): Call display-error with the correct number of arguments. * module/system/vm/frame.scm (frame-program-name): Guard against unbound variables. * ice-9/optargs.scm (let-keywords-template): Don't unquote in a helper procedure. A bit irritating. I suppose we should fix the modules + syncase situation at some point, and then switch to syncase.
This commit is contained in:
parent
5ba9d84978
commit
1e6ebf54db
6 changed files with 20 additions and 16 deletions
|
@ -25,6 +25,7 @@
|
|||
#:use-module (system il ghil)
|
||||
#:use-module (system il inline)
|
||||
#:use-module (ice-9 receive)
|
||||
#:use-module ((ice-9 syncase) #:select (sc-macro))
|
||||
#:use-module ((system base compile) #:select (syntax-error))
|
||||
#:export (translate))
|
||||
|
||||
|
@ -63,7 +64,7 @@
|
|||
(lambda (env loc exp)
|
||||
(retrans (apply (defmacro-transformer val) (cdr exp)))))
|
||||
|
||||
((and (macro? val) (eq? (macro-name val) 'sc-macro))
|
||||
((eq? val sc-macro)
|
||||
;; syncase!
|
||||
(let* ((the-syncase-module (resolve-module '(ice-9 syncase)))
|
||||
(eec (module-ref the-syncase-module 'expansion-eval-closure))
|
||||
|
@ -92,7 +93,7 @@
|
|||
;; FIXME: lexical/module overrides of forbidden primitives
|
||||
((memq head *forbidden-primitives*)
|
||||
(syntax-error l (format #f "`~a' is forbidden" head)
|
||||
(cons head tail)))
|
||||
(cons head tail)))
|
||||
|
||||
(else
|
||||
(let ((tail (map retrans tail)))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue