Branch: Tag:

2020-01-07

2020-01-07 11:01:11 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler: Set the length type for array types.

755:    get_name_of_type(t), t);    }   #endif -  /* FIXME: Set car to unlimited length. */ +  push_int_type(0, MAX_INT32);    push_type(t);   }   
908:    case T_TUPLE:    case T_MAPPING:    case PIKE_T_RING: +  case T_ARRAY: +  case T_STRING:    /* Make a new type of the top two types. */    --Pike_compiler->type_stackp;    *Pike_compiler->type_stackp = mk_type(type,
938:    PT_COPY_CAR);    break;    -  case T_ARRAY: -  case T_STRING: -  /* Make a new type of the top type, and put it in cdr. */ -  *Pike_compiler->type_stackp = mk_type(type, -  NULL, *Pike_compiler->type_stackp, -  PT_COPY_CDR); -  break; -  +     case T_SCOPE:    case T_ASSIGN:    case T_INT:
1078:    case T_OR:    case T_AND:    case PIKE_T_RING: +  case PIKE_T_ARRAY: +  case PIKE_T_STRING:    {    /* Binary type-node. -- swap the types. */    struct pike_type *tmp = Pike_compiler->type_stackp[0];