Fix crash with "finish" in Rust
PR rust/30090 points out that a certain "finish" in a Rust program
will cause gdb to crash. This happens due to some confusion about
field indices in rust_language::print_enum. The fix is to use
value_primitive_field so that the correct type can be passed; other
spots in rust-lang.c already do this.
Note that the enclosed test case comes with an xfail. This is needed
because for this function, rustc doesn't follow the platform ABI.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30090