Re: gdb aborts after setting "throw" catchpoint

2013-05-30 Thread Ryan Johnson

On 30/05/2013 2:37 AM, Noel Grandin wrote:

On 2013-05-29 23:23, Ryan Johnson wrote:


GNU gdb (GDB) 7.6.50.20130408-cvs (cygwin-special)
... snip...
Reading symbols from /home/Ryan/experiments/a.exe...done.
(gdb) catch throw
Catchpoint 1 (throw)



That was a mistake in the documentation, they didn't actually get 
around to implementing it.
They have since rectified that mistake, but it's only going to be in 
version 7.7


See bug:
http://sourceware.org/bugzilla/show_bug.cgi?id=13588
That bug seems to be about adding filtering based on exception type, not 
about supporting catchpoints in general; the latter have worked for 
years in gdb-linux (at a minimum, my server at work can do it with 
gdb-7.4).


The problem here is that gdb-cygwin crashes when running with a 
catchpoint enabled. I don't see any bugs on Sourceware about that, 
though I suspect the search interface is terrible so I could be missing 
something obvious.


Ryan


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



Re: gdb aborts after setting "throw" catchpoint

2013-05-29 Thread Noel Grandin

On 2013-05-29 23:23, Ryan Johnson wrote:


GNU gdb (GDB) 7.6.50.20130408-cvs (cygwin-special)
... snip...
Reading symbols from /home/Ryan/experiments/a.exe...done.
(gdb) catch throw
Catchpoint 1 (throw)



That was a mistake in the documentation, they didn't actually get around 
to implementing it.
They have since rectified that mistake, but it's only going to be in 
version 7.7


See bug:
http://sourceware.org/bugzilla/show_bug.cgi?id=13588

--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple



gdb aborts after setting "throw" catchpoint

2013-05-29 Thread Ryan Johnson

Hi all,

Compiling the following with the cygwin g++-4.5.3:

int global;
int main() {
if (global)
throw global;
return 0;
}

Crashes gdb if a catchpoint is set:

GNU gdb (GDB) 7.6.50.20130408-cvs (cygwin-special)
... snip...
Reading symbols from /home/Ryan/experiments/a.exe...done.
(gdb) catch throw
Catchpoint 1 (throw)
(gdb) r
Starting program: /home/Ryan/experiments/a.exe
[New Thread 10024.0x1480]
[New Thread 10024.0x1758]
warning: SuspendThread failed. (winerr 6)
[Inferior 1 (process 10024) exited normally]
(gdb)
Debugger aborted (core dumped)

Has anybody seen this problem before? Meanwhile, setting a breakpoint on 
__cxa_throw works just fine, so at least there's a workaround.


Thoughts?
Ryan


--
Problem reports:   http://cygwin.com/problems.html
FAQ:   http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple