From 05ea13e91083c782a7bb42d5c50b230b3c294a34 Mon Sep 17 00:00:00 2001 From: Robin Templeton Date: Mon, 4 Aug 2014 23:17:21 -0400 Subject: degenerate let forms (Best-ability ChangeLog annotation added by Christine Lemmer-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 file changed, 8 insertions(+), 6 deletions(-) diff --git a/module/language/elisp/compile-tree-il.scm b/module/language/elisp/compile-tree-il.scm index 9533e916d..29c769dd5 100644 --- a/module/language/elisp/compile-tree-il.scm +++ b/module/language/elisp/compile-tree-il.scm @@ -590,12 +590,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)) -- cgit v1.2.3