summaryrefslogtreecommitdiff
path: root/Zend/zend_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2019-02-14 13:12:50 +0300
committerDmitry Stogov <dmitry@zend.com>2019-02-14 13:12:50 +0300
commit43a7d95016761787cace63fb52e93e27e123d0cc (patch)
tree5c063c77d0ee0c0cc12e4ae15dc64602d216906c /Zend/zend_API.c
parent8b6dba25c784ef9f190f84ced351d9ccc16f0a91 (diff)
downloadphp-git-43a7d95016761787cace63fb52e93e27e123d0cc.tar.gz
Fixed bug #77613 (method visibility change) (reverted ZEND_ACC_CTOR and ZEND_ACC_DTOR flags removal)
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r--Zend/zend_API.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index 60f0e29931..f191ca25b9 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -2340,12 +2340,14 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_functio
scope->__isset = __isset;
scope->__debugInfo = __debugInfo;
if (ctor) {
+ ctor->common.fn_flags |= ZEND_ACC_CTOR;
if (ctor->common.fn_flags & ZEND_ACC_STATIC) {
zend_error(error_type, "Constructor %s::%s() cannot be static", ZSTR_VAL(scope->name), ZSTR_VAL(ctor->common.function_name));
}
ctor->common.fn_flags &= ~ZEND_ACC_ALLOW_STATIC;
}
if (dtor) {
+ dtor->common.fn_flags |= ZEND_ACC_DTOR;
if (dtor->common.fn_flags & ZEND_ACC_STATIC) {
zend_error(error_type, "Destructor %s::%s() cannot be static", ZSTR_VAL(scope->name), ZSTR_VAL(dtor->common.function_name));
}