aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
authorGary Benson <gbenson@redhat.com>2020-08-25 15:14:46 +0100
committerGary Benson <gbenson@redhat.com>2020-08-25 15:14:46 +0100
commit9f68b4534846660ad07f988815523ce75dc8f78a (patch)
tree06d49acf2cc5408eb697b5b74ddb69e54eb9ee0b /gdb/testsuite
parent1ab8d928977f4d9f137f972d03e079555d0f29fa (diff)
downloadgdb-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/ChangeLog7
-rw-r--r--gdb/testsuite/gdb.cp/ambiguous.exp12
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
}