diff options
Diffstat (limited to 'include/llvm/Object/Error.h')
-rw-r--r-- | include/llvm/Object/Error.h | 34 |
1 files changed, 14 insertions, 20 deletions
diff --git a/include/llvm/Object/Error.h b/include/llvm/Object/Error.h index 779c747..701da12 100644 --- a/include/llvm/Object/Error.h +++ b/include/llvm/Object/Error.h @@ -14,38 +14,32 @@ #ifndef LLVM_OBJECT_ERROR_H #define LLVM_OBJECT_ERROR_H -#include "llvm/Support/system_error.h" +#include <system_error> namespace llvm { namespace object { -const error_category &object_category(); +const std::error_category &object_category(); -struct object_error { - enum Impl { - success = 0, - arch_not_found, - invalid_file_type, - parse_failed, - unexpected_eof - }; - Impl V; - - object_error(Impl V) : V(V) {} - operator Impl() const { return V; } +enum class object_error { + success = 0, + arch_not_found, + invalid_file_type, + parse_failed, + unexpected_eof }; -inline error_code make_error_code(object_error e) { - return error_code(static_cast<int>(e), object_category()); +inline std::error_code make_error_code(object_error e) { + return std::error_code(static_cast<int>(e), object_category()); } } // end namespace object. -template <> struct is_error_code_enum<object::object_error> : std::true_type {}; +} // end namespace llvm. +namespace std { template <> -struct is_error_code_enum<object::object_error::Impl> : std::true_type {}; - -} // end namespace llvm. +struct is_error_code_enum<llvm::object::object_error> : std::true_type {}; +} #endif |