In preparation for removing exception handling in tablegen, add

PrintFatalError, which combines PrintError with exit(1).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166690 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Joerg Sonnenberger 2012-10-25 16:35:18 +00:00
parent 8e4e007409
commit 0eafc7fc37
2 changed files with 15 additions and 0 deletions

View File

@ -40,6 +40,9 @@ void PrintError(const char *Loc, const Twine &Msg);
void PrintError(const Twine &Msg);
void PrintError(const TGError &Error);
LLVM_ATTRIBUTE_NORETURN void PrintFatalError(const std::string &Msg);
LLVM_ATTRIBUTE_NORETURN void PrintFatalError(ArrayRef<SMLoc> ErrorLoc,
const std::string &Msg);
extern SourceMgr SrcMgr;

View File

@ -16,6 +16,8 @@
#include "llvm/ADT/Twine.h"
#include "llvm/Support/raw_ostream.h"
#include <cstdlib>
namespace llvm {
SourceMgr SrcMgr;
@ -63,4 +65,14 @@ void PrintError(const TGError &Error) {
PrintError(Error.getLoc(), Error.getMessage());
}
void PrintFatalError(const std::string &Msg) {
PrintError(Twine(Msg));
std::exit(1);
}
void PrintFatalError(ArrayRef<SMLoc> ErrorLoc, const std::string &Msg) {
PrintError(ErrorLoc, Msg);
std::exit(1);
}
} // end namespace llvm