I wonder why juce_breakDebugger is defined only when JUCE_DEBUG is enabled. Maybe I’m thinking in the wrong direction but if I explicitly do a debug build, I certainly don’t want the debugger to be broken. When I do a release build and someone tries to debug the app, that’s the situation when I expect the juce_breakDebugger option to take action.
Am I confused or shouldn’t juce_breakDebugger be defined when JUCE_DEBUG is not defined?

I think you have misunderstood that this does. juce_breakDebugger is a programmatic breakpoint. when your code comes to this line, it will stop execution of your program and drop into the debugger (assuming you are running in one)…

programiccly break the debugger, that’s actually funny :).

Aaah sorry, of course. I totally confused this with isRunningUnderDebugger(). Embarrassing post, forget about it.