Implement value_print for Rust

This adds an implementation of the value_print method to Rust.  As
described in PR rust/22254, this removes a bit of weird-looking output
from some "print"s -- because c_value_print is bypassed.  I don't have
a test for the bug that inspired this patch, because I only know how
to reproduce it when using a relatively old Rust compiler.  However,
the new "cast-printing" code in value_print is required, because
omitting this causes some existing tests to fail.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=22254
This commit is contained in:
Tom Tromey
2022-03-27 15:29:28 -06:00
parent 506ec52e88
commit 1c9cc05244
2 changed files with 26 additions and 0 deletions

View File

@ -125,6 +125,11 @@ public:
/* See language.h. */
void value_print (struct value *val, struct ui_file *stream,
const struct value_print_options *options) const override;
/* See language.h. */
struct block_symbol lookup_symbol_nonlocal
(const char *name, const struct block *block,
const domain_enum domain) const override