clang
3.7.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 "llvm/ADT/SmallSet.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Typedefs | |
typedef llvm::PointerIntPair < const PseudoObjectExpr *, 2 > | ObjCMessageDataTy |
Functions | |
static bool | isCallbackArg (SVal V, 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) |
typedef llvm::PointerIntPair<const PseudoObjectExpr *, 2> ObjCMessageDataTy |
Definition at line 667 of file CallEvent.cpp.
|
static |
Definition at line 285 of file CallEvent.cpp.
References clang::ento::CallEvent::getArgSVal(), clang::ento::CallEvent::getNumArgs(), clang::ento::SValBuilder::getRegionManager(), clang::ento::MemRegionManager::getVarRegion(), clang::ento::SVal::isUnknown(), and clang::ento::SValBuilder::makeLoc().
Referenced by clang::ento::AnyFunctionCall::getInitialStackFrameContents(), clang::BlockCall::getInitialStackFrameContents(), and clang::ObjCMethodCall::getInitialStackFrameContents().
|
static |
Definition at line 127 of file CallEvent.cpp.
References isPointerToConst(), clang::ento::CallEvent::param_type_begin(), and clang::ento::CallEvent::param_type_end().
Referenced by clang::ento::CallEvent::invalidateRegions().
Definition at line 52 of file CallEvent.cpp.
References clang::RecordDecl::fields(), clang::Type::getAsStructureType(), clang::Type::getPointeeType(), clang::Type::isAnyPointerType(), clang::Type::isBlockPointerType(), clang::Type::isFunctionPointerType(), clang::Type::isObjCSelType(), clang::Type::isReferenceType(), and clang::ento::SVal::isZeroConstant().
Referenced by clang::ento::CallEvent::hasNonZeroCallbackArg().
Returns true if a type is a pointer-to-const or reference-to-const with no further indirection.
Definition at line 113 of file CallEvent.cpp.
References clang::Type::getPointeeType(), clang::Type::isAnyPointerType(), and clang::QualType::isConstQualified().
Referenced by findPtrToConstParams().