This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix double space expected in cp_test_ptype_class


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

commit 6f6d0c269ecdc11aca9166940534ec61b6dbc39d
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Sun Feb 25 15:11:56 2018 -0500

    Fix double space expected in cp_test_ptype_class
    
    I noticed some failures of some buildbot slaves, e.g.:
    
    FAIL: gdb.cp/nested-types.exp: ptype S10 (limit = 1) // wrong nested type enum definition: enum S10::E10 {S10::A10, S10::B10, S10::C10};
    
    The issue is that they have an older gcc (not c++11 by default?) that
    doesn't emit the enum underlying type information.  When the
    enum type is printed by ptype, it looks like this:
    
      enum S10::E10 {S10::A10, S10::B10, S10::C10};
    
    instead of this on older gccs:
    
      enum S10::E10 : unsigned int {S10::A10, S10::B10, S10::C10};
    
    The regex that matches this is in cp_test_ptype_class, and is
    
      enum $nested_name (: (unsigned )?int)? \{
    
    If the "unsigned int" portion is not present, then it requires the
    string to have two spaces between the enum name and opening bracket.
    The fix is simply to move the trailing space inside the ? group.
    
    gdb/testsuite/ChangeLog:
    
    	* lib/cp-support.exp (cp_test_ptype_class): Move space inside
    	parentheses.

Diff:
---
 gdb/testsuite/ChangeLog          | 5 +++++
 gdb/testsuite/lib/cp-support.exp | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index e1bd8df..9659e37f 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-25  Simon Marchi  <simon.marchi@polymtl.ca>
+
+	* lib/cp-support.exp (cp_test_ptype_class): Move space inside
+	parentheses.
+
 2018-02-23  Maciej W. Rozycki  <macro@mips.com>
 
 	* lib/cp-support.exp (cp_test_ptype_class): Fix a typo in the
diff --git a/gdb/testsuite/lib/cp-support.exp b/gdb/testsuite/lib/cp-support.exp
index 66b58d5..58c21a9 100644
--- a/gdb/testsuite/lib/cp-support.exp
+++ b/gdb/testsuite/lib/cp-support.exp
@@ -564,7 +564,7 @@ proc cp_test_ptype_class { in_exp in_testname in_key in_tag in_class_table
 	    switch $nested_key {
 		enum {
 		    set expected_result \
-			"enum $nested_name (: (unsigned )?int)? \{"
+			"enum $nested_name (: (unsigned )?int )?\{"
 		    foreach c $nested_children {
 			append expected_result "$c, "
 		    }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]