]> granicus.if.org Git - clang/commitdiff
Add an idea for cpp11-migrate and cpp14-migrate
authorDmitri Gribenko <gribozavr@gmail.com>
Thu, 25 Apr 2013 16:07:10 +0000 (16:07 +0000)
committerDmitri Gribenko <gribozavr@gmail.com>
Thu, 25 Apr 2013 16:07:10 +0000 (16:07 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180266 91177308-0d34-0410-b5e6-96231b3b80d8

docs/ClangTools.rst

index 39c3f5feb443d4befd2e6050b9872262e902de89..c3303c7248b97ed1b26f4a1310430122f02b14a8 100644 (file)
@@ -124,6 +124,21 @@ Ideas for new Tools
   ``foo.begin()`` into ``begin(foo)`` and similarly for ``end()``, where
   ``foo`` is a standard container.  We could also detect similar patterns for
   arrays.
+* ``make_shared`` / ``make_unique`` conversion.  This transformation can be
+  incorporated into the ``auto`` transformation.  Will convert
+
+  .. code-block:: c++
+
+    std::shared_ptr<Foo> sp(new Foo);
+    std::unique_ptr<Foo> up(new Foo);
+
+  into:
+
+  .. code-block:: c++
+
+    auto sp = std::make_shared<Foo>();
+    auto up = std::make_unique<Foo>(); // In C++14 mode.
+
 * ``tr1`` removal tool.  Will migrate source code from using TR1 library
   features to C++11 library.  For example: