From: Tom Tromey Date: Thu, 13 Sep 2018 16:56:34 +0000 (-0600) Subject: Make Rust error message mention the field name X-Git-Tag: gdb-8.2.1-release~110 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fde24e1a534b7df3edd0fc167d0ace7d240021f8;p=external%2Fbinutils.git Make Rust error message mention the field name I noticed a spot in rust-lang.c where the placeholder "foo" was used instead of the actual field name. This patch fixes the bug. 2018-09-13 Tom Tromey PR rust/23650: * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo". gdb/testsuite/ChangeLog 2018-09-13 Tom Tromey PR rust/23650: * gdb.rust/simple.exp: Add test for enum field access error. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f989489..467d7d9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2018-09-13 Tom Tromey + PR rust/23650: + * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo". + +2018-09-13 Tom Tromey + PR rust/23626: * rust-lang.c (rust_enum_variant): Now static. (rust_empty_enum_p): New function. diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c index b72e0e4..5e708e3 100644 --- a/gdb/rust-lang.c +++ b/gdb/rust-lang.c @@ -1726,9 +1726,9 @@ tuple structs, and tuple-like enum variants")); struct type *outer_type = type; type = value_type (lhs); if (rust_tuple_type_p (type) || rust_tuple_struct_type_p (type)) - error (_("Attempting to access named field foo of tuple " + error (_("Attempting to access named field %s of tuple " "variant %s::%s, which has only anonymous fields"), - TYPE_NAME (outer_type), + field_name, TYPE_NAME (outer_type), rust_last_path_segment (TYPE_NAME (type))); TRY diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 3df7668..b4a5560 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2018-09-13 Tom Tromey + PR rust/23650: + * gdb.rust/simple.exp: Add test for enum field access error. + +2018-09-13 Tom Tromey + PR rust/23626: * gdb.rust/simple.rs (EmptyEnum): New type. (main): Use it. diff --git a/gdb/testsuite/gdb.rust/simple.exp b/gdb/testsuite/gdb.rust/simple.exp index 07b2512..956a6ca 100644 --- a/gdb/testsuite/gdb.rust/simple.exp +++ b/gdb/testsuite/gdb.rust/simple.exp @@ -134,6 +134,8 @@ gdb_test "print univariant" " = simple::Univariant::Foo{a: 1}" gdb_test "print univariant.a" " = 1" gdb_test "print univariant_anon" " = simple::UnivariantAnon::Foo\\(1\\)" gdb_test "print univariant_anon.0" " = 1" +gdb_test "print univariant_anon.sss" \ + "Attempting to access named field sss of tuple variant simple::UnivariantAnon::Foo, which has only anonymous fields" gdb_test_sequence "ptype simple::Univariant" "" { "type = enum simple::Univariant \\{"