aboutsummaryrefslogtreecommitdiff
path: root/tools/llvm-readobj/Error.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2014-11-24 09:08:18 +0000
committerDimitry Andric <dim@FreeBSD.org>2014-11-24 09:08:18 +0000
commit5ca98fd98791947eba83a1ed3f2c8191ef7afa6c (patch)
treef5944309621cee4fe0976be6f9ac619b7ebfc4c2 /tools/llvm-readobj/Error.cpp
parent68bcb7db193e4bc81430063148253d30a791023e (diff)
Diffstat (limited to 'tools/llvm-readobj/Error.cpp')
-rw-r--r--tools/llvm-readobj/Error.cpp24
1 files changed, 8 insertions, 16 deletions
diff --git a/tools/llvm-readobj/Error.cpp b/tools/llvm-readobj/Error.cpp
index a6c61321c6dc..a078f5c095c7 100644
--- a/tools/llvm-readobj/Error.cpp
+++ b/tools/llvm-readobj/Error.cpp
@@ -17,11 +17,10 @@
using namespace llvm;
namespace {
-class _readobj_error_category : public _do_message {
+class _readobj_error_category : public std::error_category {
public:
- virtual const char* name() const;
- virtual std::string message(int ev) const;
- virtual error_condition default_error_condition(int ev) const;
+ const char* name() const LLVM_NOEXCEPT override;
+ std::string message(int ev) const override;
};
} // namespace
@@ -29,8 +28,8 @@ const char *_readobj_error_category::name() const {
return "llvm.readobj";
}
-std::string _readobj_error_category::message(int ev) const {
- switch (ev) {
+std::string _readobj_error_category::message(int EV) const {
+ switch (static_cast<readobj_error>(EV)) {
case readobj_error::success: return "Success";
case readobj_error::file_not_found:
return "No such file.";
@@ -42,20 +41,13 @@ std::string _readobj_error_category::message(int ev) const {
return "Unsupported object file format.";
case readobj_error::unknown_symbol:
return "Unknown symbol.";
- default:
- llvm_unreachable("An enumerator of readobj_error does not have a message "
- "defined.");
}
-}
-
-error_condition _readobj_error_category::default_error_condition(int ev) const {
- if (ev == readobj_error::success)
- return errc::success;
- return errc::invalid_argument;
+ llvm_unreachable("An enumerator of readobj_error does not have a message "
+ "defined.");
}
namespace llvm {
-const error_category &readobj_category() {
+const std::error_category &readobj_category() {
static _readobj_error_category o;
return o;
}