summaryrefslogtreecommitdiff
path: root/Zend/zend_types.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2018-07-26 12:58:07 +0300
committerDmitry Stogov <dmitry@zend.com>2018-07-26 12:58:07 +0300
commitab8094c666048b747481df0b9da94e08cadc4160 (patch)
tree3ac94d92f4b07fe2d1d98db81203c85572bea82c /Zend/zend_types.h
parent7a41e4c0d0ddb2cfb91e31b210d7bceb158d2ab4 (diff)
downloadphp-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_types.h')
-rw-r--r--Zend/zend_types.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/Zend/zend_types.h b/Zend/zend_types.h
index fc0ae44fe1..7202ad9340 100644
--- a/Zend/zend_types.h
+++ b/Zend/zend_types.h
@@ -203,6 +203,7 @@ struct _zval_struct {
uint32_t fe_iter_idx; /* foreach iterator index */
uint32_t access_flags; /* class constant access flags */
uint32_t property_guard; /* single property guard */
+ uint32_t constant_flags; /* constant flags */
uint32_t extra; /* not further specified */
} u2;
};
@@ -449,6 +450,9 @@ static zend_always_inline zend_uchar zval_get_type(const zval* pz) {
#define Z_PROPERTY_GUARD(zval) (zval).u2.property_guard
#define Z_PROPERTY_GUARD_P(zval_p) Z_PROPERTY_GUARD(*(zval_p))
+#define Z_CONSTANT_FLAGS(zval) (zval).u2.constant_flags
+#define Z_CONSTANT_FLAGS_P(zval_p) Z_CONSTANT_FLAGS(*(zval_p))
+
#define Z_EXTRA(zval) (zval).u2.extra
#define Z_EXTRA_P(zval_p) Z_EXTRA(*(zval_p))