]> granicus.if.org Git - clang/commitdiff
[C++11] Replacing CallArgList writeback iterators with iterator_range writebacks...
authorAaron Ballman <aaron@aaronballman.com>
Mon, 17 Mar 2014 17:22:27 +0000 (17:22 +0000)
committerAaron Ballman <aaron@aaronballman.com>
Mon, 17 Mar 2014 17:22:27 +0000 (17:22 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204062 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGCall.cpp
lib/CodeGen/CGCall.h

index a550abfa9d265795ac553f10b9f12b0b0d1dbbb8..c068a11ad665b273ea7534ff2e1193aab49057d8 100644 (file)
@@ -2015,9 +2015,8 @@ static void emitWriteback(CodeGenFunction &CGF,
 
 static void emitWritebacks(CodeGenFunction &CGF,
                            const CallArgList &args) {
-  for (CallArgList::writeback_iterator
-         i = args.writeback_begin(), e = args.writeback_end(); i != e; ++i)
-    emitWriteback(CGF, *i);
+  for (const auto &I : args.writebacks())
+    emitWriteback(CGF, I);
 }
 
 static void deactivateArgCleanupsBeforeCall(CodeGenFunction &CGF,
index c51f06fdcd2feb94013922f40068b9d86ff5d8eb..2e43d1d67fc6d7c1668f87b044cca7e5d9ae4534 100644 (file)
@@ -99,9 +99,12 @@ namespace CodeGen {
 
     bool hasWritebacks() const { return !Writebacks.empty(); }
 
-    typedef SmallVectorImpl<Writeback>::const_iterator writeback_iterator;
-    writeback_iterator writeback_begin() const { return Writebacks.begin(); }
-    writeback_iterator writeback_end() const { return Writebacks.end(); }
+    typedef llvm::iterator_range<SmallVectorImpl<Writeback>::const_iterator>
+      writeback_const_range;
+
+    writeback_const_range writebacks() const {
+      return writeback_const_range(Writebacks.begin(), Writebacks.end());
+    }
 
     void addArgCleanupDeactivation(EHScopeStack::stable_iterator Cleanup,
                                    llvm::Instruction *IsActiveIP) {