[PATCH v2 1/2] Display ExceptionRecord for $_siginfo
Hannes Domani via gdb-patches
gdb-patches@sourceware.org
Sat Feb 8 21:09:00 GMT 2020
Am Samstag, 8. Februar 2020, 21:13:54 MEZ hat Eli Zaretskii <eliz@gnu.org> Folgendes geschrieben:
> > From: Simon Marchi <simark@simark.ca>
> > Date: Sat, 8 Feb 2020 15:00:10 -0500
> >
> > > Program received signal SIGSEGV, Segmentation fault.
> > > main () at crasher.c:4
> > > 4 *(int*)0x123 = 0;
> > > (gdb) p $_siginfo
> > > $1 = {
> > > ExceptionCode = 3221225477,
> > > ExceptionFlags = 0,
> > > ExceptionRecord = 0x0,
> > > ExceptionAddress = 0x401632 <main+18>,
> > > NumberParameters = 2,
> > > ExceptionInformation = {1, 291, 0 <repeats 13 times>}
> > > }
> > > (gdb) p/x $_siginfo.ExceptionCode
> > > $2 = 0xc0000005
> > > (gdb) p/x $_siginfo.ExceptionInformation[1]
> > > $3 = 0x123
> > >
> > > And 0xc0000005 is the value of EXCEPTION_ACCESS_VIOLATION.
> > >
> > > [1] https://docs.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-exception_record
> >
> > Eli, could you please comment on this from a Windows user point of view, if this looks
> > correct to you?
>
> LGTM, although I'd prefer to have ExceptionCode be printed in hex by
> default. But I guess that could be tricky, and the next patch makes
> then print as symbolic names anyway.
These were basically the same thoughts I had when I made this.
> > Also, does this need a manual/NEWS update?
>
>
> I think only NEWS, because the manual already says "on some targets",
> and gives an example from GNU/Linux only.
Is it fine if I add the following to this patch?:
* NEWS: Mention $_siginfo support for Windows.
---
diff --git a/gdb/NEWS b/gdb/NEWS
index d4e2e70f38..c202fe06de 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -10,6 +10,9 @@
that support it (see entry for GDB 9, below), providing faster
performance for programs with many symbols.
+* The $_siginfo convenience variable now also works on Windows targets,
+ and will display the EXCEPTION_RECORD of the last handled exception.
+
* New commands
set exec-file-mismatch -- Set exec-file-mismatch handling (ask|warn|off).
More information about the Gdb-patches
mailing list