22 #include <llvm/Support/ErrorHandling.h> 31 #if LLVM_VERSION_MAJOR > 4 32 static void fatal_llvm_new_handler(
void *user_data,
const std::string& reason,
bool gen_crash_diag);
61 #if LLVM_VERSION_MAJOR > 4 62 llvm::install_bad_alloc_error_handler(fatal_llvm_new_handler);
79 #if LLVM_VERSION_MAJOR > 4 80 llvm::remove_bad_alloc_error_handler();
82 llvm::remove_fatal_error_handler();
96 #if LLVM_VERSION_MAJOR > 4 97 llvm::remove_bad_alloc_error_handler();
99 llvm::remove_fatal_error_handler();
114 (
errcode(ERRCODE_OUT_OF_MEMORY),
119 #if LLVM_VERSION_MAJOR > 4 121 fatal_llvm_new_handler(
void *user_data,
126 (
errcode(ERRCODE_OUT_OF_MEMORY),
128 errdetail(
"While in LLVM: %s", reason.c_str())));
138 (
errcode(ERRCODE_OUT_OF_MEMORY),
139 errmsg(
"fatal llvm error: %s",
static void fatal_system_new_handler(void)
int errcode(int sqlerrcode)
static void fatal_llvm_error_handler(void *user_data, const std::string &reason, bool gen_crash_diag)
void llvm_assert_in_fatal_section(void)
int errdetail(const char *fmt,...)
void llvm_reset_after_error(void)
#define ereport(elevel,...)
#define Assert(condition)
static int fatal_new_handler_depth
int errmsg(const char *fmt,...)
void llvm_enter_fatal_on_oom(void)
static std::new_handler old_new_handler
void llvm_leave_fatal_on_oom(void)