This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 3/4 v15] Add support for lookup, overload resolution and invocation of C++ xmethod (was debug methods)


As explained in the posting of 2/4, the changes in this part from v14
are the name and that find_overload_match returns the matching xmethod
as a TYPE_CODE_XMETHOD value.

The 2/4 posting: https://sourceware.org/ml/gdb-patches/2014-04/msg00585.html

ChangeLog
2014-04-28  Siva Chandra Reddy  <sivachandra@google.com>

        * eval.c (evaluate_subexp_standard): Call the xmethod if the
        best match method returned by find_overload_match is an xmethod.
        * valarith.c (value_x_binop, value_x_unop): Call the xmethod if
        the best matching operator returned by find_overload_match is an
        xmethod.
        * valops.c: #include "extension.h".
        (find_method_list): Add "fn_list" and "dm_worker_vec" arguments.
        Return void.  The list of matching source methods is returned in
        "fn_list" and a vector of matching debug method workers is
        returned in "dm_worker_vec".  Update all callers.
        (value_find_oload_method_list): Likewise.
        (find_oload_champ): Add "dm_worker_vec" parameter.  If it is
        non-NULL, then the index of the best matching method in this
        vector is returned.  Update all callers.
        (find_overload_match): Include xmethods while performing overload
        resolution.
        (value_has_indirect_dynamic_type, cast_args_to_param_types,
        equal_param_types_p, derived_hides_base_method): New functions.

Attachment: dm_cpp_v15.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]