anchor.diff:                     create_term(#t_bitstring{size_unit=8}, bs_init2, [], Dst,
                                  SuccVst, SuccVst0)
              end);
  -valfun_3({bs_init_bits,{f,Fail},Sz,Heap,Live,_,Dst}, Vst0) ->
  +vi_throwing({bs_init_bits,{f,Fail},Sz,Heap,Live,_,Dst}, Vst0) ->
       verify_live(Live, Vst0),
       verify_y_init(Vst0),
       if
  
positive.code: 	    Error = {undef_labels,Undef},
  	    error({MFA,Error})
      end;
  valfun([I|Is], MFA, Offset, Vst0) ->
      valfun(Is, MFA, Offset+1,
  	   try
  	       Vst = val_dsetel(I, Vst0),
  	       valfun_1(I, Vst)
  	   catch Error ->
  		   error({MFA,{I,Offset,Error}})
  	   end).
  
  %% Instructions that are allowed in dead code or when failing,
  %% that is while the state is undecided in some way.
  valfun_1({label,Lbl}, #vst{current=St0,
                             ref_ctr=Counter0,
                             branched=B,
                             labels=Lbls}=Vst) ->
  
negative.code:                                          Fun, SuccVst0),
                     validate_body_call('fun', Live+1, SuccVst)
             end);
  vi_safe({call,Live,Func}, Vst) ->
      validate_body_call(Func, Live, Vst);
  vi_safe({call_ext,Live,Func}, Vst) ->
      validate_body_call(Func, Live, Vst);
  vi_safe({call_only,Live,Func}, Vst) ->
      validate_tail_call(none, Func, Live, Vst);
  vi_safe({call_ext_only,Live,Func}, Vst) ->
      validate_tail_call(none, Func, Live, Vst);
  vi_safe({call_last,Live,Func,N}, Vst) ->
      validate_tail_call(N, Func, Live, Vst);
  vi_safe({call_ext_last,Live,Func,N}, Vst) ->
      validate_tail_call(N, Func, Live, Vst);
  vi_safe(_I, #vst{current=#st{ct=undecided}}) ->
      error(unknown_catch_try_state);
  %%
  %% Allocate and deallocate, et.al
  %%
  vi_safe({allocate,Stk,Live}, Vst) ->
      allocate(uninitialized, Stk, 0, Live, Vst);
  vi_safe({allocate_heap,Stk,Heap,Live}, Vst) ->
      allocate(uninitialized, Stk, Heap, Live, Vst);
  vi_safe({allocate_zero,Stk,Live}, Vst) ->
      allocate(initialized, Stk, 0, Live, Vst);
  vi_safe({allocate_heap_zero,Stk,Heap,Live}, Vst) ->
      allocate(initialized, Stk, Heap, Live, Vst);
  vi_safe({deallocate,StkSize}, #vst{current=#st{numy=StkSize}}=Vst) ->
      verify_no_ct(Vst),
      deallocate(Vst);
  vi_safe({deallocate,_}, #vst{current=#st{numy=NumY}}) ->
      error({allocated,NumY});
  vi_safe({trim,N,Remaining}, #vst{current=St0}=Vst) ->
      #st{numy=NumY} = St0,
      if
          N =< NumY, N+Remaining =:= NumY ->
  