diff options
author | Gary Benson <gbenson@redhat.com> | 2020-08-25 15:14:46 +0100 |
---|---|---|
committer | Gary Benson <gbenson@redhat.com> | 2020-08-25 15:14:46 +0100 |
commit | 9f68b4534846660ad07f988815523ce75dc8f78a (patch) | |
tree | 06d49acf2cc5408eb697b5b74ddb69e54eb9ee0b /gdb/testsuite | |
parent | 1ab8d928977f4d9f137f972d03e079555d0f29fa (diff) | |
download | gdb-9f68b4534846660ad07f988815523ce75dc8f78a.zip gdb-9f68b4534846660ad07f988815523ce75dc8f78a.tar.gz gdb-9f68b4534846660ad07f988815523ce75dc8f78a.tar.bz2 |
Enable gdb.cp/ambiguous.exp with GCC and clang
gdb.cp/ambiguous.exp failed to build using clang with the following
error:
gdb compile failed, /gdbtest/src/gdb/testsuite/gdb.cp/ambiguous.cc:70:36:
warning: direct base 'A1' is inaccessible due to ambiguity:
class JVA1 -> class KV -> class A1
class JVA1 -> class A1 [-Winaccessible-base]
class JVA1 : public KV, public LV, public A1 {
^~~~~~~~~
This commit builds this testcase with -Wno-inaccessible-base when
using clang, to avoid this failure.
Furthermore, gdb.cp/ambiguous.exp has been disabled when using GCC
since 1998. This commit enables this testcase, building with
-Wno-inaccessible-base when using GCC >= 10.1, and -w otherwise.
gdb/testsuite/ChangeLog:
* gdb.cp/ambiguous.exp: Enable test when compiling with GCC.
Add additional_flags=-Wno-inaccessible-base when compiling
with GCC >= 10.1 or clang. Add additional_flags=-w when
compiling with GCC < 10.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/ambiguous.exp | 12 |
2 files changed, 17 insertions, 2 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index f5c258b..93df7f9 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2020-08-25 Gary Benson <gbenson@redhat.com> + + * gdb.cp/ambiguous.exp: Enable test when compiling with GCC. + Add additional_flags=-Wno-inaccessible-base when compiling + with GCC >= 10.1 or clang. Add additional_flags=-w when + compiling with GCC < 10. + 2020-08-25 Gaius Mulley <gaiusmod2@gmail.com> PR m2/26372 diff --git a/gdb/testsuite/gdb.cp/ambiguous.exp b/gdb/testsuite/gdb.cp/ambiguous.exp index fffe20a..17fb29f 100644 --- a/gdb/testsuite/gdb.cp/ambiguous.exp +++ b/gdb/testsuite/gdb.cp/ambiguous.exp @@ -30,12 +30,20 @@ if { [skip_cplus_tests] } { continue } standard_testfile .cc if [get_compiler_info "c++"] { + unsupported "couldn't find a valid c++ compiler" return -1 } -if { [test_compiler_info gcc-*] } then { continue } +set additional_flags "" +if {[test_compiler_info {gcc-[0-9]-*}]} { + # GCCs prior to 10.1 do not support -Wno-inaccessible-base. + set additional_flags "additional_flags=-w" +} elseif {[test_compiler_info gcc*] || [test_compiler_info clang*]} { + set additional_flags "additional_flags=-Wno-inaccessible-base" +} -if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug c++}]} { +if {[prepare_for_testing "failed to prepare" $testfile $srcfile \ + [list debug c++ $additional_flags]]} { return -1 } |