]> granicus.if.org Git - php/commitdiff
Fixed IS_REFERENCE support
authorDmitry Stogov <dmitry@zend.com>
Thu, 6 Mar 2014 09:59:15 +0000 (13:59 +0400)
committerDmitry Stogov <dmitry@zend.com>
Thu, 6 Mar 2014 09:59:15 +0000 (13:59 +0400)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index b67cd89d433658789dac608afe6c88063dc07c8a..5836f7e537f8ce494aa71366f2eb5012398adbb7 100644 (file)
@@ -3772,7 +3772,7 @@ ZEND_VM_HANDLER(72, ZEND_ADD_ARRAY_ELEMENT, CONST|TMP|VAR|CV, CONST|TMP|VAR|UNUS
 
        if (OP2_TYPE != IS_UNUSED) {
                zend_free_op free_op2;
-               zval *offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
+               zval *offset = GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
index 1a6486d2a8c36a61b83686c7a5b985ca816d2e19..ce633e58a14318c13f0a513f344b7020649e985a 100644 (file)
@@ -5657,7 +5657,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_VAR_HANDLER(ZEND_OPC
 
        if (IS_VAR != IS_UNUSED) {
                zend_free_op free_op2;
-               zval *offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
+               zval *offset = _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -7226,7 +7226,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER(ZEND_OPCO
 
        if (IS_CV != IS_UNUSED) {
 
-               zval *offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
+               zval *offset = _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -10674,7 +10674,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_VAR_HANDLER(ZEND_OPCOD
 
        if (IS_VAR != IS_UNUSED) {
                zend_free_op free_op2;
-               zval *offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
+               zval *offset = _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -12063,7 +12063,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER(ZEND_OPCODE
 
        if (IS_CV != IS_UNUSED) {
 
-               zval *offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
+               zval *offset = _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -19912,7 +19912,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_VAR_HANDLER(ZEND_OPCOD
 
        if (IS_VAR != IS_UNUSED) {
                zend_free_op free_op2;
-               zval *offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
+               zval *offset = _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -23297,7 +23297,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER(ZEND_OPCODE
 
        if (IS_CV != IS_UNUSED) {
 
-               zval *offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
+               zval *offset = _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -36565,7 +36565,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_VAR_HANDLER(ZEND_OPCODE
 
        if (IS_VAR != IS_UNUSED) {
                zend_free_op free_op2;
-               zval *offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
+               zval *offset = _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {
@@ -39690,7 +39690,7 @@ static int ZEND_FASTCALL  ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_
 
        if (IS_CV != IS_UNUSED) {
 
-               zval *offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
+               zval *offset = _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
                ulong hval;
 
                switch (Z_TYPE_P(offset)) {