Thanks @pfitzseb, it works now. Removing ALL_EXCEPT_MAIN from Compiled does the trick. I am just wondering why setting ALL_EXCEPT_MAIN prevents from entering in a function despite being marked as interpreted.
It probably sets some higher order function in Base as compiled (and is just a bad default for that reason, as noted above already).
Previous versions worked so that setting âALL_EXCEPT_MAINâ was overridden by specific compiled statements. You could âinterpret by exceptionâ which was actually the behavior I (and likely most other people) wanted because not compiling can make certain libraries slow to the point where a debugger becomes unusable. I usually just want to interpret the modules I set my breakpoints in. It worked this way in Jan/Feb when I tried it. I usually avoid the debugger at all costs but I needed it to solve some interaction issues I had with my package and OrdinaryDiffEq; I was surprised it worked so well said to myself out loud âFinally, Julia has a decent debuggerâ. Now it seems like my euphoria has been cut short, I had issues when OrdinaryDiffEq bumped a version and breakpoints were skipped. I removed the âALL_EXCEPT_MAINâ setting, and everything became interpreted and slow. I was back to painful exercise of clicking individual modules to compile by exception. Is there any way to make âinterpret by exceptionâ work again?