The attached simple app intentionally crashes via a null pointer dereference. It uses an exception filter to intercept the crash and print a simple stderr message before the app exits. With Qt Enterprise 5.4.1, this behavior works as expected no matter when the crash is invoked.
With Qt Enterprise 5.5.1 the behavior is variable. If the crash happens outside of the Qt/QML event loop then it works as expected: my custom exception filter is invoked and prints to stderr. If the crash happens in response to a UI event (a mouse click in this case) then my exception filter is never invoked.
(We discovered this problem in our application which uses Google Breakpad for crash reporting. We've found that since we upgraded to 5.5.1, Breakpad is unable to trap errors. Mac is fine, no behavior change there)
Note: I've marked this issue as QML-related because both my test app and my real app are QML based, but I really don't know what part of Qt has triggered this behavior change.