LLVM  6.0.0svn
Functions | Variables
ErrorHandling.cpp File Reference
#include "llvm/Support/ErrorHandling.h"
#include "llvm-c/ErrorHandling.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Config/config.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/Errc.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/Signals.h"
#include "llvm/Support/Threading.h"
#include "llvm/Support/WindowsError.h"
#include "llvm/Support/raw_ostream.h"
#include <cassert>
#include <cstdlib>
#include <mutex>
#include <new>
#include <unistd.h>
Include dependency graph for ErrorHandling.cpp:

Go to the source code of this file.

Functions

static void bindingsErrorHandler (void *user_data, const std::string &reason, bool gen_crash_diag)
 
void LLVMInstallFatalErrorHandler (LLVMFatalErrorHandler Handler)
 Install a fatal error handler. More...
 
void LLVMResetFatalErrorHandler ()
 Reset the fatal error handler. More...
 

Variables

static fatal_error_handler_t ErrorHandler = nullptr
 
static void * ErrorHandlerUserData = nullptr
 
static fatal_error_handler_t BadAllocErrorHandler = nullptr
 
static void * BadAllocErrorHandlerUserData = nullptr
 
static std::mutex ErrorHandlerMutex
 
static std::mutex BadAllocErrorHandlerMutex
 

Function Documentation

◆ bindingsErrorHandler()

static void bindingsErrorHandler ( void *  user_data,
const std::string &  reason,
bool  gen_crash_diag 
)
static

Definition at line 197 of file ErrorHandling.cpp.

References LLVM_EXTENSION.

Referenced by LLVMInstallFatalErrorHandler().

◆ LLVMInstallFatalErrorHandler()

void LLVMInstallFatalErrorHandler ( LLVMFatalErrorHandler  Handler)

Install a fatal error handler.

By default, if LLVM detects a fatal error, it will call exit(1). This may not be appropriate in many contexts. For example, doing exit(1) will bypass many crash reporting/tracing system tools. This function allows you to install a callback that will be invoked prior to the call to exit(1).

Definition at line 204 of file ErrorHandling.cpp.

References bindingsErrorHandler(), llvm::install_fatal_error_handler(), and LLVM_EXTENSION.

◆ LLVMResetFatalErrorHandler()

void LLVMResetFatalErrorHandler ( void  )

Variable Documentation

◆ BadAllocErrorHandler

fatal_error_handler_t BadAllocErrorHandler = nullptr
static

◆ BadAllocErrorHandlerMutex

std::mutex BadAllocErrorHandlerMutex
static

◆ BadAllocErrorHandlerUserData

void* BadAllocErrorHandlerUserData = nullptr
static

◆ ErrorHandler

fatal_error_handler_t ErrorHandler = nullptr
static

◆ ErrorHandlerMutex

std::mutex ErrorHandlerMutex
static

◆ ErrorHandlerUserData

void* ErrorHandlerUserData = nullptr
static