Return a std::unique_ptr to make the ownership explicit.
authorRafael Espindola <rafael.espindola@gmail.com>
Sun, 17 Aug 2014 21:11:31 +0000 (21:11 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Sun, 17 Aug 2014 21:11:31 +0000 (21:11 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215850 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ExecutionEngine/ObjectBuffer.h

index 88a4213ed854a9840af00e7240db7b0f9ed2cd7a..ff282eacba9045465bc3f16ec366f0e930d221c0 100644 (file)
@@ -38,9 +38,9 @@ public:
   /// Like MemoryBuffer::getMemBuffer() this function returns a pointer to an
   /// object that is owned by the caller. However, the caller does not take
   /// ownership of the underlying memory.
-  MemoryBuffer *getMemBuffer() const {
-    return MemoryBuffer::getMemBuffer(Buffer->getBuffer(),
-                                      Buffer->getBufferIdentifier(), false);
+  std::unique_ptr<MemoryBuffer> getMemBuffer() const {
+    return std::unique_ptr<MemoryBuffer>(MemoryBuffer::getMemBuffer(
+        Buffer->getBuffer(), Buffer->getBufferIdentifier(), false));
   }
 
   const char *getBufferStart() const { return Buffer->getBufferStart(); }