pike.git / src / interpret_functions.h

version» Context lines:

pike.git/src/interpret_functions.h:1610:    DONT_BRANCH();    pop_2_elems();    }   });      OPCODE0_BRANCH(F_FOREACH, "foreach", 0, { /* array, lvalue, i */    if(TYPEOF(Pike_sp[-4]) != PIKE_T_ARRAY)    PIKE_ERROR("foreach", "Bad argument 1.\n", Pike_sp-3, 1);    if(Pike_sp[-1].u.integer < Pike_sp[-4].u.array->size)    { -  if(Pike_sp[-1].u.integer < 0) +  DO_IF_DEBUG(if(Pike_sp[-1].u.integer < 0)    /* Isn't this an internal compiler error? /mast */ -  Pike_error("Foreach loop variable is negative!\n"); +  Pike_error("Foreach loop variable is negative!\n"));    assign_lvalue(Pike_sp-3, Pike_sp[-4].u.array->item + Pike_sp[-1].u.integer);    DO_BRANCH();    Pike_sp[-1].u.integer++;    DO_IF_DEBUG (    if (SUBTYPEOF(Pike_sp[-1]))    Pike_fatal ("Got unexpected subtype in loop variable.\n");    );    }else{    /* write_to_stderr("foreach\n", 8); */    DONT_BRANCH();