let typ_of_elements = function
| Ctype c ->
let o = object_of c in
begin
match o with
| C_pointer te -> te
| C_array arr -> arr.arr_element
| _ ->
WpLog.fatal "elements of non-pointer type %a" Ctypes.pp_object o
end
| t -> WpLog.fatal "elements of non-pointer type: %a"
!Ast_printer.d_logic_type t