clang  14.0.0git
Macros | Functions
FuchsiaHandleChecker.cpp File Reference
#include "clang/AST/Attr.h"
#include "clang/AST/Decl.h"
#include "clang/AST/Type.h"
#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/ConstraintManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h"
#include "llvm/ADT/StringExtras.h"
Include dependency graph for FuchsiaHandleChecker.cpp:

Go to the source code of this file.

Macros

#define CASE(ID)
 

Functions

static const ExplodedNode * getAcquireSite (const ExplodedNode *N, SymbolRef Sym, CheckerContext &Ctx)
 
static SmallVector< SymbolRef, 1024 > getFuchsiaHandleSymbols (QualType QT, SVal Arg, ProgramStateRef State)
 Returns the symbols extracted from the argument or empty vector if it cannot be found. More...
 

Macro Definition Documentation

◆ CASE

#define CASE (   ID)
Value:
case ID: \
OS << #ID; \
break;

Function Documentation

◆ getAcquireSite()

static const ExplodedNode* getAcquireSite ( const ExplodedNode *  N,
SymbolRef  Sym,
CheckerContext &  Ctx 
)
static

Definition at line 232 of file FuchsiaHandleChecker.cpp.

References State.

◆ getFuchsiaHandleSymbols()

static SmallVector<SymbolRef, 1024> getFuchsiaHandleSymbols ( QualType  QT,
SVal  Arg,
ProgramStateRef  State 
)
static

Returns the symbols extracted from the argument or empty vector if it cannot be found.

It is unlikely to have over 1024 symbols in one argument.

Definition at line 278 of file FuchsiaHandleChecker.cpp.

References clang::Type::getAs(), clang::Type::getPointeeType(), clang::Type::isAnyPointerType(), clang::Type::isReferenceType(), clang::Type::isStructureType(), and State.

clang::Builtin::ID
ID
Definition: Builtins.h:48