pike.git / src / interpret_functions.h

version» Context lines:

pike.git/src/interpret_functions.h:1:   /*   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: interpret_functions.h,v 1.166 2004/03/13 15:44:13 grubba Exp $ + || $Id: interpret_functions.h,v 1.167 2004/04/03 21:53:49 mast Exp $   */      /*    * Opcode definitions for the interpreter.    */      #include "global.h"      #undef CJUMP   #undef AUTO_BIGNUM_LOOP_TEST
pike.git/src/interpret_functions.h:2103:    DO_DUMB_RETURN;    }   });      #undef DO_CALL_BUILTIN   #ifdef PIKE_DEBUG   #define DO_CALL_BUILTIN(ARGS) do { \    int args=(ARGS); \    struct svalue *expected_stack=Pike_sp-args; \    struct svalue *s=&Pike_fp->context.prog->constants[arg1].sval; \ -  if(Pike_interpreter.trace_level>1) \ +  if(Pike_interpreter.trace_level) \    { \    dynamic_buffer save_buf; \    init_buf(&save_buf); \ -  describe_svalue(s, 0,0); \ +  if (s->u.efun->name->size_shift) \ +  my_strcat ("[widestring function name]"); \ +  else \ +  my_strcat (s->u.efun->name->str); \    do_trace_call(args, &save_buf); \    } \    (*(s->u.efun->function))(args); \    s->u.efun->runs++; \    if(Pike_sp != expected_stack + !s->u.efun->may_return_void) \    { \    if(Pike_sp < expected_stack) \    Pike_fatal("Function popped too many arguments: %s\n", \    s->u.efun->name->str); \    if(Pike_sp>expected_stack+1) \
pike.git/src/interpret_functions.h:2129:    Pike_sp-(expected_stack+1), \    s->u.efun->name->str); \    if(Pike_sp == expected_stack && !s->u.efun->may_return_void) \    Pike_fatal("Non-void function returned without return value " \    "on stack: %s %d\n", \    s->u.efun->name->str,s->u.efun->may_return_void); \    if(Pike_sp==expected_stack+1 && s->u.efun->may_return_void) \    Pike_fatal("Void function returned with a value on the stack: %s %d\n", \    s->u.efun->name->str, s->u.efun->may_return_void); \    } \ -  if(Pike_interpreter.trace_level>1 && Pike_sp>expected_stack) \ -  trace_return_value(); \ +  if(Pike_interpreter.trace_level>1) { \ +  dynamic_buffer save_buf; \ +  init_buf(&save_buf); \ +  if (s->u.efun->name->size_shift) \ +  my_strcat ("[widestring function name]"); \ +  else \ +  my_strcat (s->u.efun->name->str); \ +  my_strcat ("() "); \ +  do_trace_return (Pike_sp>expected_stack, &save_buf); \ +  } \   }while(0)   #else   #define DO_CALL_BUILTIN(ARGS) \   (*(Pike_fp->context.prog->constants[arg1].sval.u.efun->function))(ARGS)   #endif      OPCODE1(F_CALL_BUILTIN, "call builtin", I_UPDATE_ALL, {    DO_CALL_BUILTIN(DO_NOT_WARN((INT32)(Pike_sp - *--Pike_mark_sp)));   });