[gdb/testsuite] Fix gdb.base/store.exp with gcc-10
When running gdb.base/store.exp with gcc-10 instead of gcc-9, we have: ... (gdb) PASS: gdb.base/store.exp: continue to wack_double print l^M -$22 = <optimized out>^M +$22 = -1^M -(gdb) UNSUPPORTED: gdb.base/store.exp: var double l; print old l, expecting -1 -(gdb) PASS: gdb.base/store.exp: var double l; print old l, expecting -1 +print r^M +$23 = <optimized out>^M +(gdb) FAIL: gdb.base/store.exp: var double l; print old r, expecting -2 ... With gcc-9, there's no location info for both l and r, but with gcc-10, there's location info for l, but not r. The test-case only checks for location info availability of l, and then assumes location info for r is also available. Fix this by allowing missing location info for r. Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2020-05-06 Tom de Vries <tdevries@suse.de> * gdb.base/store.exp (check_set, up_set): Allowing missing location info for r.
This commit is contained in:
parent
0fc2a808cb
commit
abf6d805a0
|
@ -1,3 +1,8 @@
|
||||||
|
2020-05-06 Tom de Vries <tdevries@suse.de>
|
||||||
|
|
||||||
|
* gdb.base/store.exp (check_set, up_set): Allowing missing location
|
||||||
|
info for r.
|
||||||
|
|
||||||
2020-05-06 Tom de Vries <tdevries@suse.de>
|
2020-05-06 Tom de Vries <tdevries@suse.de>
|
||||||
|
|
||||||
* gdb.base/shlib-call.exp: Add extra step to reach shmain.c:42, if
|
* gdb.base/shlib-call.exp: Add extra step to reach shmain.c:42, if
|
||||||
|
|
|
@ -55,26 +55,37 @@ proc check_set { t l r new add } {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
set supported 1
|
set supported_l 1
|
||||||
set test "${prefix}; print old l, expecting ${l}"
|
set test "${prefix}; print old l, expecting ${l}"
|
||||||
gdb_test_multiple "print l" "$test" {
|
gdb_test_multiple "print l" "$test" {
|
||||||
-re " = <optimized out>\r\n$gdb_prompt $" {
|
-re -wrap " = <optimized out>" {
|
||||||
unsupported $test
|
unsupported $test
|
||||||
set supported 0
|
set supported_l 0
|
||||||
}
|
}
|
||||||
-re " = ${l}\r\n$gdb_prompt $" {
|
-re -wrap " = ${l}" {
|
||||||
pass $test
|
pass $test
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if { $supported } {
|
|
||||||
gdb_test "print r" " = ${r}" \
|
set test "${prefix}; print old r, expecting ${r}"
|
||||||
"${prefix}; print old r, expecting ${r}"
|
gdb_test_multiple "print r" "$test" {
|
||||||
|
-re -wrap " = <optimized out>" {
|
||||||
|
unsupported $test
|
||||||
|
}
|
||||||
|
-re -wrap " = ${r}" {
|
||||||
|
pass $test
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if { $supported_l } {
|
||||||
gdb_test_no_output "set variable l = 4" \
|
gdb_test_no_output "set variable l = 4" \
|
||||||
"${prefix}; setting l to 4"
|
"${prefix}; setting l to 4"
|
||||||
gdb_test "print l" " = ${new}" \
|
gdb_test "print l" " = ${new}" \
|
||||||
"${prefix}; print new l, expecting ${new}"
|
"${prefix}; print new l, expecting ${new}"
|
||||||
gdb_test "next" "return l \\+ r;" \
|
}
|
||||||
"${prefix}; next over add call"
|
gdb_test "next" "return l \\+ r;" \
|
||||||
|
"${prefix}; next over add call"
|
||||||
|
if { $supported_l } {
|
||||||
gdb_test "print l" " = ${add}" \
|
gdb_test "print l" " = ${add}" \
|
||||||
"${prefix}; print incremented l, expecting ${add}"
|
"${prefix}; print incremented l, expecting ${add}"
|
||||||
}
|
}
|
||||||
|
@ -101,20 +112,29 @@ proc up_set { t l r new } {
|
||||||
gdb_test "up" "l = add_${t} .l, r.;" \
|
gdb_test "up" "l = add_${t} .l, r.;" \
|
||||||
"${prefix}; up"
|
"${prefix}; up"
|
||||||
|
|
||||||
set supported 1
|
set supported_l 1
|
||||||
set test "${prefix}; print old l, expecting ${l}"
|
set test "${prefix}; print old l, expecting ${l}"
|
||||||
gdb_test_multiple "print l" "$test" {
|
gdb_test_multiple "print l" "$test" {
|
||||||
-re " = <optimized out>\r\n$gdb_prompt $" {
|
-re -wrap " = <optimized out>" {
|
||||||
unsupported $test
|
unsupported $test
|
||||||
set supported 0
|
set supported_l 0
|
||||||
}
|
}
|
||||||
-re " = ${l}\r\n$gdb_prompt $" {
|
-re -wrap " = ${l}" {
|
||||||
pass $test
|
pass $test
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if { $supported } {
|
|
||||||
gdb_test "print r" " = ${r}" \
|
set test "${prefix}; print old r, expecting ${r}"
|
||||||
"${prefix}; print old r, expecting ${r}"
|
gdb_test_multiple "print r" "$test" {
|
||||||
|
-re -wrap " = <optimized out>" {
|
||||||
|
unsupported $test
|
||||||
|
}
|
||||||
|
-re -wrap " = ${r}" {
|
||||||
|
pass $test
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if { $supported_l } {
|
||||||
gdb_test_no_output "set variable l = 4" \
|
gdb_test_no_output "set variable l = 4" \
|
||||||
"${prefix}; set l to 4"
|
"${prefix}; set l to 4"
|
||||||
gdb_test "print l" " = ${new}" \
|
gdb_test "print l" " = ${new}" \
|
||||||
|
|
Loading…
Reference in New Issue