@@ -1,3 +1,4 @@
1+{-# OPTIONS_GHC -W #-}
12module Type.Environment where
23
34import Control.Applicative ((<$>), (<*>))
@@ -9,7 +10,6 @@ import qualified Control.Monad.State as State
910import qualified Data.Traversable as Traverse
1011import qualified Data.Map as Map
1112import Data.List (isPrefixOf)
12−import qualified Data.UnionFind.IO as UF
1313import qualified Text.PrettyPrint as PP
1414
1515import qualified SourceSyntax.Type as Src
@@ -44,7 +44,7 @@ makeTypes datatypes =
4444 where
4545 nameAndKind (name, tvars, _, _) = (name, length tvars)
4646
47− makeCtor (name, kind) = do
47+ makeCtor (name, _) = do
4848 ctor <- VarN <$> namedVar Constant name
4949 return (name, ctor)
5050
@@ -84,7 +84,7 @@ makeConstructors env datatypes = Map.fromList builtins
8484
8585
8686ctorToType :: Environment -> ADT -> [ (String, IO (Int, [Variable], [Type], Type)) ]
87−ctorToType env (name, tvars, ctors, derivations) =
87+ctorToType env (name, tvars, ctors, _) =
8888 zip (map fst ctors) (map inst ctors)
8989 where
9090 inst :: (String, [Src.Type]) -> IO (Int, [Variable], [Type], Type)
@@ -94,7 +94,7 @@ ctorToType env (name, tvars, ctors, derivations) =
9494
9595
9696 go :: (String, [Src.Type]) -> State.StateT (VarDict, TypeDict) IO ([Type], Type)
97− go (ctor, args) = do
97+ go (_, args) = do
9898 types <- mapM (instantiator env) args
9999 returnType <- instantiator env (Src.Data name (map Src.Var tvars))
100100 return (types, returnType)