Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH] Enable gdb.cp/ambiguous.exp with GCC >= 10.1 and clang
@ 2020-07-27 13:09 Gary Benson
  2020-08-07 15:27 ` Pedro Alves
  0 siblings, 1 reply; 15+ messages in thread
From: Gary Benson @ 2020-07-27 13:09 UTC (permalink / raw)
  To: gdb-patches

Hi all,

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 when compiling with
GCC >= 10.1, the first version with -Wno-inaccessible-base.

Checked on Fedora 31 x86_64, GCC and clang.  Ok to commit?

Cheers,
Gary

--
gdb/testsuite/ChangeLog:

	* gdb.cp/ambiguous.exp: Enable test when compiling with GCC >=
	10.1.  Add additional_flags=-Wno-inaccessible-base when compiling
	with GCC or clang.
---
 gdb/testsuite/ChangeLog            |  6 ++++++
 gdb/testsuite/gdb.cp/ambiguous.exp | 17 +++++++++++++++--
 2 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/gdb/testsuite/gdb.cp/ambiguous.exp b/gdb/testsuite/gdb.cp/ambiguous.exp
index fffe20a..26f96a9 100644
--- a/gdb/testsuite/gdb.cp/ambiguous.exp
+++ b/gdb/testsuite/gdb.cp/ambiguous.exp
@@ -30,12 +30,25 @@ 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 }
+# GCCs prior to 10.1 do not support -Wno-inaccessible-base.
+if { [test_compiler_info {gcc-[0-9]-*}]
+     || [test_compiler_info {gcc-10-0-*}] } {
+    unsupported "compiler does not support -Wno-inaccessible-base"
+    return -1
+}
+
+set additional_flags ""
+if { [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
 }
 
-- 
1.8.3.1



^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2020-09-11 13:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-27 13:09 [PATCH] Enable gdb.cp/ambiguous.exp with GCC >= 10.1 and clang Gary Benson
2020-08-07 15:27 ` Pedro Alves
2020-08-17 13:24   ` [PATCH v2] Enable gdb.cp/ambiguous.exp with GCC " Gary Benson
2020-08-17 14:00     ` Pedro Alves
2020-08-17 14:57       ` Gary Benson
2020-08-25 14:21       ` Gary Benson
2020-08-26 17:13         ` Luis Machado
2020-08-27 10:39           ` Gary Benson
2020-08-27 11:20             ` Pedro Alves
2020-08-27 11:25               ` Luis Machado
2020-08-27 15:07               ` Gary Benson
2020-08-27 15:47                 ` Pedro Alves
2020-08-27 16:18                   ` Gary Benson
2020-08-27 18:04                     ` Pedro Alves
2020-09-11 13:59                       ` Tom de Vries

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox