anchor.diff:  cr_clauses -> cr_clause : ['$1'].
   cr_clauses -> cr_clause ';' cr_clauses : ['$1' | '$3'].
   
  +%% FIXME: merl in syntax_tools depends on patterns in a 'case' being
  +%% full expressions. Therefore, we can't use pat_expr here. There
  +%% should be a better way.
  +
   cr_clause -> expr clause_guard clause_body :
   	{clause,?anno('$1'),['$1'],'$2','$3'}.
   
  
positive.code: expr expr_100 expr_150 expr_160 expr_200 expr_300 expr_400 expr_500
  expr_600 expr_700 expr_800
  expr_max
  list tail
  list_comprehension lc_expr lc_exprs
  binary_comprehension
  
negative.code: fun_clauses -> fun_clause : ['$1'].
  fun_clauses -> fun_clause ';' fun_clauses : ['$1' | '$3'].
  
  fun_clause -> pat_argument_list clause_guard clause_body :
  	{Args,Anno} = '$1',
  	{clause,Anno,'fun',Args,'$2','$3'}.
  
  fun_clause -> var pat_argument_list clause_guard clause_body :
  	{clause,element(2, '$1'),element(3, '$1'),element(1, '$2'),'$3','$4'}.
  
  try_expr -> 'try' exprs 'of' cr_clauses try_catch :
  