guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] 26/36: degenerate let forms


From: Christopher Allan Webber
Subject: [Guile-commits] 26/36: degenerate let forms
Date: Fri, 25 Mar 2016 20:04:02 +0000

cwebber pushed a commit to branch wip-elisp
in repository guile.

commit 4c6ef2b4cb05a328f5b832afa4b5e828e0993b2b
Author: Robin Templeton <address@hidden>
Date:   Mon Aug 4 23:17:21 2014 -0400

    degenerate let forms
    
    (Best-ability ChangeLog annotation added by Christopher Allan Webber.)
    
    * module/language/elisp/compile-tree-il.scm (let): Conditionally invoke
      make-body within make-dynlet or just on its own depending on whether
      or not dynamic? is null?.
---
 module/language/elisp/compile-tree-il.scm |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/module/language/elisp/compile-tree-il.scm 
b/module/language/elisp/compile-tree-il.scm
index 66247a4..702272e 100644
--- a/module/language/elisp/compile-tree-il.scm
+++ b/module/language/elisp/compile-tree-il.scm
@@ -586,12 +586,14 @@
               loc
               (map car dynamic)
               (if (null? lexical)
-                  (make-dynlet loc
-                               (map (compose (cut make-const loc <>) car)
-                                    dynamic)
-                               (map (compose compile-expr cdr)
-                                    dynamic)
-                               (make-body))
+                  (if (null? dynamic)
+                      (make-body)
+                      (make-dynlet loc
+                                   (map (compose (cut make-const loc <>) car)
+                                        dynamic)
+                                   (map (compose compile-expr cdr)
+                                        dynamic)
+                                   (make-body)))
                   (let* ((lexical-syms (map (lambda (el) (gensym)) lexical))
                          (dynamic-syms (map (lambda (el) (gensym)) dynamic))
                          (all-syms (append lexical-syms dynamic-syms))



reply via email to

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