Modified operator* for StmtIterator to return Stmt*& instead of Stmt*.
This permits in-place replacement of the original AST statements.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43295 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/StmtIterator.cpp b/AST/StmtIterator.cpp
index b7a03bb..2d198c0 100644
--- a/AST/StmtIterator.cpp
+++ b/AST/StmtIterator.cpp
@@ -61,6 +61,6 @@
Ptr.D = lastVD;
}
-Stmt* StmtIteratorBase::GetInitializer() const {
- return cast<VarDecl>(Ptr.D)->getInit();
+Stmt*& StmtIteratorBase::GetInitializer() const {
+ return reinterpret_cast<Stmt*&>(cast<VarDecl>(Ptr.D)->Init);
}