summaryrefslogtreecommitdiffstats
path: root/lldb/scripts
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2013-04-18 18:10:51 +0000
committerGreg Clayton <gclayton@apple.com>2013-04-18 18:10:51 +0000
commite01e07b6e76ad6f571cefe679d112fede88cf1db (patch)
tree20979ebc3dfe96a71174222e2fee18f30f772abf /lldb/scripts
parent56f976f6bda043e5bdbd35e5d92968a112b74a10 (diff)
downloadbcm5719-llvm-e01e07b6e76ad6f571cefe679d112fede88cf1db.tar.gz
bcm5719-llvm-e01e07b6e76ad6f571cefe679d112fede88cf1db.zip
Since we use C++11, we should switch over to using std::unique_ptr when C++11 is being used. To do this, we follow what we have done for shared pointers and we define a STD_UNIQUE_PTR macro that can be used and it will "do the right thing". Due to some API differences in std::unique_ptr and due to the fact that we need to be able to compile without C++11, we can't use move semantics so some code needed to change so that it can compile with either C++.
Anyone wanting to use a unique_ptr or auto_ptr should now use the "STD_UNIQUE_PTR(TYPE)" macro. llvm-svn: 179779
Diffstat (limited to 'lldb/scripts')
-rw-r--r--lldb/scripts/Python/interface/SBExpressionOptions.i2
-rw-r--r--lldb/scripts/Python/interface/SBSection.i2
-rw-r--r--lldb/scripts/Python/interface/SBType.i2
-rw-r--r--lldb/scripts/Python/python-wrapper.swig4
4 files changed, 5 insertions, 5 deletions
diff --git a/lldb/scripts/Python/interface/SBExpressionOptions.i b/lldb/scripts/Python/interface/SBExpressionOptions.i
index 1f11862b362..881903d588d 100644
--- a/lldb/scripts/Python/interface/SBExpressionOptions.i
+++ b/lldb/scripts/Python/interface/SBExpressionOptions.i
@@ -83,7 +83,7 @@ protected:
private:
// This auto_pointer is made in the constructor and is always valid.
- mutable std::auto_ptr<lldb_private::EvaluateExpressionOptions> m_opaque_ap;
+ mutable STD_UNIQUE_PTR(lldb_private::EvaluateExpressionOptions) m_opaque_ap;
};
} // namespace lldb
diff --git a/lldb/scripts/Python/interface/SBSection.i b/lldb/scripts/Python/interface/SBSection.i
index 1ea362b5903..e4966acd18a 100644
--- a/lldb/scripts/Python/interface/SBSection.i
+++ b/lldb/scripts/Python/interface/SBSection.i
@@ -122,7 +122,7 @@ public:
private:
- std::auto_ptr<lldb_private::SectionImpl> m_opaque_ap;
+ STD_UNIQUE_PTR(lldb_private::SectionImpl) m_opaque_ap;
};
} // namespace lldb
diff --git a/lldb/scripts/Python/interface/SBType.i b/lldb/scripts/Python/interface/SBType.i
index 99a71598e23..bf1baab3785 100644
--- a/lldb/scripts/Python/interface/SBType.i
+++ b/lldb/scripts/Python/interface/SBType.i
@@ -65,7 +65,7 @@ public:
%}
protected:
- std::auto_ptr<lldb_private::TypeMemberImpl> m_opaque_ap;
+ STD_UNIQUE_PTR(lldb_private::TypeMemberImpl) m_opaque_ap;
};
%feature("docstring",
diff --git a/lldb/scripts/Python/python-wrapper.swig b/lldb/scripts/Python/python-wrapper.swig
index 2189193cfbb..9834f0f2b63 100644
--- a/lldb/scripts/Python/python-wrapper.swig
+++ b/lldb/scripts/Python/python-wrapper.swig
@@ -652,11 +652,11 @@ LLDBSWIGPython_CastPyObjectToSBValue
return sb_ptr;
}
-// Currently, SBCommandReturnObjectReleaser wraps an std::auto_ptr to an
+// Currently, SBCommandReturnObjectReleaser wraps a unique pointer to an
// lldb_private::CommandReturnObject. This means that the destructor for the
// SB object will deallocate its contained CommandReturnObject. Because that
// object is used as the real return object for Python-based commands, we want
-// it to stay around. Thus, we release the auto_ptr before returning from
+// it to stay around. Thus, we release the unique pointer before returning from
// LLDBSwigPythonCallCommand, and to guarantee that the release will occur no
// matter how we exit from the function, we have a releaser object whose
// destructor does the right thing for us
OpenPOWER on IntegriCloud