Don't resolve user types until after type checking.
This is important -- a user type defined as INT in occam must not be treated the same as INT when typechecking.
This commit is contained in:
parent
9cea36257e
commit
e23a12c71d
|
@ -32,8 +32,8 @@ import Types
|
||||||
|
|
||||||
simplifyTypes :: [Pass]
|
simplifyTypes :: [Pass]
|
||||||
simplifyTypes = makePassesDep
|
simplifyTypes = makePassesDep
|
||||||
[ ("Resolve types in AST", resolveNamedTypes, Prop.agg_namesDone, [Prop.typesResolvedInAST])
|
[ ("Resolve types in AST", resolveNamedTypes, Prop.agg_namesDone ++ [Prop.expressionTypesChecked, Prop.processTypesChecked], [Prop.typesResolvedInAST])
|
||||||
, ("Resolve types in state", rntState, Prop.agg_namesDone, [Prop.typesResolvedInState])
|
, ("Resolve types in state", rntState, Prop.agg_namesDone ++ [Prop.expressionTypesChecked, Prop.processTypesChecked], [Prop.typesResolvedInState])
|
||||||
]
|
]
|
||||||
|
|
||||||
-- | Turn named data types into their underlying types.
|
-- | Turn named data types into their underlying types.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user