summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2009-04-26 11:35:23 +0200
committerAndy Wingo <wingo@pobox.com>2009-04-26 11:35:23 +0200
commitf176c584d0513f4dea82329011f81f114f3a8ec9 (patch)
tree39c91ed1bfffbb097584a6e192a03cc6b17865f4
parent39f30ea29df55eda3f92d0cf68f1f89282a1418e (diff)
downloadguile-f176c584d0513f4dea82329011f81f114f3a8ec9.tar.gz
fix module-bound?, start compiling srfi-18.scm
* module/Makefile.am (SRFI_SOURCES): Let's finally start compiling srfi-18.scm, what the hell. * module/ice-9/boot-9.scm (module-bound?): module-bound? was returning true if (not (variable-bound? (module-local-variable m v))), but (variable-bound? (module-variable m v)). Fix to cut out on the first variable it finds. This bug has been there for a while now.
-rw-r--r--module/Makefile.am4
-rw-r--r--module/ice-9/boot-9.scm4
2 files changed, 5 insertions, 3 deletions
diff --git a/module/Makefile.am b/module/Makefile.am
index 28372c7e7..baa91b9af 100644
--- a/module/Makefile.am
+++ b/module/Makefile.am
@@ -189,6 +189,7 @@ SRFI_SOURCES = \
srfi/srfi-14.scm \
srfi/srfi-16.scm \
srfi/srfi-17.scm \
+ srfi/srfi-18.scm \
srfi/srfi-19.scm \
srfi/srfi-26.scm \
srfi/srfi-31.scm \
@@ -243,5 +244,4 @@ NOCOMP_SOURCES = \
ice-9/debugging/steps.scm \
ice-9/debugging/trace.scm \
ice-9/debugging/traps.scm \
- ice-9/debugging/trc.scm \
- srfi/srfi-18.scm
+ ice-9/debugging/trc.scm
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index b9484b79c..e529e2538 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -1405,7 +1405,9 @@
;; or its uses?
;;
(define (module-bound? m v)
- (module-search module-locally-bound? m v))
+ (let ((var (module-variable m v)))
+ (and var
+ (variable-bound? var))))
;;; {Is a symbol interned in a module?}
;;;