From ac288386c44bdfab783ae2cdc0882d411a9c6b00 Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Tue, 14 Oct 2014 11:15:18 +0000 Subject: the compiler now allows + to be used as a floating point addition in the abstract syntax --- src/compiler/GF/Compile/GenerateBC.hs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/compiler/GF/Compile/GenerateBC.hs') diff --git a/src/compiler/GF/Compile/GenerateBC.hs b/src/compiler/GF/Compile/GenerateBC.hs index a121a3d5e..1f1e81ab9 100644 --- a/src/compiler/GF/Compile/GenerateBC.hs +++ b/src/compiler/GF/Compile/GenerateBC.hs @@ -131,6 +131,11 @@ compileFun gr arity st vs (Let (x, (_, e1)) e2) h0 bs args = let (h1,bs1,arg,is1) = compileLambda gr st vs [] e1 h0 bs (h2,bs2,is2) = compileFun gr arity st ((x,arg):vs) e2 h1 bs1 args in (h2,bs2,is1++is2) +compileFun gr arity st vs (Glue e1 e2) h0 bs args = + let (h1,bs1,arg1,is1) = compileArg gr st vs e1 h0 bs + (h2,bs2,arg2,is2) = compileArg gr st vs e2 h1 bs1 + (st1,is3) = pushArgs st [arg2,arg1] + in (h2,bs2,is1++is2++is3++[ADD]) compileFun gr arity st vs e _ _ _ = error (show e) compileArg gr st vs (Q(m,id)) h0 bs = -- cgit v1.2.3