Skip to content

Commit 93d3a61

Browse files
committed
Fixed support for references
1 parent 8bfc037 commit 93d3a61

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

Zend/zend_vm_def.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1509,7 +1509,7 @@ ZEND_VM_HANDLER(91, ZEND_FETCH_OBJ_IS, VAR|UNUSED|CV, CONST|TMP|VAR|CV)
15091509
zval *offset;
15101510

15111511
SAVE_OPLINE();
1512-
container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_IS);
1512+
container = GET_OP1_OBJ_ZVAL_PTR_DEREF(BP_VAR_IS);
15131513
offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
15141514

15151515
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||

Zend/zend_vm_execute.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14665,7 +14665,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_H
1466514665
zval *offset;
1466614666

1466714667
SAVE_OPLINE();
14668-
container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
14668+
container = _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
1466914669
offset = opline->op2.zv;
1467014670

1467114671
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -16947,7 +16947,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAN
1694716947
zval *offset;
1694816948

1694916949
SAVE_OPLINE();
16950-
container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
16950+
container = _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
1695116951
offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
1695216952

1695316953
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -19132,7 +19132,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAN
1913219132
zval *offset;
1913319133

1913419134
SAVE_OPLINE();
19135-
container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
19135+
container = _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
1913619136
offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
1913719137

1913819138
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -22561,7 +22561,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HAND
2256122561
zval *offset;
2256222562

2256322563
SAVE_OPLINE();
22564-
container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
22564+
container = _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
2256522565
offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
2256622566

2256722567
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -32105,7 +32105,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HA
3210532105
zval *offset;
3210632106

3210732107
SAVE_OPLINE();
32108-
container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
32108+
container = _get_zval_ptr_cv_deref_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
3210932109
offset = opline->op2.zv;
3211032110

3211132111
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -34170,7 +34170,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HAND
3417034170
zval *offset;
3417134171

3417234172
SAVE_OPLINE();
34173-
container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
34173+
container = _get_zval_ptr_cv_deref_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
3417434174
offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
3417534175

3417634176
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -36234,7 +36234,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HAND
3623436234
zval *offset;
3623536235

3623636236
SAVE_OPLINE();
36237-
container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
36237+
container = _get_zval_ptr_cv_deref_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
3623836238
offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
3623936239

3624036240
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||
@@ -39406,7 +39406,7 @@ static int ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDL
3940639406
zval *offset;
3940739407

3940839408
SAVE_OPLINE();
39409-
container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
39409+
container = _get_zval_ptr_cv_deref_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
3941039410
offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
3941139411

3941239412
if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT) ||

0 commit comments

Comments
 (0)