From 83302275cd1250826833773f2e04b2b88046aad3 Mon Sep 17 00:00:00 2001
From: Jose Antonio Ortega Ruiz <jao@gnu.org>
Date: Thu, 22 Jul 2010 00:50:59 +0200
Subject: Guile: bug fix in macro's autodoc.

---
 scheme/guile/geiser/doc.scm | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

(limited to 'scheme')

diff --git a/scheme/guile/geiser/doc.scm b/scheme/guile/geiser/doc.scm
index 4bd063b..8c00e22 100644
--- a/scheme/guile/geiser/doc.scm
+++ b/scheme/guile/geiser/doc.scm
@@ -83,14 +83,13 @@
           (else #f))))
 
 (define (macro-args tf)
-  (cond ((procedure-property tf 'patterns) =>
-         (lambda (pats)
-           (filter identity
-                   (map (lambda (p)
-                          (and (every symbol? p)
-                               (list (cons 'required p))))
-                        pats))))
-        (else default-macro-args)))
+  (let* ((pats (procedure-property tf 'patterns))
+         (args (and pats (filter identity
+                                 (map (lambda (p)
+                                        (and (every symbol? p)
+                                             (list (cons 'required p))))
+                                      pats)))))
+    (or (and args (not (null? args)) args) default-macro-args)))
 
 (define (arity->args art)
   (define (gen-arg-names count)
-- 
cgit v1.2.3