2014-10-30 42 views
4

在研究不同的程序時,我經常使用LLDB的中斷集-S命令來中斷常用選擇器,例如「init」和「drawInRect:」。但是,自更新LLDB以來,這不再適用於沒有調試符號的選擇器。LLDB中斷選擇器不再適用於非調試符號

例如,在LLDB 320.4.124.10:

(lldb) br s -S drawAtPoint:withAttributes: 
Breakpoint 1: where = AppKit`-[NSString(NSStringDrawing) drawAtPoint:withAttributes:], address = 0x000000010b9be060 

但LLDB 320.4.152:

(lldb) br s -S drawAtPoint:withAttributes: 
Breakpoint 1: no locations (pending). 
WARNING: Unable to resolve breakpoint to any actual locations. 

假設這是一個不良記錄功能(旨在防止用戶調試不需要選擇? )而不是一個bug,我怎麼能在這樣的選擇器上設置斷點?

回答

2

這只是一個bug,請用http://bugreport.apple.com/或與http://bugreport.apple.com/一起報告。

如果您正確編寫正則表達式,則可以使用正則表達式斷點(break set -r)獲得相同的效果。

+0

謝謝!在更新發布之前,-r選項似乎可以作爲替代方案。 – LIJI 2014-11-07 15:41:55