clang API Documentation
#include "ClangSACheckers.h"
#include "clang/AST/Attr.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/Expr.h"
#include "clang/AST/ExprObjC.h"
#include "clang/Basic/LangOptions.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugReporter.h"
#include "clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Functions | |
static bool | scan_ivar_release (Stmt *S, ObjCIvarDecl *ID, const ObjCPropertyDecl *PD, Selector Release, IdentifierInfo *SelfII, ASTContext &Ctx) |
static void | checkObjCDealloc (const CheckerBase *Checker, const ObjCImplementationDecl *D, const LangOptions &LOpts, BugReporter &BR) |
static void checkObjCDealloc | ( | const CheckerBase * | Checker, |
const ObjCImplementationDecl * | D, | ||
const LangOptions & | LOpts, | ||
BugReporter & | BR | ||
) | [static] |
Definition at line 79 of file CheckObjCDealloc.cpp.
References clang::ObjCPropertyDecl::Assign, clang::ento::categories::CoreFoundationObjectiveC, clang::ento::PathDiagnosticLocation::createBegin(), clang::ento::BugReporter::EmitBasicReport(), clang::LangOptions::GCOnly, clang::ObjCMethodDecl::getBody(), clang::ObjCImplDecl::getClassInterface(), clang::ento::BugReporter::getContext(), clang::NamedDecl::getIdentifier(), clang::ObjCPropertyDecl::getSetterKind(), clang::ento::BugReporter::getSourceManager(), clang::ObjCInterfaceDecl::getSuperClass(), clang::ValueDecl::getType(), clang::ObjCContainerDecl::instance_methods(), clang::Type::isObjCObjectPointerType(), clang::ObjCPropertyDecl::isReadOnly(), clang::ObjCInterfaceDecl::ivars(), clang::LangOptions::NonGC, clang::ObjCImplDecl::property_impls(), S, scan_ivar_release(), and clang::ObjCPropertyImplDecl::Synthesize.
static bool scan_ivar_release | ( | Stmt * | S, |
ObjCIvarDecl * | ID, | ||
const ObjCPropertyDecl * | PD, | ||
Selector | Release, | ||
IdentifierInfo * | SelfII, | ||
ASTContext & | Ctx | ||
) | [static] |
Definition at line 31 of file CheckObjCDealloc.cpp.
References clang::ObjCPropertyDecl::Assign, clang::Stmt::child_begin(), clang::Stmt::child_end(), clang::ObjCPropertyDecl::getSetterKind(), clang::ObjCPropertyDecl::getSetterMethodDecl(), clang::Expr::IgnoreParenCasts(), and clang::Expr::NPC_ValueDependentIsNull.
Referenced by checkObjCDealloc().