emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/geiser-gambit 53cfca8 11/34: fix a problem with non-proced


From: Philip Kaludercic
Subject: [nongnu] elpa/geiser-gambit 53cfca8 11/34: fix a problem with non-procedures symbols from ##symbol-table completion
Date: Sun, 1 Aug 2021 18:27:16 -0400 (EDT)

branch: elpa/geiser-gambit
commit 53cfca80a35254fc433ef37eeb38638389041a07
Author: mathieu2em <math.per@hotmail.com>
Commit: mathieu2em <math.per@hotmail.com>

    fix a problem with non-procedures symbols from ##symbol-table completion
---
 scheme/gambit/geiser/gambit.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/scheme/gambit/geiser/gambit.scm b/scheme/gambit/geiser/gambit.scm
index b13d5e3..ee307f3 100644
--- a/scheme/gambit/geiser/gambit.scm
+++ b/scheme/gambit/geiser/gambit.scm
@@ -125,18 +125,22 @@
                  (symbols-list '()))
         (if (< i sym-len)
             (let ((sym (vector-ref sym-tab i)))
+              (pp sym)
               (loop (+ i 1)
                     (if (symbol? sym)
-                        (let loop2 ((sym-list (if (##string-prefix? prefix sym)
+                        (let loop2 ((sym-list (if (and (##string-prefix? 
prefix sym)
+                                                       (procedure? 
(##global-var-ref (##make-global-var sym))))
                                                   (cons (symbol->string sym) 
symbols-list)
                                                   symbols-list))
                                     (vect sym))
                           (let ((sym2 (##vector-ref vect 2)))
+                            (pp sym2)
                             (if (symbol? sym2)
-                                (if (##string-prefix? prefix sym2)
+                                (if (and (##string-prefix? prefix sym2)
+                                         (procedure? (##global-var-ref 
(##make-global-var sym))))
                                     (loop2 (cons (symbol->string sym2) 
sym-list) sym2)
                                     (loop2 sym-list sym2))
-                                sym-list)))
+                                  sym-list)))
                         symbols-list)))
             symbols-list))))
   



reply via email to

[Prev in Thread] Current Thread [Next in Thread]