clang
6.0.0
|
#include "clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h"
#include "clang/AST/ParentMap.h"
#include "clang/Analysis/ProgramPoint.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/Debug.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "static-analyzer-call-event" |
Typedefs | |
typedef llvm::PointerIntPair< const PseudoObjectExpr *, 2 > | ObjCMessageDataTy |
Functions | |
static bool | isCallback (QualType T) |
static bool | isVoidPointerToNonConst (QualType T) |
static bool | isPointerToConst (QualType Ty) |
Returns true if a type is a pointer-to-const or reference-to-const with no further indirection. More... | |
static void | findPtrToConstParams (llvm::SmallSet< unsigned, 4 > &PreserveArgs, const CallEvent &Call) |
static void | addParameterValuesToBindings (const StackFrameContext *CalleeCtx, CallEvent::BindingsTy &Bindings, SValBuilder &SVB, const CallEvent &Call, ArrayRef< ParmVarDecl *> parameters) |
static const Expr * | getSyntacticFromForPseudoObjectExpr (const PseudoObjectExpr *POE) |
static const ObjCMethodDecl * | findDefiningRedecl (const ObjCMethodDecl *MD) |
static bool | isCallToSelfClass (const ObjCMessageExpr *ME) |
#define DEBUG_TYPE "static-analyzer-call-event" |
Definition at line 26 of file CallEvent.cpp.
typedef llvm::PointerIntPair<const PseudoObjectExpr *, 2> ObjCMessageDataTy |
Definition at line 788 of file CallEvent.cpp.
|
static |
Definition at line 318 of file CallEvent.cpp.
References clang::ento::CallEvent::getNumArgs(), and clang::ento::SValBuilder::getRegionManager().
Referenced by clang::ento::AnyFunctionCall::getInitialStackFrameContents(), clang::BlockCall::getInitialStackFrameContents(), and clang::ObjCMethodCall::getInitialStackFrameContents().
|
static |
Definition at line 930 of file CallEvent.cpp.
References clang::ObjCMethodDecl::hasBody().
|
static |
Definition at line 145 of file CallEvent.cpp.
Referenced by clang::ento::CallEvent::invalidateRegions().
|
static |
Definition at line 797 of file CallEvent.cpp.
References clang::PseudoObjectExpr::getSyntacticForm().
Referenced by clang::ObjCMethodCall::getAccessedProperty().
Definition at line 56 of file CallEvent.cpp.
References clang::Type::getAsStructureType(), clang::Type::getPointeeType(), clang::Type::isAnyPointerType(), clang::Type::isBlockPointerType(), clang::Type::isFunctionPointerType(), clang::Type::isObjCSelType(), and clang::Type::isReferenceType().
Referenced by clang::ento::CallEvent::hasNonZeroCallbackArg().
|
static |
Definition at line 943 of file CallEvent.cpp.
References clang::ObjCMessageExpr::getInstanceReceiver(), clang::Selector::getNameForSlot(), clang::Selector::getNumArgs(), clang::ObjCMessageExpr::getSelector(), and clang::Expr::IgnoreParenImpCasts().
Returns true if a type is a pointer-to-const or reference-to-const with no further indirection.
Definition at line 131 of file CallEvent.cpp.
References clang::Type::getPointeeType(), clang::Type::isAnyPointerType(), and clang::QualType::isConstQualified().
Definition at line 80 of file CallEvent.cpp.
References clang::Type::getAs(), clang::Type::getPointeeType(), clang::QualType::isConstQualified(), and clang::Type::isVoidType().
Referenced by clang::ento::CallEvent::hasVoidPointerToNonConstArg().