diff options
author | Bruno Larsen <blarsen@redhat.com> | 2022-09-09 15:56:25 +0200 |
---|---|---|
committer | Bruno Larsen <blarsen@redhat.com> | 2022-11-11 10:13:39 +0100 |
commit | f2f2eb6b0e77eebbbe06a2515053dc874598bee9 (patch) | |
tree | 6016c0e4b54bae4bbf3473192b2b02ff3ced7371 | |
parent | 42dde3f3643cdf372b8f40beafa3f2c888aaf92a (diff) | |
download | binutils-f2f2eb6b0e77eebbbe06a2515053dc874598bee9.zip binutils-f2f2eb6b0e77eebbbe06a2515053dc874598bee9.tar.gz binutils-f2f2eb6b0e77eebbbe06a2515053dc874598bee9.tar.bz2 |
gdb/testsuite: allow for Clang style destructors on gdb.cp/m-static.exp
when running gdb.cp/m-static.exp using Clang, we get the following
failures:
print test1.~gnu_obj_1^M
$6 = {void (gnu_obj_1 * const)} 0x555555555470 <gnu_obj_1::~gnu_obj_1()>^M
(gdb) FAIL: gdb.cp/m-static.exp: simple object instance, print destructor
ptype test1.~gnu_obj_1^M
type = void (gnu_obj_1 * const)^M
(gdb) FAIL: gdb.cp/m-static.exp: simple object instance, ptype destructor
print test1.'~gnu_obj_1'^M
$7 = {void (gnu_obj_1 * const)} 0x555555555470 <gnu_obj_1::~gnu_obj_1()>^M
(gdb) FAIL: gdb.cp/m-static.exp: simple object instance, print quoted destructor
This is because the test is expecting an extra integer parameter on the
destructor. Looking at the debuginfo, it seems that there is nothing
actually wrong with this output, so these tests were changed to test
multiple possible regexps.
Approved-by: Tom Tromey <tom@tromey.com>
-rw-r--r-- | gdb/testsuite/gdb.cp/m-static.exp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gdb/testsuite/gdb.cp/m-static.exp b/gdb/testsuite/gdb.cp/m-static.exp index 979de23..1239dbc 100644 --- a/gdb/testsuite/gdb.cp/m-static.exp +++ b/gdb/testsuite/gdb.cp/m-static.exp @@ -102,15 +102,16 @@ if { [is_aarch32_target] } { {type = void \(single_constructor \* const\)} \ "simple object class, ptype constructor" - gdb_test "print test1.~gnu_obj_1" \ - { = {void \(gnu_obj_1 \* const, int\)} 0x[0-9a-f]+ <gnu_obj_1::~gnu_obj_1\(\)>} \ + gdb_test "print test1.~gnu_obj_1"\ + { = {void \(gnu_obj_1 \* const(?:, int)?\)} 0x[0-9a-f]+ <gnu_obj_1::~gnu_obj_1\(\)>}\ "simple object instance, print destructor" - gdb_test "ptype test1.~gnu_obj_1" \ - {type = void \(gnu_obj_1 \* const, int\)} \ + + gdb_test "ptype test1.~gnu_obj_1"\ + {type = void \(gnu_obj_1 \* const(?:, int)?\)}\ "simple object instance, ptype destructor" gdb_test "print test1.'~gnu_obj_1'" \ - { = {void \(gnu_obj_1 \*( const)?, int\)} 0x[0-9a-f]+ <gnu_obj_1::~gnu_obj_1\(\)>} \ + { = {void \(gnu_obj_1 \*( const)?(?:, int)?\)} 0x[0-9a-f]+ <gnu_obj_1::~gnu_obj_1\(\)>} \ "simple object instance, print quoted destructor" gdb_test "ptype gnu_obj_1::'~gnu_obj_1'" \ |