Add one more workaround for LLVM bug 33220

This commit is contained in:
Svyatoslav Scherbina
2017-07-13 13:48:59 +03:00
committed by SvyatoslavScherbina
parent dae273099a
commit 747922ce00
+7
View File
@@ -157,6 +157,13 @@ OBJ_GETTER0(GetCurrentStackTrace) {
void ThrowException(KRef exception) {
RuntimeAssert(exception != nullptr && IsInstance(exception, theThrowableTypeInfo),
"Throwing something non-throwable");
#if (__MINGW32__ || __MINGW64__)
// Workaround for https://bugs.llvm.org/show_bug.cgi?id=33220
// This code forces the function to have at least one landingpad:
ObjHolder toBeDestructed(exception);
#endif
throw ObjHolder(exception);
}