aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-05-02 15:54:26 +0000
committerdos-reis <gdr@axiomatics.org>2010-05-02 15:54:26 +0000
commit41cb0a1a53d9022c9461c6c9137329a252b455dd (patch)
treec1e52f67f72cdd6241ee3b21d56992113de4f64d /src/interp
parent86deb7d7804d04ee01aa0d8b3a27d8293c0a839f (diff)
downloadopen-axiom-41cb0a1a53d9022c9461c6c9137329a252b455dd.tar.gz
* interp/compiler.boot (canReturn): Tidy.
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/compiler.boot6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 2e0beda4..3837ea58 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1234,13 +1234,11 @@ canReturn(expr,level,exitCount,ValueFlag) == --SPAD: exit and friends
pp expr
canReturn(a,level,exitCount,nil) or canReturn(b,level,exitCount,ValueFlag)
or canReturn(c,level,exitCount,ValueFlag)
- --now we have an ordinary form
- atom op => and/[canReturn(u,level,exitCount,ValueFlag) for u in expr]
- op is ["XLAM",args,bods] =>
- and/[canReturn(u,level,exitCount,ValueFlag) for u in expr]
op = "LET" or op = "LET*" =>
or/[canReturn(init,level,exitCount,false) for [.,init] in second expr]
or canReturn(third expr,level,exitCount,ValueFlag)
+ --now we have an ordinary form
+ atom op => and/[canReturn(u,level,exitCount,ValueFlag) for u in expr]
systemErrorHere ['"canReturn",expr] --for the time being
++ We are compiling a conditional expression, type check and generate