From: Dmitry Stogov Date: Tue, 1 Apr 2014 10:19:43 +0000 (+0400) Subject: Added check for interned strings X-Git-Tag: POST_PHPNG_MERGE~412^2~190 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9b196ca6e872369263c55e66ceca0183f75d6420;p=php Added check for interned strings --- diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 9ba40dfc33..8dcaf29cdc 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -3871,6 +3871,7 @@ static zend_bool do_inherit_constant_check(HashTable *child_constants_table, con (Z_TYPE_P(old_constant) == IS_LONG && Z_LVAL_P(old_constant) != Z_LVAL_P(parent_constant)) || (Z_TYPE_P(old_constant) == IS_BOOL && Z_LVAL_P(old_constant) != Z_LVAL_P(parent_constant)) || (Z_TYPE_P(old_constant) == IS_DOUBLE && Z_DVAL_P(old_constant) != Z_DVAL_P(parent_constant)) || + (Z_TYPE_P(old_constant) == IS_STRING && Z_STR_P(old_constant) != Z_STR_P(parent_constant)) || (Z_REFCOUNTED_P(old_constant) && Z_COUNTED_P(old_constant) != Z_COUNTED_P(parent_constant))) { zend_error_noreturn(E_COMPILE_ERROR, "Cannot inherit previously-inherited or override constant %s from interface %s", hash_key->key->val, iface->name->val); }