|
NAME
SYNTAX
DESCRIPTION
Declarations for local variables and message channels may be placed anywhere inside the proctype body. In all cases, though, these declarations are treated as if they were all placed at the start of the proctype declaration. The scope of local variables cannot be restricted to only part of the proctype body. EXAMPLES
proctype A(mtype x) { byte state; state = x }The process type is named A , and has one formal parameter named x . The body, enclosed in parentheses, contains one additional local variable declaration and a single assignment statement, assigning the value of the formal parameter to the local variable. NOTES
An experimental variant of the standard process declaration can be obtained by replacing the keyword proctype with D_proctype (short for deterministic proctype ). Any process instantiated from a D_proctype is declared to be a deterministic process. The verifier can detect if non-determinism is nonetheless possible, and will generate a run-time error if this is the case. SEE ALSO
|