aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2021-11-02 15:05:39 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2021-11-09 11:15:40 -0500
commitf0bbba7886f5dba158a143bebbd0691591f22b9f (patch)
tree904ef6b41ed74b7c34f1987ff4c8fff5a67f5449 /gdb
parent7b9f73fad09a5ec76002625d562e32c4debc2a5e (diff)
downloadgdb-f0bbba7886f5dba158a143bebbd0691591f22b9f.zip
gdb-f0bbba7886f5dba158a143bebbd0691591f22b9f.tar.gz
gdb-f0bbba7886f5dba158a143bebbd0691591f22b9f.tar.bz2
gdb.debuginfod/fetch_src_and_symbols.exp: fix when GDB is built with AddressSanitizer
This test fails for me, showing: ERROR: tcl error sourcing /home/smarchi/src/binutils-gdb/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp. ERROR: This GDB was configured as follows: configure --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu --with-auto-load-dir=$debugdir:$datadir/auto-load --with-auto-load-safe-path=$debugdir:$datadir/auto-load ... and much more ... The problem is that TCL's exec throws an error as soon as the exec'ed process outputs on stderr. When GDB is built with ASan, it prints some warnings about pre-existing signal handlers: warning: Found custom handler for signal 7 (Bus error) preinstalled. warning: Found custom handler for signal 8 (Floating point exception) preinstalled. warning: Found custom handler for signal 11 (Segmentation fault) preinstalled. Pass --quiet to GDB to avoid these warnings. Change-Id: I3751d89b9b1df646da19149d7cb86775e2d3e80f
Diffstat (limited to 'gdb')
-rw-r--r--gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp7
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp b/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp
index 92f3cd8..31e9e4a 100644
--- a/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp
+++ b/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp
@@ -30,8 +30,13 @@ if { [which curl] == 0 } {
}
# Skip testing if gdb was not configured with debuginfod
+#
+# If GDB is built with ASan, it warns that some signal handlers (installed by
+# ASan) exist on startup. That makes TCL's exec throw an error. Disable that
+# by passing --quiet.
+
if { [string first "with-debuginfod" \
- [eval exec $GDB $INTERNAL_GDBFLAGS --configuration]] == -1 } {
+ [eval exec $GDB --quiet $INTERNAL_GDBFLAGS --configuration]] == -1 } {
untested "gdb not configured with debuginfod"
return -1
}