So I had difficulty debugging patches in Xcode, in particular having breakpoints triggered, but I have found a fix. There is a setting within LLDB (the default debugger for Xcode) called target.inline-breakpoint-strategy, to check it you need go into LLDB (via Terminal or Xcode) then type:
settings show target.inline-breakpoint-strategy
If it doesn't return with:
target.inline-breakpoint-strategy (enum) = always
Then you need to set it to that. Make a blank document (I did it via Xcode) called .lldbinit and put this line in:
settings set target.inline-breakpoint-strategy always
Put this file in your home directory (in finder it's the button with your username and the little picture of the house, in terminal it's ~/) so the path of your file should be:
That means every time LLDB starts up (in Terminal or Xcode) it will read that file and change that setting, you can then test it using the previous line above.