anchor.diff:      {E1,Es1 ++ Eps,St2};
   expr({'if',L,Cs0}, St0) ->
       {Cs1,St1} = clauses(Cs0, St0),
  -    Fc = fail_clause([], #c_literal{val=if_clause}),
       Lanno = lineno_anno(L, St1),
  +    Fc = fail_clause([], Lanno, #c_literal{val=if_clause}),
       {#icase{anno=#a{anno=Lanno},args=[],clauses=Cs1,fc=Fc},[],St1};
   expr({'case',L,E0,Cs0}, St0) ->
       {E1,Eps,St1} = novars(E0, St0),
       {Cs1,St2} = clauses(Cs0, St1),
       {Fpat,St3} = new_var(St2),
  -    Fc = fail_clause([Fpat], c_tuple([#c_literal{val=case_clause},Fpat])),
  -    Lanno = lineno_anno(L, St3),
  +    Lanno = lineno_anno(L, St2),
  +    Fc = fail_clause([Fpat], Lanno, c_tuple([#c_literal{val=case_clause},Fpat])),
       {#icase{anno=#a{anno=Lanno},args=[E1],clauses=Cs1,fc=Fc},Eps,St3};
   expr({'receive',L,Cs0}, St0) ->
       {Cs1,St1} = clauses(Cs0, St0),
  
positive.code:     new_vars_1(N-1, Anno, St1, [V|Vs]);
  new_vars_1(0, _, St, Vs) -> {Vs,St}.
  
  function_clause(Ps, Name) ->
      function_clause(Ps, [], Name).
  
  function_clause(Ps, LineAnno, Name) ->
      FcAnno = [{function_name,Name}],
      fail_clause(Ps, FcAnno,
  		ann_c_tuple(LineAnno, [#c_literal{val=function_clause}|Ps])).
  
  fail_clause(Pats, Arg) ->
      fail_clause(Pats, [], Arg).
  
  fail_clause(Pats, Anno, Arg) ->
      #iclause{anno=#a{anno=[compiler_generated]},
  
negative.code:      [],St};
  lc_tq(Line, E, [Fil0|Qs0], Mc, St0) ->
      %% Special case sequences guard tests.
      LA = lineno_anno(element(2, Fil0), St0),
      LAnno = #a{anno=LA},
      case is_guard_test(Fil0) of
  	true ->
  