diff options
author | Bruno Larsen <blarsen@redhat.com> | 2022-09-09 20:34:27 +0200 |
---|---|---|
committer | Bruno Larsen <blarsen@redhat.com> | 2022-10-31 13:43:56 +0100 |
commit | 2ce385da88704170ba6922743c437177eef2c09d (patch) | |
tree | fd6f819c075c8c6d205bcab183c23fcd047428b6 /gdb | |
parent | de1fbe7889eb4f363b979c14735b8fd51131621b (diff) | |
download | gdb-2ce385da88704170ba6922743c437177eef2c09d.zip gdb-2ce385da88704170ba6922743c437177eef2c09d.tar.gz gdb-2ce385da88704170ba6922743c437177eef2c09d.tar.bz2 |
gdb/testsuite: add XFAIL to gdb.cp/ptype-flags.exp when using clang
When running gdb.cp/ptype-flags.exp using Clang, we get an unexpected
failure when printing the type of a class with an internal typedef. This
happens because Clang doesn't add accessibility information for typedefs
inside classes (see https://github.com/llvm/llvm-project/issues/57608
for more info). To help with Clang testing, an XFAIL was added to this
test.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/gdb.cp/ptype-flags.exp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.cp/ptype-flags.exp b/gdb/testsuite/gdb.cp/ptype-flags.exp index f88c83e..371a2a5 100644 --- a/gdb/testsuite/gdb.cp/ptype-flags.exp +++ b/gdb/testsuite/gdb.cp/ptype-flags.exp @@ -30,11 +30,18 @@ if ![runto_main] then { return } +if {[test_compiler_info {clang-*-*} c++]} { + set using_clang true +} else { + set using_clang false +} + gdb_test_no_output "set language c++" "" gdb_test_no_output "set width 0" "" proc do_check_holder {name {flags ""} {show_typedefs 1} {show_methods 1} {raw 0}} { + global using_clang set contents { { base "public Base<T>" } @@ -49,6 +56,11 @@ proc do_check_holder {name {flags ""} {show_typedefs 1} {show_methods 1} } if {$show_typedefs} { + # Clang does not add accessibility information for typedefs: + # https://github.com/llvm/llvm-project/issues/57608 + if {$using_clang} { + setup_xfail "clang 57608" *-*-* + } lappend contents { typedef public "typedef Simple<Simple<T> > Z;" } } |