[gdb/testsuite] Fix gdb.fortran/info-types.exp regexp The gdb.fortran/info-types.exp test-case passes with gcc 7 (though not on openSUSE, due to the extra debug info) and fails with gcc 4.8 and gcc 8. Fix the gdb_test regexp to fix all those cases. gdb/testsuite/ChangeLog: 2019-08-29 Tom de Vries * gdb.fortran/info-types.exp: Fix gdb_test regexp to allow more diverse debug info. * lib/fortran.exp (fortran_int8): New proc, based on fortran_int4. --- gdb/testsuite/gdb.fortran/info-types.exp | 11 +++++++---- gdb/testsuite/lib/fortran.exp | 12 ++++++++++++ 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/gdb.fortran/info-types.exp b/gdb/testsuite/gdb.fortran/info-types.exp index 81e67395e8..30646287ee 100644 --- a/gdb/testsuite/gdb.fortran/info-types.exp +++ b/gdb/testsuite/gdb.fortran/info-types.exp @@ -31,6 +31,7 @@ if { ![runto MAIN__] } { } set integer4 [fortran_int4] +set integer8 [fortran_int8] set logical4 [fortran_logical4] set character1 [fortran_character1] @@ -41,7 +42,9 @@ gdb_test "info types" \ "File .*:" \ "\[\t \]+${character1}" \ "\[\t \]+${integer4}" \ - "\[\t \]+${logical4}" \ - "20:\[\t \]+Type __vtype_mod1_M1t1;" \ - "17:\[\t \]+Type m1t1;" \ - "22:\[\t \]+Type s1;" ] + "(\[\t \]+${integer8}" \ + ")?\[\t \]+${logical4}" \ + "(20:\[\t \]+Type __vtype_mod1_M1t1;" \ + ")?$decimal:\[\t \]+Type m1t1;" \ + "22:\[\t \]+Type s1;(" \ + ".*)?"] diff --git a/gdb/testsuite/lib/fortran.exp b/gdb/testsuite/lib/fortran.exp index 81811dbc3c..d523608807 100644 --- a/gdb/testsuite/lib/fortran.exp +++ b/gdb/testsuite/lib/fortran.exp @@ -41,6 +41,18 @@ proc fortran_int4 {} { } } +proc fortran_int8 {} { + if {[test_compiler_info {gcc-4-[012]-*}]} { + return "int8" + } elseif {[test_compiler_info {gcc-*}]} { + return "integer\\(kind=8\\)" + } elseif {[test_compiler_info {icc-*}]} { + return "INTEGER\\(8\\)" + } else { + return "unknown" + } +} + proc fortran_real4 {} { if {[test_compiler_info {gcc-4-[012]-*}]} { return "real4"