Board index » cppbuilder » Why the de{*word*81} suddenly runs when stepping
Bill Zitome
![]() CBuilder Developer |
Mon, 28 Jul 2003 01:59:09 GMT
Why the de{*word*81} suddenly runs when stepping
I recall seeing a post here a while back (I couldn't find it) about a
problem with the de{*word*81} suddenly taking off to somewhere else in the code when stepping. This just happened to me a little while ago, and at first I was baffled, but then I figured out why. An exception was being thrown, and the de{*word*81} wasn't stepping into the exception handler. Instead, it would resume execution somewhere further along in the code. The resumed point of execution appears to be correct, although it has skipped over a bunch of code, and it's probably picking up after blowing completely out of the stack frame and maybe even into a subsequent Windows message. I think it would help debugging a lot if the de{*word*81} would actually step into the exception handler, even if it has to jump back several frames. A step should not be skipping that much code. If you run and hit an exception, it stops and puts up a message so you can debug from that point (depending on the de{*word*81} settings), and I would expect it to do the same thing when stepping. The other thing about the code I was debugging is that it was throwing the exception in an inline class function, which was actually a few levels deep. IOW, an inline called an inline which called another inline, etc. I don't know if that makes any difference but it might. - Bill -- |