summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ice-9/ChangeLog5
-rw-r--r--ice-9/session.scm64
2 files changed, 35 insertions, 34 deletions
diff --git a/ice-9/ChangeLog b/ice-9/ChangeLog
index 74d41b334..2703c0ee5 100644
--- a/ice-9/ChangeLog
+++ b/ice-9/ChangeLog
@@ -1,3 +1,8 @@
+2000-12-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
+
+ * session.scm (apropos): Completed the last patch, which did only
+ half the job. Thanks to Dale P. Smith.
+
2000-12-12 Dirk Herrmann <D.Herrmann@tu-bs.de>
* session.scm (apropos, apropos-fold): There are no weak bindings
diff --git a/ice-9/session.scm b/ice-9/session.scm
index a8d2878db..1148bbcf8 100644
--- a/ice-9/session.scm
+++ b/ice-9/session.scm
@@ -198,40 +198,36 @@ where OPTIONSET is one of debug, read, eval, print
(let* ((builtin (or (eq? module the-scm-module)
(eq? module the-root-module)))
(name (module-name module))
- (obarrays (if builtin
- (list (builtin-bindings))
- (list (module-obarray module))))
- (get-refs (if builtin
- (list id id)
- (list variable-ref)))
- )
- (for-each
- (lambda (obarray get-ref)
- (array-for-each
- (lambda (oblist)
- (for-each
- (lambda (x)
- (cond ((regexp-exec match (symbol->string (car x)))
- (display name)
- (display ": ")
- (display (car x))
- (cond ((procedure? (get-ref (cdr x)))
- (display separator)
- (display (get-ref (cdr x))))
- (value
- (display separator)
- (display (get-ref (cdr x)))))
- (if (and shadow
- (not (eq? (module-ref module
- (car x))
- (module-ref (current-module)
- (car x)))))
- (display " shadowed"))
- (newline)
- )))
- oblist))
- obarray))
- obarrays get-refs)))
+ (obarray (if builtin
+ (builtin-bindings)
+ (module-obarray module)))
+ (get-ref (if builtin
+ id
+ variable-ref)))
+ (array-for-each
+ (lambda (oblist)
+ (for-each
+ (lambda (x)
+ (cond ((regexp-exec match (symbol->string (car x)))
+ (display name)
+ (display ": ")
+ (display (car x))
+ (cond ((procedure? (get-ref (cdr x)))
+ (display separator)
+ (display (get-ref (cdr x))))
+ (value
+ (display separator)
+ (display (get-ref (cdr x)))))
+ (if (and shadow
+ (not (eq? (module-ref module
+ (car x))
+ (module-ref (current-module)
+ (car x)))))
+ (display " shadowed"))
+ (newline)
+ )))
+ oblist))
+ obarray)))
modules))))
(define-public (apropos-internal rgx)