pike.git / src / operators.c

version» Context lines:

pike.git/src/operators.c:3825:    *! @[`+()], @[`-()], @[`/()], @[lfun::`*()], @[lfun::``*()]    */   PMOD_EXPORT void f_multiply(INT32 args)   {    switch(args)    {    case 0: SIMPLE_WRONG_NUM_ARGS_ERROR("`*", 1);    case 1: return;    case 2: o_multiply(); return;    default: -  if(TYPEOF(sp[-args]) == T_OBJECT) +     { -  CALL_OPERATOR(LFUN_MULTIPLY, args); -  } else { +     INT32 i = -args, j = -1;    /* Reverse the arguments */    while(i < j) {    struct svalue tmp = sp[i];    sp[i++] = sp[j];    sp[j--] = tmp;    }    while(--args > 0) {    /* Restore the order, and multiply */    stack_swap();