Validation of opaques during canonicalization

This commit is contained in:
ayazhafiz 2022-02-21 18:25:19 -05:00
parent 6b53692aac
commit 90de82e295
20 changed files with 546 additions and 132 deletions

View file

@ -76,10 +76,6 @@ pub enum Problem {
alias_name: Symbol,
region: Region,
},
InvalidOpaqueRigid {
opaque_name: Symbol,
region: Region,
},
InvalidInterpolation(Region),
InvalidHexadecimal(Region),
InvalidUnicodeCodePt(Region),
@ -159,6 +155,16 @@ pub enum RuntimeError {
ErroneousType,
LookupNotInScope(Loc<Ident>, MutSet<Box<str>>),
OpaqueNotDefined {
usage: Loc<Ident>,
opaques_in_scope: MutSet<Box<str>>,
opt_defined_alias: Option<Region>,
},
OpaqueOutsideScope {
opaque: Ident,
referenced_region: Region,
imported_region: Region,
},
ValueNotExposed {
module_name: ModuleName,
ident: Ident,