[binutils-gdb] Fix two buglets in cp_print_value_fields patch

Tom Tromey tromey@sourceware.org
Thu Jun 27 13:53:00 GMT 2019


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3d507ff23b724ecb2b9a5a61cebd0fba275cfbc3

commit 3d507ff23b724ecb2b9a5a61cebd0fba275cfbc3
Author: Tom Tromey <tromey@adacore.com>
Date:   Tue Jun 18 09:37:02 2019 -0600

    Fix two buglets in cp_print_value_fields patch
    
    Pedro and Tom both pointed out issues in the cp_print_value_fields
    patch, aka the fix for PR c++/20020.
    
    This patch addresses both issues.  Tested on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-06-27  Tom Tromey  <tromey@adacore.com>
    
    	* cp-valprint.c (cp_print_value_fields): Pass opts, not options,
    	to cp_print_static_field.
    
    gdb/testsuite/ChangeLog
    2019-06-27  Tom Tromey  <tromey@adacore.com>
    
    	* gdb.cp/constexpr-field.exp: Use setup_xfail.

Diff:
---
 gdb/ChangeLog                            | 5 +++++
 gdb/cp-valprint.c                        | 2 +-
 gdb/testsuite/ChangeLog                  | 4 ++++
 gdb/testsuite/gdb.cp/constexpr-field.exp | 3 ++-
 4 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f06d13e..28a0df3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2019-06-27  Tom Tromey  <tromey@adacore.com>
+
+	* cp-valprint.c (cp_print_value_fields): Pass opts, not options,
+	to cp_print_static_field.
+
 2019-06-26  Tom Tromey  <tromey@adacore.com>
 
 	* minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove.
diff --git a/gdb/cp-valprint.c b/gdb/cp-valprint.c
index 5781d7a..d3a38d8 100644
--- a/gdb/cp-valprint.c
+++ b/gdb/cp-valprint.c
@@ -302,7 +302,7 @@ cp_print_value_fields (struct type *type, struct type *real_type,
 
 		      cp_print_static_field (TYPE_FIELD_TYPE (type, i),
 					     v, stream, recurse + 1,
-					     options);
+					     opts);
 		    }
 		  catch (const gdb_exception_error &ex)
 		    {
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 10a38a2..2347a4a 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2019-06-27  Tom Tromey  <tromey@adacore.com>
+
+	* gdb.cp/constexpr-field.exp: Use setup_xfail.
+
 2019-06-26  Tom de Vries  <tdevries@suse.de>
 
 	* gdb.dwarf2/varval.exp: Compile twice, once without bad DWARF.
diff --git a/gdb/testsuite/gdb.cp/constexpr-field.exp b/gdb/testsuite/gdb.cp/constexpr-field.exp
index e4849ef..2f71cef 100644
--- a/gdb/testsuite/gdb.cp/constexpr-field.exp
+++ b/gdb/testsuite/gdb.cp/constexpr-field.exp
@@ -31,6 +31,7 @@ if {![runto_main]} {
 
 # "x" sometimes isn't available due to
 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90526
-gdb_test "print x" " = {static f = .*}"
+setup_xfail *-*-* gcc/90526
+gdb_test "print x" " = {static f = true}"
 
 gdb_test "print y" " = {static f = true}"



More information about the Gdb-cvs mailing list