]> granicus.if.org Git - clang/commitdiff
Fixed bug in ObjCIVarExpr: the child iterator now iterates over the Base expression.
authorTed Kremenek <kremenek@apple.com>
Fri, 2 May 2008 18:40:22 +0000 (18:40 +0000)
committerTed Kremenek <kremenek@apple.com>
Fri, 2 May 2008 18:40:22 +0000 (18:40 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50585 91177308-0d34-0410-b5e6-96231b3b80d8

lib/AST/Expr.cpp

index 479b651d1fcae7c882fe7b47760b7c4a2e2a5d51..69dca5af5587e7a32723d0d825766acfde419384 100644 (file)
@@ -1180,8 +1180,13 @@ Stmt::child_iterator DeclRefExpr::child_begin() { return child_iterator(); }
 Stmt::child_iterator DeclRefExpr::child_end() { return child_iterator(); }
 
 // ObjCIvarRefExpr
-Stmt::child_iterator ObjCIvarRefExpr::child_begin() { return child_iterator(); }
-Stmt::child_iterator ObjCIvarRefExpr::child_end() { return child_iterator(); }
+Stmt::child_iterator ObjCIvarRefExpr::child_begin() {
+  return reinterpret_cast<Stmt**>(&Base);
+}
+
+Stmt::child_iterator ObjCIvarRefExpr::child_end() {
+  return reinterpret_cast<Stmt**>(&Base)+1;
+}
 
 // PreDefinedExpr
 Stmt::child_iterator PreDefinedExpr::child_begin() { return child_iterator(); }