diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2019-05-23 10:41:27 +0200 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-05-23 10:41:27 +0200 |
| commit | c3ee12e7868dbc08da36e780eee80a9d3c2e30d1 (patch) | |
| tree | 5b3b13a66aa54acab89246a8ae3908c021eb0cf7 /Zend/zend_interfaces.c | |
| parent | b63cb6742123e9fe125cd4bc6c7ac0bdddf0f3b2 (diff) | |
| parent | 64918c770282c0f60b407e8de3201a6b68c88e78 (diff) | |
| download | php-git-c3ee12e7868dbc08da36e780eee80a9d3c2e30d1.tar.gz | |
Merge branch 'PHP-7.4'
Diffstat (limited to 'Zend/zend_interfaces.c')
| -rw-r--r-- | Zend/zend_interfaces.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_interfaces.c b/Zend/zend_interfaces.c index 4c9bb28310..90cceec38e 100644 --- a/Zend/zend_interfaces.c +++ b/Zend/zend_interfaces.c @@ -291,7 +291,7 @@ static int zend_implement_traversable(zend_class_entry *interface, zend_class_en return SUCCESS; } if (class_type->num_interfaces) { - ZEND_ASSERT(class_type->ce_flags & ZEND_ACC_LINKED); + ZEND_ASSERT(class_type->ce_flags & (ZEND_ACC_LINKED|ZEND_ACC_LINKING_IN_PROGRESS)); for (i = 0; i < class_type->num_interfaces; i++) { if (class_type->interfaces[i] == zend_ce_aggregate || class_type->interfaces[i] == zend_ce_iterator) { return SUCCESS; @@ -321,7 +321,7 @@ static int zend_implement_aggregate(zend_class_entry *interface, zend_class_entr } else if (class_type->get_iterator != zend_user_it_get_new_iterator) { /* c-level get_iterator cannot be changed (exception being only Traversable is implemented) */ if (class_type->num_interfaces) { - ZEND_ASSERT(class_type->ce_flags & ZEND_ACC_LINKED); + ZEND_ASSERT(class_type->ce_flags & (ZEND_ACC_LINKED|ZEND_ACC_LINKING_IN_PROGRESS)); for (i = 0; i < class_type->num_interfaces; i++) { if (class_type->interfaces[i] == zend_ce_iterator) { zend_error_noreturn(E_ERROR, "Class %s cannot implement both %s and %s at the same time", |
