Definition Delta_types V G {C: compspecs} (tys : list type) : tycontext :=
  make_tycontext
    (params_of_types
       1 ((Tfunction (type_of_params (params_of_types 2 tys)) Tvoid cc_default) :: tys))
    nil nil Tvoid V G nil.

Lemma semax_prog_typecheck_aux_types: forall vs G {C: compspecs} (prog: program) b (typed_args : list (val * type)), list_norepet (prog_defs_names prog) -> match_globvars (prog_vars prog) vs = true -> match_fdecs (prog_funct prog) G -> Forall (fun x => tc_val (snd x) (fst x)) typed_args -> typecheck_environ (Delta_types vs G (map snd typed_args)) (construct_rho (filter_genv (globalenv prog)) empty_env (PTree.set 1 (Vptr b Ptrofs.zero) (temp_bindings 2 (map fst typed_args)))).