diff options
author | Tom de Vries <tdevries@suse.de> | 2024-02-21 10:46:08 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2024-02-21 10:46:08 +0100 |
commit | 3c3fe724f5f579b76e8adafb91517fbd6f34ecdc (patch) | |
tree | bb5471d6aff7e23dce20bc5d7d05e59add140116 | |
parent | 9eb450d26f28f78b0b7d665971e190f583034150 (diff) | |
download | gdb-3c3fe724f5f579b76e8adafb91517fbd6f34ecdc.zip gdb-3c3fe724f5f579b76e8adafb91517fbd6f34ecdc.tar.gz gdb-3c3fe724f5f579b76e8adafb91517fbd6f34ecdc.tar.bz2 |
[gdb/testsuite] Set up dap log file in gdb.dap/type_checker.exp
While debugging a slow-down in test-case gdb.dap/type_checker.exp due to a WIP
patch, I noticed that test-case gdb.dap/type_checker.exp doesn't have a dap
log file.
This is normally set up by dap_gdb_start, but the test-case doesn't use it.
Fix this by doing "set debug dap-log-file $logfile" in the test-case.
To make it easy to do so, I've factored out a new proc new_dap_log_file, and
while at likewise a new proc current_dap_log_file.
Note that the log file is currently empty.
Tested on x86_64-linux.
Approved-By: Tom Tromey <tom@tromey.com>
-rw-r--r-- | gdb/testsuite/gdb.dap/type_check.exp | 3 | ||||
-rw-r--r-- | gdb/testsuite/lib/dap-support.exp | 22 |
2 files changed, 18 insertions, 7 deletions
diff --git a/gdb/testsuite/gdb.dap/type_check.exp b/gdb/testsuite/gdb.dap/type_check.exp index cda0129..e6c9d73 100644 --- a/gdb/testsuite/gdb.dap/type_check.exp +++ b/gdb/testsuite/gdb.dap/type_check.exp @@ -26,6 +26,9 @@ set remote_python_file \ [gdb_remote_download host ${srcdir}/${subdir}/${gdb_test_file_name}.py] gdb_test_no_output "source ${remote_python_file}" "load python file" +set logfile [new_dap_log_file] +gdb_test_no_output "set debug dap-log-file $logfile" "set dap log file" + gdb_test_multiple "python check_everything()" "type checker" { -re -wrap "OK" { pass $gdb_test_name diff --git a/gdb/testsuite/lib/dap-support.exp b/gdb/testsuite/lib/dap-support.exp index 979dfa2..31f036e 100644 --- a/gdb/testsuite/lib/dap-support.exp +++ b/gdb/testsuite/lib/dap-support.exp @@ -26,6 +26,19 @@ set dap_gdb_instance 0 # is restarted. set dap_seq 1 +# Return the current DAP log file. +proc current_dap_log_file {} { + global dap_gdb_instance + return [standard_output_file "dap.log.$dap_gdb_instance"] +} + +# Return a new DAP log file. +proc new_dap_log_file {} { + global dap_gdb_instance + incr dap_gdb_instance + return [current_dap_log_file] +} + # Start gdb using the DAP interpreter. proc dap_gdb_start {} { # Keep track of the number of times GDB has been launched. @@ -34,13 +47,10 @@ proc dap_gdb_start {} { gdb_stdin_log_init - global dap_gdb_instance - incr dap_gdb_instance - global GDBFLAGS stty_init save_vars { GDBFLAGS stty_init } { set stty_init "-echo raw" - set logfile [standard_output_file "dap.log.$dap_gdb_instance"] + set logfile [new_dap_log_file] append GDBFLAGS " -iex \"set debug dap-log-file $logfile\" -q -i=dap" set res [gdb_spawn] if {$res != 0} { @@ -337,9 +347,7 @@ proc dap_target_remote {target} { # Read the most recent DAP log file and check it for exceptions. proc dap_check_log_file {} { - global dap_gdb_instance - - set fd [open [standard_output_file "dap.log.$dap_gdb_instance"]] + set fd [open [current_dap_log_file]] set contents [read $fd] close $fd |