pike.git / src / las.c

version» Context lines:

pike.git/src/las.c:3721:    }    break;    }    else if(Pike_compiler->compiler_frame &&    Pike_compiler->compiler_frame->current_return_type)    {    struct pike_type *t = Pike_compiler->compiler_frame->current_return_type;       if( t->type == PIKE_T_AUTO )    { -  if( t->car ) +  if( t->car != zero_type_string )    {    /* Not the first one.. */ -  push_auto_typed_type( or_pike_types( t->car, CAR(n)->type, 0 ) ); +  push_finished_type( or_pike_types( t->car, CAR(n)->type, 1 ) );    }    else    {    /* first one.. */ -  push_auto_typed_type( CAR(n)->type ); +  push_finished_type(CAR(n)->type);    } -  +  push_type(PIKE_T_AUTO);    free_type( t );    t = pop_type();    Pike_compiler->compiler_frame->current_return_type = t;    } else if ((Pike_compiler->compiler_frame->current_return_type !=    void_type_string) ||    (CAR(n)->token != F_CONSTANT) ||    !SAFE_IS_ZERO(&CAR(n)->u.sval)) {    check_node_type(CAR(n), t, "Wrong return type.");    }    }