let rec is_atomic = function | C_int _ | C_float _ | C_pointer _ -> true | C_array { arr_element=te ; arr_flat=Some _ } -> is_atomic (Ctypes.object_of te) | C_array { arr_flat=None } | C_comp _ -> false