pike.git / src / pike_types.c

version» Context lines:

pike.git/src/pike_types.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: pike_types.c,v 1.175 2001/03/31 16:04:34 grubba Exp $"); + RCSID("$Id: pike_types.c,v 1.176 2001/03/31 16:07:39 grubba Exp $");   #include <ctype.h>   #include "svalue.h"   #include "pike_types.h"   #include "stralloc.h"   #include "stuff.h"   #include "array.h"   #include "program.h"   #include "constants.h"   #include "object.h"   #include "multiset.h"
pike.git/src/pike_types.c:1769:    push_finished_type(t2);    }    else if(t1->type == T_MIXED || t2->type == T_MIXED)    {    push_type(T_MIXED);    }    else if(t1->type == T_INT && t2->type == T_INT)    {    INT32 min, max;    -  if (MINIMUM((ptrdiff_t)t1->cdr, (ptrdiff_t)t2->cdr) < -  MAXIMUM((ptrdiff_t)t1->car, (ptrdiff_t)t2->car)) { +  if ((((ptrdiff_t)t1->cdr) + 1 < (ptrdiff_t)t2->car) || +  (((ptrdiff_t)t2->cdr) + 1 < (ptrdiff_t)t1->car)) {    /* No overlap. */    push_finished_type(t1);    push_finished_type(t2);    push_type(T_OR);    } else {    /* Overlap */    min = MINIMUM((ptrdiff_t)t1->car, (ptrdiff_t)t2->car);    max = MAXIMUM((ptrdiff_t)t1->cdr, (ptrdiff_t)t2->cdr);       push_int_type(min, max);