summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2009-01-16 13:43:58 +0000
committerRich Hickey <richhickey@gmail.com>2009-01-16 13:43:58 +0000
commit50e4a0758da3a9a5a9d4f44358dab4e56d466de9 (patch)
tree61cc02048acd685ce5831291bb0922f8b83e35d3 /src
parent8f0a24409ce9e905222b03377175533e1cab3be6 (diff)
lift loops from expression contexts
Diffstat (limited to 'src')
-rw-r--r--src/jvm/clojure/lang/Compiler.java3
1 files changed, 2 insertions, 1 deletions
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(),