Fix double space expected in cp_test_ptype_class
authorSimon Marchi <simon.marchi@polymtl.ca>
Sun, 25 Feb 2018 20:11:56 +0000 (15:11 -0500)
committerSimon Marchi <simon.marchi@polymtl.ca>
Sun, 25 Feb 2018 20:12:37 +0000 (15:12 -0500)
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.

gdb/testsuite/ChangeLog
gdb/testsuite/lib/cp-support.exp

index e1bd8df4241a8f2bdd3a054f96bb2df1a6fd08fa..9659e37f0cf3c5e32488e5285aed6c4faa1f63ee 100644 (file)
@@ -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
index 66b58d5f60c631c9c534296660ff69c8f4b72d70..58c21a91615cc72654a76b06a18ce3e056bb1f44 100644 (file)
@@ -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, "
                    }