anchor.diff:  
   used_once_last_uses([V|Vs], L, Uses) ->
       case Uses of
  -        #{V:=[_]} ->
  -            %% Second time this variable is used.
  -            used_once_last_uses(Vs, L, Uses#{V:=more_than_once});
           #{V:=more_than_once} ->
               %% Used at least twice before.
               used_once_last_uses(Vs, L, Uses);
  +        #{V:=_} ->
  +            %% Second time this variable is used.
  +            used_once_last_uses(Vs, L, Uses#{V:=more_than_once});
           #{} ->
               %% First time this variable is used.
  -            used_once_last_uses(Vs, L, Uses#{V=>[L]})
  +            used_once_last_uses(Vs, L, Uses#{V=>L})
       end;
   used_once_last_uses([], _, Uses) -> Uses.
   
  
positive.code:     Ls = #{ ?EXCEPTION_BLOCK => {incoming, Ts},
              0 => {incoming, Ts} },
  
      Meta = init_metadata(Id, Linear0, Args),
  
      {Linear, FuncDb, SuccTypes} =
          opt_bs(Linear0, Ds, Ls, FuncDb0, #{}, [], Meta, []),
  
negative.code:     {Last, update_successor(Succ, Ts, Ls)};
  update_successors(#b_br{bool=#b_var{}=Bool,succ=Succ,fail=Fail}=Last0,
                    Ts, Ds, Ls0, UsedOnce) ->
      IsTempVar = is_map_key(Bool, UsedOnce),
      case infer_types_br(Bool, Ts, IsTempVar, Ds) of
          {#{}=SuccTs, #{}=FailTs} ->
              Ls1 = update_successor(Succ, SuccTs, Ls0),
  