From 41a60772c731e5bc99c0fe2ec804681f468ed779 Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Tue, 30 Aug 2011 09:22:44 +0000 Subject: [PATCH] bugfix: allow higher-order variables in the linearization --- src/runtime/haskell/PGF/Linearize.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/runtime/haskell/PGF/Linearize.hs b/src/runtime/haskell/PGF/Linearize.hs index 49cc4564c..b5f3f363c 100644 --- a/src/runtime/haskell/PGF/Linearize.hs +++ b/src/runtime/haskell/PGF/Linearize.hs @@ -74,7 +74,7 @@ linTree pgf lang e = lin mb_cty n_fid e0 ys xs (ETyped e _) es = lin mb_cty n_fid e0 ys xs e es lin mb_cty n_fid e0 ys xs (EFun f) es = apply mb_cty n_fid e0 ys xs f es lin mb_cty n_fid e0 ys xs (EMeta i) es = def mb_cty n_fid e0 ys xs ('?':show i) - lin mb_cty n_fid e0 ys xs (EVar i) [] = def mb_cty n_fid e0 ys xs (showCId ((xs++ys) !! i)) + lin mb_cty n_fid e0 ys xs (EVar i) _ = def mb_cty n_fid e0 ys xs (showCId ((xs++ys) !! i)) lin mb_cty n_fid e0 ys xs (ELit l) [] = case l of LStr s -> return (n_fid+1,((cidString,n_fid),[e0],([],ss s))) LInt n -> return (n_fid+1,((cidInt, n_fid),[e0],([],ss (show n))))