summaryrefslogtreecommitdiff
path: root/src/GF/Compile
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-08-16 12:27:59 +0000
committeraarne <aarne@cs.chalmers.se>2008-08-16 12:27:59 +0000
commitddbeff3028452751e4e840331d4ec425d83d552c (patch)
treea08195209ba69a14b00c0c6c9f1e31af1d15cb75 /src/GF/Compile
parent22c434a39b943ea5f8bde9a6dd998c8d32720783 (diff)
improved error message in pgf compilation to help debugging
Diffstat (limited to 'src/GF/Compile')
-rw-r--r--src/GF/Compile/GrammarToGFCC.hs11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/GF/Compile/GrammarToGFCC.hs b/src/GF/Compile/GrammarToGFCC.hs
index eee95f157..613612f03 100644
--- a/src/GF/Compile/GrammarToGFCC.hs
+++ b/src/GF/Compile/GrammarToGFCC.hs
@@ -289,7 +289,7 @@ canon2canon abs =
CncCat (Yes ty) (Yes x) y -> (f,CncCat (Yes (ty2ty ty)) (Yes (t2t x)) y)
_ -> (f,j)
where
- t2t = term2term cg pv
+ t2t = term2term f cg pv
ty2ty = type2type cg pv
pv@(labels,untyps,typs) = trs $ paramValues cg
@@ -408,8 +408,8 @@ type2type cgr env@(labels,untyps,typs) ty = case ty of
Just vs -> length $ Map.assocs vs
_ -> trace ("unknown partype " ++ show ty) 66669
-term2term :: SourceGrammar -> ParamEnv -> Term -> Term
-term2term cgr env@(labels,untyps,typs) tr = case tr of
+term2term :: Ident -> SourceGrammar -> ParamEnv -> Term -> Term
+term2term fun cgr env@(labels,untyps,typs) tr = case tr of
App _ _ -> mkValCase (unrec tr)
QC _ _ -> mkValCase tr
R rs -> R [(mkLab i, (Nothing, t2t t)) |
@@ -425,7 +425,7 @@ term2term cgr env@(labels,untyps,typs) tr = case tr of
_ -> GM.composSafeOp t2t tr
where
- t2t = term2term cgr env
+ t2t = term2term fun cgr env
unrec t = case t of
App f (R fs) -> GM.mkApp (unrec f) [unrec u | (_,(_,u)) <- fs]
@@ -507,7 +507,8 @@ term2term cgr env@(labels,untyps,typs) tr = case tr of
(FV ts,_) -> ts
_ -> [tr]
valNumFV ts = case ts of
- [tr] -> error ("valNum" +++ prt tr) ----- prtTrace tr $ K "66667"
+ [tr] -> let msg = ("DEBUG" +++ prt fun ++ ": error in valNum" +++ prt tr) in
+ trace msg $ error (prt fun)
_ -> FV $ map valNum ts
mkCurry trm = case trm of