summaryrefslogtreecommitdiff
path: root/src/Parser.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2026-09-20 11:51:06 +0200
committerRoman Smrž <roman.smrz@seznam.cz>2026-09-20 11:51:06 +0200
commitdb6cd2706417d38b670438475c30a657ce2e5ed4 (patch)
tree509ca6003ec5225e4e2665e37de3f1da07a2dabe /src/Parser.hs
parent779959972a694a5abb53da49edb44895ac8947e4 (diff)
Always parse script files as UTF-8HEADmaster
Changelog: Script files are now always assumed to be in UTF-8 encoding.
Diffstat (limited to 'src/Parser.hs')
-rw-r--r--src/Parser.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Parser.hs b/src/Parser.hs
index cba119b..b59dc57 100644
--- a/src/Parser.hs
+++ b/src/Parser.hs
@@ -9,6 +9,7 @@ import Control.Monad
import Control.Monad.Except
import Control.Monad.State
+import Data.ByteString.Lazy qualified as BL
import Data.IORef
import Data.Map qualified as M
import Data.Maybe
@@ -16,7 +17,7 @@ import Data.Proxy
import Data.Set qualified as S
import Data.Text qualified as T
import Data.Text.Lazy qualified as TL
-import Data.Text.Lazy.IO qualified as TL
+import Data.Text.Lazy.Encoding qualified as TL
import Data.Void
import Text.Megaparsec hiding (State)
@@ -257,7 +258,7 @@ parseTestFile builtinTypes parsedModules mbModuleName path = do
let projectRoot = iterate takeDirectory absPath !! length current
parseTestFile builtinTypes parsedModules (Just mname) $ projectRoot </> foldr (</>) "" (map T.unpack imported) <.> takeExtension absPath
}
- mbContent <- (Just <$> TL.readFile path) `catchIOError` \e ->
+ mbContent <- (Just . TL.decodeUtf8 <$> BL.readFile path) `catchIOError` \e ->
if isDoesNotExistError e then return Nothing else ioError e
case mbContent of
Just content -> do