X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=sem.dcl;h=2b13436634edc08c5e11765533dd8d4d7b12a448;hb=f081c2c5e248331eb6e2f090f4afe818fd8259eb;hp=584deb567792c7e75b67360be3fab9646c8bd3a6;hpb=76d648be58ffa5c21cb9a53fb0232ab16d9f81b4;p=cc1516.git diff --git a/sem.dcl b/sem.dcl index 584deb5..2b13436 100644 --- a/sem.dcl +++ b/sem.dcl @@ -6,17 +6,11 @@ from AST import :: AST, :: Pos, :: Type, :: FieldSelector, :: Op2 from StdOverloaded import class toString :: SemError - = ParseError Pos String - | UnifyError Pos Type Type - | FieldSelectorError Pos Type FieldSelector - | OperatorError Pos Op2 Type - | UndeclaredVariableError Pos String - | ArgumentMisMatchError Pos String - | Error String :: Gamma :: SemOutput :== Either [SemError] (AST, Gamma) +:: Constraints :== [(Type, Type)] instance toString SemError instance toString Gamma -sem :: AST -> SemOutput +sem :: AST -> Either [SemError] AST