static void jvp_invalid_free(jv x) { assert(jv_get_kind(x) == JV_KIND_INVALID); if (jvp_refcnt_dec(x.u.ptr)) { jv_free(((jvp_invalid*)x.u.ptr)->errmsg); jv_mem_free(x.u.ptr); } }
static void jvp_array_free(jv_nontrivial* a) { if (jvp_refcnt_dec(a)) { jvp_array* array = jvp_array_ptr(a); for (int i=0; i<array->length; i++) { jv_free(array->elements[i]); } jv_mem_free(array); } }
static void jvp_array_free(jv a) { assert(jv_get_kind(a) == JV_KIND_ARRAY); if (jvp_refcnt_dec(a.u.ptr)) { jvp_array* array = jvp_array_ptr(a); for (int i=0; i<array->length; i++) { jv_free(array->elements[i]); } jv_mem_free(array); } }
static void jvp_invalid_free(jv_nontrivial* x) { if (jvp_refcnt_dec(x)) { jv_free(((jvp_invalid*)x->ptr)->errmsg); jv_mem_free(x->ptr); } }