aboutsummaryrefslogtreecommitdiff
path: root/gdb/eval.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2012-05-21 19:47:54 +0000
committerTom Tromey <tromey@redhat.com>2012-05-21 19:47:54 +0000
commitb1af9e975066c48b043c5234199effd47115b4d4 (patch)
tree3a6e58a8b29679f4e34eecc734405b6f5420cde1 /gdb/eval.c
parent248537e34b516ddcd9489f76441d81139ca7e2f7 (diff)
downloadgdb-b1af9e975066c48b043c5234199effd47115b4d4.zip
gdb-b1af9e975066c48b043c5234199effd47115b4d4.tar.gz
gdb-b1af9e975066c48b043c5234199effd47115b4d4.tar.bz2
PR c++/7173:
* gnu-v3-abi.c (gnuv3_baseclass_offset): Return early for Java types. * value.h (value_cast_pointers): Update. * valops.c (value_cast_pointers): Add 'subclass_check' argument. (value_cast): Update. (update_search_result): New function. (do_search_struct_field): New, from search_struct_field. Check for ambiguous results. (search_struct_field): Rewrite. * infcall.c (value_arg_coerce): Update. * eval.c (evaluate_subexp_standard) <STRUCTOP_MEMBER>: Use value_cast_pointers. * ada-lang.c (ada_convert_actual): Update. testsuite * gdb.cp/inherit.exp (test_print_mi_members): Expect errors. Remove kfails. (test_print_mi_member_types): Likewise.
Diffstat (limited to 'gdb/eval.c')
-rw-r--r--gdb/eval.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gdb/eval.c b/gdb/eval.c
index 59d8bff..7f1dfac 100644
--- a/gdb/eval.c
+++ b/gdb/eval.c
@@ -2047,8 +2047,8 @@ evaluate_subexp_standard (struct type *expect_type,
case TYPE_CODE_MEMBERPTR:
/* Now, convert these values to an address. */
- arg1 = value_cast (lookup_pointer_type (TYPE_DOMAIN_TYPE (type)),
- arg1);
+ arg1 = value_cast_pointers (lookup_pointer_type (TYPE_DOMAIN_TYPE (type)),
+ arg1, 1);
mem_offset = value_as_long (arg2);