summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2014-06-17 01:15:51 +0400
committerDmitry Stogov <dmitry@zend.com>2014-06-17 01:15:51 +0400
commita8e63d2b566841f915f9f61c22f76af4857b258a (patch)
treefff6778e8f2717ada51032f29b331fa32868652c
parent909acec2319d8343a6e14665e6c5731e6839af6d (diff)
downloadphp-git-a8e63d2b566841f915f9f61c22f76af4857b258a.tar.gz
Fixed support for constants inherited from interfaces
-rw-r--r--Zend/zend_compile.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index f950af6877..b48cf0dfeb 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -3897,6 +3897,9 @@ static void do_inherit_iface_constant(zend_string *name, zval *zv, zend_class_en
if (do_inherit_constant_check(&ce->constants_table, zv, name, iface)) {
ZVAL_MAKE_REF(zv);
Z_ADDREF_P(zv);
+ if (Z_CONSTANT_P(Z_REFVAL_P(zv))) {
+ ce->ce_flags &= ~ZEND_ACC_CONSTANTS_UPDATED;
+ }
zend_hash_update(&ce->constants_table, name, zv);
}
}