|
|
|
|
@@ -4244,11 +4244,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLE
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -4925,11 +4929,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -5932,11 +5940,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -6648,11 +6660,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDL
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -7388,11 +7404,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_A
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -9428,11 +9448,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -10111,11 +10135,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -11120,11 +11148,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -11695,11 +11727,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -12375,11 +12411,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -16257,11 +16297,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -18320,11 +18364,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_AR
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -20764,11 +20812,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_AR
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -21906,11 +21958,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -24018,11 +24074,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARG
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -25504,11 +25564,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDL
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -26807,11 +26871,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -28111,11 +28179,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -28531,11 +28603,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HAND
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -29831,11 +29907,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -33314,11 +33394,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_A
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -35240,11 +35324,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARG
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -37546,11 +37634,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -38541,11 +38633,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
@@ -40515,11 +40611,15 @@ static int ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
|
|
|
|
|
ZVAL_LONG(generator->key, generator->largest_used_integer_key);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* If a value is sent it should go into the result var */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var);
|
|
|
|
|
|
|
|
|
|
/* Initialize the sent value to NULL */
|
|
|
|
|
EX_T(opline->result.var).tmp_var = EG(uninitialized_zval);
|
|
|
|
|
if (RETURN_VALUE_USED(opline)) {
|
|
|
|
|
/* If the return value of yield is used set the send
|
|
|
|
|
* target and initialize it to NULL */
|
|
|
|
|
generator->send_target = &EX_T(opline->result.var).var.ptr;
|
|
|
|
|
Z_ADDREF(EG(uninitialized_zval));
|
|
|
|
|
EX_T(opline->result.var).var.ptr = &EG(uninitialized_zval);
|
|
|
|
|
} else {
|
|
|
|
|
generator->send_target = NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* We increment to the next op, so we are at the correct position when the
|
|
|
|
|
* generator is resumed. */
|
|
|
|
|
|