[PATCH] gdb/testsuite/fortran: Add mixed language stack test
Andrew Burgess
andrew.burgess@embecosm.com
Mon Mar 23 12:05:36 GMT 2020
* Tom de Vries <tdevries@suse.de> [2020-03-20 15:53:28 +0100]:
> On 05-03-2020 22:09, Andrew Burgess wrote:
> > + if { $lang == "fortran" } {
> > + set obj_pattern " = \\( base_one = \\( num1 = 1, num2 = 2, num3 = 3 \\), base_two = \\( string = 0x6184e0 'Something in C\\+\\+\\\\000', val = 3.5 \\), xxx = 9, yyy = 10.5 \\)"
> > + } else {
> > + set obj_pattern " = \\{<base_one> = \\{num1 = 1, num2 = 2, num3 = 3\\}, <base_two> = \\{string = 0x6184e0 \"Something in C\\+\\+\", val = 3.5\\}, xxx = 9, yyy = 10.5\\}"
> > + }
>
> FAILs for me due to hard-coded string address:
> ...
> print obj^M
> $1 = {<base_one> = {num1 = 1, num2 = 2, num3 = 3}, <base_two> = {string
> = 0x618430 "Something in C++", val = 3.5}, xxx = 9, yyy = 10.5}^M
> (gdb) FAIL: gdb.fortran/mixed-lang-stack.exp: lang=auto: print obj
> ...
Sorry for this, and thanks for reporting the problem.
I pushed the patch below to fix this issue.
Thanks,
Andrew
--
>From 5935fd15306c26ead8274cbeab3287770f2ac92a Mon Sep 17 00:00:00 2001
From: Andrew Burgess <andrew.burgess@embecosm.com>
Date: Mon, 23 Mar 2020 12:01:08 +0000
Subject: [PATCH] gdb/testsuite: Remove hard coded addresses from expected
results
In commit:
commit 6b8c53f2f1c0cf5bee46120d892d4c72571375eb
Date: Sat Feb 8 21:26:31 2020 +0000
gdb/testsuite/fortran: Add mixed language stack test
The test incorrectly included two hard coded addresses in the expected
output, this commit replaces them with the $hex pattern.
gdb/testsuite/ChangeLog:
* gdb.fortran/mixed-lang-stack.exp: Replace two hard coded address
with $hex.
---
gdb/testsuite/ChangeLog | 5 +++++
gdb/testsuite/gdb.fortran/mixed-lang-stack.exp | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp b/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
index df0807e268f..c0531c3fd9f 100644
--- a/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
+++ b/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
@@ -84,9 +84,9 @@ proc run_tests { lang } {
gdb_test "info frame" "source language c\\+\\+\..*" \
"info frame in frame #2"
if { $lang == "fortran" } {
- set obj_pattern " = \\( base_one = \\( num1 = 1, num2 = 2, num3 = 3 \\), base_two = \\( string = 0x6184e0 'Something in C\\+\\+\\\\000', val = 3.5 \\), xxx = 9, yyy = 10.5 \\)"
+ set obj_pattern " = \\( base_one = \\( num1 = 1, num2 = 2, num3 = 3 \\), base_two = \\( string = $hex 'Something in C\\+\\+\\\\000', val = 3.5 \\), xxx = 9, yyy = 10.5 \\)"
} else {
- set obj_pattern " = \\{<base_one> = \\{num1 = 1, num2 = 2, num3 = 3\\}, <base_two> = \\{string = 0x6184e0 \"Something in C\\+\\+\", val = 3.5\\}, xxx = 9, yyy = 10.5\\}"
+ set obj_pattern " = \\{<base_one> = \\{num1 = 1, num2 = 2, num3 = 3\\}, <base_two> = \\{string = $hex \"Something in C\\+\\+\", val = 3.5\\}, xxx = 9, yyy = 10.5\\}"
}
gdb_test "print obj" "${obj_pattern}"
--
2.14.5
More information about the Gdb-patches
mailing list