[Lldb-commits] [lldb] r179779 - 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++.

Chris Lattner clattner at apple.com
Thu Apr 18 15:04:48 PDT 2013


On Apr 18, 2013, at 11:10 AM, Greg Clayton <gclayton at apple.com> wrote:

> Author: gclayton
> Date: Thu Apr 18 13:10:51 2013
> New Revision: 179779
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=179779&view=rev
> Log:
> 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.

Why use a macro here?  lldb already requires C++'11 support, so why not just use unique_ptr unconditionally?

-Chris




More information about the lldb-commits mailing list