Definition semax_seq := @AuxDefs.semax_seq.
Definition semax_break := @AuxDefs.semax_break.
Definition semax_continue := @AuxDefs.semax_continue.
Definition semax_loop := @AuxDefs.semax_loop.

(* Specifications: *)
Theorem semax_switch:
forall {CS: compspecs} Espec Delta (Q: environ -> mpred) a sl R,
is_int_type (typeof a) = true ->
(forall rho, Q rho |-- tc_expr Delta a rho) ->
(forall n,
@semax CS Espec Delta (fun rho => andp (prop (eval_expr a rho = Vint n)) (Q rho))
(seq_of_labeled_statement (select_switch (Int.unsigned n) sl))
(switch_ret_assert R)) ->
@semax CS Espec Delta Q (Sswitch a sl) R.