Ah thanks, that's very helpful.

One thing that I'm a bit unsure about. If I enter a symbolic breakpoint, will it break on the first instruction of that method or further along? It matters because that doc states:

"If you've stopped at the first instruction of a routine, the first parameter is at 4 bytes above the stack pointer, the second parameter is 8 bytes above the stack pointer, and so on. The GDB syntax is *(int *)($esp+4), *(int *)($esp+8), and so on.

If you've stopped elsewhere in the routine (after the frame has been created), the first parameter is at 8 bytes above the frame pointer, the second parameter is 12 bytes above the frame pointer, and so on. The GDB syntax is *(int *)($ebp+8), *(int *)($ebp+12), and so on."

Assuming the first case, wouldn't the offset be 12, not 16? (two implied parameters then the first visible one). The second case would be 16 of course - so I need to know where a symbolic breakpoint actually stops.



cheers, Graham





On 28 Jul 2008, at 6:47 pm, Jonathan del Strother wrote:


On Mon, Jul 28, 2008 at 8:02 AM, Graham Cox <[EMAIL PROTECTED]> wrote:
Once in a blue moon, I get a console message that a nil string was passed to [NSConcreteAttributedString initWithString:] I'd like to find out where this is coming from by setting a breakpoint there, but only for a nil string. Adding the breakpoint as a symbol to the symbolic breakpoints works, but I can't set the condition (e.g. aString == nil), since the parameter's name
isn't available.

What can I do, since this method is called hundreds of times in the normal course of things, so just having an unconditional breakpoint isn't very
useful. Can I specify a register somehow?


Take a look at the debugging magic page -
http://developer.apple.com/technotes/tn2004/tn2124.html
I believe you want *(int*)($ebp+16)

_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to