pike.git / src / pike_types.c

version» Context lines:

pike.git/src/pike_types.c:54:   #define LE_A_GROUPED 4 /* Argument A has been grouped.    * Perform weaker checking for OR-nodes. */   #define LE_B_GROUPED 8 /* Argument B has been grouped.    * Perform weaker checking for OR-nodes. */   #define LE_A_B_GROUPED 12 /* Both the above two flags. */   #endif   #define LE_USE_HANDLERS 16 /* Call handlers if appropriate. */      /*    * Flags used by low_get_first_arg_type() +  * +  * Note that these differ for the flags to get_first_arg_type().    */   #define FILTER_KEEP_VOID 1 /* Keep void during the filtering. */      /*    * Flags used as flag_method to mk_type()    */   #define PT_COPY_CAR 1   #define PT_COPY_CDR 2   #define PT_COPY_BOTH 3   #define PT_IS_MARKER 4 /* The node is a marker. */
pike.git/src/pike_types.c:5205:    if(p && n)    {    if(n->token == F_ARROW)    {    int i;    if((i = FIND_LFUN(p,LFUN_ARROW))!=-1 ||    (i = FIND_LFUN(p,LFUN_ASSIGN_ARROW))!=-1)    {    /* Get the type of the first argument of the function. */    struct pike_type *res = -  get_first_arg_type(ID_FROM_INT(p, i)->type, 0); +  get_first_arg_type(ID_FROM_INT(p, i)->type, CALL_NOT_LAST_ARG);    if (res) return res;    /* FIXME: Warn? */    add_ref(string_type_string);    return string_type_string;    }    }else{    int i;    if((i = FIND_LFUN(p,LFUN_INDEX)) != -1 ||    (i = FIND_LFUN(p,LFUN_ASSIGN_INDEX)) != -1)    {    /* Get the type of the first argument of the function. */    struct pike_type *res = -  get_first_arg_type(ID_FROM_INT(p, i)->type, 0); +  get_first_arg_type(ID_FROM_INT(p, i)->type, CALL_NOT_LAST_ARG);    if (res) return res;    /* FIXME: Warn? */    add_ref(mixed_type_string);    return mixed_type_string;    }    }    }    add_ref(string_type_string);    return string_type_string;    }