pike.git / src / pike_types.cmod

version» Context lines:

pike.git/src/pike_types.cmod:2216:    }    }    if (s->car->type != T_VOID) {    simple_describe_type(s->car);    fprintf(stderr, "...");    }    fprintf(stderr, ":");    simple_describe_type(s->cdr);    fprintf(stderr, ")");    break; -  case T_ARRAY: +  case T_ARRAY: /* FIXME: cdr */    fprintf(stderr, "array(");    if (s->car != int_pos_type_string) {    simple_describe_type(s->car);    fprintf(stderr, ":");    }    simple_describe_type(s->cdr);    fprintf(stderr, ")");    break;    case T_MAPPING:    fprintf(stderr, "mapping(");
pike.git/src/pike_types.cmod:5231:    case T_TYPE:    case PIKE_T_RING:    case T_VOID:    case T_FLOAT:    case T_MULTISET:    case T_MAPPING:    /* Illegal range operation. */    /* FIXME: Strict type warning. */    return 0;    -  case T_ARRAY: +  case T_ARRAY: /* FIXME: cdr */    case T_STRING:    /* Check that the index types are compatible with int. */    {    if (index1_type && !low_match_types(int_type_string, index1_type, 0)) {    ref_push_type_value(t);    yytype_report(REPORT_WARNING, NULL, 0, int_type_string,    NULL, 0, index1_type,    1, "Bad argument 1 to range operator on %O.");    /* Bad index1 type. */    return 0;
pike.git/src/pike_types.cmod:5419:    }       case T_AND:    /* FIXME: Shouldn't this look at both branches? */    return low_key_type(t->cdr, n);       case PIKE_T_NAME:    case PIKE_T_ATTRIBUTE:    return low_key_type(t->cdr, n);    -  case T_ARRAY: +  case T_ARRAY: /* FIXME: cdr */    case T_STRING: /* always int */    add_ref(int_type_string);    return int_type_string;       case T_MAPPING:    case T_MULTISET:    copy_pike_type(t, t->car);    return t;    }   }