pike.git / src / pike_types.cmod

version» Context lines:

pike.git/src/pike_types.cmod:3562:    }    else    {    push_type(T_ZERO);       if (lower_and_pike_types(t1, t2)) {    /* t1 contains complex types. */    if (low_and_push_complex_pike_type(t2)) {    /* t2 also contains complex types. */    low_and_push_complex_pike_type(t1); -  push_type(T_AND); +  push_reverse_joiner_type(T_AND);    push_type(T_OR);    }    }    /* push_finished_type(t1); */    /* very_low_and_pike_types(t2,t1); */    }   }      struct pike_type *and_pike_types(struct pike_type *a,    struct pike_type *b)
pike.git/src/pike_types.cmod:3849:    * ==>    *    * function(t...:x) |    * function(t, @transitive(function(t...:x),    * function(x, a, b, c, ...:c)))) |    * expand(transitive(function(a, b, ...: c),    * function(x, a, b, ...:c)))    */    DECLARE_CYCLIC();    -  push_finished_type(cont); +  push_finished_type_with_markers(cont, markers, 0);       if (!BEGIN_CYCLIC(cont, trans)) {    SET_CYCLIC_RET(1);       /* Check many arg. */    push_finished_type_with_markers(cont->car, markers, 0);    if (peek_type_stack()->type != T_VOID) {    push_finished_type(trans);    push_finished_type(cont);    push_type(PIKE_T_TRANSITIVE);