constraint_block
::=
solve identifier_list before identifier_list ;
| expression dist { dist_list } ;
| constraint_expression
dpi_import_export
::=
// from Annex A.2.6
import "DPI" [ dpi_import_property ] [ c_identifier
= ] dpi_function_proto;
| export "DPI" [ c_identifier = ] function
function_identifier;
property_spec
::=
[clocking_event ]
[ disable iff ]
( expression ) [ not
] property_expr
| [ disable iff ( expression ) ] [
not ] multi_clock_property_expr
property_expr
::=
sequence_expr
| sequence_expr |-> [ not ] sequence_expr
| sequence_expr |=> [ not ] sequence_expr
| (property_expr)
multi_clock_property_expr
::=
multi_clock_sequence
| multi_clock_sequence |=>
[ not ] multi_clock_sequence
| (multi_clock_property_expr)
constant_concatenation ::=
{ constant_expression { , constant_expression
} }
| { struct_member_label : constant_expression { , struct_member_label
: constant_expression } }
| { array_member_label : constant_expression { , array_member_label
: constant_expression } }