summaryrefslogtreecommitdiff
path: root/Zend/zend_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2013-11-06 15:41:33 +0400
committerDmitry Stogov <dmitry@zend.com>2013-11-06 15:41:33 +0400
commitaf600c240d2efe33291e8dd71ce228b9fbc849c1 (patch)
tree9a0940e0e80bc92ba9c371f850a595f9347cbfb6 /Zend/zend_API.c
parentd87388ba0f6cf29eb495f9af96ab6aa353ebcc4f (diff)
parent18e2b1a9a930d5ae15544c5a2beed6b20d58cdee (diff)
downloadphp-git-af600c240d2efe33291e8dd71ce228b9fbc849c1.tar.gz
Merge branch 'const_scalar_exprs' of github.com:bwoebi/php-src into const_scalar_exprs
* 'const_scalar_exprs' of github.com:bwoebi/php-src: Removed operations on constant arrays. They make no sense as constants are not allowed to be arrays. And as just properties are allowed to; no problem, we still don't need operations on any constant array. Added a few more operators Whitespace fix converted several switches to ifs and made more opcache friendly Fatal error about self referencing constants fixed Fixed mem leaks, added tests and ternary operator Working commit for constant scalar expressions (with constants). Tests will follow. Conflicts: Zend/Makefile.am configure.in win32/build/config.w32
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r--Zend/zend_API.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index 5fa7fb908e..3687b6a67b 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -1053,8 +1053,7 @@ ZEND_API void zend_merge_properties(zval *obj, HashTable *properties, int destro
static int zval_update_class_constant(zval **pp, int is_static, int offset TSRMLS_DC) /* {{{ */
{
- if ((Z_TYPE_PP(pp) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT ||
- (Z_TYPE_PP(pp) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT_ARRAY) {
+ if (IS_CONSTANT_TYPE(Z_TYPE_PP(pp))) {
zend_class_entry **scope = EG(in_execution)?&EG(scope):&CG(active_class_entry);
if ((*scope)->parent) {
@@ -1078,7 +1077,7 @@ static int zval_update_class_constant(zval **pp, int is_static, int offset TSRML
}
ce = ce->parent;
} while (ce);
-
+
}
return zval_update_constant(pp, (void*)1 TSRMLS_CC);
}