[pushed/Ada] Relax expected output in gdb.ada/access_tagged_param.exp test

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[pushed/Ada] Relax expected output in gdb.ada/access_tagged_param.exp test

Joel Brobecker
Hello,

One of the tests in gdb.ada/access_tagged_param.exp verifies
the value of the parameters being printed by GDB when stopping
at a breakpoint inside procedure Pck.Inspect.

In particular, one of these parameters is actually generated
internally by the compiler, and does only indirectly depend
on the user-level code. A recent change in AdaCore's compiler
caused the code expansion to change a little bit, and as a result,
the value of that parameter has changed from 2 to 3. This can be
evindenced by looking at the code post expansion, using the -gnatDG
command-line switch to generate the .dg files:

    $ gnatmake -g -gnatDG foo.adb
    $ vi foo.adb.dg

We can see that the call to pck.inspect used to be:

    pck__inspect (P8b, objL => 2);

With a recent version of GNAT Pro, it is now:

    pck__inspect (P9b, objL => 3);

This change causes a spurious FAIL when running this testcase.
The objL parameter being, at heart, a simple counter of the nesting
level, this commit relaxes the expected output to accept any single-
digit number. We could accept any decimal, but given the example
program, I dout that number will reach double-digit level. If it
does, we'll double-check that this is normal, and relax the expected
output further.

gdb/testsuite/ChangeLog:

        * gdb.ada/access_tagged_param.exp: Relax expected output
        for value of "ObjL" in "continue" to pck.inspect breakpoint
        test.

Tested on x86_64-linux and pushed to master.

Thanks,
--
Joel

---
 gdb/testsuite/ChangeLog                       | 6 ++++++
 gdb/testsuite/gdb.ada/access_tagged_param.exp | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index baa0104..7f4d80d 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,11 @@
 2018-01-08  Joel Brobecker  <[hidden email]>
 
+ * gdb.ada/access_tagged_param.exp: Relax expected output
+ for value of "ObjL" in "continue" to pck.inspect breakpoint
+ test.
+
+2018-01-08  Joel Brobecker  <[hidden email]>
+
  * gdb.ada/arr_enum_idx_w_gap.exp
  * gdb.ada/arr_enum_idx_w_gap/foo_q418_043.adb
 
diff --git a/gdb/testsuite/gdb.ada/access_tagged_param.exp b/gdb/testsuite/gdb.ada/access_tagged_param.exp
index 598cf89..47b180d 100644
--- a/gdb/testsuite/gdb.ada/access_tagged_param.exp
+++ b/gdb/testsuite/gdb.ada/access_tagged_param.exp
@@ -37,4 +37,4 @@ gdb_breakpoint "pck.inspect"
 # the value of all the parameters.
 
 gdb_test "continue" \
-         ".*Breakpoint $decimal, pck\\.inspect \\(obj=$hex, <objL>=2\\) at .*"
+         ".*Breakpoint $decimal, pck\\.inspect \\(obj=$hex, <objL>=\[1-9\]\\) at .*"
--
2.1.4