summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_compile.c2
-rw-r--r--Zend/zend_execute.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index 768605e3bb..163d867b18 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -152,7 +152,7 @@ ZEND_API zend_bool zend_is_compiling(TSRMLS_D)
static zend_uint get_temporary_variable(zend_op_array *op_array)
{
- return (op_array->T)++;
+ return (op_array->T)++ * sizeof(temp_variable);
}
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 6836feca61..80187c6efe 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -46,8 +46,8 @@ static void zend_extension_fcall_end_handler(zend_extension *extension, zend_op_
#define RETURN_VALUE_USED(opline) (!((opline)->result.u.EA.type & EXT_TYPE_UNUSED))
-#define EX_T(offset) EX(Ts)[offset]
-#define T(offset) Ts[offset]
+#define EX_T(offset) (*(temp_variable *)((char *) EX(Ts) + offset))
+#define T(offset) (*(temp_variable *)((char *) Ts + offset))
static inline zval *_get_zval_ptr(znode *node, temp_variable *Ts, zval **should_free TSRMLS_DC)
{