Fix Ident print instance

This commit is contained in:
Martin Fredin 2023-03-27 20:51:00 +02:00
parent ad2bd645d9
commit a38e96a83b
2 changed files with 24 additions and 23 deletions

View file

@ -10,7 +10,7 @@ import Data.String (IsString)
import Grammar.Abs (Lit (..), TVar (..)) import Grammar.Abs (Lit (..), TVar (..))
import Grammar.Print import Grammar.Print
import Prelude import Prelude
import Prelude qualified as C (Eq, Ord, Read, Show) import qualified Prelude as C (Eq, Ord, Read, Show)
newtype Program' t = Program [Def' t] newtype Program' t = Program [Def' t]
deriving (C.Eq, C.Ord, C.Show, C.Read) deriving (C.Eq, C.Ord, C.Show, C.Read)
@ -66,7 +66,7 @@ data Branch' t = Branch (Pattern' t, t) (ExpT' t)
deriving (C.Eq, C.Ord, C.Show, C.Read) deriving (C.Eq, C.Ord, C.Show, C.Read)
instance Print Ident where instance Print Ident where
prt i (Ident s) = prt i s prt _ (Ident s) = doc $ showString s
instance Print t => Print (Program' t) where instance Print t => Print (Program' t) where
prt i (Program sc) = prPrec i 0 $ prt 0 sc prt i (Program sc) = prPrec i 0 $ prt 0 sc

View file

@ -1,13 +1,14 @@
{-# LANGUAGE QualifiedDo #-}
{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE QualifiedDo #-}
module TestTypeCheckerHm where module TestTypeCheckerHm where
import Control.Monad ((<=<)) import Control.Monad ((<=<))
import DoStrings qualified as D import qualified DoStrings as D
import Grammar.Par (myLexer, pProgram) import Grammar.Par (myLexer, pProgram)
import Prelude (Bool (..), Either (..), IO, foldl1,
mapM_, not, ($), (.), (>>))
import Test.Hspec import Test.Hspec
import Prelude (Bool (..), Either (..), IO, foldl1, mapM_, not, ($), (.), (>>))
-- import Test.QuickCheck -- import Test.QuickCheck
import TypeChecker.TypeCheckerHm (typecheck) import TypeChecker.TypeCheckerHm (typecheck)