anchor.diff:  stab_expr_list -> stab_expr_list eol stab_expr : ['$3'|'$1'].
   
   stab_expr -> expr : '$1'.
  -stab_expr -> call_args_no_parens stab_op expr : build_op('$2', handle_empty_block('$1'), '$3').
  -stab_expr -> call_args_parens_many stab_op expr : build_op('$2', '$1', '$3').
  +stab_expr -> call_args_no_parens stab_op expr : build_op('$2', '$1', '$3').
  +stab_expr -> call_args_parens_not_one stab_op expr : build_op('$2', '$1', '$3').
   
   block_item -> block_eol stab_expr_list eol : { ?exprs('$1'), build_stab(lists:reverse('$2')) }.
   block_item -> block_eol : { ?exprs('$1'), nil }.
  
positive.code: 
  % Note expressions are on reverse order
  expr_list -> expr : ['$1'].
  expr_list -> expr_list eol expr : ['$3'|'$1'].
  
  expr -> matched_expr : '$1'.
  
negative.code: call_args_parens -> open_paren ')' : [].
  call_args_parens -> open_paren call_args close_paren : '$2'.
  
  call_args_parens_not_one -> open_paren ')' : [].
  call_args_parens_not_one -> open_paren kw_base close_paren : ['$2'].
  call_args_parens_not_one -> open_paren expr ',' call_args close_paren : ['$2'|'$4'].
  
  % KV
  
  