diff options
Diffstat (limited to 'clang/lib/Analysis/CheckObjCDealloc.cpp')
| -rw-r--r-- | clang/lib/Analysis/CheckObjCDealloc.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/Analysis/CheckObjCDealloc.cpp b/clang/lib/Analysis/CheckObjCDealloc.cpp index 0c9100951ce..7bb0015462b 100644 --- a/clang/lib/Analysis/CheckObjCDealloc.cpp +++ b/clang/lib/Analysis/CheckObjCDealloc.cpp @@ -60,9 +60,11 @@ void clang::CheckObjCDealloc(ObjCImplementationDecl* D, for (ObjCInterfaceDecl::ivar_iterator I=ID->ivar_begin(), E=ID->ivar_end(); I!=E; ++I) { - QualType T = (*I)->getType(); + ObjCIvarDecl* ID = *I; + QualType T = ID->getType(); - if (T->isPointerType() || T->isObjCQualifiedIdType()) { + if ((T->isPointerType() || T->isObjCQualifiedIdType()) && + ID->getAttr<IBOutletAttr>() == 0) { // Skip IBOutlets. containsPointerIvar = true; break; } |

