unique_ptrify MachOUniversalBinary::create
authorDavid Blaikie <dblaikie@gmail.com>
Wed, 3 Sep 2014 17:41:05 +0000 (17:41 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Wed, 3 Sep 2014 17:41:05 +0000 (17:41 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217052 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Object/MachOUniversal.h
lib/Object/Binary.cpp
lib/Object/MachOUniversal.cpp

index 491565ba8e532b4191ef689fc95581a2a5b50750..949010be44e1c557ff4f974d638eaf0b459b5bc7 100644 (file)
@@ -85,7 +85,8 @@ public:
   };
 
   MachOUniversalBinary(MemoryBufferRef Souce, std::error_code &EC);
-  static ErrorOr<MachOUniversalBinary *> create(MemoryBufferRef Source);
+  static ErrorOr<std::unique_ptr<MachOUniversalBinary>>
+  create(MemoryBufferRef Source);
 
   object_iterator begin_objects() const {
     return ObjectForArch(this, 0);
index d9fef8be8e16ebc2b02d78c6ff650f1e0eb0ad6b..d23ee5905693fa61d3fe69153683d53b2e4055df 100644 (file)
@@ -63,8 +63,7 @@ ErrorOr<std::unique_ptr<Binary>> object::createBinary(MemoryBufferRef Buffer,
     case sys::fs::file_magic::bitcode:
       return ObjectFile::createSymbolicFile(Buffer, Type, Context);
     case sys::fs::file_magic::macho_universal_binary:
-      return ErrorOr<std::unique_ptr<Binary>>(
-          MachOUniversalBinary::create(Buffer));
+      return MachOUniversalBinary::create(Buffer);
     case sys::fs::file_magic::unknown:
     case sys::fs::file_magic::windows_resource:
       // Unrecognized object file format.
index 3deef4b7f654348326e521ece09f58be0d6deaf0..e310a71ba91061f04d7aea1939e01ad495a8db5f 100644 (file)
@@ -97,14 +97,14 @@ std::error_code MachOUniversalBinary::ObjectForArch::getAsArchive(
 
 void MachOUniversalBinary::anchor() { }
 
-ErrorOr<MachOUniversalBinary *>
+ErrorOr<std::unique_ptr<MachOUniversalBinary>>
 MachOUniversalBinary::create(MemoryBufferRef Source) {
   std::error_code EC;
   std::unique_ptr<MachOUniversalBinary> Ret(
       new MachOUniversalBinary(Source, EC));
   if (EC)
     return EC;
-  return Ret.release();
+  return std::move(Ret);
 }
 
 MachOUniversalBinary::MachOUniversalBinary(MemoryBufferRef Source,