From fd1b8324548b7bf2f3f9d476fd15b0447b4c15a5 Mon Sep 17 00:00:00 2001 From: Ashley Yakeley Date: Sun, 21 Apr 2024 19:15:16 -0700 Subject: [PATCH] fix syntax error messages --- Pinafore/pinafore-language/lib/Pinafore/Language/Error.hs | 7 +++---- Pinafore/pinafore-language/test/Test/Entity.hs | 3 ++- Pinafore/pinafore-language/test/interactive/errors.ref | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Pinafore/pinafore-language/lib/Pinafore/Language/Error.hs b/Pinafore/pinafore-language/lib/Pinafore/Language/Error.hs index 75359a3c2..6faca0687 100644 --- a/Pinafore/pinafore-language/lib/Pinafore/Language/Error.hs +++ b/Pinafore/pinafore-language/lib/Pinafore/Language/Error.hs @@ -107,10 +107,9 @@ instance ShowNamedText QErrorType where then Nothing else return $ toText s) msgs - msgsUnExpect = + msgsSysUnExpect = getMsgs $ \case SysUnExpect s -> Just s - UnExpect s -> Just s _ -> Nothing msgsExpect = getMsgs $ \case @@ -125,7 +124,7 @@ instance ShowNamedText QErrorType where semicolon a "" = a semicolon a b = a <> "; " <> b strUnexpected = - case msgsUnExpect of + case msgsSysUnExpect of [] -> "" s -> "unexpected: " <> intercalate ", " s strExpecting = @@ -133,7 +132,7 @@ instance ShowNamedText QErrorType where [] -> "" s -> "expecting: " <> intercalate ", " s strMessage = intercalate "; " msgsMessage - in "syntax error: " <> (toNamedText $ strUnexpected `semicolon` strExpecting `semicolon` strMessage) + in "syntax: " <> (toNamedText $ strUnexpected `semicolon` strExpecting `semicolon` strMessage) showNamedText (PatternErrorError e) = showNamedText e showNamedText (ExpressionErrorError nn) = "undefined: " <> diff --git a/Pinafore/pinafore-language/test/Test/Entity.hs b/Pinafore/pinafore-language/test/Test/Entity.hs index a65292cc2..39c57d8a0 100644 --- a/Pinafore/pinafore-language/test/Test/Entity.hs +++ b/Pinafore/pinafore-language/test/Test/Entity.hs @@ -1781,7 +1781,8 @@ testEntity = , testExpectSuccess "testaction (Right 5) $ evaluate @Integer \"let x = 5 in x\"" , testExpectSuccess "do ar <- evaluate @(Integer -> Integer) \"fn x => x +.Integer 1\"; ar >- match Left err => fail err; Right f => testeqval 8 $ f 7 end end" - , testExpectSuccess "testaction (Left \":1:1: expecting: expression\") $ evaluate @Integer \"\"" + , testExpectSuccess + "testaction (Left \":1:1: syntax: expecting: expression\") $ evaluate @Integer \"\"" , testExpectSuccess "testaction (Left \":1:1: undefined: f: a\") $ evaluate @Integer \"f\"" , testExpectSuccess "testleft $ evaluate @Integer \"\\\"hello\\\"\"" , testExpectSuccess diff --git a/Pinafore/pinafore-language/test/interactive/errors.ref b/Pinafore/pinafore-language/test/interactive/errors.ref index 2adbcd05b..0023fa527 100644 --- a/Pinafore/pinafore-language/test/interactive/errors.ref +++ b/Pinafore/pinafore-language/test/interactive/errors.ref @@ -1,9 +1,9 @@ pinafore> ) -:1:1: unexpected: ")"; expecting: end of input, pattern, expression +:1:1: syntax: unexpected: ")"; expecting: end of input, pattern, expression pinafore> ( -:1:1: expecting: expression +:1:1: syntax: expecting: expression pinafore> in -:1:1: unexpected: "in"; expecting: end of input, pattern, expression +:1:1: syntax: unexpected: "in"; expecting: end of input, pattern, expression pinafore> a :2:1: undefined: a: a pinafore> a