This is the mail archive of the
cygwin-cvs@cygwin.com
mailing list for the Cygwin project.
[newlib-cygwin] faq: Update FAQ question and answer about gdb and signals
- From: Jon TURNEY <jturney at sourceware dot org>
- To: cygwin-cvs at sourceware dot org
- Date: 15 Jan 2016 15:06:56 -0000
- Subject: [newlib-cygwin] faq: Update FAQ question and answer about gdb and signals
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=9c8a6e56460cfa0b122884121561cb90a1864971
commit 9c8a6e56460cfa0b122884121561cb90a1864971
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date: Thu Jan 14 17:44:18 2016 +0000
faq: Update FAQ question and answer about gdb and signals
* faq-programming.xml: Update question and answer about gdb and signals.
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
Diff:
---
winsup/doc/faq-programming.xml | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/winsup/doc/faq-programming.xml b/winsup/doc/faq-programming.xml
index 0c936eb..18557c0 100644
--- a/winsup/doc/faq-programming.xml
+++ b/winsup/doc/faq-programming.xml
@@ -859,15 +859,22 @@ on using <literal>strace</literal>, see the Cygwin User's Guide.
</answer></qandaentry>
<qandaentry id="faq.programming.gdb-signals">
-<question><para>Why doesn't gdb handle signals?</para></question>
+<question><para>How does gdb handle signals?</para></question>
<answer>
-<para>Unfortunately, there is only minimal signal handling support in gdb
-currently. Signal handling only works with Windows-type signals.
-SIGINT may work, SIGFPE may work, SIGSEGV definitely does. You cannot
-'stop', 'print' or 'nopass' signals like SIGUSR1 or SIGHUP to the
-process being debugged.
+<para>
+gdb maps known Windows exceptions to signals such as SIGSEGV, SIGFPE, SIGTRAP,
+SIGINT and SIGILL. Other Windows exceptions are passed on to the handler (if
+any), and reported as an unknown signal if an unhandled (second chance)
+exception occurs.
</para>
+
+<para>
+There is also an experimental feature to notify gdb of purely Cygwin signals
+like SIGABRT, SIGHUP or SIGUSR1. This currently has some known problems, for
+example, single-stepping from these signals may not work as expected.
+</para>
+
</answer></qandaentry>
<qandaentry id="faq.programming.linker">