24 lines
682 B
Plaintext
24 lines
682 B
Plaintext
|
Errors:
|
||
|
- Not supported
|
||
|
- Only * is supported
|
||
|
- Expected * in *, but got *
|
||
|
- Divergent type in (construct), (location 1), (location 2)
|
||
|
- Unknown field
|
||
|
- Unbounded variable
|
||
|
- Different variable
|
||
|
- Different domain
|
||
|
- * is not subclass of *
|
||
|
- Type not equal
|
||
|
- Incorrect number of parameters
|
||
|
|
||
|
Symbol Resolution:
|
||
|
- Find class references, load them all in TopLevelContext.
|
||
|
- Find unbounded identifiers/functions in functions.
|
||
|
- `inspect.getmodule(x)` every unknown `x` if not primitive/list of primitives,
|
||
|
check their files recursively by getting their file path, cache with
|
||
|
(normalized) path as key.
|
||
|
|
||
|
TopLevelContext/InferenceContext:
|
||
|
- Restrict visibility by user defined function.
|
||
|
|