Lookup and invoke debug methods of C++ classes if they are the best match.
authorSiva Chandra <sivachandra@chromium.org>
Tue, 20 May 2014 13:41:39 +0000 (06:41 -0700)
committerSiva Chandra <sivachandra@chromium.org>
Tue, 3 Jun 2014 16:54:21 +0000 (09:54 -0700)
commit233e8b28cf7b548ca197a7a6d9bf5f9ce80053ac
treecfd187d00cfc805f22d8e1d4736413e742e7a3cf
parente81e7f5e38bf0da52d9e88a94e4df9aeecd80357
Lookup and invoke debug methods of C++ classes if they are the best match.

* 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 "xm_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 "xm_worker_vec".  Update all callers.
(value_find_oload_method_list): Likewise.
(find_oload_champ): Add "xm_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.
gdb/eval.c
gdb/valarith.c
gdb/valops.c