pike.git / src / pike_types.c

version» Context lines:

pike.git/src/pike_types.c:6022:    res = match_type_svalue(type->car, 0, sval) ||    match_type_svalue(type->cdr, 0, sval);    break;    case T_AND:    res = match_type_svalue(type->car, 0, sval) ||    match_type_svalue(type->cdr, 0, sval);    case T_NOT:    flags ^= CALL_INVERTED_TYPES;    type = type->car;    goto loop; +  case T_VOID: +  /* Allow UNDEFINED for voidable arguments. */ +  res = (TYPEOF(*sval) == T_INT) && !sval->u.integer && SUBTYPEOF(*sval); +  break; +  case T_ZERO: +  res = SAFE_IS_ZERO(sval); +  break;    case PIKE_T_TYPE:    res = 1;    break;    case PIKE_T_PROGRAM:    case PIKE_T_FUNCTION:    case T_MANY:    /* FIXME: Identify if sval is callable. */    /* FIXME: Check arguments */    /* FIXME: Check return type */    res = 1;