Zend/zend_variables: use C99 designated initializers (#10655)

This change allows to potentially turn the ``IS_`` macros into an enum with automatic values.
This commit is contained in:
Max Kellermann 2023-02-23 15:46:31 +01:00 committed by GitHub
parent 101178214c
commit 0460420205
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -37,18 +37,18 @@ static void ZEND_FASTCALL zend_empty_destroy(zend_reference *ref);
typedef void (ZEND_FASTCALL *zend_rc_dtor_func_t)(zend_refcounted *p);
static const zend_rc_dtor_func_t zend_rc_dtor_func[] = {
/* IS_UNDEF */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_NULL */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_FALSE */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_TRUE */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_LONG */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_DOUBLE */ (zend_rc_dtor_func_t)zend_empty_destroy,
/* IS_STRING */ (zend_rc_dtor_func_t)zend_string_destroy,
/* IS_ARRAY */ (zend_rc_dtor_func_t)zend_array_destroy,
/* IS_OBJECT */ (zend_rc_dtor_func_t)zend_objects_store_del,
/* IS_RESOURCE */ (zend_rc_dtor_func_t)zend_list_free,
/* IS_REFERENCE */ (zend_rc_dtor_func_t)zend_reference_destroy,
/* IS_CONSTANT_AST */ (zend_rc_dtor_func_t)zend_ast_ref_destroy
[IS_UNDEF] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_NULL] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_FALSE] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_TRUE] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_LONG] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_DOUBLE] = (zend_rc_dtor_func_t)zend_empty_destroy,
[IS_STRING] = (zend_rc_dtor_func_t)zend_string_destroy,
[IS_ARRAY] = (zend_rc_dtor_func_t)zend_array_destroy,
[IS_OBJECT] = (zend_rc_dtor_func_t)zend_objects_store_del,
[IS_RESOURCE] = (zend_rc_dtor_func_t)zend_list_free,
[IS_REFERENCE] = (zend_rc_dtor_func_t)zend_reference_destroy,
[IS_CONSTANT_AST] = (zend_rc_dtor_func_t)zend_ast_ref_destroy
};
ZEND_API void ZEND_FASTCALL rc_dtor_func(zend_refcounted *p)