diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2018-07-26 12:58:07 +0300 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2018-07-26 12:58:07 +0300 |
| commit | ab8094c666048b747481df0b9da94e08cadc4160 (patch) | |
| tree | 3ac94d92f4b07fe2d1d98db81203c85572bea82c /Zend/zend_compile.c | |
| parent | 7a41e4c0d0ddb2cfb91e31b210d7bceb158d2ab4 (diff) | |
| download | php-git-ab8094c666048b747481df0b9da94e08cadc4160.tar.gz | |
Pack zend_constant.flags and zend_constant.module_number into reserved space inside zend_constant.value.
Diffstat (limited to 'Zend/zend_compile.c')
| -rw-r--r-- | Zend/zend_compile.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index fa879c8d3c..99448f43ff 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -1366,7 +1366,7 @@ ZEND_API int zend_unmangle_property_name_ex(const zend_string *name, const char static zend_constant *zend_lookup_reserved_const(const char *name, size_t len) /* {{{ */ { zend_constant *c = zend_hash_find_ptr_lc(EG(zend_constants), name, len); - if (c && !(c->flags & CONST_CS) && (c->flags & CONST_CT_SUBST)) { + if (c && !(ZEND_CONSTANT_FLAGS(c) & CONST_CS) && (ZEND_CONSTANT_FLAGS(c) & CONST_CT_SUBST)) { return c; } return NULL; @@ -1380,9 +1380,9 @@ static zend_bool zend_try_ct_eval_const(zval *zv, zend_string *name, zend_bool i /* Substitute case-sensitive (or lowercase) constants */ c = zend_hash_find_ptr(EG(zend_constants), name); if (c && ( - ((c->flags & CONST_PERSISTENT) + ((ZEND_CONSTANT_FLAGS(c) & CONST_PERSISTENT) && !(CG(compiler_options) & ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION) - && (!(c->flags & CONST_NO_FILE_CACHE) || !(CG(compiler_options) & ZEND_COMPILE_WITH_FILE_CACHE))) + && (!(ZEND_CONSTANT_FLAGS(c) & CONST_NO_FILE_CACHE) || !(CG(compiler_options) & ZEND_COMPILE_WITH_FILE_CACHE))) || (Z_TYPE(c->value) < IS_OBJECT && !(CG(compiler_options) & ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION)) )) { ZVAL_COPY_OR_DUP(zv, &c->value); |
