pike.git / src / encode.c

version» Context lines:

pike.git/src/encode.c:435:    }    return;    } else if (t->type == T_ARRAY) {    if (t->car != int_pos_type_string) {    /* Limited length array. */    addchar(PIKE_T_LARRAY);    EDB(1, {    ENCODE_WERR(".type larray");    });    encode_type(t->car, data); -  t = t->cdr; -  goto one_more_type; -  } -  addchar(t->type); +  } else { +  addchar(T_ARRAY ^ MIN_REF_TYPE);    EDB(1, {    ENCODE_WERR(".type %s",    get_name_of_type(t->type));    }); -  +  } +  t = t->cdr; +  goto one_more_type;    } else if (t->type <= MAX_TYPE) {    addchar(t->type ^ MIN_REF_TYPE);    EDB(1, {    ENCODE_WERR(".type %s",    get_name_of_type(t->type));    });    } else {    addchar(t->type);    EDB(1, {    ENCODE_WERR(".type %s",
pike.git/src/encode.c:516:    t = t->cdr;    goto one_more_type;       case T_MAPPING:    case T_OR:    case T_AND:    encode_type(t->car, data);    t = t->cdr;    goto one_more_type;    -  case T_ARRAY: -  t = t->cdr; -  goto one_more_type; -  +     case T_TYPE:    case T_PROGRAM:    case T_MULTISET:    case T_NOT:    t = t->car;    goto one_more_type;       case T_INT:    {    ptrdiff_t val;