anchor.diff:      List.iter (fun se -> env.solver.encode_sig env se) ses';
   
       let exports, hidden =
  +      check_must_erase_attribute env se;
         if Options.use_extracted_interfaces () then List.rev_append ses' exports, []
         else
           let accum_exports_hidden (exports, hidden) se =
  
positive.code:     //we can clear the lid to query index table
      env.qtbl_name_and_index |> fst |> BU.smap_clear;
  
      if (not (Options.lax())) && (not loading_from_cache) && (not (Options.use_extracted_interfaces ()))
      then check_exports env modul exports;
  
      //pop BUT ignore the old env
  
negative.code:            { se with sigel = Sig_declare_typ((right lb.lbname).fv_name.v, lb.lbunivs, lb.lbtyp);
                       sigquals = Assumption::se.sigquals}),
            hidden)
      else [se], hidden
  
  (* adds the typechecked sigelt to the env, also performs any processing required in the env (such as reset options) *)
  (* this was earlier part of tc_decl, but separating it might help if and when we cache type checked modules *)
  