pike.git / src / las.cmod

version» Context lines:

pike.git/src/las.cmod:4601:    n=0;    break;       case 1:    if(Pike_compiler->catch_level && SAFE_IS_ZERO(Pike_sp-1))    {    pop_stack();    return n;    }    new = mksvaluenode(Pike_sp-1); -  if (n->type && (!new->type || !pike_types_le(new->type, n->type))) { +  if (new->type && +  ((new->type->type == PIKE_T_INT) || (new->type->type == PIKE_T_TYPE))) { +  /* Ok. */ +  } else if (n->type && (!new->type || !pike_types_le(new->type, n->type))) { +  /* Try consolidating the type information. */    new = mksoftcastnode(n->type, new);    }    free_node(n);    n = new;    pop_stack();    break;       default:    if (n->token != F_SOFT_CAST) {    free_node(n);