pike.git / src / pike_types.cmod

version» Context lines:

pike.git/src/pike_types.cmod:13962:    maxres = (INT32)evaluate_binop_max(op,    (unsigned INT32)min1,    (unsigned INT32)max1,    (unsigned INT32)min2,    (unsigned INT32)max2);    break;    case PIKE_T_INT_OP_RANGE:    minres = min1;    maxres = max2;    break; +  case PIKE_T_INT_OP_MIN: +  if (min1 <= min2) { +  minres = min1; +  } else { +  minres = min2; +  } +  if (max1 <= max2) { +  maxres = max1; +  } else { +  maxres = max2; +  } +  break; +  case PIKE_T_INT_OP_MAX: +  if (min1 <= min2) { +  minres = min2; +  } else { +  minres = min1; +  } +  if (max1 <= max2) { +  maxres = max2; +  } else { +  maxres = max1; +  } +  break;    default:    Pike_fatal("low_type_int_op(): Unknown operator: 0x%04x\n", op);    break;    }       if (minres < MIN_INT32) minres = MIN_INT32;    else if (minres > MAX_INT32) minres = MAX_INT32;       if (maxres < MIN_INT32) maxres = MIN_INT32;    else if (maxres > MAX_INT32) maxres = MAX_INT32;
pike.git/src/pike_types.cmod:14070:    }    break;    case PIKE_T_FIND_LFUN:    res = find_lfun_type(arg1, (ptrdiff_t)(void*)arg2);    break;    case PIKE_T_INT_OP_SUB:    case PIKE_T_INT_OP_MUL:    case PIKE_T_INT_OP_AND:    case PIKE_T_INT_OP_XOR:    case PIKE_T_INT_OP_RANGE: +  case PIKE_T_INT_OP_MIN: +  case PIKE_T_INT_OP_MAX:    res = type_int_op(op, arg1, arg2);    break;    case PIKE_T_SET_CAR:    if (!arg1) return NULL;    switch(arg1->type) {    case PIKE_T_FUNCTION:    case PIKE_T_MANY:    case PIKE_T_RING:    case PIKE_T_TUPLE:    case PIKE_T_MAPPING: