This was due to the 'assert' macro expanding into a function call on some
platforms which could throw. The C++ compiler then added checks for the
exception specifications in these functions, which pulled in the C++ runtime.
This was bad, and the assertions can never fire (the library is now debugged)
so just remove them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9801
91177308-0d34-0410-b5e6-
96231b3b80d8
//===----------------------------------------------------------------------===//
#include "Exception.h"
-#include <cassert>
// Thread local state for exception handling. FIXME: This should really be made
// thread-local!
// returns a pointer to the exception area data.
//
void *__llvm_eh_current_uncaught_exception_type(unsigned HandlerType) throw() {
- assert(UncaughtExceptionStack && "No uncaught exception!");
if (UncaughtExceptionStack->ExceptionType == HandlerType)
return UncaughtExceptionStack+1;
return 0;
// __llvm_eh_get_uncaught_exception - Returns the current uncaught exception.
// There must be an uncaught exception for this to work!
llvm_exception *__llvm_eh_get_uncaught_exception() throw() {
- assert(UncaughtExceptionStack && "There are no uncaught exceptions!?!?");
return UncaughtExceptionStack;
}