The JUCE_CATCH_UNHANDLED_EXCEPTIONS macro is defined in juce_core.h which is generated by the Projucer app, but i’m not able to find where the setting to catch unhandled exceptions is. My juce_core.h has this set to 0. Could you point me to the right direction please? I find the organization of the various options and settings in Projucer sometimes confusing.
Oh! Found it. It’s in the juce_core module settings.
…but looks like the setting in Projucer makes no difference!? The definition in juce_core.h is still 0 even though i’ve chosen “Enabled” in Projucer juce_core.h module. Man this is confusing… am i doing something wrong here?
Oh, got it. Projucer bakes the setting directly into the Xcode project and the lines in juce_core.h are just some failsafe or such. I was confused with my assumption that the module settings modify the source code and other stuff is configured elsewhere. The setting works.
If you want to override any setting without touching the projucer, you can add the define in the AppConfig.h in the block that isn’t overwritten:
// [BEGIN_USER_CODE_SECTION] // (You can add your own code in this section, and the Projucer will not overwrite it) #define JUCE_CATCH_UNHANDLED_EXCEPTIONS=1 // [END_USER_CODE_SECTION]
This is very handy to experiment back and forth without roundtrip.
N.B. some new projects don’t generate an AppConfig.h though (can be selected in Projucer, because of cmake JUCE moves away from using that file).
Thanks for the tip @daniel!