clang 20.0.0git
Functions
MacOSKeychainAPIChecker.cpp File Reference
#include "clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.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/STLExtras.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/raw_ostream.h"
#include <optional>

Go to the source code of this file.

Functions

 REGISTER_MAP_WITH_PROGRAMSTATE (AllocatedData, SymbolRef, MacOSKeychainAPIChecker::AllocationState) static bool isEnclosingFunctionParam(const Expr *E)
 ProgramState traits to store the currently allocated (and not yet freed) symbols.
 
static bool isBadDeallocationArgument (const MemRegion *Arg)
 
static SymbolRef getAsPointeeSymbol (const Expr *Expr, CheckerContext &C)
 Given the address expression, retrieve the value it's pointing to.
 

Function Documentation

◆ getAsPointeeSymbol()

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 204 of file MacOSKeychainAPIChecker.cpp.

References clang::C, clang::ento::SVal::getAs(), SM, and X.

◆ isBadDeallocationArgument()

static bool isBadDeallocationArgument ( const MemRegion Arg)
static

Definition at line 196 of file MacOSKeychainAPIChecker.cpp.

◆ REGISTER_MAP_WITH_PROGRAMSTATE()

REGISTER_MAP_WITH_PROGRAMSTATE ( AllocatedData  ,
SymbolRef  ,
MacOSKeychainAPIChecker::AllocationState   
) const

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 152 of file MacOSKeychainAPIChecker.cpp.

References E, and clang::Expr::IgnoreParenCasts().