VAR_SOURCE(op1) = NULL;
MAKE_NOP(src);
} else {
- zval c = ZEND_OP1_LITERAL(src);
- zval_copy_ctor(&c);
+ zval c;
+ ZVAL_DUP(&c, &ZEND_OP1_LITERAL(src));
if (zend_optimizer_update_op1_const(op_array, opline, &c)) {
zend_optimizer_remove_live_range(op_array, op1.var);
VAR_SOURCE(op1) = NULL;
src->op1_type == IS_CONST) {
znode_op op2 = opline->op2;
- zval c = ZEND_OP1_LITERAL(src);
+ zval c;
- zval_copy_ctor(&c);
+ ZVAL_DUP(&c, &ZEND_OP1_LITERAL(src));
if (zend_optimizer_update_op2_const(op_array, opline, &c)) {
zend_optimizer_remove_live_range(op_array, op2.var);
VAR_SOURCE(op2) = NULL;
/* JMP L, L: JMPZNZ L1,L2 -> JMPZNZ L1,L2 */
*last_op = *target;
if (last_op->op1_type == IS_CONST) {
- zval zv = ZEND_OP1_LITERAL(last_op);
- zval_copy_ctor(&zv);
+ zval zv;
+ ZVAL_DUP(&zv, &ZEND_OP1_LITERAL(last_op));
last_op->op1.constant = zend_optimizer_add_literal(op_array, &zv);
}
DEL_SOURCE(block, block->successors[0]);
/* JMP L, L: RETURN to immediate RETURN */
*last_op = *target;
if (last_op->op1_type == IS_CONST) {
- zval zv = ZEND_OP1_LITERAL(last_op);
- zval_copy_ctor(&zv);
+ zval zv;
+ ZVAL_DUP(&zv, &ZEND_OP1_LITERAL(last_op));
last_op->op1.constant = zend_optimizer_add_literal(op_array, &zv);
}
DEL_SOURCE(block, block->successors[0]);
m->op1_type == type &&
m->op1.var == var) {
zval v;
- ZVAL_COPY_VALUE(&v, val);
- zval_copy_ctor(&v);
+ ZVAL_DUP(&v, val);
if (Z_TYPE(v) == IS_STRING) {
zend_string_hash_val(Z_STR(v));
}
if (m->opcode == ZEND_CASE) {
m->opcode = ZEND_IS_EQUAL;
}
- ZVAL_COPY_VALUE(&v, val);
- zval_copy_ctor(&v);
+ ZVAL_DUP(&v, val);
if (Z_TYPE(v) == IS_STRING) {
zend_string_hash_val(Z_STR(v));
}
*p = emalloc(sizeof(soapHeader));
memset(*p, 0, sizeof(soapHeader));
ZVAL_NULL(&(*p)->function_name);
- (*p)->retval = *fault;
- zval_copy_ctor(&(*p)->retval);
+ ZVAL_DUP(&(*p)->retval, fault);
SOAP_SERVER_END_CODE();
}