From c80c403da25b8b605e5616f7899f2a470ea00343 Mon Sep 17 00:00:00 2001 From: krasimir Date: Tue, 23 Mar 2010 15:24:48 +0000 Subject: use the new more accurate location information for some error messages --- src/compiler/GF/Compile/Abstract/TypeCheck.hs | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/compiler/GF/Compile/Abstract') diff --git a/src/compiler/GF/Compile/Abstract/TypeCheck.hs b/src/compiler/GF/Compile/Abstract/TypeCheck.hs index bddc6f0c0..74804983d 100644 --- a/src/compiler/GF/Compile/Abstract/TypeCheck.hs +++ b/src/compiler/GF/Compile/Abstract/TypeCheck.hs @@ -72,11 +72,10 @@ checkContext st = checkTyp st . cont2exp checkTyp :: SourceGrammar -> Type -> [Message] checkTyp gr typ = err (\x -> [text x]) ppConstrs $ justTypeCheck gr typ vType -checkDef :: SourceGrammar -> Fun -> Type -> [L Equation] -> [Message] -checkDef gr (m,fun) typ eqs = err (\x -> [text x]) ppConstrs $ do - bcs <- mapM (\(L _ b) -> checkBranch (grammar2theory gr) (initTCEnv []) b (type2val typ)) eqs - let (bs,css) = unzip bcs - (constrs,_) <- unifyVal (concat css) +checkDef :: SourceGrammar -> Fun -> Type -> Equation -> [Message] +checkDef gr (m,fun) typ eq = err (\x -> [text x]) ppConstrs $ do + (b,cs) <- checkBranch (grammar2theory gr) (initTCEnv []) eq (type2val typ) + (constrs,_) <- unifyVal cs return $ filter notJustMeta constrs checkConstrs :: SourceGrammar -> Cat -> [Ident] -> [String] -- cgit v1.2.3