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.
This commit is contained in:
parent
eba7b68cb0
commit
86ef42bd73
2 changed files with 91 additions and 74 deletions
|
@ -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.
|
||||
|
|
|
@ -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:
|
||||
|
||||
gdb_test "print base_object" \
|
||||
"= -50" \
|
||||
"p on a fixed point type"
|
||||
|
||||
gdb_test "print subtype_object" \
|
||||
"= -50" \
|
||||
"p on a subtype fixed point type"
|
||||
|
||||
gdb_test "print new_type_object" \
|
||||
"= -50" \
|
||||
"p on a new fixed point type"
|
||||
|
||||
# Overprecise delta:
|
||||
|
||||
gdb_test "print Overprecise_Object" \
|
||||
"= 0.13579135791"
|
||||
|
||||
gdb_test "ptype Overprecise_Object" \
|
||||
"= delta 0.135791"
|
||||
|
||||
# FP*_Var...
|
||||
|
||||
gdb_test "print fp1_var" \
|
||||
" = 0.25"
|
||||
|
||||
gdb_test_multiple "ptype fp1_var" "" {
|
||||
-re "type = <1-byte fixed point \\(small = 0\\.0625\\)>\r\n$gdb_prompt $" {
|
||||
pass $gdb_test_name
|
||||
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
|
||||
}
|
||||
-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 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
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
-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
|
||||
|
||||
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:
|
||||
|
||||
gdb_test "print base_object" \
|
||||
"= -50" \
|
||||
"p on a fixed point type"
|
||||
|
||||
gdb_test "print subtype_object" \
|
||||
"= -50" \
|
||||
"p on a subtype fixed point type"
|
||||
|
||||
gdb_test "print new_type_object" \
|
||||
"= -50" \
|
||||
"p on a new fixed point type"
|
||||
|
||||
# Overprecise delta:
|
||||
|
||||
gdb_test "print Overprecise_Object" \
|
||||
"= 0.13579135791"
|
||||
|
||||
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
|
||||
}
|
||||
}
|
||||
|
||||
# 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 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
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue