pike.git / src / las.cmod

version» Context lines:

pike.git/src/las.cmod:4040:    (Pike_compiler->compiler_pass == COMPILER_PASS_LAST)) {    struct pike_type *diff_type =    type_binop(PT_BINOP_MINUS, CAR(n)->type, array_type_string, 0, 0, 0);    if (diff_type) {    yytype_report(REPORT_WARNING, NULL, 0, array_type,    NULL, 0, diff_type,    0, "Bad argument to splice operator.");    free_type(diff_type);    }    } -  /* FIXME: The type field of the splice operator is not yet utilized. +  /* NOTE: The type field of the splice operator is used by +  * new_check_call_arg() in its call of check_splice_call().    * -  * It probably ought to be something similar to MANY(..., VOID). +  * NOTE: The type for the node keeps the array type in order to +  * keep track of the array length information (if any).    */ -  n->type = index_type(array_type, int_type_string, n); -  free_type(array_type); +  n->type = array_type;    } else {    copy_pike_type(n->type, mixed_type_string);    }    break;       case F_AUTO_MAP_MARKER:    if (!CAR(n) || (CAR(n)->type == void_type_string)) {    yyerror("Indexing a void expression.");    /* The optimizer converts this to an expression returning 0. */    copy_pike_type(n->type, zero_type_string);