~ chicken-core (chicken-5) d53d269a408c0d701bf3309d7ddee9b18c417d0e
commit d53d269a408c0d701bf3309d7ddee9b18c417d0e
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Sun May 3 09:25:48 2020 +1200
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Sun May 3 12:45:33 2020 +0200
Fix potential invalid argument error in `##sys#decompose-import'
This fixes a small bug in `##sys#decompose-import' where "spec" (which
is a list) is passed to the `warn' procedure rather than "name" (which
is a symbol, as expected). This leads to an invalid argument error
arising from `symbol->string', e.g.
$ echo '(import (only (rename scheme (car first)) car))' | csc -
Error: (symbol->string) during expansion of (import ...) - bad
argument type - not a symbol: (rename scheme (car first))
Signed-off-by: felix <felix@call-with-current-continuation.org>
diff --git a/modules.scm b/modules.scm
index a199f9e7..beb52eaf 100644
--- a/modules.scm
+++ b/modules.scm
@@ -638,7 +638,7 @@
(cond ((null? ids)
(for-each
(lambda (id)
- (warn "imported identifier doesn't exist" spec id))
+ (warn "imported identifier doesn't exist" name id))
missing)
(values name lib `(,head ,spec ,@imports) v s impi))
((assq (car ids) impv) =>
Trap