Repository navigation
Checking Semantics
For implementation, see
CheckSemantics.scala.
-
An analysis data structure a and a list tul of translation units.
-
If the semantic check passes, a pair (a, tul), where a represents the results of the analysis, and tul represents the results of syntax expansion.
-
Otherwise an error and no output.
-
Expand syntax and enter symbols for a and tul.
-
Construct the implied use map for a and tul.
-
Check uses for a and tul.
-
Check use def cycles for a and tul.
-
Check type uses for a and tul.
-
Check expression types for a and tul.
-
Check framework definitions for a and tul.
-
Evaluate implied enum constants for a and tul.
-
Evaluate constant expressions for a and tul.
-
Finalize type definitions for a and tul.
-
Finalize constant expressions for a and tul.
-
Check port definitions for a and tul.
-
Check interface definitions for a and tul.
-
Check component definitions for a and tul.
-
Check component instance definitions for a and tul.
-
Check state machine definitions for a and tul.
-
Check topology instances for a and tul.
-
Check topology definitions for a and tul.
-
Check location specifiers for a and tul.
-
Check dictionary definitions for a and tul.
-
Construct the dictionary map for a and tul.
-
Check system definitions for a and tul.