}
return evaluate_subexp_standard (expect_type, exp, pos, noside);
}
+\f
+/* la_watch_location_expression for C. */
+gdb::unique_xmalloc_ptr<char>
+c_watch_location_expression (struct type *type, CORE_ADDR addr)
+{
+ type = check_typedef (TYPE_TARGET_TYPE (check_typedef (type)));
+ std::string name = type_to_string (type);
+ return gdb::unique_xmalloc_ptr<char>
+ (xstrprintf ("* (%s *) %s", name.c_str (), core_addr_to_string (addr)));
+}
\f
/* Table mapping opcodes into strings for printing operators
default_print_array_index,
default_pass_by_reference,
c_get_string,
+ c_watch_location_expression,
NULL, /* la_get_symbol_name_cmp */
iterate_over_symbols,
&c_varobj_ops,
default_print_array_index,
cp_pass_by_reference,
c_get_string,
+ c_watch_location_expression,
NULL, /* la_get_symbol_name_cmp */
iterate_over_symbols,
&cplus_varobj_ops,
default_print_array_index,
default_pass_by_reference,
c_get_string,
+ c_watch_location_expression,
NULL, /* la_get_symbol_name_cmp */
iterate_over_symbols,
&default_varobj_ops,
default_print_array_index,
default_pass_by_reference,
c_get_string,
+ c_watch_location_expression,
NULL, /* la_get_symbol_name_cmp */
iterate_over_symbols,
&default_varobj_ops,