diff options
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r-- | clang/lib/CodeGen/CGCall.cpp | 5 | ||||
-rw-r--r-- | clang/lib/CodeGen/CGCall.h | 9 |
2 files changed, 8 insertions, 6 deletions
diff --git a/clang/lib/CodeGen/CGCall.cpp b/clang/lib/CodeGen/CGCall.cpp index a550abfa9d2..c068a11ad66 100644 --- a/clang/lib/CodeGen/CGCall.cpp +++ b/clang/lib/CodeGen/CGCall.cpp @@ -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, diff --git a/clang/lib/CodeGen/CGCall.h b/clang/lib/CodeGen/CGCall.h index c51f06fdcd2..2e43d1d67fc 100644 --- a/clang/lib/CodeGen/CGCall.h +++ b/clang/lib/CodeGen/CGCall.h @@ -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) { |