Branch: Tag:

2022-07-12

2022-07-12 15:07:03 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler [Typechecker]: Add function name field to call_state.

1788:    * provide a function name (and we don't want    * warnings here anyway).    */ -  INIT_CALL_STATE(cs); +  INIT_CALL_STATE(cs, NULL);    a = check_splice_call(NULL, a, &cs, mixed_type_string, NULL,    CALL_INHIBIT_WARNINGS);    if (a) {
3828:    enum Pike_opcodes opcode = n->token;    struct call_state cs;    -  INIT_CALL_STATE(cs); -  +     switch(opcode) {    case F_AND_EQ:    efun_name = "`&";
3901:    * for new_check_call(),    */    n->token = F_ARG_LIST; +  INIT_CALL_STATE(cs, efun_string);    f = debug_malloc_pass(new_check_call(efun_string, f, n, &cs, 0));    n->token = opcode;    if (f) {
4119:    }   #endif    -  INIT_CALL_STATE(cs); +     name = get_name_of_function(CAR(n));      #ifdef PIKE_DEBUG
4128:    n->current_file, (long)n->line_number);   #endif /* PIKE_DEBUG */    +  INIT_CALL_STATE(cs, name); +     /* NOTE: new_check_call() steals a reference from f! */    copy_pike_type(f, CAR(n)->type);    f = debug_malloc_pass(new_check_call(name, f, CDR(n), &cs, 0));
4427:    args = mknode(F_ARG_LIST, CAR(n), CDR(n));    add_ref(CAR(n));    if (CDR(n)) add_ref(CDR(n)); -  INIT_CALL_STATE(cs); +  INIT_CALL_STATE(cs, sscanf_name);    sscanf_type = new_check_call(sscanf_name, sscanf_type, args, &cs, 0);    free_node(args);    if (sscanf_type) {