While researching different programs, I often use LLDB's break set -S command to break on common selectors such as "init" and "drawInRect:". However, since updating LLDB, this no longer works for selectors without debugging symbols.
For example, in LLDB 320.4.124.10:
(lldb) br s -S drawAtPoint:withAttributes:
Breakpoint 1: where = AppKit`-[NSString(NSStringDrawing) drawAtPoint:withAttributes:], address = 0x000000010b9be060
But in LLDB 320.4.152:
(lldb) br s -S drawAtPoint:withAttributes:
Breakpoint 1: no locations (pending).
WARNING: Unable to resolve breakpoint to any actual locations.
Assuming it's a poorly documented feature (intended to prevent users from debugging unwanted selectors?) rather than a bug, how can I set breakpoints on such selectors?
This is just a bug, please file a report with or with http://bugreport.apple.com/ .
You can get sort of the same effect with regular expression breakpoints (break set -r
) if you write the regex correctly.