Fixed bug in child_begin/child_end for CallExpr where we incorrectly calculated a Stmt** pointer
based on an offset within SubExprs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41512 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/Expr.cpp b/AST/Expr.cpp
index 0f6ac74..cacfcfa 100644
--- a/AST/Expr.cpp
+++ b/AST/Expr.cpp
@@ -780,10 +780,10 @@
 
 // CallExpr
 Stmt::child_iterator CallExpr::child_begin() {
-  return reinterpret_cast<Stmt**>(&SubExprs);
+  return reinterpret_cast<Stmt**>(&SubExprs[0]);
 }
 Stmt::child_iterator CallExpr::child_end() {
-  return reinterpret_cast<Stmt**>(&SubExprs)+NumArgs+ARGS_START;
+  return reinterpret_cast<Stmt**>(&SubExprs[NumArgs+ARGS_START]);
 }
 
 // MemberExpr