Call / Macro Statements ======================= call ---- Instantiate a [macro](#macro) within the current namespace. There may be zero or more parameters passed to the macro (with zero parameters this is similar to the [`blockinherit`](cil_container_statements.md#blockinherit) ([`call`](cil_call_macro_statements.md#call)) / [`blockabstract`](cil_container_statements.md#blockabstract) ([`macro`](cil_call_macro_statements.md#macro)) statements). Each parameter passed contains an argument to be resolved by the [macro](#macro), these can be named or anonymous but must conform to the parameter types defined in the [`macro`](cil_call_macro_statements.md#macro) statement. **Statement definition:** (call macro_id [(param ...)]) **Where:**
|
The |
|
The identifier of the |
|
Zero or more parameters that are passed to the macro. |
|
The |
|
The |
|
Zero or more parameters that are passed to the macro. The The list of valid |
|
The parameter identifier used to reference the entry within the macro body (e.g. |
|
Zero or more valid CIL statements. |