pike.git / src / opcodes.c

version» Context lines:

pike.git/src/opcodes.c:15:   #include "opcodes.h"   #include "object.h"   #include "error.h"   #include "pike_types.h"   #include "pike_memory.h"   #include "fd_control.h"   #include "cyclic.h"   #include "builtin_functions.h"   #include "module_support.h"    - RCSID("$Id: opcodes.c,v 1.31 1998/10/09 23:33:39 grubba Exp $"); + RCSID("$Id: opcodes.c,v 1.32 1998/11/22 11:03:05 hubbe Exp $");      void index_no_free(struct svalue *to,struct svalue *what,struct svalue *ind)   {    INT32 i;    switch(what->type)    {    case T_ARRAY:    simple_array_index_no_free(to,what->u.array,ind);    break;   
pike.git/src/opcodes.c:333:    }    }    return;       default:    error("Cannot cast %s to a program.\n",get_name_of_type(sp[-1].type));    }    }    }    - #ifdef DEBUG + #ifdef PIKE_DEBUG    if(run_time_type != sp[-1].type)    fatal("Internal error: Cast failed (run_time_type = %d, sp[-1].type = %d.)\n",run_time_type,sp[-1].type);   #endif       switch(run_time_type)    {    case T_ARRAY:    {    struct pike_string *itype;    INT32 run_time_itype;
pike.git/src/opcodes.c:360:    struct array *a;    struct array *tmp=sp[-2].u.array;    DECLARE_CYCLIC();       if((a=(struct array *)BEGIN_CYCLIC(tmp,0)))    {    ref_push_array(a);    }else{    INT32 e,i;    struct pike_string *s; - #ifdef DEBUG + #ifdef PIKE_DEBUG    struct svalue *save_sp=sp+1;   #endif    push_array(a=allocate_array(tmp->size));    SET_CYCLIC_RET(a);       for(e=0;e<a->size;e++)    {    push_svalue(tmp->item+e);    o_cast(itype, run_time_itype);    array_set_index(a,e,sp-1);    pop_stack();    } - #ifdef DEBUG + #ifdef PIKE_DEBUG    if(save_sp!=sp)    fatal("o_cast left stack droppings.\n");   #endif    END_CYCLIC();    }    assign_svalue(sp-3,sp-1);    pop_stack();    }    pop_stack();    }    }   }         void f_cast(void)   { - #ifdef DEBUG + #ifdef PIKE_DEBUG    struct svalue *save_sp=sp;   #endif    o_cast(sp[-2].u.string,    compile_type_to_runtime_type(sp[-2].u.string)); - #ifdef DEBUG + #ifdef PIKE_DEBUG    if(save_sp != sp)    fatal("Internal error: o_cast() left droppings on stack.\n");   #endif    free_svalue(sp-2);    sp[-2]=sp[-1];    sp--;   }         /*
pike.git/src/opcodes.c:600:    return matches;    }    eye++;    }    if(cnt>=match_len)    {    chars_matched[0]=eye;    return matches;    }    - #ifdef DEBUG + #ifdef PIKE_DEBUG    if(match[cnt]!='%' || match[cnt+1]=='%')    {    fatal("Error in sscanf.\n");    }   #endif       no_assign=0;    field_length=-1;       cnt++;
pike.git/src/opcodes.c:1102:    break;    }    matches++;       if(no_assign)    {    free_svalue(&sval);    }else{    check_stack(1);    *sp++=sval; - #ifdef DEBUG + #ifdef PIKE_DEBUG    sval.type=99;   #endif    }    }    chars_matched[0]=eye;    success[0]=1;    return matches;   }      void o_sscanf(INT32 args)   { - #ifdef DEBUG + #ifdef PIKE_DEBUG    extern int t_flag;   #endif    INT32 e,i;    int x;    long matched_chars;    struct svalue *save_sp=sp;       if(sp[-args].type != T_STRING)    error("Bad argument 1 to sscanf().\n");   
pike.git/src/opcodes.c:1142:    &matched_chars,    &x);       if(sp-save_sp > args/2-1)    error("Too few arguments for sscanf format.\n");       for(x=0;x<sp-save_sp;x++)    assign_lvalue(save_sp-args+2+x*2,save_sp+x);    pop_n_elems(sp-save_sp +args);    - #ifdef DEBUG + #ifdef PIKE_DEBUG    if(t_flag >2)    {    int nonblock;    if((nonblock=query_nonblocking(2)))    set_nonblocking(2,0);       fprintf(stderr,"- Matches: %ld\n",(long)i);    if(nonblock)    set_nonblocking(2,1);    }   #endif    push_int(i);   }      void f_sscanf(INT32 args)   { - #ifdef DEBUG + #ifdef PIKE_DEBUG    extern int t_flag;   #endif    INT32 e,i;    int x;    long matched_chars;    struct svalue *save_sp=sp;    struct array *a;       check_all_args("array_sscanf",args,BIT_STRING, BIT_STRING,0);