diff options
author | dos-reis <gdr@axiomatics.org> | 2011-02-13 21:44:34 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-02-13 21:44:34 +0000 |
commit | c89e28b04cf567a2c0e20d186c9cd89b138957d5 (patch) | |
tree | 288dfdd655881c2cc554a64f5e8aa4a115ad46f7 /src/interp/buildom.boot | |
parent | 75976e7d252b849c10767635baf27fb98af9a1b5 (diff) | |
download | open-axiom-c89e28b04cf567a2c0e20d186c9cd89b138957d5.tar.gz |
* interp/buildom.boot (mkNewUnionFunList): Align arity of
'case' implementation to declared signature.
(mkUnionFunList): Likewise.
* interp/compiler.boot (compCase1): 'case' is now unconditionally
binary.
* interp/g-opt.boot (optCond): Fix thinko.
Diffstat (limited to 'src/interp/buildom.boot')
-rw-r--r-- | src/interp/buildom.boot | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/interp/buildom.boot b/src/interp/buildom.boot index ce70aa08..b2b5c8c3 100644 --- a/src/interp/buildom.boot +++ b/src/interp/buildom.boot @@ -351,7 +351,7 @@ mkNewUnionFunList(name,form is ["Union",:listOfEntries],e) == [[["construct",[name,type],["XLAM",["#1"],["%makepair",i,"#1"]]], ["elt",[type,name,tag],cdownFun], ["case",[$Boolean,name,tag], - ["XLAM",["#1"],['%ieq,['%head,"#1"],i]]]] + ["XLAM",["#1","#2"],['%ieq,['%head,"#1"],i]]]] for [.,tag,type] in listOfEntries for i in 0..])] where cdownFun() == gg:=gensym() @@ -413,8 +413,8 @@ mkUnionFunList(op,form is ["Union",:listOfEntries],e) == ["XLAM",["#1"],"#1"] typeFun() == p is ['%ieq,['%head,x],n] => - ["XLAM",["#1"],['%ieq,['%head,x],n]] - ["XLAM",["#1"],p] + ["XLAM",["#1","#2"],['%ieq,['%head,x],n]] + ["XLAM",["#1","#2"],p] cList:= substitute(dollarIfRepHack op,g,cList) [cList,e] |