pike.git / src / interpret.c

version» Context lines:

pike.git/src/interpret.c:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/   /**/   #include "global.h" - RCSID("$Id: interpret.c,v 1.145 2001/03/09 02:51:18 hubbe Exp $"); + RCSID("$Id: interpret.c,v 1.146 2003/01/30 13:45:16 grubba Exp $");   #include "interpret.h"   #include "object.h"   #include "program.h"   #include "svalue.h"   #include "array.h"   #include "mapping.h"   #include "error.h"   #include "language.h"   #include "stralloc.h"   #include "constants.h"
pike.git/src/interpret.c:604:   #ifdef AUTO_BIGNUM   #define AUTO_BIGNUM_LOOP_TEST(X,Y) INT_TYPE_ADD_OVERFLOW(X,Y)   #else   #define AUTO_BIGNUM_LOOP_TEST(X,Y) 0   #endif      #define LOOP(ID, INC, OP2, OP4) \   CASE(ID) \   { \    union anything *i=get_pointer_if_this_type(sp-2, T_INT); \ -  if(i && !AUTO_BIGNUM_LOOP_TEST(i->integer,INC)) \ +  if(i && !AUTO_BIGNUM_LOOP_TEST(i->integer,INC) && \ +  sp[-3].type == T_INT) \    { \    i->integer += INC; \    if(i->integer OP2 sp[-3].u.integer) \    { \    pc+=EXTRACT_INT(pc); \    fast_check_threads_etc(8); \    }else{ \    pc+=sizeof(INT32); \    } \    }else{ \