/* nullability_array_element_string.c generated by valac, the Vala compiler * generated from nullability_array_element_string.vala, do not modify */ #include #include #include static void _vala_main (void); static void _vala_array_destroy (gpointer array, gssize array_length, GDestroyNotify destroy_func); static void _vala_array_free (gpointer array, gssize array_length, GDestroyNotify destroy_func); static void _vala_main (void) { gchar** foos = NULL; gchar* _tmp0_; gchar* _tmp1_; gchar** _tmp2_; gint foos_length1; gint _foos_size_; _tmp0_ = g_strdup ("foo"); _tmp1_ = g_strdup ("bar"); _tmp2_ = g_new0 (gchar*, 2 + 1); _tmp2_[0] = _tmp0_; _tmp2_[1] = _tmp1_; foos = _tmp2_; foos_length1 = 2; _foos_size_ = foos_length1; { gchar** bars = NULL; gint bars_length1; gint _bars_size_; bars = foos; bars_length1 = foos_length1; _bars_size_ = bars_length1; } { gchar** bars = NULL; gint bars_length1; gint _bars_size_; bars = foos; bars_length1 = foos_length1; _bars_size_ = bars_length1; } foos = (_vala_array_free (foos, foos_length1, (GDestroyNotify) g_free), NULL); } int main (int argc, char ** argv) { _vala_main (); return 0; } static void _vala_array_destroy (gpointer array, gssize array_length, GDestroyNotify destroy_func) { if ((array != NULL) && (destroy_func != NULL)) { gssize i; for (i = 0; i < array_length; i = i + 1) { if (((gpointer*) array)[i] != NULL) { destroy_func (((gpointer*) array)[i]); } } } } static void _vala_array_free (gpointer array, gssize array_length, GDestroyNotify destroy_func) { _vala_array_destroy (array, array_length, destroy_func); g_free (array); }