+#if defined(__GNUC__) || defined(__llvm__) || defined(__clang__)
+ int status = 0;
+ char *buff = __cxxabiv1::__cxa_demangle(
+ __cxxabiv1::__cxa_current_exception_type()->name(),
+ NULL, NULL, &status);
+ QString exception_name = QString(buff);
+ std::free(buff);
+#else
+ QString exception_name = QString("unknown");
+#endif
+ error_message("UNCAUGHT exception: " + exception_name);