Module Check.Error
type operation
=
|
Op_Loc of Syntax.permission * IR.source
|
Op_Assign of IR.source
|
Op_Scope of IR.source
type loc_invalid_reason
= operation
type error
=
|
PermissionDenied of operation
|
AccessDeadLoc of IR.source * loc_invalid_reason
|
LetResultInvalid of loc_invalid_reason
|
FuncArgInvalid of IR.source * loc_invalid_reason
|
FuncRetInvalid of string * loc_invalid_reason
exception
Error of error