[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  <tdevries@suse.de>

	* 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.
This commit is contained in:
Tom de Vries 2019-08-29 14:43:11 +02:00
parent c0d9f31dbd
commit 8077c50dbb
3 changed files with 25 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2019-08-29 Tom de Vries <tdevries@suse.de>
* 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.
2019-08-28 Tom de Vries <tdevries@suse.de>
* gdb.base/info-var.exp: Allow info variables to print info for files

View File

@ -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;(" \
".*)?"]

View File

@ -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"