[pushed] kfail an Ada test for GCC < 12

Message ID 20221017192021.2126527-1-tromey@adacore.com
State Committed
Commit 239e440d30998da4af74095c75bdb501d3a3987d
Headers
Series [pushed] kfail an Ada test for GCC < 12 |

Commit Message

Tom Tromey Oct. 17, 2022, 7:20 p.m. UTC
  I noticed one particular Ada test was failing on Fedora 34, but works
when I switch to GCC 12.  This patch arranges to kfail the test when
an older compiler is used.

I tested this with GCC 11, 12, and 13.  I'm going to check it in.
---
 gdb/testsuite/gdb.ada/packed_array_assign.exp | 12 ++++++++++++
 1 file changed, 12 insertions(+)
  

Patch

diff --git a/gdb/testsuite/gdb.ada/packed_array_assign.exp b/gdb/testsuite/gdb.ada/packed_array_assign.exp
index eef0d39b6a8..a0240fc17be 100644
--- a/gdb/testsuite/gdb.ada/packed_array_assign.exp
+++ b/gdb/testsuite/gdb.ada/packed_array_assign.exp
@@ -52,6 +52,12 @@  set re \
 	 "\\(packed_array_assign_w => 23," \
 	 "packed_array_assign_x => 7," \
 	 "packed_array_assign_y => 1\\)\\)"]
+
+# GNAT >= 12.0 has the needed fix here.
+set zeros_expected [expr {![test_compiler_info {gcc-1[2-9]-*}]}]
+set all_zeros \
+    [string_to_regexp "((packed_array_assign_w => 0, packed_array_assign_x => 0, packed_array_assign_y => 0), (packed_array_assign_w => 0, packed_array_assign_x => 0, packed_array_assign_y => 0), (packed_array_assign_w => 0, packed_array_assign_x => 0, packed_array_assign_y => 0))"]
+
 set re [join $re]
 gdb_test_multiple $cmd "value of pra" {
     -re -wrap $re {
@@ -60,6 +66,12 @@  gdb_test_multiple $cmd "value of pra" {
     -re -wrap $kfail_int128support_re {
 	kfail gdb/20991 $gdb_test_name
     }
+    -re -wrap $all_zeros {
+	if {$zeros_expected} {
+	    setup_kfail "GCC 12 needed" *-*-*
+	}
+	fail $gdb_test_name
+    }
 }
 
 set cmd "print pra(1) := pr"