Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions Zend/zend_compile.c
Original file line number Diff line number Diff line change
Expand Up @@ -1417,7 +1417,7 @@ static zend_string *resolve_class_name(zend_string *name, const zend_class_entry
}

static zend_string *add_intersection_type(zend_string *str,
const zend_type_list *intersection_type_list, zend_class_entry *scope,
const zend_type_list *intersection_type_list,
bool is_bracketed)
{
const zend_type *single_type;
Expand All @@ -1442,19 +1442,19 @@ static zend_string *add_intersection_type(zend_string *str,
return str;
}

zend_string *zend_type_to_string_resolved(const zend_type type, zend_class_entry *scope) {
zend_string *zend_type_to_string_resolved(const zend_type type, const zend_class_entry *scope) {
zend_string *str = NULL;

/* Pure intersection type */
if (ZEND_TYPE_IS_INTERSECTION(type)) {
ZEND_ASSERT(!ZEND_TYPE_IS_UNION(type));
str = add_intersection_type(str, ZEND_TYPE_LIST(type), scope, /* is_bracketed */ false);
str = add_intersection_type(str, ZEND_TYPE_LIST(type), /* is_bracketed */ false);
} else if (ZEND_TYPE_HAS_LIST(type)) {
/* A union type might not be a list */
const zend_type *list_type;
ZEND_TYPE_LIST_FOREACH(ZEND_TYPE_LIST(type), list_type) {
if (ZEND_TYPE_IS_INTERSECTION(*list_type)) {
str = add_intersection_type(str, ZEND_TYPE_LIST(*list_type), scope, /* is_bracketed */ true);
str = add_intersection_type(str, ZEND_TYPE_LIST(*list_type), /* is_bracketed */ true);
continue;
}
ZEND_ASSERT(!ZEND_TYPE_HAS_LIST(*list_type));
Expand Down
2 changes: 1 addition & 1 deletion Zend/zend_compile.h
Original file line number Diff line number Diff line change
Expand Up @@ -1034,7 +1034,7 @@ int ZEND_FASTCALL zendlex(zend_parser_stack_elem *elem);

void zend_assert_valid_class_name(const zend_string *const_name, const char *type);

zend_string *zend_type_to_string_resolved(zend_type type, zend_class_entry *scope);
zend_string *zend_type_to_string_resolved(zend_type type, const zend_class_entry *scope);
ZEND_API zend_string *zend_type_to_string(zend_type type);

/* class fetches */
Expand Down
20 changes: 10 additions & 10 deletions Zend/zend_inheritance.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ static void add_property_hook_obligation(
zend_class_entry *ce, const zend_property_info *hooked_prop, const zend_function *hook_func);

static void ZEND_COLD emit_incompatible_method_error(
const zend_function *child, zend_class_entry *child_scope,
const zend_function *parent, zend_class_entry *parent_scope,
const zend_function *child, const zend_class_entry *child_scope,
const zend_function *parent, const zend_class_entry *parent_scope,
inheritance_status status);

static void zend_type_copy_ctor(zend_type *const type, bool use_arena, bool persistent);
Expand Down Expand Up @@ -320,7 +320,7 @@ static bool unlinked_instanceof(const zend_class_entry *ce1, const zend_class_en
}

if (ce1->parent) {
zend_class_entry *parent_ce;
const zend_class_entry *parent_ce;
if (ce1->ce_flags & ZEND_ACC_RESOLVED_PARENT) {
parent_ce = ce1->parent;
} else {
Expand Down Expand Up @@ -671,7 +671,7 @@ static inheritance_status zend_is_intersection_subtype_of_type(
return early_exit_status == INHERITANCE_ERROR ? INHERITANCE_SUCCESS : INHERITANCE_ERROR;
}

ZEND_API inheritance_status zend_perform_covariant_type_check(
static inheritance_status zend_perform_covariant_type_check(
zend_class_entry *fe_scope, const zend_type fe_type,
zend_class_entry *proto_scope, const zend_type proto_type)
{
Expand Down Expand Up @@ -763,8 +763,8 @@ ZEND_API inheritance_status zend_perform_covariant_type_check(
}

static inheritance_status zend_do_perform_arg_type_hint_check(
zend_class_entry *fe_scope, zend_arg_info *fe_arg_info,
zend_class_entry *proto_scope, zend_arg_info *proto_arg_info) /* {{{ */
zend_class_entry *fe_scope, const zend_arg_info *fe_arg_info,
zend_class_entry *proto_scope, const zend_arg_info *proto_arg_info) /* {{{ */
{
if (!ZEND_TYPE_IS_SET(fe_arg_info->type) || ZEND_TYPE_PURE_MASK(fe_arg_info->type) == MAY_BE_ANY) {
/* Child with no type or mixed type is always compatible */
Expand Down Expand Up @@ -897,7 +897,7 @@ static inheritance_status zend_do_perform_implementation_check(
/* }}} */

static ZEND_COLD void zend_append_type_hint(
smart_str *str, zend_class_entry *scope, const zend_arg_info *arg_info, bool return_hint) /* {{{ */
smart_str *str, const zend_class_entry *scope, const zend_arg_info *arg_info, bool return_hint) /* {{{ */
{
if (ZEND_TYPE_IS_SET(arg_info->type)) {
zend_string *type_str = zend_type_to_string_resolved(arg_info->type, scope);
Expand All @@ -911,7 +911,7 @@ static ZEND_COLD void zend_append_type_hint(
/* }}} */

static ZEND_COLD zend_string *zend_get_function_declaration(
const zend_function *fptr, zend_class_entry *scope) /* {{{ */
const zend_function *fptr, const zend_class_entry *scope) /* {{{ */
{
smart_str str = {0};

Expand Down Expand Up @@ -1054,8 +1054,8 @@ static zend_always_inline uint32_t func_lineno(const zend_function *fn) {
}

static void ZEND_COLD emit_incompatible_method_error(
const zend_function *child, zend_class_entry *child_scope,
const zend_function *parent, zend_class_entry *parent_scope,
const zend_function *child, const zend_class_entry *child_scope,
const zend_function *parent, const zend_class_entry *parent_scope,
inheritance_status status) {
zend_string *parent_prototype = zend_get_function_declaration(parent, parent_scope);
zend_string *child_prototype = zend_get_function_declaration(child, child_scope);
Expand Down
Loading