anchor.diff:  	;
   	
   // floating point arithmetic
  -expr5
  +fp_expr
   	: unary_expr (farith_op unary_expr)*
   	;
   
   // arithmetic
  -expr6
  -	: expr5 (arith_op expr5)*
  +arith_expr
  +	: fp_expr (arith_op fp_expr)*
   	;
   
   // bit arithmetic
  -expr7
  -	: expr6 (bit_op expr6)*
  +bit_expr
  +	: arith_expr (bit_op arith_expr)*
   	;
   
   // conditionals
  -expr8
  -	: expr7 (cond_op expr7)*
  +cond_expr
  +	: bit_expr (cond_op bit_expr)*
   	;
   	
   // logicals
  -expr9
  -	: expr8 (log_op expr8)*
  -	;
  -
  -exp: expr9;
  +log_expr
  +	: cond_expr (log_op cond_expr)*
  +	;
  +
  +exp: log_expr;
   
   
   arith_op
  
positive.code: 
  rt
  	: assign_rt
  	| NAME LPAREN list_actualparameter RPAREN
  //	| FLAGMACRO LPAREN flag_list RPAREN
  	| UNDERSCORE
  	;
  
negative.code: 	| GT
  	| LE
  	| GE
  	| LTU
  	| GTU
  	| LEU
  	| GEU
  	;
  
  farith_op
  