[gdb/testsuite] Capture many-headers.exp progress and output in gdb.log
When running test-case gdb.base/many-headers.exp, we have test output on stdout/stderr: ... Running src/gdb/testsuite/gdb.base/many-headers.exp ... [New LWP 759] Core was generated by `outputs/gdb.base/many-headers/many'. Program terminated with signal SIGSEGV, Segmentation fault. \#0 0x0000000000400688 in ?? () === gdb Summary === nr of expected passes 1 ... Furthermore, the only trace in gdb.log that we have of the gdb command issued is: ... PASS: gdb.base/many-headers.exp: read core file ... Fix this by echoing the gdb command in gdb.log, and capturing the command output and pasting it into gdb.log: ... ( ulimit -s 4096; \ gdb -nw -nx -data-directory data-directory -batch -core=many-headers.core ) [New LWP 1542] Core was generated by `many'. Program terminated with signal SIGSEGV, Segmentation fault. \#0 0x0000000000400688 in ?? () PASS: gdb.base/many-headers.exp: read core file ... Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2020-02-09 Tom de Vries <tdevries@suse.de> * gdb.base/many-headers.exp: Echo gdb command to gdb.log. Capture gdb command output and paste it into gdb.log. If any, paste catch message to gdb.log.
This commit is contained in:
parent
6bafc8451e
commit
46ce2b6f4c
|
@ -1,3 +1,9 @@
|
|||
2020-02-09 Tom de Vries <tdevries@suse.de>
|
||||
|
||||
* gdb.base/many-headers.exp: Echo gdb command to gdb.log. Capture gdb
|
||||
command output and paste it into gdb.log. If any, paste catch message
|
||||
to gdb.log.
|
||||
|
||||
2020-02-07 Tom Tromey <tromey@adacore.com>
|
||||
|
||||
PR breakpoints/24915:
|
||||
|
|
|
@ -51,17 +51,26 @@ if { "$msg" != "" } {
|
|||
return -1
|
||||
}
|
||||
|
||||
set cmd \
|
||||
[concat \
|
||||
"(" \
|
||||
"ulimit -s $stack_limit;" \
|
||||
"$GDB $INTERNAL_GDBFLAGS $GDBFLAGS -batch -core=$corefile" \
|
||||
")"]
|
||||
verbose -log $cmd
|
||||
|
||||
# Run gdb with stack limit
|
||||
set output [standard_output_file OUTPUT]
|
||||
catch {
|
||||
system [concat \
|
||||
"(" \
|
||||
"ulimit -s $stack_limit;" \
|
||||
"$GDB $INTERNAL_GDBFLAGS $GDBFLAGS -batch -core=$corefile" \
|
||||
")"]
|
||||
system "$cmd > $output 2>&1"
|
||||
} msg
|
||||
verbose -log [exec cat $output]
|
||||
file delete $output
|
||||
|
||||
set test "read core file"
|
||||
if { "$msg" == "" } {
|
||||
pass "$test"
|
||||
} else {
|
||||
verbose -log $msg
|
||||
fail "$test"
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue