X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=sem.dcl;h=584deb567792c7e75b67360be3fab9646c8bd3a6;hb=ebcd007897feb48e987110c2ddbaea8ddcbef109;hp=a2bcd572e08683f42b0d5d8d953dc98c4157a8c7;hpb=3b2d959ee14ecfd95008dfe536c87b8b1629c1ae;p=cc1516.git diff --git a/sem.dcl b/sem.dcl index a2bcd57..584deb5 100644 --- a/sem.dcl +++ b/sem.dcl @@ -2,13 +2,16 @@ definition module sem import qualified Data.Map as Map from Data.Either import :: Either -from AST import :: AST, :: Pos, :: Type +from AST import :: AST, :: Pos, :: Type, :: FieldSelector, :: Op2 from StdOverloaded import class toString :: SemError = ParseError Pos String | UnifyError Pos Type Type - | UnifyErrorStub Type Type + | FieldSelectorError Pos Type FieldSelector + | OperatorError Pos Op2 Type + | UndeclaredVariableError Pos String + | ArgumentMisMatchError Pos String | Error String :: Gamma :: SemOutput :== Either [SemError] (AST, Gamma)