[PATCH] Fix UseAuto not transforming iterators when non-fully qualified names are used and libc++.

Edwin Vane edwin.vane at intel.com
Wed Jul 10 12:02:22 PDT 2013


  Am I going to be committing this patch? Can you please update the commit message to be more descriptive of what's being fixed?


================
Comment at: cpp11-migrate/UseAuto/UseAutoMatchers.cpp:175
@@ +174,3 @@
+///   matches "using std::vector" and "using ns::list".
+AST_MATCHER(Decl, isFromStdNamespace) {
+  const DeclContext *D = Node.getDeclContext();
----------------
This is duplicated from Replace auto_ptr transform. Can we put this in a header in Core instead and use it from both transforms?

================
Comment at: cpp11-migrate/UseAuto/UseAutoMatchers.cpp:237
@@ -210,3 +236,3 @@
                ),
                hasPrefix(
                  specifiesNamespace(hasName("std"))
----------------
Guillaume Papin wrote:
> I'm not sure if this part is still needed but I don't think it hurts either.
I'd try removing it and see if tests pass.

================
Comment at: test/cpp11-migrate/UseAuto/Inputs/test_std_container.h:66
@@ -65,2 +65,3 @@
 
 #if USE_INLINE_NAMESPACE
+inline namespace _1 {
----------------
I'm tempted to say to just use `#ifdef USE_INLINE_NAMESPACE` so you don't need `-D...=1`.


http://llvm-reviews.chandlerc.com/D1116



More information about the cfe-commits mailing list