aboutsummaryrefslogtreecommitdiff
path: root/src/Compiler.hs
diff options
context:
space:
mode:
authorJuan J. Martinez <jjm@usebox.net>2022-08-15 12:11:10 +0100
committerJuan J. Martinez <jjm@usebox.net>2022-08-15 12:11:10 +0100
commit60d8f688a0c66759bdb7645c9dd4c232bc433c9f (patch)
treec81394d00bf9825eae6c456ac6238e0f72bbe4ce /src/Compiler.hs
parentcd4c8a3f1b92f0e6a585bd0b199374b8b99c6238 (diff)
downloadmicro-lang-hs-60d8f688a0c66759bdb7645c9dd4c232bc433c9f.tar.gz
micro-lang-hs-60d8f688a0c66759bdb7645c9dd4c232bc433c9f.zip
Unify error reporting
Diffstat (limited to 'src/Compiler.hs')
-rw-r--r--src/Compiler.hs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Compiler.hs b/src/Compiler.hs
index 0d90143..49af369 100644
--- a/src/Compiler.hs
+++ b/src/Compiler.hs
@@ -54,7 +54,7 @@ typecheckCall args params
else
if all (\(a, b) -> a == b) $ zip t params -- compare types
then return $ Nothing -- all good!
- else return $ Just ("type mismatch in function call:\n unexpected " ++ A.showList t ++ "\n expecting " ++ A.showList params)
+ else return $ Just ("type mismatch in function call\n unexpected " ++ A.showList t ++ "\n expecting " ++ A.showList params)
Nothing ->
-- there was an error in on argument
return $ Nothing
@@ -67,14 +67,14 @@ showMaybet (Just t) = show t
-- returning a string decribing an error or Nothing in case of a type match.
typecheckReturn :: Maybe A.Expr -> Maybe A.Type -> State CompState (Maybe String)
typecheckReturn Nothing Nothing = return $ Nothing
-typecheckReturn Nothing fret = return $ Just $ "invalid return value:\n unexpected ()\n expecting " ++ showMaybet fret
+typecheckReturn Nothing fret = return $ Just $ "invalid return value\n unexpected ()\n expecting " ++ showMaybet fret
typecheckReturn (Just value) fret = do
r <- compile value
case r of
Right r ->
if r == fret
then return $ Nothing
- else return $ Just $ "invalid return value:\n unexpected " ++ showMaybet r ++ "\n expecting " ++ showMaybet fret
+ else return $ Just $ "invalid return value\n unexpected " ++ showMaybet r ++ "\n expecting " ++ showMaybet fret
Left _ -> return $ Nothing -- error resolving return value
compile :: A.Expr -> State CompState CompResult