Rain: changed parse errors to report using dieP (with a Meta position) instead of just dieIO

This commit is contained in:
Neil Brown 2007-09-17 11:18:38 +00:00
parent d92e042159
commit a4453fe3c3

View File

@ -393,11 +393,11 @@ parseRainProgram filename
= do source <- liftIO $ readFile filename
lexOut <- liftIO $ L.runLexer filename source
case lexOut of
Left merr -> dieIO $ "Parse (lexing) error at: " ++ (show merr)
Left merr -> dieP merr $ "Parse (lexing) error"
Right toks ->
do cs <- get
case runParser rainSourceFile cs filename toks of
Left err -> dieIO $ "Parse error: " ++ show err
Left err -> dieP (sourcePosToMeta $ errorPos err) $ "Parse error: " ++ show err
Right (p, cs') ->
do put cs'
return p