anchor.diff:  	| ( package_scope | class_scope )? enum_identifier
   	| constant_concatenation ( '[' constant_range_expression ']' )?
   	| constant_multiple_concatenation ( '[' constant_range_expression ']' )?
  -	| constant_function_call
  +	| //constant_function_call
  +		tf_call
  +		| system_tf_call
  +		| ( primary | implicit_class_handle ) '.' method_call_body
  +		| ( 'std' '::' )? randomize_call
   	| constant_let_expression
   	| '(' constant_mintypmax_expression ')'
   	//| constant_cast
  
positive.code: interface_class_type
  	: ps_class_identifier parameter_value_assignment?
  	;
  
  interface_class_declaration // not referenced anywhere in the spec
  	: 'interface' 'class' class_identifier parameter_port_list? ( 'extends' interface_class_type ( ',' interface_class_type )* )? ';' interface_class_item* 'endclass' ( ':' class_identifier )?
  	;
  
  interface_class_item
  	: type_declaration
  	| attribute_instance* interface_class_method
  
negative.code: 	| empty_unpacked_array_concatenation
  	| concatenation ( '[' range_expression ']' )?
  	| multiple_concatenation ( '[' range_expression ']' )?
  	| //function_subroutine_call
  		tf_call
  		| system_tf_call
  		| primary '.' method_call_body
  		| implicit_class_handle '.' method_call_body
  		| ( 'std' '::' )? randomize_call
  	| let_expression
  	| '(' mintypmax_expression ')'
  	//| cast
  	| assignment_pattern_expression
  	| streaming_concatenation
  	| sequence_method_call
  