Fix bug in gdb.ada/bias.exp
authorTom Tromey <tromey@adacore.com>
Tue, 10 Nov 2020 17:06:08 +0000 (10:06 -0700)
committerTom Tromey <tromey@adacore.com>
Tue, 10 Nov 2020 17:06:08 +0000 (10:06 -0700)
While working on a different bug in the Ada support, I found that the
gdb.ada/bias.exp test is slightly incorrect.  In particular, it is
using a range type, which it then overflows during an operation.

This patch changes the test so that the computed values remain in
range.

gdb/testsuite/ChangeLog
2020-11-10  Tom Tromey  <tromey@adacore.com>

* gdb.ada/bias.exp: Update.
* gdb.ada/bias/bias.adb (X): Change value.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.ada/bias.exp
gdb/testsuite/gdb.ada/bias/bias.adb

index 608e48d8603345780aa948ef5c2da7fdaf6358cd..18c3988b2109e5d2c6168339b9eafe05c605ad9d 100644 (file)
@@ -1,3 +1,8 @@
+2020-11-10  Tom Tromey  <tromey@adacore.com>
+
+       * gdb.ada/bias.exp: Update.
+       * gdb.ada/bias/bias.adb (X): Change value.
+
 2020-11-10  Gary Benson <gbenson@redhat.com>
 
        * gdb.base/vla-optimized-out.exp (p sizeof (a)): Wrap supplied
index c7a78505c469c42e35913062791db328157a79ff..dfa897fe1516f843a325cae0d66cae178b25956d 100644 (file)
@@ -29,7 +29,7 @@ clean_restart ${testfile}
 set bp_location [gdb_get_line_number "STOP" ${testdir}/bias.adb]
 runto "bias.adb:$bp_location"
 
-gdb_test "print x" " = 64"
+gdb_test "print x" " = 60"
 gdb_test "print y" " = -5"
 
 gdb_test "print cval" " = 65"
@@ -44,11 +44,11 @@ gdb_test "print y = y" " = true"
 gdb_test "print y /= y" " = false"
 gdb_test "print y /= y1" " = true"
 
-gdb_test "print x + x1" " = 65"
+gdb_test "print x + x1" " = 61"
 gdb_test "ptype x + x1" "type = range 1 \\.\\. 64"
-gdb_test "print x / x1" " = 64"
-gdb_test "print x * x1" " = 64"
-gdb_test "print x - x1" " = 63"
+gdb_test "print x / x1" " = 60"
+gdb_test "print x * x1" " = 60"
+gdb_test "print x - x1" " = 59"
 
 # Test that storing un-biases.
 gdb_test "print x := 5" " = 5"
index abea17002f147fc16cf31e66313d5dd00a49ecdc..cf24810f53ab0b4a95e1daff37c86aaf14f2e378 100644 (file)
@@ -23,7 +23,7 @@ procedure Bias is
 
    type Repeat_Count_T is range 1 .. 2 ** 6;
    for Repeat_Count_T'Size use 6;
-   X : Repeat_Count_T := 64;
+   X : Repeat_Count_T := 60;
    X1 : Repeat_Count_T := 1;
 
    type Char_Range is range 65 .. 68;