pike.git / src / pike_types.cmod

version» Context lines:

pike.git/src/pike_types.cmod:3811:    free_type(ret);    return low_match_types(a->cdr, b, flags);       case T_OR:    ret = low_match_types(a->car, b, flags);    if(ret && !(flags & NO_SHORTCUTS)) return ret;    if(ret)    {    struct pike_type *t = low_match_types(a->cdr, b, flags);    if (t) { +  type_stack_mark(); +  push_finished_type(ret); +  push_finished_type(t); +  push_type(T_OR); +  free_type(ret);    free_type(t); -  +  ret = pop_unfinished_type();    }    return ret;    }else{    return low_match_types(a->cdr, b, flags);    }       case PIKE_T_RING:    return low_match_types(a->car, b, flags);       case PIKE_T_SCOPE:
pike.git/src/pike_types.cmod:3938:    free_type(ret);    return low_match_types(a, b->cdr, flags);       case T_OR:    ret = low_match_types(a, b->car, flags);    if(ret && !(flags & NO_SHORTCUTS)) return ret;    if(ret)    {    struct pike_type *t = low_match_types(a, b->cdr, flags);    if (t) { +  type_stack_mark(); +  push_finished_type(ret); +  push_finished_type(t); +  push_type(T_OR); +  free_type(ret);    free_type(t); -  +  ret = pop_unfinished_type();    }    return ret;    }else{    return low_match_types(a, b->cdr, flags);    }       case PIKE_T_RING:    return low_match_types(a, b->car, flags);       case PIKE_T_SCOPE: