From 50e4a0758da3a9a5a9d4f44358dab4e56d466de9 Mon Sep 17 00:00:00 2001 From: Rich Hickey Date: Fri, 16 Jan 2009 13:43:58 +0000 Subject: lift loops from expression contexts --- src/jvm/clojure/lang/Compiler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java index cee50024..5ef13a89 100644 --- a/src/jvm/clojure/lang/Compiler.java +++ b/src/jvm/clojure/lang/Compiler.java @@ -3721,7 +3721,8 @@ public static class LetExpr implements Expr{ ISeq body = RT.rest(RT.rest(form)); - if(context == C.EVAL) + if(context == C.EVAL + || (context == C.EXPRESSION && isLoop)) return analyze(context, RT.list(RT.list(FN, PersistentVector.EMPTY, form))); IPersistentMap dynamicBindings = RT.map(LOCAL_ENV, LOCAL_ENV.get(), -- cgit v1.2.3-70-g09d2