diff options
author | Tom Tromey <tromey@adacore.com> | 2020-12-18 08:48:36 -0700 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2020-12-18 11:21:40 -0700 |
commit | 86ef42bd7333091725991ba568807fcec0a2c1d1 (patch) | |
tree | d94449e78a375531fe80174390af06bed21b9c55 | |
parent | eba7b68cb023add7bdcbcc79ac6f3ce8e50952e1 (diff) | |
download | gdb-86ef42bd7333091725991ba568807fcec0a2c1d1.zip gdb-86ef42bd7333091725991ba568807fcec0a2c1d1.tar.gz gdb-86ef42bd7333091725991ba568807fcec0a2c1d1.tar.bz2 |
Run fixed_points.exp with -fgnat-encodings=minimal
This changes the test case gdb.ada/fixed_points.exp to also be run
with -fgnat-encodings=minimal. This change pointed out that the test
case had a few incorrect expected outputs; these are fixed as well.
Note that the Overprecise_Object test only uses the non-legacy output
with GCC trunk.
gdb/testsuite/ChangeLog
2020-12-18 Tom Tromey <tromey@adacore.com>
* gdb.ada/fixed_points.exp: Also run with
-fgnat-encodings=minimal. Update expected output.
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/fixed_points.exp | 134 |
2 files changed, 78 insertions, 61 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index e48a6fe0..24df951 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2020-12-18 Tom Tromey <tromey@adacore.com> + + * gdb.ada/fixed_points.exp: Also run with + -fgnat-encodings=minimal. Update expected output. + 2020-12-16 Simon Marchi <simon.marchi@efficios.com> * gdb.base/async-shell.exp: Enable non-stop through GDBFLAGS. diff --git a/gdb/testsuite/gdb.ada/fixed_points.exp b/gdb/testsuite/gdb.ada/fixed_points.exp index 1fe2eb2..565f711 100644 --- a/gdb/testsuite/gdb.ada/fixed_points.exp +++ b/gdb/testsuite/gdb.ada/fixed_points.exp @@ -19,80 +19,92 @@ if { [skip_ada_tests] } { return -1 } standard_ada_testfile fixed_points -if {[gdb_compile_ada "${srcfile}" "${binfile}" executable {debug}] != ""} { - return -1 -} - -clean_restart ${testfile} - -set bp_location [gdb_get_line_number "Set breakpoint here" ${testdir}/fixed_points.adb] -runto "fixed_points.adb:$bp_location" - -# Fixed point subtypes: +foreach_with_prefix scenario {all minimal} { + set flags [list debug additional_flags=-fgnat-encodings=$scenario] + if {[gdb_compile_ada "${srcfile}" "${binfile}" executable $flags] != ""} { + return -1 + } -gdb_test "print base_object" \ - "= -50" \ - "p on a fixed point type" + clean_restart ${testfile} -gdb_test "print subtype_object" \ - "= -50" \ - "p on a subtype fixed point type" + set bp_location [gdb_get_line_number "Set breakpoint here" ${testdir}/fixed_points.adb] + runto "fixed_points.adb:$bp_location" -gdb_test "print new_type_object" \ - "= -50" \ - "p on a new fixed point type" + # Fixed point subtypes: -# Overprecise delta: + gdb_test "print base_object" \ + "= -50" \ + "p on a fixed point type" -gdb_test "print Overprecise_Object" \ - "= 0.13579135791" + gdb_test "print subtype_object" \ + "= -50" \ + "p on a subtype fixed point type" -gdb_test "ptype Overprecise_Object" \ - "= delta 0.135791" + gdb_test "print new_type_object" \ + "= -50" \ + "p on a new fixed point type" -# FP*_Var... + # Overprecise delta: -gdb_test "print fp1_var" \ - " = 0.25" + gdb_test "print Overprecise_Object" \ + "= 0.13579135791" -gdb_test_multiple "ptype fp1_var" "" { - -re "type = <1-byte fixed point \\(small = 0\\.0625\\)>\r\n$gdb_prompt $" { - pass $gdb_test_name - } - -re "type = delta 0\\.1 <'small = 0\\.0625>\r\n$gdb_prompt $" { - # The (legacy) output we obtain when the compiler described - # our fixed point types using the GNAT encodings rather than - # standard DWARF. OK as well. - pass $gdb_test_name + gdb_test_multiple "ptype Overprecise_Object" "" { + -re "type = <2-byte fixed point \\(small = 135791357913579/1000000000000000\\)>\r\n$gdb_prompt $" { + pass $gdb_test_name + } + -re "type = delta 0.135791\r\n$gdb_prompt $" { + # The (legacy) output we obtain when the compiler described + # our fixed point types using the GNAT encodings rather than + # standard DWARF. OK as well. + pass $gdb_test_name + } } -} - -gdb_test "print fp2_var" \ - " = -0.01" -gdb_test_multiple "ptype fp2_var" "" { - -re "type = <8-byte fixed point \\(small = 0\\.01\\)>\r\n$gdb_prompt $" { - pass $gdb_test_name - } - -re "type = delta 0\\.01\r\n$gdb_prompt $" { - # The (legacy) output we obtain when the compiler described - # our fixed point types using the GNAT encodings rather than - # standard DWARF. OK as well. - pass $gdb_test_name + # FP*_Var... + + gdb_test "print fp1_var" \ + " = 0.25" + + gdb_test_multiple "ptype fp1_var" "" { + -re "type = <1-byte fixed point \\(small = 1/16\\)>\r\n$gdb_prompt $" { + pass $gdb_test_name + } + -re "type = delta 0\\.1 <'small = 0\\.0625>\r\n$gdb_prompt $" { + # The (legacy) output we obtain when the compiler described + # our fixed point types using the GNAT encodings rather than + # standard DWARF. OK as well. + pass $gdb_test_name + } } -} - -gdb_test "print fp3_var" \ - " = 0.1" -gdb_test_multiple "ptype fp3_var" "" { - -re "type = <1-byte fixed point \\(small = 0\\.0333333\\)>\r\n$gdb_prompt $" { - pass $gdb_test_name + gdb_test "print fp2_var" \ + " = -0.01" + + gdb_test_multiple "ptype fp2_var" "" { + -re "type = <8-byte fixed point \\(small = 1/100\\)>\r\n$gdb_prompt $" { + pass $gdb_test_name + } + -re "type = delta 0\\.01\r\n$gdb_prompt $" { + # The (legacy) output we obtain when the compiler described + # our fixed point types using the GNAT encodings rather than + # standard DWARF. OK as well. + pass $gdb_test_name + } } - -re "type = delta 0\\.1 <'small = 0\\.0333333>\r\n$gdb_prompt $" { - # The (legacy) output we obtain when the compiler described - # our fixed point types using the GNAT encodings rather than - # standard DWARF. OK as well. - pass $gdb_test_name + + gdb_test "print fp3_var" \ + " = 0.1" + + gdb_test_multiple "ptype fp3_var" "" { + -re "type = <1-byte fixed point \\(small = 1/30\\)>\r\n$gdb_prompt $" { + pass $gdb_test_name + } + -re "type = delta 0\\.1 <'small = 0\\.0333333>\r\n$gdb_prompt $" { + # The (legacy) output we obtain when the compiler described + # our fixed point types using the GNAT encodings rather than + # standard DWARF. OK as well. + pass $gdb_test_name + } } } |