From 54f73dad3b74cdba860b2031f414ba628534a45e Mon Sep 17 00:00:00 2001 From: Andrew Burgess Date: Tue, 3 Dec 2019 19:15:06 +0000 Subject: [PATCH] gdb/testsuite: kfail some tests if using broken gcc In some cases the Fortran stride information generated by GCC is wrong with versions of GCC after 7.x.x. This commit adds kfails for the tests in question with known bad versions of gcc. The bug has been reported to GCC here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92775 gdb/testsuite/ChangeLog: * gdb.fortran/derived-type-striding.exp: KFAIL if we are using a broken version of GCC. Change-Id: Iaef08e5e2c87ab3d6983b88f749d40e01aea2bc6 --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.fortran/derived-type-striding.exp | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 7d41fad6db9..12e351f5eb7 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-12-09 Andrew Burgess + + * gdb.fortran/derived-type-striding.exp: KFAIL if we are using a + broken version of GCC. + 2019-12-09 Andrew Burgess * gdb.fortran/info-modules.exp: Rewrite to make use of new diff --git a/gdb/testsuite/gdb.fortran/derived-type-striding.exp b/gdb/testsuite/gdb.fortran/derived-type-striding.exp index a2590a9ab2f..dc5ef96b3bc 100644 --- a/gdb/testsuite/gdb.fortran/derived-type-striding.exp +++ b/gdb/testsuite/gdb.fortran/derived-type-striding.exp @@ -20,6 +20,10 @@ if {[skip_fortran_tests]} { return -1 } standard_testfile ".f90" +# Unfortunately recent versions of GCC broke the stride information in +# the DEBUG so tests in this file will fail. +set gcc_with_broken_stride [test_compiler_info {gcc-[89]-*}] + if {[prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} \ {debug f90}]} { return -1 @@ -31,7 +35,9 @@ if {![runto [gdb_get_line_number "post_init"]]} then { } # Test homogeneous derived type. +if { $gcc_with_broken_stride } { setup_kfail *-*-* gcc/92775 } gdb_test "p point_dimension" "= \\\(2, 2, 2, 2, 2, 2, 2, 2, 2\\\)" # Test mixed type derived type. +if { $gcc_with_broken_stride } { setup_kfail *-*-* gcc/92775 } gdb_test "p point_mixed_dimension" "= \\\(3, 3, 3, 3\\\)" -- 2.30.2