-
Notifications
You must be signed in to change notification settings - Fork 67
Check Template Interface Arguments
This algorithm checks that the port interface instance argument bound to each port interface instance template parameter satisfies the interface declared for that parameter. It checks the parameters of a module template definition once for each expansion of that definition, and not at all if the definition is never expanded.
-
An analysis data structure a representing the results of analysis so far.
-
The template expansion map, the component instance map, the interface map, and the topology map of a must already be filled in.
For each entry in the template expansion map of a, and for each port interface instance parameter symbol b in the parameter map of that expansion, with parameter q and argument p:
-
Look up the interface instance N that p refers to. Check that p refers to a component instance definition, a topology definition, or a bound port interface instance parameter.
-
Look up the interface I that the qualified identifier in q refers to. Check that it refers to an interface definition.
-
Check that the port interface of I is a sub-interface of the port interface of N.