clang API Documentation

Classes | Namespaces | Typedefs | Functions
MacOSKeychainAPIChecker.cpp File Reference
#include "ClangSACheckers.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h"
#include "llvm/ADT/SmallString.h"
Include dependency graph for MacOSKeychainAPIChecker.cpp:

Go to the source code of this file.

Classes

struct  clang::ento::ProgramStateTrait< AllocatedData >

Namespaces

namespace  clang
namespace  clang::ento

Typedefs

typedef llvm::ImmutableMap
< SymbolRef,
MacOSKeychainAPIChecker::AllocationState > 
AllocatedSetTy

Functions

static bool isEnclosingFunctionParam (const Expr *E)
static bool isBadDeallocationArgument (const MemRegion *Arg)
static SymbolRef getAsPointeeSymbol (const Expr *Expr, CheckerContext &C)

Typedef Documentation

typedef llvm::ImmutableMap<SymbolRef, MacOSKeychainAPIChecker::AllocationState> AllocatedSetTy

ProgramState traits to store the currently allocated (and not yet freed) symbols. This is a map from the allocated content symbol to the corresponding AllocationState.

Definition at line 162 of file MacOSKeychainAPIChecker.cpp.


Function Documentation

static SymbolRef getAsPointeeSymbol ( const Expr Expr,
CheckerContext &  C 
) [static]

Given the address expression, retrieve the value it's pointing to. Assume that value is itself an address, and return the corresponding symbol.

Definition at line 225 of file MacOSKeychainAPIChecker.cpp.

static bool isBadDeallocationArgument ( const MemRegion *  Arg) [static]

Definition at line 212 of file MacOSKeychainAPIChecker.cpp.

static bool isEnclosingFunctionParam ( const Expr E) [static]

Definition at line 172 of file MacOSKeychainAPIChecker.cpp.

References clang::Expr::IgnoreParenCasts().