summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2016-05-17 21:38:53 +0000
committerLang Hames <lhames@gmail.com>2016-05-17 21:38:53 +0000
commit8a63b2afc15f7cb0280c9ce1cce3ad44b43e1807 (patch)
treee3d5fd459073505a537c5cad1e177ae0a425b00c
parent594e07bd78e7efa3690a65eb20f4620303b80da8 (diff)
downloadbcm5719-llvm-8a63b2afc15f7cb0280c9ce1cce3ad44b43e1807.tar.gz
bcm5719-llvm-8a63b2afc15f7cb0280c9ce1cce3ad44b43e1807.zip
[Object] Move isNotObjectErrorInvalidFileType out of header.
llvm-svn: 269848
-rw-r--r--llvm/include/llvm/Object/Error.h37
-rw-r--r--llvm/lib/Object/Error.cpp18
2 files changed, 25 insertions, 30 deletions
diff --git a/llvm/include/llvm/Object/Error.h b/llvm/include/llvm/Object/Error.h
index c5c6f005e69..cd55e5dc26d 100644
--- a/llvm/include/llvm/Object/Error.h
+++ b/llvm/include/llvm/Object/Error.h
@@ -72,6 +72,13 @@ private:
std::string Msg;
};
+/// isNotObjectErrorInvalidFileType() is used when looping through the children
+/// of an archive after calling getAsBinary() on the child and it returns an
+/// llvm::Error. In the cases we want to loop through the children and ignore the
+/// non-objects in the archive this is used to test the error to see if an
+/// error() function needs to called on the llvm::Error.
+Error isNotObjectErrorInvalidFileType(llvm::Error Err);
+
} // end namespace object.
} // end namespace llvm.
@@ -81,34 +88,4 @@ template <>
struct is_error_code_enum<llvm::object::object_error> : std::true_type {};
}
-namespace llvm {
-namespace object {
-
-// isNotObjectErrorInvalidFileType() is used when looping through the children
-// of an archive after calling getAsBinary() on the child and it returns an
-// llvm::Error. In the cases we want to loop through the children and ignore the
-// non-objects in the archive this is used to test the error to see if an
-// error() function needs to called on the llvm::Error.
-static inline llvm::Error isNotObjectErrorInvalidFileType(llvm::Error Err) {
- if (auto Err2 =
- handleErrors(std::move(Err),
- [](std::unique_ptr<ECError> M) {
- // Try to handle 'M'. If successful, return a success value from
- // the handler.
- if (M->convertToErrorCode() == object_error::invalid_file_type)
- return Error::success();
-
- // We failed to handle 'M' - return it from the handler.
- // This value will be passed back from catchErrors and
- // wind up in Err2, where it will be returned from this function.
- return Error(std::move(M));
- }))
- return Err2;
- return Err;
-}
-
-} // end namespace object.
-
-} // end namespace llvm.
-
#endif
diff --git a/llvm/lib/Object/Error.cpp b/llvm/lib/Object/Error.cpp
index 15bce7727dc..8eab793c27b 100644
--- a/llvm/lib/Object/Error.cpp
+++ b/llvm/lib/Object/Error.cpp
@@ -71,3 +71,21 @@ static ManagedStatic<_object_error_category> error_category;
const std::error_category &object::object_category() {
return *error_category;
}
+
+llvm::Error llvm::object::isNotObjectErrorInvalidFileType(llvm::Error Err) {
+ if (auto Err2 =
+ handleErrors(std::move(Err),
+ [](std::unique_ptr<ECError> M) {
+ // Try to handle 'M'. If successful, return a success value from
+ // the handler.
+ if (M->convertToErrorCode() == object_error::invalid_file_type)
+ return Error::success();
+
+ // We failed to handle 'M' - return it from the handler.
+ // This value will be passed back from catchErrors and
+ // wind up in Err2, where it will be returned from this function.
+ return Error(std::move(M));
+ }))
+ return Err2;
+ return Err;
+}
OpenPOWER on IntegriCloud