From 445a3aafebe02c415c76392399bdf77a00e680f5 Mon Sep 17 00:00:00 2001 From: aarne Date: Fri, 25 Feb 2011 17:01:10 +0000 Subject: Predef.error surfaces as error message in compilation and cc command --- src/compiler/GFI.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/compiler/GFI.hs') diff --git a/src/compiler/GFI.hs b/src/compiler/GFI.hs index 53784ec10..665d843cb 100644 --- a/src/compiler/GFI.hs +++ b/src/compiler/GFI.hs @@ -12,7 +12,7 @@ import GF.Grammar hiding (Ident) import GF.Grammar.Parser (runP, pExp) import GF.Grammar.ShowTerm import GF.Compile.Rename -import GF.Compile.Compute.Concrete (computeConcrete) +import GF.Compile.Compute.Concrete (computeConcrete,checkPredefError) import GF.Compile.TypeCheck.Concrete (inferLType) import GF.Infra.Dependencies import GF.Infra.CheckM @@ -124,7 +124,8 @@ loop opts gfenv0 = do mo <- maybe (Bad "no source grammar in scope") return $ greatestResource gr ((t,_),_) <- runCheck $ do t <- renameSourceTerm gr mo t inferLType gr [] t - computeConcrete sgr t + t1 <- computeConcrete sgr t + checkPredefError sgr t1 case runP pExp (encodeUnicode utf8 s) of Left (_,msg) -> putStrLn msg -- cgit v1.2.3