#include "llvm/Support/Error.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/ErrorHandling.h"
#include <system_error>
usingnamespacellvm;
namespace {
enum class ErrorErrorCode : int { … };
class ErrorErrorCategory : public std::error_category { … };
}
ErrorErrorCategory &getErrorErrorCat() { … }
namespace llvm {
void ErrorInfoBase::anchor() { … }
char ErrorInfoBase::ID = …;
char ErrorList::ID = …;
void ECError::anchor() { … }
char ECError::ID = …;
char StringError::ID = …;
char FileError::ID = …;
void logAllUnhandledErrors(Error E, raw_ostream &OS, Twine ErrorBanner) { … }
std::string toString(Error E) { … }
std::string toStringWithoutConsuming(const Error &E) { … }
std::error_code ErrorList::convertToErrorCode() const { … }
std::error_code inconvertibleErrorCode() { … }
std::error_code FileError::convertToErrorCode() const { … }
Error errorCodeToError(std::error_code EC) { … }
std::error_code errorToErrorCode(Error Err) { … }
#if LLVM_ENABLE_ABI_BREAKING_CHECKS
void Error::fatalUncheckedError() const {
dbgs() << "Program aborted due to an unhandled Error:\n";
if (getPtr()) {
getPtr()->log(dbgs());
dbgs() << "\n";
}else
dbgs() << "Error value was Success. (Note: Success values must still be "
"checked prior to being destroyed).\n";
abort();
}
#endif
StringError::StringError(std::error_code EC, const Twine &S)
: … { … }
StringError::StringError(const Twine &S, std::error_code EC)
: … { … }
StringError::StringError(std::string &&S, std::error_code EC, bool PrintMsgOnly)
: … { … }
void StringError::log(raw_ostream &OS) const { … }
std::error_code StringError::convertToErrorCode() const { … }
Error createStringError(std::string &&Msg, std::error_code EC) { … }
void report_fatal_error(Error Err, bool GenCrashDiag) { … }
}
LLVMErrorTypeId LLVMGetErrorTypeId(LLVMErrorRef Err) { … }
void LLVMConsumeError(LLVMErrorRef Err) { … }
void LLVMCantFail(LLVMErrorRef Err) { … }
char *LLVMGetErrorMessage(LLVMErrorRef Err) { … }
void LLVMDisposeErrorMessage(char *ErrMsg) { … }
LLVMErrorTypeId LLVMGetStringErrorTypeId() { … }
LLVMErrorRef LLVMCreateStringError(const char *ErrMsg) { … }