|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Derived Classes
tools/clang/include/clang/AST/Decl.h 1537 class ImplicitParamDecl : public VarDecl {
1601 class ParmVarDecl : public VarDecl {
tools/clang/include/clang/AST/DeclCXX.h 3775 class DecompositionDecl final
tools/clang/include/clang/AST/DeclOpenMP.h 312 class OMPCapturedExprDecl final : public VarDecl {
tools/clang/include/clang/AST/DeclTemplate.h 2485 class VarTemplateSpecializationDecl : public VarDecl,
Declarations
gen/tools/clang/include/clang/AST/DeclNodes.inc 447 VAR(Var, DeclaratorDecl)
tools/clang/include/clang/AST/ASTConsumer.h 26 class VarDecl;
tools/clang/include/clang/AST/ASTMutationListener.h 39 class VarDecl;
tools/clang/include/clang/AST/ComparisonCategories.h 31 class VarDecl;
tools/clang/include/clang/AST/Mangle.h 39 class VarDecl;
tools/clang/include/clang/AST/MangleNumberingContext.h 27 class VarDecl;
tools/clang/include/clang/AST/Stmt.h 58 class VarDecl;
tools/clang/include/clang/AST/StmtCXX.h 24 class VarDecl;
tools/clang/include/clang/Analysis/Analyses/Consumed.h 37 class VarDecl;
tools/clang/include/clang/Analysis/Analyses/UninitializedValues.h 27 class VarDecl;
tools/clang/include/clang/Analysis/AnalysisDeclContext.h 44 class VarDecl;
tools/clang/include/clang/Analysis/CFG.h 52 class VarDecl;
tools/clang/include/clang/Analysis/CloneDetection.h 25 class VarDecl;
tools/clang/include/clang/CrossTU/CrossTranslationUnit.h 32 class VarDecl;
tools/clang/include/clang/Sema/ExternalSemaSource.h 38 class VarDecl;
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 32 class VarDecl;
tools/clang/include/clang/Sema/Scope.h 35 class VarDecl;
tools/clang/include/clang/Sema/ScopeInfo.h 61 class VarDecl;
tools/clang/include/clang/Sema/Sema.h 198 class VarDecl;
tools/clang/include/clang/Sema/Template.h 43 class VarDecl;
tools/clang/include/clang/Serialization/ASTReader.h 118 class VarDecl;
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h 22 class VarDecl;
tools/clang/lib/AST/Interp/Context.h 29 class VarDecl;
tools/clang/lib/AST/Interp/Program.h 34 class VarDecl;
tools/clang/lib/CodeGen/CGCUDARuntime.h 28 class VarDecl;
tools/clang/lib/CodeGen/CGCall.h 39 class VarDecl;
tools/clang/lib/CodeGen/CGDebugInfo.h 43 class VarDecl;
tools/clang/lib/CodeGen/CGOpenCLRuntime.h 28 class VarDecl;
tools/clang/lib/CodeGen/CGOpenMPRuntime.h 43 class VarDecl;
tools/clang/lib/CodeGen/CodeGenFunction.h 72 class VarDecl;
tools/clang/lib/CodeGen/CodeGenModule.h 70 class VarDecl;
tools/clang/lib/CodeGen/SanitizerMetadata.h 26 class VarDecl;
tools/clang/lib/CodeGen/VarBypassDetector.h 26 class VarDecl;
tools/clang/tools/libclang/CXCursor.h 43 class VarDecl;
tools/lldb/include/lldb/Core/ClangForward.h 122 class VarDecl;
References
gen/tools/clang/include/clang/Sema/AttrParsedAttrImpl.inc 107 if (!D || (!isStruct(D) && !isa<VarDecl>(D) && !isa<FunctionDecl>(D) && !isa<NamespaceDecl>(D))) {
156 if (const auto *S = dyn_cast<VarDecl>(D))
156 if (const auto *S = dyn_cast<VarDecl>(D))
180 if (const auto *S = dyn_cast<VarDecl>(D))
180 if (const auto *S = dyn_cast<VarDecl>(D))
200 if (!D || (!isa<VarDecl>(D) && !isa<TypedefNameDecl>(D))) {
267 if (!D || (!isa<VarDecl>(D))) {
583 if (!D || (!isa<VarDecl>(D))) {
605 if (!D || (!isa<FunctionDecl>(D) && !isa<VarDecl>(D))) {
668 if (!D || (!isa<VarDecl>(D))) {
769 if (const auto *S = dyn_cast<VarDecl>(D))
769 if (const auto *S = dyn_cast<VarDecl>(D))
806 if (!D || (!isa<VarDecl>(D))) {
924 if (!D || (!isa<FunctionDecl>(D) && !isa<VarDecl>(D) && !isa<CXXRecordDecl>(D) && !isa<ObjCInterfaceDecl>(D))) {
954 if (!D || (!isa<FunctionDecl>(D) && !isa<VarDecl>(D) && !isa<CXXRecordDecl>(D) && !isa<ObjCInterfaceDecl>(D))) {
1055 if (!D || (!isa<VarDecl>(D) && !isa<FunctionDecl>(D) && !isa<CXXRecordDecl>(D))) {
1190 if (!D || (!isa<VarDecl>(D))) {
1262 if (!D || (!isa<VarDecl>(D))) {
1275 if (!D || (!isa<VarDecl>(D) && !isa<FunctionDecl>(D) && !isa<CXXRecordDecl>(D))) {
1584 if (!D || (!isa<VarDecl>(D) && !isa<EnumDecl>(D) && !isa<TypedefNameDecl>(D) && !isa<FieldDecl>(D))) {
1641 if (!D || (!isa<VarDecl>(D))) {
1654 if (const auto *S = dyn_cast<VarDecl>(D))
1654 if (const auto *S = dyn_cast<VarDecl>(D))
1676 if (!D || (!isa<VarDecl>(D))) {
2165 if (!D || (!isa<VarDecl>(D))) {
2323 if (!D || (!isa<VarDecl>(D))) {
2868 if (const auto *S = dyn_cast<VarDecl>(D))
2868 if (const auto *S = dyn_cast<VarDecl>(D))
2913 if (!D || (!isa<VarDecl>(D))) {
2982 if (!D || (!isa<VarDecl>(D) && !isa<ObjCIvarDecl>(D) && !isa<TypeDecl>(D) && !isa<EnumDecl>(D) && !isa<EnumConstantDecl>(D) && !isa<LabelDecl>(D) && !isa<FieldDecl>(D) && !isa<ObjCMethodDecl>(D) && !isFunctionLike(D))) {
3011 if (const auto *S = dyn_cast<VarDecl>(D))
3011 if (const auto *S = dyn_cast<VarDecl>(D))
3121 if (!D || (!isa<VarDecl>(D) && !isa<FunctionDecl>(D) && !isa<CXXRecordDecl>(D))) {
3136 if (!D || (!isa<VarDecl>(D) && !isa<FunctionDecl>(D))) {
3563 return isa<VarDecl>(D);
include/llvm/ADT/ArrayRef.h 108 const ArrayRef<U *> &A,
110 std::is_convertible<U *const *, T const *>::value>::type * = nullptr)
118 const SmallVectorTemplateCommon<U *, DummyT> &Vec,
120 std::is_convertible<U *const *, T const *>::value>::type * = nullptr)
include/llvm/ADT/DenseMapInfo.h 39 static inline T* getEmptyKey() {
41 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
45 static inline T* getTombstoneKey() {
47 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
51 static unsigned getHashValue(const T *PtrVal) {
56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
include/llvm/ADT/STLExtras.h 75 typename std::add_pointer<typename std::add_const<T>::type>::type;
include/llvm/ADT/SmallSet.h 249 class SmallSet<PointeeType*, N> : public SmallPtrSet<PointeeType*, N> {};
include/llvm/Support/Casting.h 34 using SimpleType = From; // The real type this represents...
37 static SimpleType &getSimplifiedValue(From &Val) { return Val; }
41 using NonConstSimpleType = typename simplify_type<From>::SimpleType;
47 static RetType getSimplifiedValue(const From& Val) {
57 static inline bool doit(const From &Val) {
58 return To::classof(&Val);
66 static inline bool doit(const From &) { return true; }
76 static inline bool doit(const From &Val) {
77 return isa_impl<To, From>::doit(Val);
77 return isa_impl<To, From>::doit(Val);
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
141 template <class X, class Y> LLVM_NODISCARD inline bool isa(const Y &Val) {
142 return isa_impl_wrap<X, const Y,
142 return isa_impl_wrap<X, const Y,
143 typename simplify_type<const Y>::SimpleType>::doit(Val);
168 using ret_type = const To &; // Normal case, return Ty&
172 using ret_type = To *; // Pointer arg case, return Ty*
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
258 return cast_convert_val<X, Y,
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
265 return cast_convert_val<X, Y*,
266 typename simplify_type<Y*>::SimpleType>::doit(Val);
296 typename cast_retty<X, Y>::ret_type>::type
305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
306 cast_or_null(Y *Val) {
309 return cast<X>(Val);
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
360 typename cast_retty<X, Y>::ret_type>::type
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
367 dyn_cast_or_null(Y *Val) {
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h 56 static inline void *getAsVoidPointer(T *P) { return P; }
57 static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
59 enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
91 typedef PointerLikeTypeTraits<T *> NonConst;
93 static inline const void *getAsVoidPointer(const T *P) {
96 static inline const T *getFromVoidPointer(const void *P) {
include/llvm/Support/type_traits.h 55 struct add_const_past_pointer { using type = const T; };
tools/clang/include/clang/AST/ASTConsumer.h 103 virtual void CompleteTentativeDefinition(VarDecl *D) {}
111 virtual void HandleCXXStaticMemberVarInstantiation(VarDecl *D) {}
tools/clang/include/clang/AST/ASTContext.h 273 llvm::DenseMap<const VarDecl *, BlockVarCopyInit> BlockVarCopyInits;
470 llvm::DenseMap<const VarDecl *, TemplateOrSpecializationInfo>
523 llvm::MapVector<const VarDecl *, unsigned> StaticLocalNumbers;
527 using ParameterIndexTable = llvm::DenseMap<const VarDecl *, unsigned>;
894 const VarDecl *Var);
897 getTemplateOrSpecializationInfo(const VarDecl *Var);
901 void setInstantiatedFromStaticDataMember(VarDecl *Inst, VarDecl *Tmpl,
901 void setInstantiatedFromStaticDataMember(VarDecl *Inst, VarDecl *Tmpl,
905 void setTemplateOrSpecializationInfo(VarDecl *Inst,
1286 bool BlockRequiresCopying(QualType Ty, const VarDecl *D);
2732 void setBlockVarCopyInit(const VarDecl* VD, Expr *CopyExpr, bool CanThrow);
2736 BlockVarCopyInit getBlockVarCopyInit(const VarDecl* VD) const;
2777 GVALinkage GetGVALinkageForVariable(const VarDecl *VD);
2810 void setStaticLocalNumber(const VarDecl *VD, unsigned Number);
2811 unsigned getStaticLocalNumber(const VarDecl *VD) const;
2959 bool isMSStaticDataMemberInlineDefinition(const VarDecl *VD) const;
2981 getInlineVariableDefinitionKind(const VarDecl *VD) const;
tools/clang/include/clang/AST/ASTMutationListener.h 96 virtual void VariableDefinitionInstantiated(const VarDecl *D) {}
tools/clang/include/clang/AST/ASTNodeTraverser.h 379 void VisitVarDecl(const VarDecl *D) {
430 for (const auto *RedeclWithBadType : D->redecls()) {
639 if (const VarDecl *CatchParam = Node->getCatchParamDecl())
tools/clang/include/clang/AST/ASTTypeTraits.h 65 return ASTNodeKind(KindToKindId<T>::Id);
65 return ASTNodeKind(KindToKindId<T>::Id);
65 return ASTNodeKind(KindToKindId<T>::Id);
234 static DynTypedNode create(const T &Node) {
235 return BaseConverter<T>::create(Node);
251 const T *get() const {
252 return BaseConverter<T>::get(NodeKind, Storage.buffer);
259 const T &getUnchecked() const {
260 return BaseConverter<T>::getUnchecked(NodeKind, Storage.buffer);
394 static const T *get(ASTNodeKind NodeKind, const char Storage[]) {
395 if (ASTNodeKind::getFromNodeKind<T>().isBaseOf(NodeKind))
399 static const T &getUnchecked(ASTNodeKind NodeKind, const char Storage[]) {
401 return *cast<T>(static_cast<const BaseT *>(
469 : public DynCastPtrConverter<T, Decl> {};
tools/clang/include/clang/AST/ComparisonCategories.h 78 VarDecl *VD;
80 ValueInfo(ComparisonCategoryResult Kind, VarDecl *VD)
tools/clang/include/clang/AST/Decl.h 828 class VarDecl : public DeclaratorDecl, public Redeclarable<VarDecl> {
999 using redeclarable_base = Redeclarable<VarDecl>;
1001 VarDecl *getNextRedeclarationImpl() override {
1005 VarDecl *getPreviousDeclImpl() override {
1009 VarDecl *getMostRecentDeclImpl() override {
1024 static VarDecl *Create(ASTContext &C, DeclContext *DC,
1029 static VarDecl *CreateDeserialized(ASTContext &C, unsigned ID);
1155 VarDecl *getCanonicalDecl() override;
1156 const VarDecl *getCanonicalDecl() const {
1187 VarDecl *getActingDefinition();
1188 const VarDecl *getActingDefinition() const {
1193 VarDecl *getDefinition(ASTContext &);
1194 const VarDecl *getDefinition(ASTContext &C) const {
1197 VarDecl *getDefinition() {
1200 const VarDecl *getDefinition() const {
1226 const VarDecl *D;
1232 const Expr *getAnyInitializer(const VarDecl *&D) const;
1248 VarDecl *getInitializingDeclaration();
1249 const VarDecl *getInitializingDeclaration() const {
1466 VarDecl *getTemplateInstantiationPattern() const;
1471 VarDecl *getInstantiatedFromStaticDataMember() const;
1501 void setInstantiationOfStaticDataMember(VarDecl *VD,
1537 class ImplicitParamDecl : public VarDecl {
1601 class ParmVarDecl : public VarDecl {
2936 VarDecl *getVarDecl() const {
2938 return dyn_cast<VarDecl>(chain().front());
3971 llvm::PointerIntPair<VarDecl*, 2> VariableAndFlags;
3979 Capture(VarDecl *variable, bool byRef, bool nested, Expr *copy)
3985 VarDecl *getVariable() const { return VariableAndFlags.getPointer(); }
4119 bool capturesVariable(const VarDecl *var) const;
4406 decl_type *MostRecent = First->getNextRedeclaration();
4407 RedeclLink = PreviousDeclLink(cast<decl_type>(MostRecent));
tools/clang/include/clang/AST/DeclBase.h 2058 while (*Current && !isa<SpecificDecl>(*Current))
2063 using value_type = SpecificDecl *;
2086 value_type operator*() const { return cast<SpecificDecl>(*Current); }
2536 static ::clang::DeclContext *doit(const FromTy *Val) {
2537 return FromTy::castToDeclContext(Val);
tools/clang/include/clang/AST/DeclCXX.h 1015 void getCaptureFields(llvm::DenseMap<const VarDecl *, FieldDecl *> &Captures,
3750 VarDecl *getHoldingVar() const;
3776 : public VarDecl,
tools/clang/include/clang/AST/DeclOpenMP.h 312 class OMPCapturedExprDecl final : public VarDecl {
tools/clang/include/clang/AST/DeclTemplate.h 2485 class VarTemplateSpecializationDecl : public VarDecl,
2567 VarDecl *Recent = static_cast<VarDecl *>(this)->getMostRecentDecl();
2936 VarDecl *getTemplatedDecl() const {
2952 VarDecl *Decl);
tools/clang/include/clang/AST/Expr.h 673 const VarDecl *VD,
tools/clang/include/clang/AST/ExprCXX.h 4339 private llvm::TrailingObjects<FunctionParmPackExpr, VarDecl *> {
4345 VarDecl *ParamPack;
4353 FunctionParmPackExpr(QualType T, VarDecl *ParamPack,
4355 VarDecl *const *Params);
4359 VarDecl *ParamPack,
4361 ArrayRef<VarDecl *> Params);
4366 VarDecl *getParameterPack() const { return ParamPack; }
4373 using iterator = VarDecl * const *;
4374 iterator begin() const { return getTrailingObjects<VarDecl *>(); }
4381 VarDecl *getExpansion(unsigned I) const { return begin()[I]; }
4474 return cast<VarDecl>(ExtendingDecl)->getStorageDuration();
tools/clang/include/clang/AST/GlobalDecl.h 53 GlobalDecl(const VarDecl *D) { Init(D);}
65 GlobalDecl(const VarDecl *D, DynamicInitKind StubKind)
tools/clang/include/clang/AST/JSONNodeDumper.h 172 template <typename T> void writePreviousDeclImpl(const Redeclarable<T> *D) {
173 const T *Prev = D->getPreviousDecl();
231 void VisitVarDecl(const VarDecl *VD);
351 for (const auto *RedeclWithBadType : SD->redecls()) {
tools/clang/include/clang/AST/LambdaCapture.h 74 VarDecl *Var = nullptr,
89 return dyn_cast_or_null<VarDecl>(DeclAndBits.getPointer());
104 VarDecl *getCapturedVar() const {
tools/clang/include/clang/AST/Mangle.h 107 virtual void mangleReferenceTemporary(const VarDecl *D,
131 virtual void mangleStaticGuardVariable(const VarDecl *D, raw_ostream &) = 0;
133 virtual void mangleDynamicInitializer(const VarDecl *D, raw_ostream &) = 0;
135 virtual void mangleDynamicAtExitDestructor(const VarDecl *D,
163 virtual void mangleItaniumThreadLocalInit(const VarDecl *D,
165 virtual void mangleItaniumThreadLocalWrapper(const VarDecl *D,
202 virtual void mangleThreadSafeStaticGuardVariable(const VarDecl *VD,
tools/clang/include/clang/AST/MangleNumberingContext.h 44 virtual unsigned getStaticLocalNumber(const VarDecl *VD) = 0;
48 virtual unsigned getManglingNumber(const VarDecl *VD,
tools/clang/include/clang/AST/RecursiveASTVisitor.h 527 bool TraverseVarHelper(VarDecl *D);
1691 for (auto *RD : SD->redecls()) {
2092 bool RecursiveASTVisitor<Derived>::TraverseVarHelper(VarDecl *D) {
2101 DEF_TRAVERSE_DECL(VarDecl, { TRY_TO(TraverseVarHelper(D)); })
tools/clang/include/clang/AST/Redeclarable.h 113 DeclLink(PreviousTag, decl_type *D) : Link(NotKnownLatest(Previous(D))) {}
122 decl_type *getPrevious(const decl_type *D) const {
122 decl_type *getPrevious(const decl_type *D) const {
137 void setPrevious(decl_type *D) {
142 void setLatest(decl_type *D) {
166 static DeclLink PreviousDeclLink(decl_type *D) {
187 decl_type *First;
189 decl_type *getNextRedeclaration() const {
203 decl_type *getPreviousDecl() {
208 const decl_type *getPreviousDecl() const {
215 decl_type *getFirstDecl() { return First; }
219 const decl_type *getFirstDecl() const { return First; }
225 decl_type *getMostRecentDecl() {
230 const decl_type *getMostRecentDecl() const {
236 void setPreviousDecl(decl_type *PrevDecl);
241 decl_type *Current = nullptr;
242 decl_type *Starter;
246 using value_type = decl_type *;
247 using reference = decl_type *;
248 using pointer = decl_type *;
253 explicit redecl_iterator(decl_type *C) : Current(C), Starter(C) {}
271 decl_type *Next = Current->getNextRedeclaration();
350 CanonicalDeclPtr(decl_type *Ptr)
355 operator decl_type *() { return Ptr; }
356 operator const decl_type *() const { return Ptr; }
358 decl_type *operator->() { return Ptr; }
359 const decl_type *operator->() const { return Ptr; }
361 decl_type &operator*() { return *Ptr; }
362 const decl_type &operator*() const { return *Ptr; }
374 decl_type *Ptr = nullptr;
tools/clang/include/clang/AST/Stmt.h 1871 VarDecl *Var, Expr *Cond, Stmt *Then, SourceLocation EL, Stmt *Else);
1879 bool IsConstexpr, Stmt *Init, VarDecl *Var, Expr *Cond,
1942 VarDecl *getConditionVariable();
1943 const VarDecl *getConditionVariable() const {
1949 void setConditionVariable(const ASTContext &Ctx, VarDecl *V);
2066 SwitchStmt(const ASTContext &Ctx, Stmt *Init, VarDecl *Var, Expr *Cond);
2073 static SwitchStmt *Create(const ASTContext &Ctx, Stmt *Init, VarDecl *Var,
2133 VarDecl *getConditionVariable();
2134 const VarDecl *getConditionVariable() const {
2140 void setConditionVariable(const ASTContext &Ctx, VarDecl *VD);
2241 WhileStmt(const ASTContext &Ctx, VarDecl *Var, Expr *Cond, Stmt *Body,
2249 static WhileStmt *Create(const ASTContext &Ctx, VarDecl *Var, Expr *Cond,
2288 VarDecl *getConditionVariable();
2289 const VarDecl *getConditionVariable() const {
2295 void setConditionVariable(const ASTContext &Ctx, VarDecl *V);
2400 ForStmt(const ASTContext &C, Stmt *Init, Expr *Cond, VarDecl *condVar,
2417 VarDecl *getConditionVariable() const;
2418 void setConditionVariable(const ASTContext &C, VarDecl *V);
2622 private llvm::TrailingObjects<ReturnStmt, const VarDecl *> {
2634 unsigned numTrailingObjects(OverloadToken<const VarDecl *>) const {
2639 ReturnStmt(SourceLocation RL, Expr *E, const VarDecl *NRVOCandidate);
2647 const VarDecl *NRVOCandidate);
2662 const VarDecl *getNRVOCandidate() const {
2663 return hasNRVOCandidate() ? *getTrailingObjects<const VarDecl *>()
2670 void setNRVOCandidate(const VarDecl *Var) {
2673 *getTrailingObjects<const VarDecl *>() = Var;
3374 llvm::PointerIntPair<VarDecl *, 2, VariableCaptureKind> VarAndKind;
3388 VarDecl *Var = nullptr);
3417 VarDecl *getCapturedVar() const;
3487 bool capturesVariable(const VarDecl *Var) const;
tools/clang/include/clang/AST/StmtCXX.h 31 VarDecl *ExceptionDecl;
36 CXXCatchStmt(SourceLocation catchLoc, VarDecl *exDecl, Stmt *handlerBlock)
49 VarDecl *getExceptionDecl() const { return ExceptionDecl; }
153 VarDecl *getLoopVariable();
157 const VarDecl *getLoopVariable() const;
385 VarDecl *getPromiseDecl() const {
386 return cast<VarDecl>(cast<DeclStmt>(getPromiseDeclStmt())->getSingleDecl());
tools/clang/include/clang/AST/StmtObjC.h 79 VarDecl *ExceptionDecl;
85 VarDecl *catchVarDecl,
97 const VarDecl *getCatchParamDecl() const {
100 VarDecl *getCatchParamDecl() {
103 void setCatchParamDecl(VarDecl *D) { ExceptionDecl = D; }
tools/clang/include/clang/AST/TextNodeDumper.h 305 void VisitVarDecl(const VarDecl *D);
tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h 266 const NodeT *
269 if (const NodeT *Node = N.getNodeAs<NodeT>(BoundTo))
269 if (const NodeT *Node = N.getNodeAs<NodeT>(BoundTo))
tools/clang/include/clang/ASTMatchers/ASTMatchers.h 110 const T *getNodeAs(StringRef ID) const {
111 return MyBoundNodes.getNodeAs<T>(ID);
1152 extern const internal::VariadicDynCastAllOfMatcher<Decl, VarDecl> varDecl;
1889 const VarDecl *const Var = Node.getLoopVariable();
tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h 160 const T *getNodeAs(StringRef ID) const {
165 return It->second.get<T>();
302 virtual bool matches(const T &Node,
309 return matches(DynNode.getUnchecked<T>(), Finder, Builder);
345 DynTypedMatcher(MatcherInterface<T> *Implementation)
346 : SupportedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()),
436 return canConvertTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
445 template <typename T> Matcher<T> convertTo() const {
447 return unconditionalConvertTo<T>();
454 template <typename T> Matcher<T> unconditionalConvertTo() const;
479 class WrapperMatcherInterface : public MatcherInterface<T> {
499 explicit Matcher(MatcherInterface<T> *Implementation)
506 Matcher(const Matcher<From> &Other,
507 typename std::enable_if<std::is_base_of<From, T>::value &&
507 typename std::enable_if<std::is_base_of<From, T>::value &&
508 !std::is_same<From, T>::value>::type * = nullptr)
508 !std::is_same<From, T>::value>::type * = nullptr)
520 std::is_same<T, QualType>::value &&
529 static_assert(std::is_base_of<To, T>::value, "Invalid dynCast call.");
534 bool matches(const T &Node,
581 return Other.dynCastTo(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
596 inline Matcher<T> makeMatcher(MatcherInterface<T> *Implementation) {
596 inline Matcher<T> makeMatcher(MatcherInterface<T> *Implementation) {
994 bool matchesChildOf(const T &Node, const DynTypedMatcher &Matcher,
997 static_assert(std::is_base_of<Decl, T>::value ||
998 std::is_base_of<Stmt, T>::value ||
999 std::is_base_of<NestedNameSpecifier, T>::value ||
1000 std::is_base_of<NestedNameSpecifierLoc, T>::value ||
1001 std::is_base_of<TypeLoc, T>::value ||
1002 std::is_base_of<QualType, T>::value,
1009 bool matchesDescendantOf(const T &Node,
1013 static_assert(std::is_base_of<Decl, T>::value ||
1014 std::is_base_of<Stmt, T>::value ||
1015 std::is_base_of<NestedNameSpecifier, T>::value ||
1016 std::is_base_of<NestedNameSpecifierLoc, T>::value ||
1017 std::is_base_of<TypeLoc, T>::value ||
1018 std::is_base_of<QualType, T>::value,
1026 bool matchesAncestorOf(const T &Node,
1030 static_assert(std::is_base_of<Decl, T>::value ||
1031 std::is_base_of<NestedNameSpecifierLoc, T>::value ||
1032 std::is_base_of<Stmt, T>::value ||
1033 std::is_base_of<TypeLoc, T>::value,
1067 using head = T1;
1073 using tail = TypeList<Ts...>;
1084 std::is_base_of<typename AnyTypeList::head, T>::value ||
1085 TypeListContainsSuperOf<typename AnyTypeList::tail, T>::value;
1146 template <typename To> operator Matcher<To>() const {
1184 operator Matcher<T>() const {
1185 static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
1202 operator Matcher<T>() const {
1203 static_assert(TypeListContainsSuperOf<ReturnTypes, T>::value,
1243 operator Matcher<T>() const {
1245 ast_type_traits::ASTNodeKind::getFromNodeKind<T>())
1246 .template unconditionalConvertTo<T>();
1255 class BindableMatcher : public Matcher<T> {
1257 explicit BindableMatcher(const Matcher<T> &M) : Matcher<T>(M) {}
1258 explicit BindableMatcher(MatcherInterface<T> *Implementation)
1265 Matcher<T> bind(StringRef ID) const {
1285 class HasMatcher : public WrapperMatcherInterface<T> {
1290 bool matches(const T &Node, ASTMatchFinder *Finder,
1335 template <typename T> operator Matcher<T>() const {
1337 Op, ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
1338 getMatchers<T>(std::index_sequence_for<Ps...>()))
1339 .template unconditionalConvertTo<T>();
1370 inline Matcher<T> DynTypedMatcher::unconditionalConvertTo() const {
1376 BindableMatcher<T> makeAllOfComposite(
1377 ArrayRef<const Matcher<T> *> InnerMatchers) {
1388 using PI = llvm::pointee_iterator<const Matcher<T> *const *>;
1395 ast_type_traits::ASTNodeKind::getFromNodeKind<T>(),
1397 .template unconditionalConvertTo<T>());
1408 ArrayRef<const Matcher<InnerT> *> InnerMatchers) {
1418 class HasDescendantMatcher : public WrapperMatcherInterface<T> {
1426 bool matches(const T &Node, ASTMatchFinder *Finder,
1438 class HasParentMatcher : public WrapperMatcherInterface<T> {
1446 bool matches(const T &Node, ASTMatchFinder *Finder,
1458 class HasAncestorMatcher : public WrapperMatcherInterface<T> {
1466 bool matches(const T &Node, ASTMatchFinder *Finder,
1557 : public VariadicFunction<BindableMatcher<SourceT>, Matcher<TargetT>,
1558 makeDynCastAllOfComposite<SourceT, TargetT>> {
tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h 199 ast_matchers::internal::Matcher<T> getTypedMatcher() const {
202 ->template convertTo<T>();
227 : MatcherOps(ast_type_traits::ASTNodeKind::getFromNodeKind<T>()) {}
228 typedef ast_matchers::internal::Matcher<T> MatcherT;
232 return DynTypedMatcher(Matcher.convertTo<T>());
tools/clang/include/clang/Analysis/Analyses/Consumed.h 143 using VarMapType = llvm::DenseMap<const VarDecl *, ConsumedState>;
168 ConsumedState getState(const VarDecl *Var) const;
192 void setState(const VarDecl *Var, ConsumedState State);
tools/clang/include/clang/Analysis/Analyses/LiveVariables.h 34 llvm::ImmutableSet<const VarDecl *> liveDecls;
43 llvm::ImmutableSet<const VarDecl *> LiveDecls,
49 bool isLive(const VarDecl *D) const;
78 bool isLive(const CFGBlock *B, const VarDecl *D);
84 bool isLive(const Stmt *S, const VarDecl *D);
tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h 123 void handleDestructorCall(const VarDecl *VD, const CXXDestructorDecl *DD) {}
214 auto *VD = const_cast<VarDecl *>(AD.getVarDecl());
372 const Expr *DeclExp, VarDecl *SelfD=nullptr);
457 void handleDestructorCall(const VarDecl *VD, const CXXDestructorDecl *DD);
tools/clang/include/clang/Analysis/Analyses/UninitializedValues.h 110 virtual void handleUseOfUninitVariable(const VarDecl *vd,
116 virtual void handleSelfInit(const VarDecl *vd) {}
tools/clang/include/clang/Analysis/AnalysisDeclContext.h 176 using referenced_decls_iterator = const VarDecl * const *;
tools/clang/include/clang/Analysis/CFG.h 292 explicit CFGLifetimeEnds(const VarDecl *var, const Stmt *stmt)
295 const VarDecl *getVarDecl() const {
318 CFGScopeBegin(const VarDecl *VD, const Stmt *S)
327 const VarDecl *getVarDecl() const {
344 CFGScopeEnd(const VarDecl *VD, const Stmt *S) : CFGElement(ScopeEnd, VD, S) {}
346 const VarDecl *getVarDecl() const {
391 CFGAutomaticObjDtor(const VarDecl *var, const Stmt *stmt)
394 const VarDecl *getVarDecl() const {
1121 void appendScopeBegin(const VarDecl *VD, const Stmt *S,
1126 void prependScopeBegin(const VarDecl *VD, const Stmt *S,
1131 void appendScopeEnd(const VarDecl *VD, const Stmt *S, BumpVectorContext &C) {
1135 void prependScopeEnd(const VarDecl *VD, const Stmt *S, BumpVectorContext &C) {
1151 void appendAutomaticObjDtor(VarDecl *VD, Stmt *S, BumpVectorContext &C) {
1155 void appendLifetimeEnds(VarDecl *VD, Stmt *S, BumpVectorContext &C) {
1175 iterator insertAutomaticObjDtor(iterator I, VarDecl *VD, Stmt *S) {
1188 iterator insertLifetimeEnds(iterator I, VarDecl *VD, Stmt *S) {
1200 iterator insertScopeEnd(iterator I, VarDecl *VD, Stmt *S) {
tools/clang/include/clang/Analysis/CloneDetection.h 368 std::vector<const VarDecl *> Variables;
373 void addVariableOccurence(const VarDecl *VarDecl, const Stmt *Mention);
393 const VarDecl *Variable;
399 const VarDecl *Suggestion;
400 SuspiciousCloneInfo(const VarDecl *Variable, const Stmt *Mention,
401 const VarDecl *Suggestion)
tools/clang/include/clang/CrossTU/CrossTranslationUnit.h 94 bool containsConst(const VarDecl *VD, const ASTContext &ACtx);
130 llvm::Expected<const VarDecl *>
131 getCrossTUDefinition(const VarDecl *VD, StringRef CrossTUDir,
159 llvm::Expected<const VarDecl *> importDefinition(const VarDecl *VD,
159 llvm::Expected<const VarDecl *> importDefinition(const VarDecl *VD,
tools/clang/include/clang/Frontend/MultiplexConsumer.h 57 void HandleCXXStaticMemberVarInstantiation(VarDecl *VD) override;
67 void CompleteTentativeDefinition(VarDecl *D) override;
tools/clang/include/clang/Parse/Parser.h 2877 void ParseOpenMPReductionInitializerForDecl(VarDecl *OmpPrivParm);
tools/clang/include/clang/Sema/ExternalSemaSource.h 107 SmallVectorImpl<VarDecl *> &TentativeDefs) {}
tools/clang/include/clang/Sema/Initialization.h 211 InitializedEntity(VarDecl *Var, EntityKind EK = EK_Variable)
243 static InitializedEntity InitializeVariable(VarDecl *Var) {
384 static InitializedEntity InitializeBinding(VarDecl *Binding) {
tools/clang/include/clang/Sema/Lookup.h 507 DeclClass *getAsSingle() const {
509 return dyn_cast<DeclClass>(getFoundDecl());
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 246 void ReadTentativeDefinitions(SmallVectorImpl<VarDecl*> &Defs) override;
tools/clang/include/clang/Sema/Scope.h 209 llvm::PointerIntPair<VarDecl *, 1, bool> NRVO;
472 void addNRVOCandidate(VarDecl *VD) {
tools/clang/include/clang/Sema/ScopeInfo.h 193 VarDecl *CoroutinePromise = nullptr;
210 llvm::TinyPtrVector<VarDecl *> ByrefBlockVars;
442 void addByrefBlockVar(VarDecl *VD) {
518 VarDecl *CapturedVar;
554 Capture(VarDecl *Var, bool Block, bool ByRef, bool IsNested,
604 VarDecl *getVariable() const {
643 llvm::DenseMap<VarDecl*, unsigned> CaptureMap;
660 void addCapture(VarDecl *Var, bool isBlock, bool isByref, bool isNested,
687 bool isCaptured(VarDecl *Var) const {
696 Capture &getCapture(VarDecl *Var) {
701 const Capture &getCapture(VarDecl *Var) const {
702 llvm::DenseMap<VarDecl*, unsigned>::const_iterator Known
878 const VarDecl *VD;
879 const VarDecl *ShadowedDecl;
1007 llvm::function_ref<void(VarDecl *, Expr *)> Callback) const;
tools/clang/include/clang/Sema/Sema.h 659 typedef LazyVector<VarDecl *, ExternalSemaSource,
2121 NamedDecl *getShadowedDeclaration(const VarDecl *D, const LookupResult &R);
2124 void CheckShadow(Scope *S, VarDecl *D);
2158 bool CheckVariableDeclaration(VarDecl *NewVD, LookupResult &Previous);
2159 void CheckVariableDeclarationType(VarDecl *NewVD);
2160 bool DeduceVariableDeclarationType(VarDecl *VDecl, bool DirectInit,
2162 void CheckCompleteVariableDeclaration(VarDecl *VD);
2273 void CheckStaticLocalForDllExport(VarDecl *VD);
2837 void MergeVarDecl(VarDecl *New, LookupResult &Previous);
2838 void MergeVarDeclTypes(VarDecl *New, VarDecl *Old, bool MergeTypeWithOld);
2838 void MergeVarDeclTypes(VarDecl *New, VarDecl *Old, bool MergeTypeWithOld);
2839 void MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old);
2839 void MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old);
2840 bool checkVarDeclRedefinition(VarDecl *OldDefn, VarDecl *NewDefn);
2840 bool checkVarDeclRedefinition(VarDecl *OldDefn, VarDecl *NewDefn);
2927 const VarDecl *NRVOCandidate,
3650 CorrectDelayedTyposInExpr(Expr *E, VarDecl *InitDecl = nullptr,
3661 CorrectDelayedTyposInExpr(ExprResult ER, VarDecl *InitDecl = nullptr,
4197 VarDecl *getCopyElisionCandidate(QualType ReturnType, Expr *E,
4199 bool isCopyElisionCandidate(QualType ReturnType, const VarDecl *VD,
4237 VarDecl *BuildObjCExceptionDecl(TypeSourceInfo *TInfo, QualType ExceptionType,
4263 VarDecl *BuildExceptionDeclaration(Scope *S, TypeSourceInfo *TInfo,
4407 void MarkVariableReferenced(SourceLocation Loc, VarDecl *Var);
4411 void MarkCaptureUsedInEnclosingContext(VarDecl *Capture, SourceLocation Loc,
4454 bool tryCaptureVariable(VarDecl *Var, SourceLocation Loc, TryCaptureKind Kind,
4461 bool tryCaptureVariable(VarDecl *Var, SourceLocation Loc,
4466 bool NeedToCaptureVariable(VarDecl *Var, SourceLocation Loc);
4470 QualType getCapturedDeclRefType(VarDecl *Var, SourceLocation Loc);
5156 void FinalizeVarWithDestructor(VarDecl *VD, const RecordType *DeclInitType);
6034 VarDecl *createLambdaInitCaptureVarDecl(SourceLocation Loc,
6041 void addInitCapture(sema::LambdaScopeInfo *LSI, VarDecl *Var);
7605 void DiagnoseAutoDeductionFailure(VarDecl *VDecl, Expr *Init);
7618 QualType deduceVarTypeFromInitializer(VarDecl *VDecl, DeclarationName Name,
8462 VarTemplateDecl *VarTemplate, VarDecl *FromVar,
8470 VarTemplateSpecializationDecl *VarSpec, VarDecl *PatternDecl,
8473 BuildVariableInstantiation(VarDecl *NewVar, VarDecl *OldVar,
8473 BuildVariableInstantiation(VarDecl *NewVar, VarDecl *OldVar,
8481 VarDecl *getVarTemplateSpecialization(
8486 VarDecl *Var, VarDecl *OldVar,
8486 VarDecl *Var, VarDecl *OldVar,
8489 VarDecl *Var, bool Recursive = false,
9169 VarDecl *buildCoroutinePromise(SourceLocation Loc);
9350 VarDecl *isOpenMPCapturedDecl(ValueDecl *D, bool CheckScopeInfo = false,
9352 ExprResult getOpenMPCapturedExpr(VarDecl *Capture, ExprValueKind VK,
9436 VarDecl *ActOnOpenMPDeclareReductionInitializerStart(Scope *S, Decl *D);
9439 VarDecl *OmpPrivParm);
10556 void checkRetainCycles(VarDecl *Var, Expr *Init);
10616 std::pair<VarDecl *, Expr *> get() const {
10617 return std::make_pair(cast_or_null<VarDecl>(ConditionVar),
10643 ExprResult CheckConditionVariable(VarDecl *ConditionVar,
11039 void checkAllowedCUDAInitializer(VarDecl *VD);
tools/clang/include/clang/Sema/SemaLambda.h 35 VarDecl *VarToCapture, Sema &S);
tools/clang/include/clang/Sema/Template.h 230 using DeclArgumentPack = SmallVector<VarDecl *, 4>;
381 void InstantiatedLocalPackArg(const Decl *D, VarDecl *Inst);
483 Decl *VisitVarDecl(VarDecl *D, bool InstantiatingVarTemplate,
546 VarTemplateDecl *VarTemplate, VarDecl *FromVar, void *InsertPos,
tools/clang/include/clang/Sema/TypoCorrection.h 156 DeclClass *getCorrectionDeclAs() const {
157 return dyn_cast_or_null<DeclClass>(getCorrectionDecl());
369 return candidate.getCorrectionDeclAs<C>();
tools/clang/include/clang/Serialization/ASTReader.h 1887 T *ReadDeclAs(ModuleFile &F, const RecordData &R, unsigned &I) {
1888 return cast_or_null<T>(GetDecl(ReadDeclID(F, R, I)));
2007 SmallVectorImpl<VarDecl *> &TentativeDefs) override;
2541 T *readDeclAs() {
2542 return Reader->ReadDeclAs<T>(*F, Record, Idx);
tools/clang/include/clang/Serialization/ASTWriter.h 731 void VariableDefinitionInstantiated(const VarDecl *D) override;
tools/clang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h 182 const VarDecl *VD = R->getDecl();
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h 613 const VarDecl *LambdaVD = getRegionStoringCapturedLambda()->getDecl();
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h 43 std::pair<const clang::VarDecl *, const clang::Expr *>
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h 756 getCaptureRegions(const VarDecl *VD);
932 VarRegion(const VarDecl *vd, const MemRegion *sReg)
942 static void ProfileRegion(llvm::FoldingSetNodeID& ID, const VarDecl *VD,
950 const VarDecl *getDecl() const { return cast<VarDecl>(D); }
950 const VarDecl *getDecl() const { return cast<VarDecl>(D); }
1325 const VarRegion* getVarRegion(const VarDecl *D, const LocationContext *LC);
1329 const VarRegion *getVarRegion(const VarDecl *D, const MemRegion *superR);
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h 229 const VarRegion* getRegion(const VarDecl *D, const LocationContext *LC) const;
309 Loc getLValue(const VarDecl *D, const LocationContext *LC) const;
652 inline const VarRegion* ProgramState::getRegion(const VarDecl *D,
723 inline Loc ProgramState::getLValue(const VarDecl *VD,
tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h 134 virtual Loc getLValueVar(const VarDecl *VD, const LocationContext *LC) {
tools/clang/lib/ARCMigrate/TransARCAssign.cpp 36 llvm::DenseSet<VarDecl *> ModifiedVars;
49 if (declRef && isa<VarDecl>(declRef->getDecl())) {
54 VarDecl *var = cast<VarDecl>(declRef->getDecl());
54 VarDecl *var = cast<VarDecl>(declRef->getDecl());
tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp 84 SmallVector<VarDecl *, 8> VarsToHandle;
86 for (std::map<VarDecl *, PoolVarInfo>::iterator
88 VarDecl *var = I->first;
171 if (VarDecl *VD = dyn_cast<VarDecl>(DclS->getSingleDecl())) {
171 if (VarDecl *VD = dyn_cast<VarDecl>(DclS->getSingleDecl())) {
189 if (VarDecl *VD = dyn_cast<VarDecl>(dref->getDecl())) {
189 if (VarDecl *VD = dyn_cast<VarDecl>(dref->getDecl())) {
225 VarDecl *PoolVar;
372 bool isPoolDrain(VarDecl *poolVar, Stmt *S) {
426 std::map<VarDecl *, PoolVarInfo> PoolVars;
tools/clang/lib/ARCMigrate/TransBlockObjCVariable.cpp 41 llvm::DenseSet<VarDecl *> &VarsToChange;
44 VarDecl *Var;
48 BlockVarChecker(VarDecl *var) : Var(var) { }
74 RootBlockObjCVarRewriter(llvm::DenseSet<VarDecl *> &VarsToChange)
78 SmallVector<VarDecl *, 4> BlockVars;
81 VarDecl *var = I.getVariable();
90 VarDecl *var = BlockVars[i];
112 llvm::DenseSet<VarDecl *> &VarsToChange;
115 BlockObjCVarRewriter(llvm::DenseSet<VarDecl *> &VarsToChange)
128 llvm::DenseSet<VarDecl *> VarsToChange;
133 for (llvm::DenseSet<VarDecl *>::iterator
135 VarDecl *var = *I;
tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp 231 if (VarDecl *VD = dyn_cast<VarDecl>(RefD))
231 if (VarDecl *VD = dyn_cast<VarDecl>(RefD))
370 VarDecl *VD = dyn_cast_or_null<VarDecl>(DeclS->getSingleDecl());
370 VarDecl *VD = dyn_cast_or_null<VarDecl>(DeclS->getSingleDecl());
tools/clang/lib/AST/ASTContext.cpp 118 if (const auto *VD = dyn_cast<VarDecl>(D)) {
118 if (const auto *VD = dyn_cast<VarDecl>(D)) {
221 (isa<FieldDecl>(D) || isa<EnumConstantDecl>(D) || isa<VarDecl>(D) ||
319 if (const auto *VD = dyn_cast<VarDecl>(&D)) {
319 if (const auto *VD = dyn_cast<VarDecl>(&D)) {
323 if (const VarDecl *MemberDecl = VD->getInstantiatedFromStaticDataMember())
1415 ASTContext::getInstantiatedFromStaticDataMember(const VarDecl *Var) {
1422 ASTContext::getTemplateOrSpecializationInfo(const VarDecl *Var) {
1423 llvm::DenseMap<const VarDecl *, TemplateOrSpecializationInfo>::iterator Pos =
1432 ASTContext::setInstantiatedFromStaticDataMember(VarDecl *Inst, VarDecl *Tmpl,
1432 ASTContext::setInstantiatedFromStaticDataMember(VarDecl *Inst, VarDecl *Tmpl,
1442 ASTContext::setTemplateOrSpecializationInfo(VarDecl *Inst,
1654 if (const auto *VD = dyn_cast<VarDecl>(D)) {
1654 if (const auto *VD = dyn_cast<VarDecl>(D)) {
2658 ASTContext::getBlockVarCopyInit(const VarDecl*VD) const {
2669 void ASTContext::setBlockVarCopyInit(const VarDecl*VD, Expr *CopyExpr,
6192 const VarDecl *D) {
6287 bool ASTContext::isMSStaticDataMemberInlineDefinition(const VarDecl *VD) const {
6295 ASTContext::getInlineVariableDefinitionKind(const VarDecl *VD) const {
6306 for (auto *D : VD->redecls())
9872 const VarDecl *VD) {
9948 GVALinkage ASTContext::GetGVALinkageForVariable(const VarDecl *VD) {
9955 if (const auto *VD = dyn_cast<VarDecl>(D)) {
9955 if (const auto *VD = dyn_cast<VarDecl>(D)) {
10056 const auto *VD = cast<VarDecl>(D);
10056 const auto *VD = cast<VarDecl>(D);
10065 if (VD->isThisDeclarationADefinition() == VarDecl::DeclarationOnly &&
10092 if (const auto *BindingVD = BD->getHoldingVar())
10250 void ASTContext::setStaticLocalNumber(const VarDecl *VD, unsigned Number) {
10255 unsigned ASTContext::getStaticLocalNumber(const VarDecl *VD) const {
tools/clang/lib/AST/ASTDumper.cpp 89 for (const auto *RedeclWithBadType : D->redecls()) {
tools/clang/lib/AST/ASTImporter.cpp 113 for (auto *R : D->getFirstDecl()->redecls()) {
125 if (auto *VD = dyn_cast<VarDecl>(D))
125 if (auto *VD = dyn_cast<VarDecl>(D))
126 return getCanonicalForwardRedeclChain<VarDecl>(VD);
152 LLVM_NODISCARD Error importInto(ImportT *&To, ImportT *From) {
152 LLVM_NODISCARD Error importInto(ImportT *&To, ImportT *From) {
155 To = cast_or_null<ImportT>(*ToOrErr);
162 Expected<T *> import(T *From) {
162 Expected<T *> import(T *From) {
166 return cast_or_null<T>(*ToOrErr);
170 Expected<T *> import(const T *From) {
170 Expected<T *> import(const T *From) {
217 -> decltype(ToDeclT::Create(std::forward<Args>(args)...)) {
218 return ToDeclT::Create(std::forward<Args>(args)...);
229 LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
229 LLVM_NODISCARD bool GetImportedOrCreateDecl(ToDeclT *&ToD, FromDeclT *FromD,
234 CallOverloadedCreateFun<ToDeclT> OC;
256 GetImportedOrCreateSpecialDecl(ToDeclT *&ToD, CreateFunT CreateFun,
257 FromDeclT *FromD, Args &&... args) {
262 ToD = cast_or_null<ToDeclT>(Importer.GetAlreadyImportedOrNull(FromD));
389 Error ImportInitializer(VarDecl *From, VarDecl *To);
389 Error ImportInitializer(VarDecl *From, VarDecl *To);
439 bool IsStructuralMatch(VarDecl *FromVar, VarDecl *ToVar,
439 bool IsStructuralMatch(VarDecl *FromVar, VarDecl *ToVar,
473 ExpectedDecl VisitVarDecl(VarDecl *D);
913 VarDecl *Var = nullptr;
936 bool ASTNodeImporter::hasSameVisibilityContext(T *Found, T *From) {
936 bool ASTNodeImporter::hasSameVisibilityContext(T *Found, T *From) {
1894 Error ASTNodeImporter::ImportInitializer(VarDecl *From, VarDecl *To) {
1894 Error ASTNodeImporter::ImportInitializer(VarDecl *From, VarDecl *To) {
2015 bool ASTNodeImporter::IsStructuralMatch(VarDecl *FromVar, VarDecl *ToVar,
2015 bool ASTNodeImporter::IsStructuralMatch(VarDecl *FromVar, VarDecl *ToVar,
3641 ExpectedDecl ASTNodeImporter::VisitVarDecl(VarDecl *D) {
3666 VarDecl *FoundByLookup = nullptr;
3675 if (auto *FoundVar = dyn_cast<VarDecl>(FoundDecl)) {
3675 if (auto *FoundVar = dyn_cast<VarDecl>(FoundDecl)) {
3683 VarDecl *FoundDef = FoundVar->getDefinition();
3691 const VarDecl *FoundDInit = nullptr;
3752 VarDecl *ToVar;
3765 auto *Recent = const_cast<VarDecl *>(FoundByLookup->getMostRecentDecl());
5322 auto *Definition =
5323 cast_or_null<VarDecl>(D->getTemplatedDecl()->getDefinition());
5373 VarDecl *DTemplated = D->getTemplatedDecl();
5382 VarDecl *ToTemplated;
5415 VarDecl *Definition = D->getDefinition();
5457 if (VarDecl *FoundDef = D2->getDefinition()) {
5839 VarDecl *ToConditionVariable;
5858 VarDecl *ToConditionVariable;
5891 VarDecl *ToConditionVariable;
5926 VarDecl *ToConditionVariable;
5987 const VarDecl *ToNRVOCandidate;
6001 VarDecl *ToExceptionDecl;
6084 VarDecl *ToCatchParamDecl;
tools/clang/lib/AST/CommentSema.cpp 849 if (const VarDecl *VD = dyn_cast_or_null<VarDecl>(ThisDeclInfo->CurrentDecl)) {
849 if (const VarDecl *VD = dyn_cast_or_null<VarDecl>(ThisDeclInfo->CurrentDecl)) {
tools/clang/lib/AST/ComparisonCategories.cpp 62 if (Lookup.size() != 1 || !isa<VarDecl>(Lookup.front()))
64 Objects.emplace_back(ValueKind, cast<VarDecl>(Lookup.front()));
tools/clang/lib/AST/Decl.cpp 188 std::enable_if<!std::is_base_of<RedeclarableTemplateDecl, T>::value, bool>::type
189 isExplicitMemberSpecialization(const T *D) {
617 if (auto *VD = dyn_cast<VarDecl>(D))
644 if (const auto *Var = dyn_cast<VarDecl>(D)) {
644 if (const auto *Var = dyn_cast<VarDecl>(D)) {
658 const VarDecl *PrevVar = Var->getPreviousDecl();
668 for (const VarDecl *PrevVar = Var->getPreviousDecl(); PrevVar;
679 const VarDecl *VD = IFD->getVarDecl();
688 const auto *Var = dyn_cast<VarDecl>(D);
688 const auto *Var = dyn_cast<VarDecl>(D);
760 if (const auto *Var = dyn_cast<VarDecl>(D)) {
760 if (const auto *Var = dyn_cast<VarDecl>(D)) {
922 isa<VarDecl>(D) ||
1005 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
1005 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
1138 if (const auto *Var = dyn_cast<VarDecl>(ND)) {
1138 if (const auto *Var = dyn_cast<VarDecl>(ND)) {
1140 VarDecl *InstantiatedFrom = Var->getInstantiatedFromStaticDataMember();
1201 auto *VD = dyn_cast<VarDecl>(Owner);
1240 if (const auto *Var = dyn_cast<VarDecl>(D)) {
1240 if (const auto *Var = dyn_cast<VarDecl>(D)) {
1253 if (const VarDecl *Prev = Var->getPreviousDecl()) {
1292 if (isa<VarDecl>(D) && useInlineVisibilityHidden(FD) &&
1676 template<typename T> static bool isRedeclarableImpl(Redeclarable<T> *) {
1965 VarDecl *VarDecl::Create(ASTContext &C, DeclContext *DC,
1969 return new (C, DC) VarDecl(Var, C, DC, StartL, IdL, Id, T, TInfo, S);
1972 VarDecl *VarDecl::CreateDeserialized(ASTContext &C, unsigned ID) {
1974 VarDecl(Var, C, nullptr, SourceLocation(), SourceLocation(), nullptr,
1983 VarDecl::TLSKind VarDecl::getTLSKind() const {
2017 static LanguageLinkage getDeclLanguageLinkage(const T &D) {
2045 static bool isDeclExternC(const T &D) {
2073 VarDecl *VarDecl::getCanonicalDecl() { return getFirstDecl(); }
2075 VarDecl::DefinitionKind
2162 VarDecl *VarDecl::getActingDefinition() {
2167 VarDecl *LastTentative = nullptr;
2168 VarDecl *First = getFirstDecl();
2179 VarDecl *VarDecl::getDefinition(ASTContext &C) {
2180 VarDecl *First = getFirstDecl();
2188 VarDecl::DefinitionKind VarDecl::hasDefinition(ASTContext &C) const {
2191 const VarDecl *First = getFirstDecl();
2201 const Expr *VarDecl::getAnyInitializer(const VarDecl *&D) const {
2236 VarDecl *VarDecl::getInitializingDeclaration() {
2237 VarDecl *Def = nullptr;
2262 if (VarDecl *VD = getInstantiatedFromStaticDataMember())
2312 const VarDecl *DefVD = nullptr;
2454 static DeclT *getDefinitionOrSelf(DeclT *D) {
2454 static DeclT *getDefinitionOrSelf(DeclT *D) {
2456 if (auto *Def = D->getDefinition())
2469 VarDecl *VarDecl::getTemplateInstantiationPattern() const {
2470 const VarDecl *VD = this;
2477 while (auto *NewVD = VD->getInstantiatedFromStaticDataMember())
2504 return getDefinitionOrSelf<VarDecl>(VTPSD);
2527 VarDecl *VarDecl::getInstantiatedFromStaticDataMember() const {
2529 return cast<VarDecl>(MSI->getInstantiatedFrom());
2646 VarDecl::setInstantiationOfStaticDataMember(VarDecl *VD,
4491 bool BlockDecl::capturesVariable(const VarDecl *variable) const {
tools/clang/lib/AST/DeclBase.cpp 212 if (const auto *Var = dyn_cast<VarDecl>(this))
212 if (const auto *Var = dyn_cast<VarDecl>(this))
235 else if (auto *VD = dyn_cast<VarDecl>(this))
644 if (const auto *Var = dyn_cast<VarDecl>(this)) {
644 if (const auto *Var = dyn_cast<VarDecl>(this)) {
tools/clang/lib/AST/DeclCXX.cpp 1448 llvm::DenseMap<const VarDecl *, FieldDecl *> &Captures,
2111 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
2111 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
3004 VarDecl *BindingDecl::getHoldingVar() const {
3012 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
3012 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
tools/clang/lib/AST/DeclPrinter.cpp 71 void VisitVarDecl(VarDecl *D);
831 void DeclPrinter::VisitVarDecl(VarDecl *D) {
841 Out << VarDecl::getStorageClassSpecifierString(SC) << " ";
872 if (D->getInitStyle() == VarDecl::CallInit &&
879 if ((D->getInitStyle() == VarDecl::CallInit) && !isa<ParenListExpr>(Init))
881 else if (D->getInitStyle() == VarDecl::CInit) {
888 if ((D->getInitStyle() == VarDecl::CallInit) && !isa<ParenListExpr>(Init))
tools/clang/lib/AST/DeclTemplate.cpp 1001 VarDecl *Decl) {
tools/clang/lib/AST/Expr.cpp 424 if (VarDecl *Var = dyn_cast<VarDecl>(D)) {
424 if (VarDecl *Var = dyn_cast<VarDecl>(D)) {
2674 if (!(DRE && isa<VarDecl>(DRE->getDecl()) &&
2675 cast<VarDecl>(DRE->getDecl())->hasLocalStorage()) &&
2756 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
2756 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
3918 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
3918 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
4005 if (const auto *D = dyn_cast<VarDecl>(ME1->getMemberDecl()))
4005 if (const auto *D = dyn_cast<VarDecl>(ME1->getMemberDecl()))
tools/clang/lib/AST/ExprCXX.cpp 1133 LambdaCaptureKind Kind, VarDecl *Var,
1629 FunctionParmPackExpr::FunctionParmPackExpr(QualType T, VarDecl *ParamPack,
1632 VarDecl *const *Params)
1638 getTrailingObjects<VarDecl *>());
1643 VarDecl *ParamPack, SourceLocation NameLoc,
1644 ArrayRef<VarDecl *> Params) {
1645 return new (Context.Allocate(totalSizeToAlloc<VarDecl *>(Params.size())))
1652 return new (Context.Allocate(totalSizeToAlloc<VarDecl *>(NumParams)))
tools/clang/lib/AST/ExprClassification.cpp 451 islvalue = isa<VarDecl>(D) || isa<FieldDecl>(D) ||
510 if (isa<VarDecl>(Member) && Member->getDeclContext()->isRecord())
tools/clang/lib/AST/ExprConstant.cpp 546 llvm::DenseMap<const VarDecl *, FieldDecl *> LambdaCaptureFields;
1766 APValue &CallStackFrame::createTemporary(const KeyT *Key, QualType T,
1866 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
1866 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
1934 if (Decl && isa<VarDecl>(Decl)) {
2037 if (const VarDecl *Var = dyn_cast<const VarDecl>(VD)) {
2037 if (const VarDecl *Var = dyn_cast<const VarDecl>(VD)) {
2823 const VarDecl *VD, CallStackFrame *Frame,
3560 const VarDecl *VD = dyn_cast<VarDecl>(D);
3560 const VarDecl *VD = dyn_cast<VarDecl>(D);
3562 if (const VarDecl *VDef = VD->getDefinition(Info.Ctx))
4284 static bool EvaluateVarDecl(EvalInfo &Info, const VarDecl *VD) {
4315 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
4315 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
4320 if (auto *VD = BD->getHoldingVar())
4328 static bool EvaluateCond(EvalInfo &Info, const VarDecl *CondDecl,
4567 if (const auto *VD = dyn_cast<VarDecl>(D)) {
4567 if (const auto *VD = dyn_cast<VarDecl>(D)) {
7320 bool VisitVarDecl(const Expr *E, const VarDecl *VD);
7386 if (const VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
7386 if (const VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
7394 bool LValueExprEvaluator::VisitVarDecl(const Expr *E, const VarDecl *VD) {
7573 if (const VarDecl *VD = dyn_cast<VarDecl>(E->getMemberDecl())) {
7573 if (const VarDecl *VD = dyn_cast<VarDecl>(E->getMemberDecl())) {
7771 const auto *VD =
7772 dyn_cast_or_null<VarDecl>(Base.dyn_cast<const ValueDecl *>());
10178 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
10178 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
11752 const VarDecl *VD =
13596 const VarDecl *VD,
13977 if (const VarDecl *Dcl = dyn_cast<VarDecl>(D)) {
13977 if (const VarDecl *Dcl = dyn_cast<VarDecl>(D)) {
13981 const VarDecl *VD;
tools/clang/lib/AST/Interp/ByteCodeEmitter.h 55 virtual bool visitDecl(const VarDecl *E) = 0;
tools/clang/lib/AST/Interp/ByteCodeExprGen.cpp 31 DeclScope(ByteCodeExprGen<Emitter> *Ctx, const VarDecl *VD)
267 if (auto *VD = dyn_cast<VarDecl>(DE->getDecl()))
325 const Expr *LV, PrimType T, const VarDecl *VD, DerefKind AK,
471 bool ByteCodeExprGen<Emitter>::getPtrVarDecl(const VarDecl *VD, const Expr *E) {
484 ByteCodeExprGen<Emitter>::getGlobalIdx(const VarDecl *VD) {
531 bool ByteCodeExprGen<Emitter>::visitDecl(const VarDecl *VD) {
tools/clang/lib/AST/Interp/ByteCodeExprGen.h 76 bool visitDecl(const VarDecl *VD) override;
188 bool dereferenceVar(const Expr *LV, PrimType T, const VarDecl *PD,
205 bool getPtrVarDecl(const VarDecl *VD, const Expr *E);
208 llvm::Optional<unsigned> getGlobalIdx(const VarDecl *VD);
tools/clang/lib/AST/Interp/ByteCodeStmtGen.cpp 149 if (auto *VD = dyn_cast<VarDecl>(D)) {
149 if (auto *VD = dyn_cast<VarDecl>(D)) {
230 bool ByteCodeStmtGen<Emitter>::visitVarDecl(const VarDecl *VD) {
tools/clang/lib/AST/Interp/ByteCodeStmtGen.h 67 bool visitVarDecl(const VarDecl *VD);
tools/clang/lib/AST/Interp/Context.cpp 60 InterpResult Context::evaluateAsInitializer(State &Parent, const VarDecl *VD,
tools/clang/lib/AST/Interp/Context.h 64 InterpResult evaluateAsInitializer(State &Parent, const VarDecl *VD,
tools/clang/lib/AST/Interp/EvalEmitter.cpp 37 llvm::Expected<bool> EvalEmitter::interpretDecl(const VarDecl *VD) {
tools/clang/lib/AST/Interp/EvalEmitter.h 43 llvm::Expected<bool> interpretDecl(const VarDecl *VD);
58 virtual bool visitDecl(const VarDecl *VD) = 0;
tools/clang/lib/AST/Interp/Program.cpp 143 if (auto *Var = dyn_cast<VarDecl>(VD)) {
tools/clang/lib/AST/Interp/Program.h 116 DeclScope(Program &P, const VarDecl *VD) : P(P) { P.startDeclaration(VD); }
201 void startDeclaration(const VarDecl *Decl) {
tools/clang/lib/AST/ItaniumCXXABI.cpp 44 static const IdentifierInfo *findAnonymousUnionVarDeclName(const VarDecl& VD) {
159 unsigned getStaticLocalNumber(const VarDecl *VD) override {
164 unsigned getManglingNumber(const VarDecl *VD, unsigned) override {
tools/clang/lib/AST/ItaniumMangle.cpp 68 if (const auto *VD = dyn_cast<VarDecl>(D))
68 if (const auto *VD = dyn_cast<VarDecl>(D))
143 void mangleReferenceTemporary(const VarDecl *D, unsigned ManglingNumber,
159 void mangleStaticGuardVariable(const VarDecl *D, raw_ostream &) override;
160 void mangleDynamicInitializer(const VarDecl *D, raw_ostream &Out) override;
161 void mangleDynamicAtExitDestructor(const VarDecl *D,
167 void mangleItaniumThreadLocalInit(const VarDecl *D, raw_ostream &) override;
168 void mangleItaniumThreadLocalWrapper(const VarDecl *D,
293 if (!isa<FunctionDecl>(ND) && !isa<VarDecl>(ND)) {
417 static bool shouldHaveAbiTags(ItaniumMangleContextImpl &C, const VarDecl *VD);
609 const VarDecl *VD = dyn_cast<VarDecl>(D);
609 const VarDecl *VD = dyn_cast<VarDecl>(D);
649 else if (const VarDecl *VD = dyn_cast<VarDecl>(D))
649 else if (const VarDecl *VD = dyn_cast<VarDecl>(D))
817 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
817 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
1325 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
1325 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
1661 if ((isa<VarDecl>(Context) || isa<FieldDecl>(Context)) &&
1744 if ((isa<VarDecl>(Context) || isa<FieldDecl>(Context)) &&
4565 if (isa<VarDecl>(D) || isa<FunctionDecl>(D)) {
4917 const VarDecl *VD) {
5020 void ItaniumMangleContextImpl::mangleStaticGuardVariable(const VarDecl *D,
5031 void ItaniumMangleContextImpl::mangleDynamicInitializer(const VarDecl *MD,
5039 void ItaniumMangleContextImpl::mangleDynamicAtExitDestructor(const VarDecl *D,
5070 void ItaniumMangleContextImpl::mangleItaniumThreadLocalInit(const VarDecl *D,
5079 ItaniumMangleContextImpl::mangleItaniumThreadLocalWrapper(const VarDecl *D,
5087 void ItaniumMangleContextImpl::mangleReferenceTemporary(const VarDecl *D,
tools/clang/lib/AST/JSONNodeDumper.cpp 738 void JSONNodeDumper::VisitVarDecl(const VarDecl *VD) {
744 JOS.attribute("storageClass", VarDecl::getStorageClassSpecifierString(SC));
746 case VarDecl::TLS_Dynamic: JOS.attribute("tls", "dynamic"); break;
747 case VarDecl::TLS_Static: JOS.attribute("tls", "static"); break;
748 case VarDecl::TLS_None: break;
756 case VarDecl::CInit: JOS.attribute("init", "c"); break;
757 case VarDecl::CallInit: JOS.attribute("init", "call"); break;
758 case VarDecl::ListInit: JOS.attribute("init", "list"); break;
778 JOS.attribute("storageClass", VarDecl::getStorageClassSpecifierString(SC));
tools/clang/lib/AST/Mangle.cpp 59 return cast<VarDecl>(ND)->isExternC();
311 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
tools/clang/lib/AST/MicrosoftCXXABI.cpp 49 unsigned getStaticLocalNumber(const VarDecl *VD) override {
55 unsigned getManglingNumber(const VarDecl *VD,
tools/clang/lib/AST/MicrosoftMangle.cpp 184 void mangleReferenceTemporary(const VarDecl *, unsigned ManglingNumber,
186 void mangleStaticGuardVariable(const VarDecl *D, raw_ostream &Out) override;
187 void mangleThreadSafeStaticGuardVariable(const VarDecl *D, unsigned GuardNum,
189 void mangleDynamicInitializer(const VarDecl *D, raw_ostream &Out) override;
190 void mangleDynamicAtExitDestructor(const VarDecl *D,
250 void mangleInitFiniStub(const VarDecl *D, char CharCode, raw_ostream &Out);
314 void mangleVariableEncoding(const VarDecl *VD);
456 const VarDecl *VD = dyn_cast<VarDecl>(D);
456 const VarDecl *VD = dyn_cast<VarDecl>(D);
495 else if (const VarDecl *VD = dyn_cast<VarDecl>(D))
495 else if (const VarDecl *VD = dyn_cast<VarDecl>(D))
533 void MicrosoftCXXNameMangler::mangleVariableEncoding(const VarDecl *VD) {
884 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
884 if (const VarDecl *VD = dyn_cast<VarDecl>(ND)) {
941 if ((isa<VarDecl>(LambdaContextDecl) ||
1047 if (isa<TagDecl>(ND) || isa<VarDecl>(ND)) {
3334 const VarDecl *VD, unsigned ManglingNumber, raw_ostream &Out) {
3343 const VarDecl *VD, unsigned GuardNum, raw_ostream &Out) {
3352 void MicrosoftMangleContextImpl::mangleStaticGuardVariable(const VarDecl *VD,
3386 void MicrosoftMangleContextImpl::mangleInitFiniStub(const VarDecl *D,
3405 void MicrosoftMangleContextImpl::mangleDynamicInitializer(const VarDecl *D,
3412 MicrosoftMangleContextImpl::mangleDynamicAtExitDestructor(const VarDecl *D,
tools/clang/lib/AST/ODRHash.cpp 294 void VisitVarDecl(const VarDecl *D) {
302 Inherited::VisitVarDecl(D);
tools/clang/lib/AST/Stmt.cpp 830 Stmt *Init, VarDecl *Var, Expr *Cond, Stmt *Then,
864 bool IsConstexpr, Stmt *Init, VarDecl *Var, Expr *Cond,
886 VarDecl *IfStmt::getConditionVariable() {
890 return cast<VarDecl>(DS->getSingleDecl());
893 void IfStmt::setConditionVariable(const ASTContext &Ctx, VarDecl *V) {
911 ForStmt::ForStmt(const ASTContext &C, Stmt *Init, Expr *Cond, VarDecl *condVar,
924 VarDecl *ForStmt::getConditionVariable() const {
929 return cast<VarDecl>(DS->getSingleDecl());
932 void ForStmt::setConditionVariable(const ASTContext &C, VarDecl *V) {
943 SwitchStmt::SwitchStmt(const ASTContext &Ctx, Stmt *Init, VarDecl *Var,
969 SwitchStmt *SwitchStmt::Create(const ASTContext &Ctx, Stmt *Init, VarDecl *Var,
987 VarDecl *SwitchStmt::getConditionVariable() {
991 return cast<VarDecl>(DS->getSingleDecl());
994 void SwitchStmt::setConditionVariable(const ASTContext &Ctx, VarDecl *V) {
1008 WhileStmt::WhileStmt(const ASTContext &Ctx, VarDecl *Var, Expr *Cond,
1027 WhileStmt *WhileStmt::Create(const ASTContext &Ctx, VarDecl *Var, Expr *Cond,
1043 VarDecl *WhileStmt::getConditionVariable() {
1047 return cast<VarDecl>(DS->getSingleDecl());
1050 void WhileStmt::setConditionVariable(const ASTContext &Ctx, VarDecl *V) {
1072 ReturnStmt::ReturnStmt(SourceLocation RL, Expr *E, const VarDecl *NRVOCandidate)
1087 Expr *E, const VarDecl *NRVOCandidate) {
1089 void *Mem = Ctx.Allocate(totalSizeToAlloc<const VarDecl *>(HasNRVOCandidate),
1096 void *Mem = Ctx.Allocate(totalSizeToAlloc<const VarDecl *>(HasNRVOCandidate),
1163 VarDecl *Var)
1194 VarDecl *CapturedStmt::Capture::getCapturedVar() const {
1315 bool CapturedStmt::capturesVariable(const VarDecl *Var) const {
tools/clang/lib/AST/StmtCXX.cpp 67 VarDecl *RangeDecl = dyn_cast_or_null<VarDecl>(RangeStmt->getSingleDecl());
67 VarDecl *RangeDecl = dyn_cast_or_null<VarDecl>(RangeStmt->getSingleDecl());
76 VarDecl *CXXForRangeStmt::getLoopVariable() {
79 return cast<VarDecl>(LV);
82 const VarDecl *CXXForRangeStmt::getLoopVariable() const {
tools/clang/lib/AST/StmtIterator.cpp 48 if (VarDecl* VD = dyn_cast<VarDecl>(*DGI))
48 if (VarDecl* VD = dyn_cast<VarDecl>(*DGI))
75 if (VarDecl* VD = dyn_cast<VarDecl>(D)) {
75 if (VarDecl* VD = dyn_cast<VarDecl>(D)) {
116 VarDecl* VD = cast<VarDecl>(*DGI);
116 VarDecl* VD = cast<VarDecl>(*DGI);
tools/clang/lib/AST/TextNodeDumper.cpp 31 static void dumpPreviousDeclImpl(raw_ostream &OS, const Redeclarable<T> *D) {
32 const T *Prev = D->getPreviousDecl();
1276 OS << ' ' << VarDecl::getStorageClassSpecifierString(SC);
1350 void TextNodeDumper::VisitVarDecl(const VarDecl *D) {
1355 OS << ' ' << VarDecl::getStorageClassSpecifierString(SC);
1357 case VarDecl::TLS_None:
1359 case VarDecl::TLS_Static:
1362 case VarDecl::TLS_Dynamic:
1376 case VarDecl::CInit:
1379 case VarDecl::CallInit:
1382 case VarDecl::ListInit:
tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp 606 const internal::VariadicDynCastAllOfMatcher<Decl, VarDecl> varDecl;
tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h 75 return Value.isMatcher() && Value.getMatcher().hasTypedMatcher<T>();
78 static ast_matchers::internal::Matcher<T> get(const VariantValue &Value) {
79 return Value.getMatcher().getTypedMatcher<T>();
83 return ArgKind(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
361 RetTypes.push_back(ast_type_traits::ASTNodeKind::getFromNodeKind<T>());
466 ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT> Func,
469 DerivedKind(ast_type_traits::ASTNodeKind::getFromNodeKind<DerivedT>()) {
778 ast_matchers::internal::VariadicDynCastAllOfMatcher<BaseT, DerivedT>
tools/clang/lib/Analysis/AnalysisDeclContext.cpp 144 static bool isSelfDecl(const VarDecl *VD) {
154 const VarDecl *VD = I.getVariable();
172 VarDecl *VD = LC.getCapturedVar();
582 BumpVector<const VarDecl *> &BEVals;
584 llvm::SmallPtrSet<const VarDecl *, 4> Visited;
588 FindBlockDeclRefExprsVals(BumpVector<const VarDecl*> &bevals,
600 if (const auto *VD = dyn_cast<VarDecl>(DR->getDecl())) {
600 if (const auto *VD = dyn_cast<VarDecl>(DR->getDecl())) {
627 using DeclVec = BumpVector<const VarDecl *>;
tools/clang/lib/Analysis/BodyFarm.cpp 64 DeclRefExpr *makeDeclRefExpr(const VarDecl *D,
82 makeLvalueToRvalue(const VarDecl *Decl,
139 const VarDecl *D,
160 ASTMaker::makeLvalueToRvalue(const VarDecl *Arg,
783 const VarDecl *selfVar = Prop->getGetterMethodDecl()->getSelfDecl();
tools/clang/lib/Analysis/CFG.cpp 67 if (VarDecl *VD = dyn_cast<VarDecl>(D))
67 if (VarDecl *VD = dyn_cast<VarDecl>(D))
228 using AutomaticVarsTy = BumpVector<VarDecl *>;
255 VarDecl *const* operator->() const {
261 const VarDecl *getFirstVarInScope() const {
267 VarDecl *operator*() const {
321 void addVar(VarDecl *VD) {
513 using DeclsWithEndedScopeSetTy = llvm::SmallSetVector<VarDecl *, 16>;
620 void maybeAddScopeBeginForVarDecl(CFGBlock *B, const VarDecl *VD,
771 LocalScope* addLocalScopeForVarDecl(VarDecl *VD, LocalScope* Scope = nullptr);
858 void appendAutomaticObjDtor(CFGBlock *B, VarDecl *VD, Stmt *S) {
862 void appendLifetimeEnds(CFGBlock *B, VarDecl *VD, Stmt *S) {
881 const VarDecl *
898 void appendScopeBegin(CFGBlock *B, const VarDecl *VD, const Stmt *S) {
903 void prependScopeBegin(CFGBlock *B, const VarDecl *VD, const Stmt *S) {
908 void appendScopeEnd(CFGBlock *B, const VarDecl *VD, const Stmt *S) {
913 void prependScopeEnd(CFGBlock *B, const VarDecl *VD, const Stmt *S) {
1282 bool hasTrivialDestructor(VarDecl *VD);
1561 const VarDecl *VD = prependAutomaticObjScopeEndWithTerminator(
1781 SmallVector<VarDecl *, 10> DeclsTrivial;
1782 SmallVector<VarDecl *, 10> DeclsNonTrivial;
1795 for (SmallVectorImpl<VarDecl *>::reverse_iterator I = DeclsTrivial.rbegin(),
1800 for (SmallVectorImpl<VarDecl *>::reverse_iterator
1839 SmallVector<VarDecl*, 10> Decls;
1844 for (SmallVectorImpl<VarDecl*>::reverse_iterator I = Decls.rbegin(),
1969 if (VarDecl *VD = dyn_cast<VarDecl>(DI))
1969 if (VarDecl *VD = dyn_cast<VarDecl>(DI))
1974 bool CFGBuilder::hasTrivialDestructor(VarDecl *VD) {
2017 LocalScope* CFGBuilder::addLocalScopeForVarDecl(VarDecl *VD,
2102 const VarDecl *
2811 VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
2811 VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
2920 if (VarDecl *VD = I->getConditionVariable())
3296 if (VarDecl *VD = F->getConditionVariable())
3409 if (VarDecl *VD = F->getConditionVariable()) {
3656 if (VarDecl *VD = W->getConditionVariable()) {
3739 if (VarDecl *VD = W->getConditionVariable()) {
4004 if (VarDecl *VD = Terminator->getConditionVariable())
4082 if (VarDecl *VD = Terminator->getConditionVariable()) {
4293 if (VarDecl *VD = CS->getExceptionDecl()) {
4963 const VarDecl *var = castAs<CFGAutomaticObjDtor>().getVarDecl();
5091 const VarDecl *var = cast<IfStmt>(stmt)->getConditionVariable();
5097 const VarDecl *var = cast<ForStmt>(stmt)->getConditionVariable();
5103 const VarDecl *var =
5110 const VarDecl *var =
5117 const VarDecl *var =
5193 VarDecl *VD = cast<VarDecl>(DS->getSingleDecl());
5193 VarDecl *VD = cast<VarDecl>(DS->getSingleDecl());
5476 const VarDecl *VD = DE.getVarDecl();
5500 if (const VarDecl *VD = E.castAs<CFGScopeBegin>().getVarDecl())
5507 if (const VarDecl *VD = E.castAs<CFGScopeEnd>().getVarDecl())
tools/clang/lib/Analysis/CloneDetection.cpp 525 void VariablePattern::addVariableOccurence(const VarDecl *VarDecl,
551 if (auto VD = dyn_cast<VarDecl>(D->getDecl()->getCanonicalDecl()))
585 const VarDecl *FirstSuggestion = nullptr;
601 const VarDecl *SecondSuggestion = nullptr;
tools/clang/lib/Analysis/Consumed.cpp 279 const VarDecl *Var;
313 const VarDecl *Var;
323 PropagationInfo(const VarDecl *Var, ConsumedState TestsFor)
339 const VarDecl *LVar, ConsumedState LTestsFor,
340 const VarDecl *RVar, ConsumedState RTestsFor)
352 PropagationInfo(const VarDecl *Var) : InfoType(IT_Var), Var(Var) {}
376 const VarDecl *getVar() const {
514 void VisitVarDecl(const VarDecl *Var);
833 if (const auto *Var = dyn_cast_or_null<VarDecl>(DeclRef->getDecl()))
833 if (const auto *Var = dyn_cast_or_null<VarDecl>(DeclRef->getDecl()))
840 if (isa<VarDecl>(DI))
841 VisitVarDecl(cast<VarDecl>(DI));
844 if (const auto *Var = dyn_cast_or_null<VarDecl>(DeclS->getSingleDecl()))
844 if (const auto *Var = dyn_cast_or_null<VarDecl>(DeclS->getSingleDecl()))
916 void ConsumedStmtVisitor::VisitVarDecl(const VarDecl *Var) {
1113 ConsumedState ConsumedStateMap::getState(const VarDecl *Var) const {
1178 void ConsumedStateMap::setState(const VarDecl *Var, ConsumedState State) {
1362 const VarDecl *Var = DTor.getVarDecl();
tools/clang/lib/Analysis/LiveVariables.cpp 78 llvm::ImmutableSet<const VarDecl *>::Factory DSetFact;
118 bool LiveVariables::LivenessValues::isLive(const VarDecl *D) const {
152 llvm::ImmutableSetRef<const VarDecl *>
179 static bool isAlwaysAlive(const VarDecl *D) {
183 bool LiveVariables::isLive(const CFGBlock *B, const VarDecl *D) {
187 bool LiveVariables::isLive(const Stmt *S, const VarDecl *D) {
297 if (const VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl())) {
297 if (const VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl())) {
367 static bool writeShouldKill(const VarDecl *VD) {
388 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
388 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
402 for (const VarDecl *VD :
416 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
416 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
427 } else if (const auto *VD = dyn_cast<VarDecl>(DI)) {
427 } else if (const auto *VD = dyn_cast<VarDecl>(DI)) {
437 const VarDecl *VD = nullptr;
441 VD = cast<VarDecl>(DS->getSingleDecl());
444 VD = cast<VarDecl>(DR->getDecl());
489 if (isa<VarDecl>(D) || isa<BindingDecl>(D)) {
633 std::vector<const VarDecl*> declVec;
643 for (llvm::ImmutableSet<const VarDecl *>::iterator si =
653 for (std::vector<const VarDecl*>::iterator di = declVec.begin(),
tools/clang/lib/Analysis/ReachableCode.cpp 274 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
274 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
tools/clang/lib/Analysis/ThreadSafety.cpp 611 if (const auto *VD = dyn_cast_or_null<VarDecl>(D)) {
611 if (const auto *VD = dyn_cast_or_null<VarDecl>(D)) {
1038 const NamedDecl *D, VarDecl *SelfDecl = nullptr);
1351 VarDecl *SelfDecl) {
1590 void handleCall(const Expr *Exp, const NamedDecl *D, VarDecl *VD = nullptr);
1707 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()->getCanonicalDecl());
1707 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()->getCanonicalDecl());
1802 VarDecl *VD) {
2136 if (auto *VD = dyn_cast_or_null<VarDecl>(D)) {
2136 if (auto *VD = dyn_cast_or_null<VarDecl>(D)) {
2478 auto *VD = const_cast<VarDecl *>(AD.getVarDecl());
tools/clang/lib/Analysis/ThreadSafetyCommon.cpp 98 VarDecl *SelfDecl) {
616 if (auto *VD = dyn_cast_or_null<VarDecl>(I)) {
616 if (auto *VD = dyn_cast_or_null<VarDecl>(I)) {
889 void SExprBuilder::handleDestructorCall(const VarDecl *VD,
tools/clang/lib/Analysis/UninitializedValues.cpp 43 static bool isTrackedVar(const VarDecl *vd, const DeclContext *dc) {
60 llvm::DenseMap<const VarDecl *, unsigned> map;
72 Optional<unsigned> getValueIndex(const VarDecl *d) const;
79 DeclContext::specific_decl_iterator<VarDecl> I(dc.decls_begin()),
82 const VarDecl *vd = *I;
88 Optional<unsigned> DeclToIndex::getValueIndex(const VarDecl *d) const {
89 llvm::DenseMap<const VarDecl *, unsigned>::const_iterator I = map.find(d);
145 ValueVector::reference operator[](const VarDecl *vd);
148 const VarDecl *vd) {
209 ValueVector::reference CFGBlockValues::operator[](const VarDecl *vd) {
284 const VarDecl *vd;
288 FindVarResult(const VarDecl *vd, const DeclRefExpr *dr) : vd(vd), dr(dr) {}
291 const VarDecl *getDecl() const { return vd; }
315 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
315 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
339 bool isTrackedVar(const VarDecl *VD) const {
363 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
363 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
373 static const DeclRefExpr *getSelfInitExpr(VarDecl *VD) {
405 if (const auto *VD = dyn_cast<VarDecl>(ME->getMemberDecl())) {
405 if (const auto *VD = dyn_cast<VarDecl>(ME->getMemberDecl())) {
433 auto *VD = dyn_cast<VarDecl>(DI);
433 auto *VD = dyn_cast<VarDecl>(DI);
532 void reportUse(const Expr *ex, const VarDecl *vd);
543 bool isTrackedVar(const VarDecl *vd) {
551 UninitUse getUninitUse(const Expr *ex, const VarDecl *vd, Value v) {
702 void TransferFunctions::reportUse(const Expr *ex, const VarDecl *vd) {
711 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
711 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
730 const VarDecl *vd = I.getVariable();
769 reportUse(dr, cast<VarDecl>(dr->getDecl()));
772 vals[cast<VarDecl>(dr->getDecl())] = Initialized;
775 handler.handleSelfInit(cast<VarDecl>(dr->getDecl()));
783 if (const VarDecl *VD = Var.getDecl())
790 auto *VD = dyn_cast<VarDecl>(DI);
790 auto *VD = dyn_cast<VarDecl>(DI);
884 void handleUseOfUninitVariable(const VarDecl *vd,
893 void handleSelfInit(const VarDecl *vd) override {
tools/clang/lib/CodeGen/Address.h 108 template <class U> inline U cast(CodeGen::Address addr) {
tools/clang/lib/CodeGen/CGBlocks.cpp 413 const VarDecl *var) {
504 const VarDecl *VD = CI.getVariable();
570 const VarDecl *variable = CI.getVariable();
811 const VarDecl *variable = CI.getVariable();
1039 const VarDecl *variable = CI.getVariable();
1318 Address CodeGenFunction::GetAddrOfBlockDecl(const VarDecl *variable) {
1532 const auto *var = dyn_cast<VarDecl>(i->first);
1532 const auto *var = dyn_cast<VarDecl>(i->first);
1618 const VarDecl *variable = CI.getVariable();
1655 const VarDecl *variable = CI.getVariable();
1755 const VarDecl *Variable = CI.getVariable();
1851 const VarDecl *Var = CI.getVariable();
1931 VarDecl *Var, CodeGenFunction &CGF) {
2609 const VarDecl &var = *emission.Variable;
2696 const VarDecl *var,
2730 const BlockByrefInfo &CodeGenFunction::getBlockByrefInfo(const VarDecl *D) {
2840 const VarDecl &D = *emission.Variable;
2962 (ND = dyn_cast<VarDecl>(Result)))
tools/clang/lib/CodeGen/CGBlocks.h 242 llvm::DenseMap<const VarDecl*, Capture> Captures;
270 const Capture &getCapture(const VarDecl *var) const {
273 Capture &getCapture(const VarDecl *var) {
274 llvm::DenseMap<const VarDecl*, Capture>::iterator
tools/clang/lib/CodeGen/CGCUDANV.cpp 52 const VarDecl *D;
126 void registerDeviceVar(const VarDecl *VD, llvm::GlobalVariable &Var,
351 for (const VarDecl *A : Args) {
tools/clang/lib/CodeGen/CGCUDARuntime.h 58 virtual void registerDeviceVar(const VarDecl *VD, llvm::GlobalVariable &Var,
tools/clang/lib/CodeGen/CGCXXABI.h 549 virtual void EmitGuardedInit(CodeGenFunction &CGF, const VarDecl &D,
558 virtual void registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
574 CodeGenModule &CGM, ArrayRef<const VarDecl *> CXXThreadLocals,
576 ArrayRef<const VarDecl *> CXXThreadLocalInitVars) = 0;
580 virtual bool usesThreadWrapperFunction(const VarDecl *VD) const = 0;
586 const VarDecl *VD,
tools/clang/lib/CodeGen/CGCall.cpp 2165 const VarDecl *var,
2287 const VarDecl *Arg = *i;
2680 const VarDecl *self = method->getSelfDecl();
3055 const VarDecl *param,
tools/clang/lib/CodeGen/CGCall.h 358 class FunctionArgList : public SmallVector<const VarDecl*, 16> {
tools/clang/lib/CodeGen/CGClass.cpp 900 const VarDecl *SrcRec)
1023 const VarDecl *SrcRec;
1035 static const VarDecl *getTrivialCopySource(CodeGenFunction &CGF,
2353 const VarDecl *param = *I;
2875 const VarDecl *variable = BD->capture_begin()->getVariable();
tools/clang/lib/CodeGen/CGCoroutine.cpp 355 VarDecl const*VD = static_cast<VarDecl const*>(PM->getSingleDecl());
494 auto *GroVarDecl = cast<VarDecl>(GroDeclStmt->getSingleDecl());
494 auto *GroVarDecl = cast<VarDecl>(GroDeclStmt->getSingleDecl());
tools/clang/lib/CodeGen/CGDebugInfo.cpp 1317 VarDecl *V = C.getCapturedVar();
1343 CGDebugInfo::CreateRecordStaticField(const VarDecl *Var, llvm::DIType *RecordTy,
1424 if (const auto *V = dyn_cast<VarDecl>(I)) {
1424 if (const auto *V = dyn_cast<VarDecl>(I)) {
1778 if (const auto *VD = dyn_cast<VarDecl>(D))
1778 if (const auto *VD = dyn_cast<VarDecl>(D))
1868 llvm::DINodeArray CGDebugInfo::CollectVarTemplateParams(const VarDecl *VL,
1919 StringRef CGDebugInfo::getDynamicInitializerName(const VarDecl *VD,
3268 void CGDebugInfo::collectVarDeclProps(const VarDecl *VD, llvm::DIFile *&Unit,
3379 CGDebugInfo::getGlobalVariableForwardDeclaration(const VarDecl *VD) {
3396 std::make_tuple(cast<VarDecl>(VD->getCanonicalDecl())),
3422 else if (const auto *VD = dyn_cast<VarDecl>(D))
3422 else if (const auto *VD = dyn_cast<VarDecl>(D))
3572 } else if (isa<VarDecl>(D) &&
3575 Name = getDynamicInitializerName(cast<VarDecl>(D), GD.getDynamicInitKind(),
3834 CGDebugInfo::EmitTypeForVarWithBlocksAttr(const VarDecl *VD,
3904 llvm::DILocalVariable *CGDebugInfo::EmitDeclare(const VarDecl *VD,
4045 CGDebugInfo::EmitDeclareOfAutoVariable(const VarDecl *VD, llvm::Value *Storage,
4087 const VarDecl *VD, llvm::Value *Storage, CGBuilderTy &Builder,
4157 void CGDebugInfo::EmitDeclareOfArgVariable(const VarDecl *VD, llvm::Value *AI,
4252 const VarDecl *variable = capture.getVariable();
4289 const VarDecl *variable = capture->getVariable();
4339 CGDebugInfo::getOrCreateStaticDataMemberDeclarationOrNull(const VarDecl *D) {
4382 const VarDecl *D) {
4484 auto *VarD = dyn_cast<VarDecl>(VD);
tools/clang/lib/CodeGen/CGDebugInfo.h 260 llvm::DINodeArray CollectVarTemplateParams(const VarDecl *VD,
294 llvm::DIDerivedType *CreateRecordStaticField(const VarDecl *Var,
438 EmitDeclareOfAutoVariable(const VarDecl *Decl, llvm::Value *AI,
448 const VarDecl *variable, llvm::Value *storage, CGBuilderTy &Builder,
453 void EmitDeclareOfArgVariable(const VarDecl *Decl, llvm::Value *AI,
464 void EmitGlobalVariable(llvm::GlobalVariable *GV, const VarDecl *Decl);
521 llvm::DILocalVariable *EmitDeclare(const VarDecl *decl, llvm::Value *AI,
534 BlockByRefType EmitTypeForVarWithBlocksAttr(const VarDecl *VD,
609 getOrCreateStaticDataMemberDeclarationOrNull(const VarDecl *D);
625 getGlobalVariableForwardDeclaration(const VarDecl *VD);
668 StringRef getDynamicInitializerName(const VarDecl *VD,
690 void collectVarDeclProps(const VarDecl *VD, llvm::DIFile *&Unit,
tools/clang/lib/CodeGen/CGDecl.cpp 133 const VarDecl &VD = cast<VarDecl>(D);
133 const VarDecl &VD = cast<VarDecl>(D);
139 if (auto *HD = B->getHoldingVar())
165 void CodeGenFunction::EmitVarDecl(const VarDecl &D) {
195 static std::string getStaticDeclName(CodeGenModule &CGM, const VarDecl &D) {
219 const VarDecl &D, llvm::GlobalValue::LinkageTypes Linkage) {
313 CodeGenFunction::AddInitializerToStaticVarDecl(const VarDecl &D,
377 void CodeGenFunction::EmitStaticVarDecl(const VarDecl &D,
544 const VarDecl &Var;
545 ExtendGCLifetime(const VarDecl *var) : Var(*var) {}
561 const VarDecl &Var;
564 const VarDecl *Var)
595 static void EmitAutoVarWithLifetime(CodeGenFunction &CGF, const VarDecl &var,
631 static bool isAccessedBy(const VarDecl &var, const Stmt *s) {
658 if (!isa<VarDecl>(decl)) return false;
659 const VarDecl *var = cast<VarDecl>(decl);
659 const VarDecl *var = cast<VarDecl>(decl);
715 const VarDecl *var) {
746 drillIntoBlockVariable(*this, lvalue, cast<VarDecl>(D));
777 cast<VarDecl>(D),
801 if (!D || !isa<VarDecl>(D) || !cast<VarDecl>(D)->isARCPseudoStrong()) {
801 if (!D || !isa<VarDecl>(D) || !cast<VarDecl>(D)->isARCPseudoStrong()) {
827 if (capturedByInit) drillIntoBlockVariable(*this, lvalue, cast<VarDecl>(D));
840 if (capturedByInit) drillIntoBlockVariable(*this, lvalue, cast<VarDecl>(D));
1077 Address CodeGenModule::createUnnamedGlobalFrom(const VarDecl &D,
1128 const VarDecl &D,
1140 static void emitStoresForConstant(CodeGenModule &CGM, const VarDecl &D,
1222 static void emitStoresForZeroInit(CodeGenModule &CGM, const VarDecl &D,
1231 static void emitStoresForPatternInit(CodeGenModule &CGM, const VarDecl &D,
1277 void CodeGenFunction::EmitAutoVarDecl(const VarDecl &D) {
1313 CGDebugInfo *DI, const VarDecl &D, bool EmitDebugInfo) {
1358 auto *ArtificialDecl = VarDecl::Create(
1358 auto *ArtificialDecl = VarDecl::Create(
1375 CodeGenFunction::EmitAutoVarAlloca(const VarDecl &D) {
1583 static bool isCapturedBy(const VarDecl &, const Expr *);
1587 static bool isCapturedBy(const VarDecl &Var, const Stmt *S) {
1598 static bool isCapturedBy(const VarDecl &Var, const Expr *E) {
1624 if (const auto *VD = dyn_cast<VarDecl>((I))) {
1624 if (const auto *VD = dyn_cast<VarDecl>((I))) {
1662 const VarDecl &D,
1748 const VarDecl &D = *emission.Variable;
1874 drillIntoBlockVariable(*this, lvalue, cast<VarDecl>(D));
1885 drillIntoBlockVariable(*this, lvalue, cast<VarDecl>(D));
1894 if (isa<VarDecl>(D))
1920 const VarDecl *var = emission.Variable;
1988 const VarDecl &D = *emission.Variable;
2345 void CodeGenFunction::EmitParmDecl(const VarDecl &D, ParamValue Arg,
tools/clang/lib/CodeGen/CGDeclCXX.cpp 27 static void EmitDeclInit(CodeGenFunction &CGF, const VarDecl &D,
68 static void EmitDeclDestroy(CodeGenFunction &CGF, const VarDecl &D,
148 static void EmitDeclInvariant(CodeGenFunction &CGF, const VarDecl &D,
172 void CodeGenFunction::EmitCXXGlobalVarDeclInit(const VarDecl &D,
228 llvm::Function *CodeGenFunction::createAtExitStub(const VarDecl &VD,
261 void CodeGenFunction::registerGlobalDtorWithAtExit(const VarDecl &VD,
283 void CodeGenFunction::EmitCXXGuardedInit(const VarDecl &D,
301 const VarDecl *D) {
415 void CodeGenModule::EmitPointerToInitFunc(const VarDecl *D,
431 CodeGenModule::EmitCXXGlobalVarDeclInitFunc(const VarDecl *D,
636 const VarDecl *D,
658 (D->getTLSKind() == VarDecl::TLS_Dynamic &&
759 bool useEHCleanupForArray, const VarDecl *VD) {
tools/clang/lib/CodeGen/CGException.cpp 1656 const VarDecl *ParentThis;
1657 llvm::SmallSetVector<const VarDecl *, 4> Captures;
1659 CaptureFinder(CodeGenFunction &ParentCGF, const VarDecl *ParentThis)
1682 const auto *D = dyn_cast<VarDecl>(E->getDecl());
1682 const auto *D = dyn_cast<VarDecl>(E->getDecl());
1797 for (const VarDecl *VD : Finder.Captures) {
tools/clang/lib/CodeGen/CGExpr.cpp 291 VD && isa<VarDecl>(VD) && VD->hasAttr<ObjCPreciseLifetimeAttr>();
340 dyn_cast_or_null<VarDecl>(M->getExtendingDecl()));
348 CGF, *cast<VarDecl>(M->getExtendingDecl()), CleanupFn, CleanupArg);
1440 } else if (auto *var = dyn_cast<VarDecl>(value)) {
1440 } else if (auto *var = dyn_cast<VarDecl>(value)) {
1480 if (isa<VarDecl>(value)) {
1481 if (!getContext().DeclMustBeEmitted(cast<VarDecl>(value)))
1497 if (auto *VD = dyn_cast<VarDecl>(ME->getMemberDecl())) {
1497 if (auto *VD = dyn_cast<VarDecl>(ME->getMemberDecl())) {
2213 if (const auto *VD = dyn_cast<VarDecl>(Exp->getDecl())) {
2213 if (const auto *VD = dyn_cast<VarDecl>(Exp->getDecl())) {
2216 LV.setThreadLocalRef(VD->getTLSKind() != VarDecl::TLS_None);
2293 CodeGenFunction &CGF, const VarDecl *VD, QualType T, Address Addr,
2301 const VarDecl *VD, QualType T) {
2361 const Expr *E, const VarDecl *VD) {
2365 if (VD->getTLSKind() == VarDecl::TLS_Dynamic &&
2441 static LValue EmitGlobalNamedRegister(const VarDecl *VD, CodeGenModule &CGM) {
2468 const VarDecl *VD,
2521 if (const auto *VD = dyn_cast<VarDecl>(ND)) {
2521 if (const auto *VD = dyn_cast<VarDecl>(ND)) {
2604 if (const auto *VD = dyn_cast<VarDecl>(ND)) {
2604 if (const auto *VD = dyn_cast<VarDecl>(ND)) {
4598 if (const auto *VD =
4599 dyn_cast_or_null<VarDecl>(E->getReferencedDeclOfCallee()))
tools/clang/lib/CodeGen/CGExprAgg.cpp 1080 const VarDecl *var = dyn_cast<VarDecl>(DRE->getDecl());
1080 const VarDecl *var = dyn_cast<VarDecl>(DRE->getDecl());
tools/clang/lib/CodeGen/CGExprConstant.cpp 1343 ConstantEmitter::tryEmitAbstractForInitializer(const VarDecl &D) {
1390 llvm::Constant *ConstantEmitter::tryEmitForInitializer(const VarDecl &D) {
1596 llvm::Constant *ConstantEmitter::tryEmitPrivateForVarInit(const VarDecl &D) {
1873 if (auto VD = dyn_cast<VarDecl>(D)) {
tools/clang/lib/CodeGen/CGObjC.cpp 319 const VarDecl *var = dyn_cast<VarDecl>(declRef->getDecl());
319 const VarDecl *var = dyn_cast<VarDecl>(declRef->getDecl());
1607 VarDecl *Self = cast<ObjCMethodDecl>(CurFuncDecl)->getSelfDecl();
1641 variable = EmitAutoVarAlloca(*cast<VarDecl>(SD->getSingleDecl()));
1795 const VarDecl *D = cast<VarDecl>(SD->getSingleDecl());
1795 const VarDecl *D = cast<VarDecl>(SD->getSingleDecl());
tools/clang/lib/CodeGen/CGObjCGNU.cpp 2305 const VarDecl *VD = nullptr;
2307 if ((VD = dyn_cast<VarDecl>(Result)))
tools/clang/lib/CodeGen/CGObjCMac.cpp 2396 const VarDecl *variable = CI.getVariable();
2926 const VarDecl *variable = CI.getVariable();
4607 const VarDecl *CatchParam = CatchStmt->getCatchParamDecl();
6358 const VarDecl *VD = nullptr;
6360 if ((VD = dyn_cast<VarDecl>(Result)))
tools/clang/lib/CodeGen/CGObjCRuntime.cpp 119 const VarDecl *Variable;
167 const VarDecl *CatchDecl = CatchStmt->getCatchParamDecl();
256 if (const VarDecl *CatchParam = Handler.Variable) {
289 const VarDecl *paramDecl) {
tools/clang/lib/CodeGen/CGObjCRuntime.h 104 const VarDecl *paramDecl);
tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp 29 const VarDecl &D) {
136 E = cast<VarDecl>(DR->getDecl())->getInit();
tools/clang/lib/CodeGen/CGOpenCLRuntime.h 63 const VarDecl &D);
tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp 67 virtual const VarDecl *getThreadIDVariable() const = 0;
100 CGOpenMPOutlinedRegionInfo(const CapturedStmt &CS, const VarDecl *ThreadIDVar,
112 const VarDecl *getThreadIDVariable() const override { return ThreadIDVar; }
126 const VarDecl *ThreadIDVar;
135 const VarDecl *PartIDVar;
140 UntiedTaskActionTy(bool Tied, const VarDecl *PartIDVar,
182 const VarDecl *ThreadIDVar,
193 const VarDecl *getThreadIDVariable() const override { return ThreadIDVar; }
214 const VarDecl *ThreadIDVar;
246 const FieldDecl *lookup(const VarDecl *VD) const override {
262 const VarDecl *getThreadIDVariable() const override {
317 const VarDecl *getThreadIDVariable() const override { return nullptr; }
350 const VarDecl *VD = C.getCapturedVar();
365 const FieldDecl *lookup(const VarDecl *VD) const override {
378 const VarDecl *getThreadIDVariable() const override {
397 llvm::DenseMap<const VarDecl *, FieldDecl *> LambdaCaptureFields;
819 PrivateScope.addPrivate(cast<VarDecl>(LHSDRE->getDecl()),
821 PrivateScope.addPrivate(cast<VarDecl>(RHSDRE->getDecl()),
960 const auto *PrivateVD =
961 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
996 const auto *PrivateVD =
997 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
1035 const auto *PrivateVD =
1036 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
1056 const auto *PrivateVD =
1057 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
1084 const auto *PrivateVD =
1085 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
1093 const auto *PrivateVD =
1094 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Private)->getDecl());
1152 static const VarDecl *getBaseDecl(const Expr *Ref, const DeclRefExpr *&DE) {
1153 const VarDecl *OrigVD = nullptr;
1161 OrigVD = cast<VarDecl>(DE->getDecl());
1167 OrigVD = cast<VarDecl>(DE->getDecl());
1175 if (const VarDecl *OrigVD = ::getBaseDecl(ClausesData[N].Ref, DE)) {
1194 cast<VarDecl>(cast<DeclRefExpr>(ClausesData[N].Ref)->getDecl()));
1349 const Expr *CombinerInitializer, const VarDecl *In,
1350 const VarDecl *Out, bool IsCombiner) {
1410 cast<VarDecl>(cast<DeclRefExpr>(D->getCombinerIn())->getDecl()),
1411 cast<VarDecl>(cast<DeclRefExpr>(D->getCombinerOut())->getDecl()),
1419 cast<VarDecl>(cast<DeclRefExpr>(D->getInitOrig())->getDecl()),
1420 cast<VarDecl>(cast<DeclRefExpr>(D->getInitPriv())->getDecl()),
1441 const VarDecl *ThreadIDVar, OpenMPDirectiveKind InnermostKind,
1470 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
1478 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
1486 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
1487 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
1487 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
2669 Address CGOpenMPRuntime::getAddrOfDeclareTargetVar(const VarDecl *VD) {
2709 CGOpenMPRuntime::getOrCreateThreadPrivateCache(const VarDecl *VD) {
2719 const VarDecl *VD,
2755 const VarDecl *VD, Address VDAddr, SourceLocation Loc,
2874 bool CGOpenMPRuntime::emitDeclareTargetVarDefinition(const VarDecl *VD,
3276 unsigned Index, const VarDecl *Var) {
3325 const auto *DestVar =
3326 cast<VarDecl>(cast<DeclRefExpr>(DestExprs[I])->getDecl());
3329 const auto *SrcVar =
3330 cast<VarDecl>(cast<DeclRefExpr>(SrcExprs[I])->getDecl());
4383 PrivateHelpersTy(const VarDecl *Original, const VarDecl *PrivateCopy,
4383 PrivateHelpersTy(const VarDecl *Original, const VarDecl *PrivateCopy,
4384 const VarDecl *PrivateElemInit)
4387 const VarDecl *Original;
4388 const VarDecl *PrivateCopy;
4389 const VarDecl *PrivateElemInit;
4404 const VarDecl *VD = Pair.second.Original;
4671 llvm::DenseMap<const VarDecl *, unsigned> PrivateVarsPos;
4680 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4680 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4691 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4691 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4702 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4702 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4734 const VarDecl *VD = Args[PrivateVarsPos[Privates[Counter].second.Original]];
4778 const VarDecl *VD = Pair.second.PrivateCopy;
4783 if (const VarDecl *Elem = Pair.second.PrivateElemInit) {
4784 const VarDecl *OriginalVD = Pair.second.Original;
4856 const VarDecl *VD = Pair.second.PrivateCopy;
4971 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4971 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4974 PrivateHelpersTy(VD, cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl()),
4981 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4981 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4985 VD, cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl()),
4986 cast<VarDecl>(cast<DeclRefExpr>(*IElemInitRef)->getDecl())));
4992 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4992 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
4995 PrivateHelpersTy(VD, cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl()),
5404 const auto *LBVar =
5405 cast<VarDecl>(cast<DeclRefExpr>(D.getLowerBoundVariable())->getDecl());
5411 const auto *UBVar =
5412 cast<VarDecl>(cast<DeclRefExpr>(D.getUpperBoundVariable())->getDecl());
5418 const auto *StVar =
5419 cast<VarDecl>(cast<DeclRefExpr>(D.getStrideVariable())->getDecl());
5467 CodeGenFunction &CGF, QualType Type, const VarDecl *LHSVar,
5468 const VarDecl *RHSVar,
5599 const auto *RHSVar =
5600 cast<VarDecl>(cast<DeclRefExpr>(RHSExprs[I])->getDecl());
5604 const auto *LHSVar =
5605 cast<VarDecl>(cast<DeclRefExpr>(LHSExprs[I])->getDecl());
5630 const auto *LHSVar = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
5630 const auto *LHSVar = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
5631 const auto *RHSVar = cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
5631 const auto *RHSVar = cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
5657 const auto *LHSVar = cast<VarDecl>(LHS->getDecl());
5657 const auto *LHSVar = cast<VarDecl>(LHS->getDecl());
5658 const auto *RHSVar = cast<VarDecl>(RHS->getDecl());
5658 const auto *RHSVar = cast<VarDecl>(RHS->getDecl());
5888 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
5888 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
5915 const auto *RHSVar =
5916 cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
5938 const auto *LHSVar =
5939 cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
5940 const auto *RHSVar =
5941 cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
5981 const VarDecl *D = ::getBaseDecl(Ref, DE);
5983 D = cast<VarDecl>(cast<DeclRefExpr>(Ref)->getDecl());
6076 const auto *LHSVD = cast<VarDecl>(cast<DeclRefExpr>(LHS)->getDecl());
6076 const auto *LHSVD = cast<VarDecl>(cast<DeclRefExpr>(LHS)->getDecl());
6077 const auto *RHSVD = cast<VarDecl>(cast<DeclRefExpr>(RHS)->getDecl());
6077 const auto *RHSVD = cast<VarDecl>(cast<DeclRefExpr>(RHS)->getDecl());
6572 const auto *VD = dyn_cast<VarDecl>(D);
6572 const auto *VD = dyn_cast<VarDecl>(D);
6751 CGF.EmitVarDecl(cast<VarDecl>(*I));
6754 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I));
6776 CGF.EmitVarDecl(cast<VarDecl>(*I));
6779 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I));
6849 CGF.EmitVarDecl(cast<VarDecl>(*I));
6852 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I));
7161 llvm::DenseMap<CanonicalDeclPtr<const VarDecl>, bool> FirstPrivateDecls;
7517 if (const auto *VD =
7518 dyn_cast_or_null<VarDecl>(I->getAssociatedDeclaration())) {
7865 cast<VarDecl>(cast<DeclRefExpr>(D)->getDecl()), C->isImplicit());
8177 llvm::DenseMap<const VarDecl *, FieldDecl *> Captures;
8196 const VarDecl *VD = LC.getCapturedVar();
8445 const auto *VD = dyn_cast<VarDecl>(L.first);
8445 const auto *VD = dyn_cast<VarDecl>(L.first);
8498 const VarDecl *VD = CI.getCapturedVar();
8512 const VarDecl *VD = CI.getCapturedVar();
8840 cast<VarDecl>(cast<DeclRefExpr>(D->getMapperVarRef())->getDecl());
9617 QualType RDTy = cast<VarDecl>(GD.getDecl())->getType();
9634 cast<VarDecl>(GD.getDecl()));
9638 DeferredGlobalVariables.insert(cast<VarDecl>(GD.getDecl()));
9646 const VarDecl *VD) {
9678 void CGOpenMPRuntime::registerTargetGlobalVariable(const VarDecl *VD,
9704 if (VD->hasDefinition(CGM.getContext()) != VarDecl::DeclarationOnly) {
9758 for (const VarDecl *VD : DeferredGlobalVariables) {
9792 bool CGOpenMPRuntime::hasAllocateAttributeForGlobalVar(const VarDecl *VD,
10692 const auto *PVD = cast<ParmVarDecl>(cast<DeclRefExpr>(E)->getDecl())
10708 const auto *PVD = cast<ParmVarDecl>(cast<DeclRefExpr>(E)->getDecl())
10730 const auto *PVD = cast<ParmVarDecl>(cast<DeclRefExpr>(E)->getDecl())
10936 const VarDecl *NativeParam,
10937 const VarDecl *TargetParam) const {
10968 const VarDecl *VD) {
10971 const VarDecl *CVD = VD->getCanonicalDecl();
11147 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
11153 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
11159 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
11160 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
11160 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
11274 const VarDecl *VD,
11281 const VarDecl *VD, Address VDAddr, SourceLocation Loc, bool PerformInit,
11426 const VarDecl *
11428 const VarDecl *NativeParam) const {
11434 const VarDecl *NativeParam,
11435 const VarDecl *TargetParam) const {
tools/clang/lib/CodeGen/CGOpenMPRuntime.h 134 SmallVector<const VarDecl *, 4> BaseDecls;
193 const VarDecl *getBaseDecl(unsigned N) const { return BaseDecls[N]; }
656 llvm::SmallDenseSet<const VarDecl *> DeferredGlobalVariables;
730 llvm::Constant *getOrCreateThreadPrivateCache(const VarDecl *VD);
850 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
862 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
881 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
882 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
882 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
1159 const VarDecl *VD,
1165 virtual Address getAddrOfDeclareTargetVar(const VarDecl *VD);
1176 emitThreadPrivateVarDefinition(const VarDecl *VD, Address VDAddr,
1184 virtual bool emitDeclareTargetVarDefinition(const VarDecl *VD,
1470 virtual void registerTargetGlobalVariable(const VarDecl *VD,
1476 const VarDecl *VD);
1599 virtual const VarDecl *translateParameter(const FieldDecl *FD,
1600 const VarDecl *NativeParam) const {
1609 const VarDecl *NativeParam,
1610 const VarDecl *TargetParam) const;
1637 const VarDecl *VD);
1659 virtual bool hasAllocateAttributeForGlobalVar(const VarDecl *VD, LangAS &AS);
1684 const VarDecl *ThreadIDVar,
1698 const VarDecl *ThreadIDVar,
1718 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
1719 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
1719 const VarDecl *PartIDVar, const VarDecl *TaskTVar,
1903 Address getAddrOfThreadPrivate(CodeGenFunction &CGF, const VarDecl *VD,
1915 emitThreadPrivateVarDefinition(const VarDecl *VD, Address VDAddr,
2220 const VarDecl *translateParameter(const FieldDecl *FD,
2221 const VarDecl *NativeParam) const override;
2227 Address getParameterAddress(CodeGenFunction &CGF, const VarDecl *NativeParam,
2228 const VarDecl *TargetParam) const override;
2232 const VarDecl *VD) override {
tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp 322 if (!isa<VarDecl>(VD) ||
331 if (const FieldDecl *FD = CSI->lookup(cast<VarDecl>(VD))) {
370 if (const auto *VarD = dyn_cast<VarDecl>(VD)) {
370 if (const auto *VarD = dyn_cast<VarDecl>(VD)) {
504 const VarDecl *VD = C.getVariable();
536 else if (const auto *VarD = dyn_cast<VarDecl>(VD))
536 else if (const auto *VarD = dyn_cast<VarDecl>(VD))
1952 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
2034 const OMPExecutableDirective &D, const VarDecl *ThreadIDVar,
2305 const auto *VD = cast<VarDecl>(Rec.first);
2305 const auto *VD = cast<VarDecl>(Rec.first);
2349 const auto *VD = cast<VarDecl>(Rec.first);
2349 const auto *VD = cast<VarDecl>(Rec.first);
2384 I->getSecond().MappedParams->setVarAddr(CGF, cast<VarDecl>(VD),
4441 const VarDecl *
4443 const VarDecl *NativeParam) const {
4479 const VarDecl *NativeParam,
4480 const VarDecl *TargetParam) const {
4735 const VarDecl *VD) {
4803 cast<VarDecl>(cast<DeclRefExpr>(IT->getRef())->getDecl())
4855 const VarDecl *VD = C.getCapturedVar();
4869 llvm::DenseMap<const VarDecl *, FieldDecl *> Captures;
4881 const VarDecl *VD = LC.getCapturedVar();
4901 bool CGOpenMPRuntimeNVPTX::hasAllocateAttributeForGlobalVar(const VarDecl *VD,
tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h 245 const VarDecl *ThreadIDVar,
260 const VarDecl *ThreadIDVar,
342 const VarDecl *translateParameter(const FieldDecl *FD,
343 const VarDecl *NativeParam) const override;
349 Address getParameterAddress(CodeGenFunction &CGF, const VarDecl *NativeParam,
350 const VarDecl *TargetParam) const override;
364 const VarDecl *VD) override;
407 bool hasAllocateAttributeForGlobalVar(const VarDecl *VD, LangAS &AS) override;
tools/clang/lib/CodeGen/CGStmt.cpp 1794 const VarDecl *Variable = dyn_cast<VarDecl>(&Value);
1794 const VarDecl *Variable = dyn_cast<VarDecl>(&Value);
tools/clang/lib/CodeGen/CGStmtOpenMP.cpp 35 CGF.EmitVarDecl(cast<VarDecl>(*I));
38 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I));
48 static bool isCapturedVar(CodeGenFunction &CGF, const VarDecl *VD) {
70 auto *VD = C.getCapturedVar();
123 llvm::DenseSet<const VarDecl *> EmittedAsPrivate;
125 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
125 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
133 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(IRef)->getDecl());
133 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(IRef)->getDecl());
165 CGF.EmitVarDecl(cast<VarDecl>(*I));
180 static bool isCapturedVar(CodeGenFunction &CGF, const VarDecl *VD) {
197 CGF.EmitVarDecl(cast<VarDecl>(*I));
200 CGF.EmitAutoVarAlloca(cast<VarDecl>(*I));
217 CGF.EmitVarDecl(*cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl()));
223 auto *VD = C.getCapturedVar();
251 if (const auto *OrigVD = dyn_cast<VarDecl>(OrigDRE->getDecl())) {
251 if (const auto *OrigVD = dyn_cast<VarDecl>(OrigDRE->getDecl())) {
385 llvm::MapVector<const Decl *, std::pair<const VarDecl *, Address>>
418 VarDecl *CapVar = nullptr;
441 VarDecl *Arg;
497 const VarDecl *CurVD = I->getCapturedVar();
518 const VarDecl *Var = I->getCapturedVar();
536 const VarDecl *Var = I->getCapturedVar();
567 llvm::MapVector<const Decl *, std::pair<const VarDecl *, Address>> LocalAddrs;
608 for (const auto *Arg : Args) {
701 Address SrcAddr, const VarDecl *DestVD,
702 const VarDecl *SrcVD, const Expr *Copy) {
745 llvm::DenseSet<const VarDecl *> Lastprivates;
749 cast<VarDecl>(cast<DeclRefExpr>(D)->getDecl())->getCanonicalDecl());
751 llvm::DenseSet<const VarDecl *> EmittedAsFirstprivate;
762 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
762 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
766 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
766 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
789 const auto *VDInit =
790 cast<VarDecl>(cast<DeclRefExpr>(*InitsRef)->getDecl());
879 llvm::DenseSet<const VarDecl *> EmittedAsPrivate;
883 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
883 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
885 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
885 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
907 llvm::DenseSet<const VarDecl *> CopiedVars;
914 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
914 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
950 const auto *SrcVD =
951 cast<VarDecl>(cast<DeclRefExpr>(*ISrcRef)->getDecl());
952 const auto *DestVD =
953 cast<VarDecl>(cast<DeclRefExpr>(*IDestRef)->getDecl());
974 llvm::DenseSet<const VarDecl *> SIMDLCVs;
979 cast<VarDecl>(cast<DeclRefExpr>(C)->getDecl())->getCanonicalDecl());
982 llvm::DenseSet<const VarDecl *> AlreadyEmittedVars;
993 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
993 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
997 const auto *DestVD =
998 cast<VarDecl>(cast<DeclRefExpr>(*IDestRef)->getDecl());
1010 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
1010 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IInit)->getDecl());
1047 llvm::DenseSet<const VarDecl *> AlreadyEmittedVars;
1048 llvm::DenseMap<const VarDecl *, const Expr *> LoopCountersAndUpdates;
1052 const auto *D =
1053 cast<VarDecl>(cast<DeclRefExpr>(*IC)->getDecl())->getCanonicalDecl();
1066 const auto *PrivateVD =
1067 cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
1069 const auto *CanonicalVD = PrivateVD->getCanonicalDecl();
1076 const auto *SrcVD =
1077 cast<VarDecl>(cast<DeclRefExpr>(*ISrcRef)->getDecl());
1078 const auto *DestVD =
1079 cast<VarDecl>(cast<DeclRefExpr>(*IDestRef)->getDecl());
1134 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>(*IPriv)->getDecl());
1134 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>(*IPriv)->getDecl());
1154 const auto *LHSVD = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
1154 const auto *LHSVD = cast<VarDecl>(cast<DeclRefExpr>(*ILHS)->getDecl());
1155 const auto *RHSVD = cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
1155 const auto *RHSVD = cast<VarDecl>(cast<DeclRefExpr>(*IRHS)->getDecl());
1450 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(Init)->getDecl());
1450 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(Init)->getDecl());
1454 const auto *OrigVD = cast<VarDecl>(Ref->getDecl());
1454 const auto *OrigVD = cast<VarDecl>(Ref->getDecl());
1471 EmitVarDecl(*cast<VarDecl>(SaveRef->getDecl()));
1499 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IC)->getDecl());
1499 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IC)->getDecl());
1558 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1558 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1559 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl());
1559 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl());
1590 const auto *VD = cast<VarDecl>(DRE->getDecl());
1590 const auto *VD = cast<VarDecl>(DRE->getDecl());
1624 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1624 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1644 llvm::DenseSet<const VarDecl *> SIMDLCVs;
1649 cast<VarDecl>(cast<DeclRefExpr>(C)->getDecl())->getCanonicalDecl());
1655 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1655 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
1656 const auto *PrivateVD =
1657 cast<VarDecl>(cast<DeclRefExpr>(*CurPrivate)->getDecl());
1719 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>((*IC))->getDecl());
1719 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>((*IC))->getDecl());
1720 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>((*IPC))->getDecl());
1720 const auto *PrivateVD = cast<VarDecl>(cast<DeclRefExpr>((*IPC))->getDecl());
1765 auto VDecl = cast<VarDecl>(Helper->getDecl());
1807 const auto *IVDecl = cast<VarDecl>(cast<DeclRefExpr>(IVExpr)->getDecl());
1807 const auto *IVDecl = cast<VarDecl>(cast<DeclRefExpr>(IVExpr)->getDecl());
1815 CGF.EmitVarDecl(*cast<VarDecl>(LIExpr->getDecl()));
2318 const auto *IVDecl = cast<VarDecl>(IVExpr->getDecl());
2318 const auto *IVDecl = cast<VarDecl>(IVExpr->getDecl());
2325 EmitVarDecl(*cast<VarDecl>(LIExpr->getDecl()));
2908 llvm::DenseSet<const VarDecl *> EmittedAsPrivate;
2913 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2913 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2927 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2927 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2938 llvm::DenseMap<const VarDecl *, const DeclRefExpr *> LastprivateDstsOrigs;
2943 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2943 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*IRef)->getDecl());
2949 {cast<VarDecl>(cast<DeclRefExpr>(*ID)->getDecl()),
2995 llvm::SmallVector<std::pair<const VarDecl *, Address>, 16> PrivatePtrs;
2999 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
2999 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3006 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3006 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3014 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3014 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3024 const auto *OrigVD = cast<VarDecl>(Pair.second->getDecl());
3024 const auto *OrigVD = cast<VarDecl>(Pair.second->getDecl());
3152 PrivateVD->setInitStyle(VarDecl::CInit);
3188 VarDecl *BPVD = nullptr;
3189 VarDecl *PVD = nullptr;
3190 VarDecl *SVD = nullptr;
3233 llvm::SmallVector<std::pair<const VarDecl *, Address>, 16> PrivatePtrs;
3237 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3237 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3350 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3350 const auto *VD = cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
3378 const auto *IVDecl = cast<VarDecl>(IVExpr->getDecl());
3378 const auto *IVDecl = cast<VarDecl>(IVExpr->getDecl());
3385 EmitVarDecl(*cast<VarDecl>(LIExpr->getDecl()));
4640 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*OrigVarIt)->getDecl());
4640 const auto *OrigVD = cast<VarDecl>(cast<DeclRefExpr>(*OrigVarIt)->getDecl());
4641 const auto *InitVD = cast<VarDecl>(cast<DeclRefExpr>(*InitIt)->getDecl());
4641 const auto *InitVD = cast<VarDecl>(cast<DeclRefExpr>(*InitIt)->getDecl());
4642 const auto *PvtVD = cast<VarDecl>(cast<DeclRefExpr>(PvtVarIt)->getDecl());
4642 const auto *PvtVD = cast<VarDecl>(cast<DeclRefExpr>(PvtVarIt)->getDecl());
4959 const auto *VDecl = cast<VarDecl>(Helper->getDecl());
4959 const auto *VDecl = cast<VarDecl>(Helper->getDecl());
5043 const auto *IVDecl = cast<VarDecl>(cast<DeclRefExpr>(IVExpr)->getDecl());
5043 const auto *IVDecl = cast<VarDecl>(cast<DeclRefExpr>(IVExpr)->getDecl());
5051 CGF.EmitVarDecl(*cast<VarDecl>(LIExpr->getDecl()));
5183 const auto *VD = dyn_cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
5183 const auto *VD = dyn_cast<VarDecl>(cast<DeclRefExpr>(E)->getDecl());
tools/clang/lib/CodeGen/CodeGenAction.cpp 143 void HandleCXXStaticMemberVarInstantiation(VarDecl *VD) override {
330 void CompleteTentativeDefinition(VarDecl *D) override {
tools/clang/lib/CodeGen/CodeGenFunction.cpp 859 for (const VarDecl *VD : Args)
1014 const VarDecl *VD = *i;
2086 void CodeGenFunction::EmitVarAnnotations(const VarDecl *D, llvm::Value *V) {
tools/clang/lib/CodeGen/CodeGenFunction.h 377 virtual const FieldDecl *lookup(const VarDecl *VD) const {
402 llvm::SmallDenseMap<const VarDecl *, FieldDecl *> CaptureFields;
490 llvm::DenseMap<const VarDecl *, FieldDecl *> LambdaCaptureFields;
495 llvm::DenseMap<const VarDecl *, llvm::Value *> NRVOFlags;
838 bool setVarAddr(CodeGenFunction &CGF, const VarDecl *LocalVD,
916 bool addPrivate(const VarDecl *LocalVD,
944 bool isGlobalVarCaptured(const VarDecl *VD) const {
1700 const VarDecl *VD);
1814 Address GetAddrOfBlockDecl(const VarDecl *var);
1818 Address emitBlockByrefAddress(Address baseAddr, const VarDecl *V,
1825 const BlockByrefInfo &getBlockByrefInfo(const VarDecl *var);
2361 Address GetAddrOfLocalVar(const VarDecl *VD) {
2672 void EmitVarDecl(const VarDecl &D);
2677 typedef void SpecialInitFn(CodeGenFunction &Init, const VarDecl &D,
2687 void EmitAutoVarDecl(const VarDecl &D);
2692 const VarDecl *Variable;
2722 AutoVarEmission(const VarDecl &variable)
2759 AutoVarEmission EmitAutoVarAlloca(const VarDecl &var);
2771 const VarDecl &D,
2774 void EmitStaticVarDecl(const VarDecl &D,
2805 void EmitParmDecl(const VarDecl &D, ParamValue Arg, unsigned ArgNo);
3006 const VarDecl *DestVD, const VarDecl *SrcVD,
3006 const VarDecl *DestVD, const VarDecl *SrcVD,
3937 AddInitializerToStaticVarDecl(const VarDecl &D,
3945 void EmitCXXGlobalVarDeclInit(const VarDecl &D, llvm::Constant *DeclPtr,
3948 llvm::Function *createAtExitStub(const VarDecl &VD, llvm::FunctionCallee Dtor,
3953 void registerGlobalDtorWithAtExit(const VarDecl &D, llvm::FunctionCallee fn,
3964 void EmitCXXGuardedInit(const VarDecl &D, llvm::GlobalVariable *DeclPtr,
3973 GuardKind Kind, const VarDecl *D);
3990 const VarDecl *D,
4021 void EmitVarAnnotations(const VarDecl *D, llvm::Value *V);
4150 void EmitDelegateCallArg(CallArgList &args, const VarDecl *param,
4167 void setAddrOfLocalVar(const VarDecl *VD, Address Addr) {
4212 void emitZeroOrPatternForAutoVarInit(QualType type, const VarDecl &D,
tools/clang/lib/CodeGen/CodeGenModule.cpp 921 void CodeGenModule::setTLSMode(llvm::GlobalValue *GV, const VarDecl &D) const {
1114 dyn_cast_or_null<VarDecl>(initializedGlobalDecl.getDecl()), Out);
1648 if (CodeGenOpts.KeepStaticConsts && D && isa<VarDecl>(D)) {
1649 const auto *VD = cast<VarDecl>(D);
1649 const auto *VD = cast<VarDecl>(D);
2315 const auto *VD = dyn_cast<VarDecl>(Global);
2315 const auto *VD = dyn_cast<VarDecl>(Global);
2339 if (const auto *VD = dyn_cast<VarDecl>(Global))
2339 if (const auto *VD = dyn_cast<VarDecl>(Global))
2348 getContext().getTargetInfo().isTLSSupported() && isa<VarDecl>(Global) &&
2493 const auto *VD = cast<VarDecl>(Global);
2493 const auto *VD = cast<VarDecl>(Global);
2495 if (VD->isThisDeclarationADefinition() != VarDecl::Definition &&
2542 if (getLangOpts().CPlusPlus && isa<VarDecl>(Global) &&
2543 cast<VarDecl>(Global)->hasInit()) {
2615 bool VisitVarDecl(VarDecl *VD) {
2639 else if (VarDecl *V = dyn_cast<VarDecl>(VD))
2639 else if (VarDecl *V = dyn_cast<VarDecl>(VD))
2831 if (const auto *VD = dyn_cast<VarDecl>(D))
2831 if (const auto *VD = dyn_cast<VarDecl>(D))
3409 const VarDecl *D,
3433 const VarDecl *OtherD;
3439 (OtherD = dyn_cast<VarDecl>(OtherGD.getDecl())) &&
3506 if (D->getTLSKind() == VarDecl::TLS_Dynamic)
3542 const VarDecl *InitDecl;
3610 return GetAddrOfGlobalVar(cast<VarDecl>(D), /*Ty=*/nullptr,
3663 llvm::Constant *CodeGenModule::GetAddrOfGlobalVar(const VarDecl *D,
3693 void CodeGenModule::EmitTentativeDefinition(const VarDecl *D) {
3721 LangAS CodeGenModule::GetGlobalVarAddressSpace(const VarDecl *D) {
3787 void CodeGenModule::MaybeHandleStaticInExternC(const SomeDecl *D,
3803 const SomeDecl *First = D->getFirstDecl();
3832 if (auto *VD = dyn_cast<VarDecl>(&D))
3857 void CodeGenModule::EmitGlobalVarDefinition(const VarDecl *D,
3876 const VarDecl *InitDecl;
4052 if (!D->isStaticLocal() && D->getTLSKind() == VarDecl::TLS_Dynamic &&
4080 if (D->getTLSKind() == VarDecl::TLS_Dynamic)
4100 CodeGenModule &CGM, const VarDecl *D,
4230 if (!getLangOpts().CPlusPlus && isa<VarDecl>(D) &&
4231 !isVarDeclStrongDefinition(Context, *this, cast<VarDecl>(D),
4248 const VarDecl *VD, bool IsConstant) {
4369 void CodeGenModule::HandleCXXStaticMemberVarInstantiation(VarDecl *VD) {
4371 if (DK == VarDecl::Definition && VD->hasAttr<DLLImportAttr>())
4468 LT = getLLVMLinkageVarDefinition(cast<VarDecl>(GD.getDecl()),
4508 if (const auto *VD = dyn_cast<VarDecl>(D))
4508 if (const auto *VD = dyn_cast<VarDecl>(D))
4678 const VarDecl *VD = nullptr;
4680 if ((VD = dyn_cast<VarDecl>(Result)))
5006 const auto *VD = cast<VarDecl>(E->getExtendingDecl());
5006 const auto *VD = cast<VarDecl>(E->getExtendingDecl());
5067 const VarDecl *InitVD;
5243 EmitGlobal(cast<VarDecl>(D));
5246 if (auto *HD = B->getHoldingVar())
5274 if (isa<VarDecl>(I) || isa<CXXRecordDecl>(I))
5640 GlobalDecl GD = GlobalDecl(cast<VarDecl>(D));
5750 auto *VD = cast<VarDecl>(cast<DeclRefExpr>(RefExpr)->getDecl());
tools/clang/lib/CodeGen/CodeGenModule.h 367 llvm::DenseMap<const VarDecl*, llvm::GlobalVariable*> InitializerConstants;
431 std::vector<const VarDecl *> CXXThreadLocals;
436 std::vector<const VarDecl *> CXXThreadLocalInitVars;
610 llvm::Constant *getStaticLocalDeclAddress(const VarDecl *D) {
613 void setStaticLocalDeclAddress(const VarDecl *D,
619 getOrCreateStaticVarDecl(const VarDecl &D,
622 llvm::GlobalVariable *getStaticLocalDeclGuardAddress(const VarDecl *D) {
625 void setStaticLocalDeclGuardAddress(const VarDecl *D,
630 Address createUnnamedGlobalFrom(const VarDecl &D, llvm::Constant *Constant,
782 void setTLSMode(llvm::GlobalValue *GV, const VarDecl &D) const;
820 LangAS GetGlobalVarAddressSpace(const VarDecl *D);
828 llvm::Constant *GetAddrOfGlobalVar(const VarDecl *D,
1009 void HandleCXXStaticMemberVarInstantiation(VarDecl *VD);
1164 void EmitTentativeDefinition(const VarDecl *D);
1200 getLLVMLinkageVarDefinition(const VarDecl *VD, bool IsConstant);
1383 const VarDecl *D,
1400 void EmitGlobalVarDefinition(const VarDecl *D, bool IsTentative = false);
1423 void EmitCXXGlobalVarDeclInitFunc(const VarDecl *D,
1427 void EmitPointerToInitFunc(const VarDecl *VD, llvm::GlobalVariable *Addr,
tools/clang/lib/CodeGen/ConstantEmitter.h 72 llvm::Constant *tryEmitForInitializer(const VarDecl &D);
96 llvm::Constant *tryEmitAbstractForInitializer(const VarDecl &D);
128 llvm::Constant *tryEmitPrivateForVarInit(const VarDecl &D);
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp 47 llvm::SmallVector<std::pair<const VarDecl *, llvm::Function *>, 8>
314 void EmitGuardedInit(CodeGenFunction &CGF, const VarDecl &D,
317 void registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
321 llvm::Function *getOrCreateThreadLocalWrapper(const VarDecl *VD,
325 ArrayRef<const VarDecl *> CXXThreadLocals,
327 ArrayRef<const VarDecl *> CXXThreadLocalInitVars) override;
332 bool isEmittedWithConstantInitializer(const VarDecl *VD) const {
342 const VarDecl *InitDecl = VD->getInitializingDeclaration();
362 bool usesThreadWrapperFunction(const VarDecl *VD) const override {
366 LValue EmitThreadLocalVarDeclLValue(CodeGenFunction &CGF, const VarDecl *VD,
2170 const VarDecl &D,
2453 void ItaniumCXXABI::registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
2476 static bool isThreadWrapperReplaceable(const VarDecl *VD,
2481 return VD->getTLSKind() == VarDecl::TLS_Dynamic &&
2489 getThreadLocalWrapperLinkage(const VarDecl *VD, CodeGen::CodeGenModule &CGM) {
2506 ItaniumCXXABI::getOrCreateThreadLocalWrapper(const VarDecl *VD,
2552 CodeGenModule &CGM, ArrayRef<const VarDecl *> CXXThreadLocals,
2554 ArrayRef<const VarDecl *> CXXThreadLocalInitVars) {
2560 llvm::SmallDenseMap<const VarDecl *, llvm::Function *> UnorderedInits;
2598 for (const VarDecl *VD : CXXThreadLocals) {
2608 const VarDecl *VD = VDAndWrapper.first;
2717 const VarDecl *VD,
4089 const VarDecl &CatchParam,
4294 VarDecl *CatchParam = S->getExceptionDecl();
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp 385 CodeGenModule &CGM, ArrayRef<const VarDecl *> CXXThreadLocals,
387 ArrayRef<const VarDecl *> CXXThreadLocalInitVars) override;
389 bool usesThreadWrapperFunction(const VarDecl *VD) const override {
392 LValue EmitThreadLocalVarDeclLValue(CodeGenFunction &CGF, const VarDecl *VD,
395 void EmitGuardedInit(CodeGenFunction &CGF, const VarDecl &D,
398 void registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
869 VarDecl *CatchParam = S->getExceptionDecl();
2257 static void emitGlobalDtorWithTLRegDtor(CodeGenFunction &CGF, const VarDecl &VD,
2276 void MicrosoftCXXABI::registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
2290 CodeGenModule &CGM, ArrayRef<const VarDecl *> CXXThreadLocals,
2292 ArrayRef<const VarDecl *> CXXThreadLocalInitVars) {
2342 const VarDecl *VD,
2427 void MicrosoftCXXABI::EmitGuardedInit(CodeGenFunction &CGF, const VarDecl &D,
tools/clang/lib/CodeGen/ModuleBuilder.cpp 155 void HandleCXXStaticMemberVarInstantiation(VarDecl *VD) override {
229 if (VarDecl *VD = dyn_cast<VarDecl>(Member)) {
229 if (VarDecl *VD = dyn_cast<VarDecl>(Member)) {
286 void CompleteTentativeDefinition(VarDecl *D) override {
tools/clang/lib/CodeGen/SanitizerMetadata.cpp 63 const VarDecl &D, bool IsDynInit) {
tools/clang/lib/CodeGen/SanitizerMetadata.h 39 void reportGlobalToASan(llvm::GlobalVariable *GV, const VarDecl &D,
tools/clang/lib/CodeGen/TargetInfo.cpp 438 const VarDecl *D) const {
7905 const VarDecl *D) const override;
7926 (isa<VarDecl>(D) &&
7936 return isa<VarDecl>(D) && D->hasAttr<HIPPinnedShadowAttr>();
8054 const VarDecl *D) const {
9224 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
9224 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
tools/clang/lib/CodeGen/TargetInfo.h 244 const VarDecl *D) const;
tools/clang/lib/CodeGen/VarBypassDetector.cpp 36 const VarDecl *VD = dyn_cast<VarDecl>(D);
36 const VarDecl *VD = dyn_cast<VarDecl>(D);
42 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
42 if (const VarDecl *VD = dyn_cast<VarDecl>(D))
75 if (const VarDecl *Var = cast<SwitchStmt>(S)->getConditionVariable()) {
tools/clang/lib/CodeGen/VarBypassDetector.h 42 llvm::SmallVector<std::pair<unsigned, const VarDecl *>, 48> Scopes;
48 llvm::DenseSet<const VarDecl *> Bypasses;
57 bool IsBypassed(const VarDecl *D) const {
tools/clang/lib/CrossTU/CrossTranslationUnit.cpp 169 bool containsConst(const VarDecl *VD, const ASTContext &ACtx) {
182 static bool hasBodyOrInit(const VarDecl *D, const VarDecl *&DefD) {
182 static bool hasBodyOrInit(const VarDecl *D, const VarDecl *&DefD) {
185 template <typename T> static bool hasBodyOrInit(const T *D) {
186 const T *Unused;
207 const T *
214 if (const auto *ND = findDefInDeclContext<T>(SubDC, LookupName))
214 if (const auto *ND = findDefInDeclContext<T>(SubDC, LookupName))
217 const auto *ND = dyn_cast<T>(D);
217 const auto *ND = dyn_cast<T>(D);
218 const T *ResultDecl;
230 llvm::Expected<const T *> CrossTranslationUnitContext::getCrossTUDefinitionImpl(
231 const T *D, StringRef CrossTUDir, StringRef IndexName,
298 if (const T *ResultDecl = findDefInDeclContext<T>(TU, *LookupName))
298 if (const T *ResultDecl = findDefInDeclContext<T>(TU, *LookupName))
312 llvm::Expected<const VarDecl *>
313 CrossTranslationUnitContext::getCrossTUDefinition(const VarDecl *VD,
498 llvm::Expected<const T *>
499 CrossTranslationUnitContext::importDefinitionImpl(const T *D, ASTUnit *Unit) {
524 auto *ToDecl = cast<T>(*ToDeclOrError);
537 llvm::Expected<const VarDecl *>
538 CrossTranslationUnitContext::importDefinition(const VarDecl *VD,
tools/clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp 55 if (const VarDecl *VD = dyn_cast<VarDecl>(ND))
55 if (const VarDecl *VD = dyn_cast<VarDecl>(ND))
79 if (const VarDecl *VD = dyn_cast<VarDecl>(ND))
79 if (const VarDecl *VD = dyn_cast<VarDecl>(ND))
128 isa<VarDecl>(ND) ? llvm::ELF::STT_OBJECT
tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp 79 VarDecl *GlobalVarDecl;
85 VarDecl *ConstantStringClassReference;
145 llvm::SmallPtrSet<VarDecl *, 8> ImportedLocalExternalDecls;
341 void RewriteTypeOfDecl(VarDecl *VD);
389 void RewriteByRefVar(VarDecl *VD, bool firstDecl, bool lastDecl);
465 std::string SynthesizeByrefCopyDestroyHelper(VarDecl *VD, int flag);
731 } else if (VarDecl *FVD = dyn_cast<VarDecl>(D)) {
731 } else if (VarDecl *FVD = dyn_cast<VarDecl>(D)) {
1956 VarDecl *catchDecl = Catch->getCatchParamDecl();
2193 if (VarDecl *VD = dyn_cast<VarDecl>(Dcl)) {
2193 if (VarDecl *VD = dyn_cast<VarDecl>(Dcl)) {
2271 void RewriteModernObjC::RewriteTypeOfDecl(VarDecl *ND) {
2580 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
2580 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
3584 VarDecl *VD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
3584 VarDecl *VD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
4032 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
4032 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
4494 if (VarDecl *Var = cast<VarDecl>(DRE->getDecl()))
4494 if (VarDecl *Var = cast<VarDecl>(DRE->getDecl()))
4700 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
4700 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
4870 if (VarDecl *VD = dyn_cast<VarDecl>(ND))
4870 if (VarDecl *VD = dyn_cast<VarDecl>(ND))
4956 std::string RewriteModernObjC::SynthesizeByrefCopyDestroyHelper(VarDecl *VD,
5011 void RewriteModernObjC::RewriteByRefVar(VarDecl *ND, bool firstDecl,
5288 VarDecl *NewVD = VarDecl::Create(
5288 VarDecl *NewVD = VarDecl::Create(
5358 const VarDecl *variable = CI.getVariable();
5590 if (VarDecl *VD = dyn_cast<VarDecl>(SD)) {
5590 if (VarDecl *VD = dyn_cast<VarDecl>(SD)) {
5743 VarDecl *VD = cast<VarDecl>(D);
5743 VarDecl *VD = cast<VarDecl>(D);
7476 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
7476 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp 78 VarDecl *GlobalVarDecl;
82 VarDecl *ConstantStringClassReference;
136 llvm::SmallPtrSet<VarDecl *, 8> ImportedLocalExternalDecls;
289 void RewriteTypeOfDecl(VarDecl *VD);
317 void RewriteByRefVar(VarDecl *VD);
375 std::string SynthesizeByrefCopyDestroyHelper(VarDecl *VD, int flag);
660 } else if (VarDecl *FVD = dyn_cast<VarDecl>(D)) {
660 } else if (VarDecl *FVD = dyn_cast<VarDecl>(D)) {
1826 VarDecl *catchDecl = Catch->getCatchParamDecl();
2109 if (VarDecl *VD = dyn_cast<VarDecl>(Dcl)) {
2109 if (VarDecl *VD = dyn_cast<VarDecl>(Dcl)) {
2183 void RewriteObjC::RewriteTypeOfDecl(VarDecl *ND) {
2505 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
2505 VarDecl *NewVD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
3040 VarDecl *VD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
3040 VarDecl *VD = VarDecl::Create(*Context, TUDecl, SourceLocation(),
3246 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
3246 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
3681 if (VarDecl *Var = cast<VarDecl>(DRE->getDecl()))
3681 if (VarDecl *Var = cast<VarDecl>(DRE->getDecl()))
3869 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
3869 if (VarDecl *Var = dyn_cast<VarDecl>(VD))
4024 if (VarDecl *VD = dyn_cast<VarDecl>(ND))
4024 if (VarDecl *VD = dyn_cast<VarDecl>(ND))
4110 std::string RewriteObjC::SynthesizeByrefCopyDestroyHelper(VarDecl *VD,
4165 void RewriteObjC::RewriteByRefVar(VarDecl *ND) {
4426 VarDecl *NewVD = VarDecl::Create(
4426 VarDecl *NewVD = VarDecl::Create(
4495 const VarDecl *variable = CI.getVariable();
4692 if (VarDecl *VD = dyn_cast<VarDecl>(SD)) {
4692 if (VarDecl *VD = dyn_cast<VarDecl>(SD)) {
4841 VarDecl *VD = cast<VarDecl>(D);
4841 VarDecl *VD = cast<VarDecl>(D);
tools/clang/lib/Index/IndexDecl.cpp 291 bool VisitVarDecl(const VarDecl *D) {
663 else if (const auto *VD = dyn_cast<VarDecl>(D))
663 else if (const auto *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Index/IndexSymbol.cpp 143 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
tools/clang/lib/Index/IndexingContext.cpp 157 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
212 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
241 if (auto VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Index/USRGeneration.cpp 98 void VisitVarDecl(const VarDecl *D);
301 void USRGenerator::VisitVarDecl(const VarDecl *D) {
tools/clang/lib/Parse/ParseDecl.cpp 2116 if (auto *VD = dyn_cast_or_null<VarDecl>(ThisDecl))
2116 if (auto *VD = dyn_cast_or_null<VarDecl>(ThisDecl))
2403 auto ThisVarDecl = dyn_cast_or_null<VarDecl>(ThisDecl);
tools/clang/lib/Parse/ParseOpenMP.cpp 363 VarDecl *OmpPrivParm =
407 void Parser::ParseOpenMPReductionInitializerForDecl(VarDecl *OmpPrivParm) {
1193 ND, Loc, MT, isa<VarDecl>(ND) ? OMPDeclareTargetDeclAttr::DT_Any : DT);
tools/clang/lib/Parse/ParseStmt.cpp 135 return candidate.getCorrectionDeclAs<VarDecl>();
tools/clang/lib/Sema/AnalysisBasedWarnings.cpp 754 static bool SuggestInitializationFixit(Sema &S, const VarDecl *VD) {
810 static void DiagUninitUse(Sema &S, const VarDecl *VD, const UninitUse &Use,
982 static bool DiagnoseUninitializedUse(Sema &S, const VarDecl *VD,
1397 if (const VarDecl *BaseVar = dyn_cast<VarDecl>(Base))
1397 if (const VarDecl *BaseVar = dyn_cast<VarDecl>(Base))
1466 if (isa<VarDecl>(KeyProp))
1507 typedef llvm::MapVector<const VarDecl *, MappedType> UsesMap;
1521 void handleUseOfUninitVariable(const VarDecl *vd,
1526 void handleSelfInit(const VarDecl *vd) override {
1532 const VarDecl *vd = P.first;
tools/clang/lib/Sema/JumpDiagnostics.cpp 76 void BuildScopeInformation(VarDecl *D, const BlockDecl *BDecl,
134 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
134 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
196 VD->getInitStyle() == VarDecl::CallInit) {
233 if (VarDecl *VD = dyn_cast<VarDecl>(D))
233 if (VarDecl *VD = dyn_cast<VarDecl>(D))
239 void JumpScopeChecker::BuildScopeInformation(VarDecl *D,
332 if (VarDecl *Var = cast<SwitchStmt>(S)->getConditionVariable()) {
365 if (VarDecl *Var = IS->getConditionVariable())
534 VarDecl *variable = CI.getVariable();
tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp 253 SmallVectorImpl<VarDecl*> &TentativeDefs) {
tools/clang/lib/Sema/Scope.cpp 122 if (VarDecl *Candidate = NRVO.getPointer()) {
tools/clang/lib/Sema/ScopeInfo.cpp 77 IsExact = isa<VarDecl>(D);
193 if (isa<VarDecl>(DRE->getDecl()))
233 llvm::function_ref<void(VarDecl *, Expr *)> Callback) const {
236 Callback(cast<VarDecl>(DRE->getFoundDecl()), E);
238 Callback(cast<VarDecl>(ME->getMemberDecl()), E);
240 for (VarDecl *VD : *FP)
tools/clang/lib/Sema/Sema.cpp 605 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
605 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
624 const VarDecl *DeclToCheck = VD->getDefinition();
641 return cast<VarDecl>(ND)->isExternC();
689 auto *VD = cast<VarDecl>(ND);
689 auto *VD = cast<VarDecl>(ND);
690 if (VD->hasDefinition() != VarDecl::DeclarationOnly)
735 << isa<VarDecl>(VD) << VD;
741 << isa<VarDecl>(VD) << VD;
1023 !(isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl)))
1104 llvm::SmallSet<VarDecl *, 32> Seen;
1109 VarDecl *VD = (*T)->getActingDefinition();
1182 const VarDecl *DiagD = cast<VarDecl>(*I)->getDefinition();
1182 const VarDecl *DiagD = cast<VarDecl>(*I)->getDefinition();
1184 DiagD = cast<VarDecl>(*I);
1666 static void checkEscapingByref(VarDecl *VD, Sema &S) {
1696 VarDecl *VD = BC.getVariable();
1716 for (VarDecl *VD : FSI.ByrefBlockVars) {
tools/clang/lib/Sema/SemaAccess.cpp 1105 if (VarDecl *VD = dyn_cast<VarDecl>(D))
1105 if (VarDecl *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Sema/SemaAttr.cpp 566 VarDecl *VD = Lookup.getAsSingle<VarDecl>();
566 VarDecl *VD = Lookup.getAsSingle<VarDecl>();
tools/clang/lib/Sema/SemaCUDA.cpp 489 void Sema::checkAllowedCUDAInitializer(VarDecl *VD) {
tools/clang/lib/Sema/SemaChecking.cpp 4442 if (const auto *V = dyn_cast<VarDecl>(NDecl))
4442 if (const auto *V = dyn_cast<VarDecl>(NDecl))
6889 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
6889 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
13433 VarDecl *Variable = nullptr;
13450 static bool considerVariable(VarDecl *var, Expr *ref, RetainCycleOwner &owner) {
13495 VarDecl *var = dyn_cast<VarDecl>(ref->getDecl());
13495 VarDecl *var = dyn_cast<VarDecl>(ref->getDecl());
13546 VarDecl *Variable;
13550 FindCaptureVisitor(ASTContext &Context, VarDecl *variable)
13873 void Sema::checkRetainCycles(VarDecl *Var, Expr *Init) {
tools/clang/lib/Sema/SemaCodeComplete.cpp 1547 const auto *Var = dyn_cast<VarDecl>(ND);
1547 const auto *Var = dyn_cast<VarDecl>(ND);
5741 const auto *Var = dyn_cast<VarDecl>(D);
5741 const auto *Var = dyn_cast<VarDecl>(D);
tools/clang/lib/Sema/SemaCoroutine.cpp 399 static ReadySuspendResumeResult buildCoawaitCalls(Sema &S, VarDecl *CoroPromise,
467 static ExprResult buildPromiseCall(Sema &S, VarDecl *Promise,
480 VarDecl *Sema::buildCoroutinePromise(SourceLocation Loc) {
496 auto *VD = VarDecl::Create(Context, FD, FD->getLocation(), FD->getLocation(),
496 auto *VD = VarDecl::Create(Context, FD, FD->getLocation(), FD->getLocation(),
532 auto *MoveDecl =
533 cast<VarDecl>(cast<DeclStmt>(Move->second)->getSingleDecl());
561 VD->setInitStyle(VarDecl::CallInit);
725 auto *Promise = FSI->CoroutinePromise;
883 VarDecl *Promise = FSI->CoroutinePromise;
915 auto *VD = Result.getAsSingle<VarDecl>();
915 auto *VD = Result.getAsSingle<VarDecl>();
1447 auto *GroDecl = VarDecl::Create(
1447 auto *GroDecl = VarDecl::Create(
1513 static VarDecl *buildVarDecl(Sema &S, SourceLocation Loc, QualType Type,
1516 VarDecl *Decl = VarDecl::Create(S.Context, S.CurContext, Loc, Loc, II, Type,
1516 VarDecl *Decl = VarDecl::Create(S.Context, S.CurContext, Loc, Loc, II, Type,
tools/clang/lib/Sema/SemaDecl.cpp 1668 } else if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1668 } else if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1708 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1708 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1709 const VarDecl *First = VD->getFirstDecl();
1760 if (!isa<VarDecl>(D) || isa<ParmVarDecl>(D) || isa<ImplicitParamDecl>(D))
1764 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1764 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1857 if (isa<VarDecl>(D) && cast<VarDecl>(D)->isExceptionVariable())
1857 if (isa<VarDecl>(D) && cast<VarDecl>(D)->isExceptionVariable())
2400 if (VarDecl *VD = dyn_cast<VarDecl>(D))
2400 if (VarDecl *VD = dyn_cast<VarDecl>(D))
2601 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
2601 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
2602 const VarDecl *Def = VD->getDefinition();
2645 VarDecl *VD = cast<VarDecl>(New);
2645 VarDecl *VD = cast<VarDecl>(New);
2646 unsigned Diag = cast<VarDecl>(Def)->isThisDeclarationADefinition() ==
2647 VarDecl::TentativeDefinition
2661 if (const VarDecl *VD = dyn_cast<VarDecl>(Def)) {
2661 if (const VarDecl *VD = dyn_cast<VarDecl>(Def)) {
2663 if (VD->isThisDeclarationADefinition() != VarDecl::Definition) {
2697 cast<VarDecl>(New)->isInline() &&
2698 !cast<VarDecl>(New)->isInlineSpecified()) {
2715 static void diagnoseMissingConstinit(Sema &S, const VarDecl *InitDecl,
2787 const auto *OldVD = cast<VarDecl>(Old);
2787 const auto *OldVD = cast<VarDecl>(Old);
2788 auto *NewVD = cast<VarDecl>(New);
2788 auto *NewVD = cast<VarDecl>(New);
2792 const VarDecl *InitDecl = OldVD->getInitializingDeclaration();
2854 if (auto *VD = dyn_cast<VarDecl>(New)) {
2854 if (auto *VD = dyn_cast<VarDecl>(New)) {
2855 if (VD->isThisDeclarationADefinition() == VarDecl::DeclarationOnly) {
3000 getNoteDiagForInvalidRedeclaration(const T *Old, const T *New) {
3000 getNoteDiagForInvalidRedeclaration(const T *Old, const T *New) {
3033 static bool haveIncompatibleLanguageLinkages(const T *Old, const T *New) {
3033 static bool haveIncompatibleLanguageLinkages(const T *Old, const T *New) {
3046 template<typename T> static bool isExternC(T *D) { return D->isExternC(); }
3054 ExpectedDecl *New) {
3072 auto *Old = dyn_cast<ExpectedDecl>(OldS->getTargetDecl());
3072 auto *Old = dyn_cast<ExpectedDecl>(OldS->getTargetDecl());
3142 else if (auto *VD = dyn_cast<VarDecl>(NewD))
3142 else if (auto *VD = dyn_cast<VarDecl>(NewD))
3816 static void diagnoseVarDeclTypeMismatch(Sema &S, VarDecl *New, VarDecl* Old) {
3816 static void diagnoseVarDeclTypeMismatch(Sema &S, VarDecl *New, VarDecl* Old) {
3839 void Sema::MergeVarDeclTypes(VarDecl *New, VarDecl *Old,
3839 void Sema::MergeVarDeclTypes(VarDecl *New, VarDecl *Old,
3866 for (VarDecl *PrevVD = Old->getMostRecentDecl(); PrevVD;
3926 static bool mergeTypeWithPrevious(Sema &S, VarDecl *NewVD, VarDecl *OldVD,
3926 static bool mergeTypeWithPrevious(Sema &S, VarDecl *NewVD, VarDecl *OldVD,
3963 void Sema::MergeVarDecl(VarDecl *New, LookupResult &Previous) {
3974 VarDecl *Old = nullptr;
3986 Old = dyn_cast<VarDecl>(Previous.getFoundDecl());
3990 if (checkUsingShadowRedecl<VarDecl>(*this, Shadow, New))
4041 VarDecl *MostRecent = Old->getMostRecentDecl();
4123 if (VarDecl *Def = Old->getDefinition()) {
4152 << New->getDeclName() << (New->getTLSKind() == VarDecl::TLS_Dynamic);
4159 New->isThisDeclarationADefinition() == VarDecl::Definition) {
4165 } else if (VarDecl *Def = Old->getDefinition()) {
4254 bool Sema::checkVarDeclRedefinition(VarDecl *Old, VarDecl *New) {
4254 bool Sema::checkVarDeclRedefinition(VarDecl *Old, VarDecl *New) {
4957 else if (isa<VarDecl>(Mem))
5026 Anon = VarDecl::Create(Context, Owner, DS.getBeginLoc(),
5055 if (VarDecl *NewVD = dyn_cast<VarDecl>(Anon)) {
5055 if (VarDecl *NewVD = dyn_cast<VarDecl>(Anon)) {
6082 if (VarDecl *var = dyn_cast<VarDecl>(decl)) {
6082 if (VarDecl *var = dyn_cast<VarDecl>(decl)) {
6107 if (VarDecl *var = dyn_cast<VarDecl>(decl)) {
6107 if (VarDecl *var = dyn_cast<VarDecl>(decl)) {
6140 if (auto *VD = dyn_cast<VarDecl>(&ND)) {
6140 if (auto *VD = dyn_cast<VarDecl>(&ND)) {
6162 auto *VD = dyn_cast<VarDecl>(&ND);
6162 auto *VD = dyn_cast<VarDecl>(&ND);
6264 auto *VD = dyn_cast<VarDecl>(OldDecl);
6264 auto *VD = dyn_cast<VarDecl>(OldDecl);
6298 if (const auto *VD = dyn_cast<VarDecl>(NewDecl)) {
6298 if (const auto *VD = dyn_cast<VarDecl>(NewDecl)) {
6303 VarDecl::DeclarationOnly;
6391 static bool isIncompleteDeclExternC(Sema &S, const T *D) {
6405 static bool shouldConsiderLinkage(const VarDecl *VD) {
6472 if (const auto *VD = dyn_cast<VarDecl>(D))
6472 if (const auto *VD = dyn_cast<VarDecl>(D))
6640 VarDecl *NewVD = nullptr;
6644 NewVD = VarDecl::Create(Context, DC, D.getBeginLoc(), D.getIdentifierLoc(),
6768 NewVD = cast<VarDecl>(Res.get());
6775 NewVD = VarDecl::Create(Context, DC, D.getBeginLoc(),
7200 const VarDecl *VD) {
7220 NamedDecl *Sema::getShadowedDeclaration(const VarDecl *D,
7230 return isa<VarDecl>(ShadowedDecl) || isa<FieldDecl>(ShadowedDecl)
7280 if (VarDecl *shadowedVar = dyn_cast<VarDecl>(ShadowedDecl))
7280 if (VarDecl *shadowedVar = dyn_cast<VarDecl>(ShadowedDecl))
7295 if (isa<VarDecl>(D) && isa<VarDecl>(ShadowedDecl) && NewDC &&
7295 if (isa<VarDecl>(D) && isa<VarDecl>(ShadowedDecl) && NewDC &&
7303 CaptureLoc = getCaptureLocation(LSI, cast<VarDecl>(ShadowedDecl));
7311 {cast<VarDecl>(D), cast<VarDecl>(ShadowedDecl)});
7311 {cast<VarDecl>(D), cast<VarDecl>(ShadowedDecl)});
7316 if (cast<VarDecl>(ShadowedDecl)->hasLocalStorage()) {
7365 const VarDecl *ShadowedDecl = Shadow.ShadowedDecl;
7382 void Sema::CheckShadow(Scope *S, VarDecl *D) {
7421 Sema &S, const T *ND, bool IsGlobal, LookupResult &Previous) {
7443 if (!isa<VarDecl>(ND))
7453 if (isa<VarDecl>(*I)) {
7463 if (isa<VarDecl>(*I)) {
7485 Prev = cast<VarDecl>(Prev)->getFirstDecl();
7503 static bool checkForConflictWithNonVisibleExternC(Sema &S, const T *ND,
7534 void Sema::CheckVariableDeclarationType(VarDecl *NewVD) {
7776 bool Sema::CheckVariableDeclaration(VarDecl *NewVD, LookupResult &Previous) {
11054 } else if (cast<VarDecl>(OrigDecl)->isStaticLocal()) {
11084 if (!DirectInit && !cast<VarDecl>(OrigDecl)->getType()->isRecordType())
11099 VarDecl *VDecl;
11109 QualType Sema::deduceVarTypeFromInitializer(VarDecl *VDecl,
11245 bool Sema::DeduceVariableDeclarationType(VarDecl *VDecl, bool DirectInit,
11264 if (VarDecl *Old = VDecl->getPreviousDecl()) {
11552 CorrectDelayedTyposInExpr(Init, dyn_cast_or_null<VarDecl>(RealDecl));
11564 VarDecl *VDecl = dyn_cast<VarDecl>(RealDecl);
11564 VarDecl *VDecl = dyn_cast<VarDecl>(RealDecl);
11625 VarDecl *Def;
11975 VDecl->setInitStyle(VarDecl::CallInit);
11978 VDecl->setInitStyle(VarDecl::ListInit);
11992 VarDecl *VD = dyn_cast<VarDecl>(D);
11992 VarDecl *VD = dyn_cast<VarDecl>(D);
12034 if (VarDecl *Var = dyn_cast<VarDecl>(RealDecl)) {
12034 if (VarDecl *Var = dyn_cast<VarDecl>(RealDecl)) {
12084 VarDecl::DefinitionKind DefKind = Var->isThisDeclarationADefinition();
12085 if (!Var->isInvalidDecl() && DefKind != VarDecl::DeclarationOnly &&
12092 case VarDecl::Definition:
12102 case VarDecl::DeclarationOnly:
12128 case VarDecl::TentativeDefinition:
12260 Var->setInitStyle(VarDecl::CallInit);
12272 VarDecl *VD = dyn_cast<VarDecl>(D);
12272 VarDecl *VD = dyn_cast<VarDecl>(D);
12333 cast<VarDecl>(Var)->setCXXForRangeDecl(true);
12339 void Sema::CheckCompleteVariableDeclaration(VarDecl *var) {
12388 VarDecl *prev = var->getPreviousDecl();
12409 if (var->getTLSKind() == VarDecl::TLS_Static) {
12562 static bool hasDependentAlignment(VarDecl *VD) {
12573 void Sema::CheckStaticLocalForDllExport(VarDecl *VD) {
12616 VarDecl *VD = dyn_cast_or_null<VarDecl>(ThisDecl);
12616 VarDecl *VD = dyn_cast_or_null<VarDecl>(ThisDecl);
12796 auto *VD = dyn_cast<VarDecl>(DD);
12796 auto *VD = dyn_cast<VarDecl>(DD);
12877 VarDecl *DeducedDecl = nullptr;
12879 VarDecl *D = dyn_cast<VarDecl>(Group[i]);
12879 VarDecl *D = dyn_cast<VarDecl>(Group[i]);
13461 VarDecl *VD = C.getCapturedVar();
13650 if (const VarDecl *NRVOCandidate = Returns[I]->getNRVOCandidate()) {
14036 if (const auto *Var = dyn_cast<VarDecl>(Decl)) {
14036 if (const auto *Var = dyn_cast<VarDecl>(Decl)) {
17611 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) {
17645 if (PrevDecl && (isa<FunctionDecl>(PrevDecl) || isa<VarDecl>(PrevDecl))) {
tools/clang/lib/Sema/SemaDeclAttr.cpp 1832 const auto *VD = cast<VarDecl>(D);
1832 const auto *VD = cast<VarDecl>(D);
2700 } else if (const auto *V = dyn_cast<VarDecl>(D)) {
2700 } else if (const auto *V = dyn_cast<VarDecl>(D)) {
3068 QualType Ty = S.Context.getPointerType(cast<VarDecl>(D)->getType());
3178 QualType T = cast<VarDecl>(D)->getType();
3662 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
3662 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
3740 const auto *VD = dyn_cast<VarDecl>(D);
3740 const auto *VD = dyn_cast<VarDecl>(D);
3742 VD->getTLSKind() != VarDecl::TLS_None) {
4080 if (const auto *VD = dyn_cast<VarDecl>(D)) {
4080 if (const auto *VD = dyn_cast<VarDecl>(D)) {
4103 if (const auto *VD = dyn_cast<VarDecl>(D)) {
4103 if (const auto *VD = dyn_cast<VarDecl>(D)) {
4195 const auto *VD = cast<VarDecl>(D);
4195 const auto *VD = cast<VarDecl>(D);
4206 const auto *VD = cast<VarDecl>(D);
4206 const auto *VD = cast<VarDecl>(D);
4805 if (!isa<VarDecl>(D)) {
5384 const auto *VD = cast<VarDecl>(D);
5384 const auto *VD = cast<VarDecl>(D);
6152 if (const auto *S = dyn_cast<VarDecl>(D))
6152 if (const auto *S = dyn_cast<VarDecl>(D))
6312 if (!cast<VarDecl>(D)->hasGlobalStorage()) {
6330 static bool tryMakeVariablePseudoStrong(Sema &S, VarDecl *VD,
6369 if (auto *VD = dyn_cast<VarDecl>(D)) {
6369 if (auto *VD = dyn_cast<VarDecl>(D)) {
7363 } else if (auto *VD = dyn_cast<VarDecl>(ND)) {
7363 } else if (auto *VD = dyn_cast<VarDecl>(ND)) {
7364 NewD = VarDecl::Create(VD->getASTContext(), VD->getDeclContext(),
7369 cast<VarDecl>(NewD)->setQualifierInfo(VD->getQualifierLoc());
7407 if (auto *VD = dyn_cast<VarDecl>(D))
7407 if (auto *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Sema/SemaDeclCXX.cpp 100 } else if (VarDecl *VDecl = dyn_cast<VarDecl>(Decl)) {
100 } else if (VarDecl *VDecl = dyn_cast<VarDecl>(Decl)) {
1119 VarDecl *Src, QualType DecompType,
1215 auto *RefVD = VarDecl::Create(
1215 auto *RefVD = VarDecl::Create(
1489 void Sema::MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old) {
1489 void Sema::MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old) {
1832 const auto *VD = cast<VarDecl>(DclIt);
1832 const auto *VD = cast<VarDecl>(DclIt);
1839 << (VD->getTLSKind() == VarDecl::TLS_Dynamic);
3356 } else if (isa<VarDecl>(Member) || isa<VarTemplateDecl>(Member)) {
3538 if (isa<VarDecl>(SubME->getMemberDecl()))
5735 } else if (isa<VarDecl>(D)) {
5736 VarDecl *VD = cast<VarDecl>(D);
5736 VarDecl *VD = cast<VarDecl>(D);
5770 auto *VD = dyn_cast<VarDecl>(Member);
5770 auto *VD = dyn_cast<VarDecl>(Member);
5892 if (!isa<VarDecl>(Member) && !isa<CXXMethodDecl>(Member))
5938 VarDecl *VD = dyn_cast<VarDecl>(Member);
5938 VarDecl *VD = dyn_cast<VarDecl>(Member);
9513 const VarDecl *VD = nullptr) {
9603 VarDecl *VD = ValInfo->VD;
10826 } else if (R.getAsSingle<VarDecl>()) {
11916 VarDecl *Var;
11924 RefBuilder(VarDecl *Var, QualType VarType)
12241 VarDecl *IterationVar = VarDecl::Create(S.Context, S.CurContext, Loc, Loc,
12241 VarDecl *IterationVar = VarDecl::Create(S.Context, S.CurContext, Loc, Loc,
13579 void Sema::FinalizeVarWithDestructor(VarDecl *VD, const RecordType *Record) {
14258 VarDecl *Sema::BuildExceptionDeclaration(Scope *S,
14326 VarDecl *ExDecl = VarDecl::Create(Context, CurContext, StartLoc, Loc, Name,
14326 VarDecl *ExDecl = VarDecl::Create(Context, CurContext, StartLoc, Loc, Name,
14421 VarDecl *ExDecl = BuildExceptionDeclaration(
15494 if (const VarDecl *Var = dyn_cast_or_null<VarDecl>(D))
15494 if (const VarDecl *Var = dyn_cast_or_null<VarDecl>(D))
tools/clang/lib/Sema/SemaDeclObjC.cpp 4104 if (VarDecl *VDecl = dyn_cast<VarDecl>(*I)) {
4104 if (VarDecl *VDecl = dyn_cast<VarDecl>(*I)) {
4851 VarDecl *Sema::BuildObjCExceptionDecl(TypeSourceInfo *TInfo, QualType T,
4884 VarDecl *New = VarDecl::Create(Context, CurContext, StartLoc, IdLoc, Id,
4884 VarDecl *New = VarDecl::Create(Context, CurContext, StartLoc, IdLoc, Id,
4928 VarDecl *New = BuildObjCExceptionDecl(TInfo, ExceptionType,
tools/clang/lib/Sema/SemaExpr.cpp 247 << D->getDeclName() << cast<VarDecl>(D)->getType();
306 isa<VarDecl>(D)) {
319 isa<VarDecl>(D)) {
359 } else if (isa<VarDecl>(D)) {
1799 if (VarDecl *VD = dyn_cast<VarDecl>(D)) {
1799 if (VarDecl *VD = dyn_cast<VarDecl>(D)) {
1820 isa<VarDecl>(D) &&
1821 NeedToCaptureVariable(cast<VarDecl>(D), NameInfo.getLoc());
1828 if (getLangOpts().ObjCWeak && isa<VarDecl>(D) &&
3084 QualType CapturedType = getCapturedDeclRefType(cast<VarDecl>(VD), Loc);
3100 auto *DD = dyn_cast_or_null<VarDecl>(BD->getDecomposedDecl());
3100 auto *DD = dyn_cast_or_null<VarDecl>(BD->getDecomposedDecl());
11465 VarDecl *var = dyn_cast<VarDecl>(DRE->getDecl());
11465 VarDecl *var = dyn_cast<VarDecl>(DRE->getDecl());
11554 } else if (const VarDecl *VDecl = dyn_cast<VarDecl>(VD)) {
11554 } else if (const VarDecl *VDecl = dyn_cast<VarDecl>(VD)) {
11733 if (declRef && isa<VarDecl>(declRef->getDecl())) {
11734 VarDecl *var = cast<VarDecl>(declRef->getDecl());
11734 VarDecl *var = cast<VarDecl>(declRef->getDecl());
12438 if (const VarDecl *vd = dyn_cast<VarDecl>(dcl)) {
12438 if (const VarDecl *vd = dyn_cast<VarDecl>(dcl)) {
12894 if (auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
12894 if (auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
14337 VarDecl *Var = Cap.getVariable();
14410 const VarDecl *var = CI.getVariable();
15625 MarkVarDeclODRUsed(VarDecl *Var, SourceLocation Loc, Sema &SemaRef,
15629 if (Var->hasDefinition(SemaRef.Context) == VarDecl::DeclarationOnly &&
15649 void Sema::MarkCaptureUsedInEnclosingContext(VarDecl *Capture,
15698 static bool isVariableAlreadyCapturedInScopeInfo(CapturingScopeInfo *CSI, VarDecl *Var,
15729 static DeclContext *getParentOfCapturingContextOrNull(DeclContext *DC, VarDecl *Var,
15744 static bool isVariableCapturable(CapturingScopeInfo *CSI, VarDecl *Var,
15812 static bool captureInBlock(BlockScopeInfo *BSI, VarDecl *Var,
15887 VarDecl *Var,
15924 VarDecl *Var,
16022 VarDecl *Var, SourceLocation ExprLoc, TryCaptureKind Kind,
16245 bool Sema::tryCaptureVariable(VarDecl *Var, SourceLocation Loc,
16254 bool Sema::NeedToCaptureVariable(VarDecl *Var, SourceLocation Loc) {
16262 QualType Sema::getCapturedDeclRefType(VarDecl *Var, SourceLocation Loc) {
16330 auto *VD = dyn_cast<VarDecl>(D);
16330 auto *VD = dyn_cast<VarDecl>(D);
16403 for (VarDecl *D : *FPPE)
16668 MarkVarDeclODRUsed(cast<VarDecl>(DRE->getDecl()),
16671 MarkVarDeclODRUsed(cast<VarDecl>(ME->getMemberDecl()), ME->getMemberLoc(),
16674 for (VarDecl *VD : *FP)
16686 VarDecl *Var, Expr *E) {
16860 void Sema::MarkVariableReferenced(SourceLocation Loc, VarDecl *Var) {
16869 if (VarDecl *Var = dyn_cast<VarDecl>(D)) {
16869 if (VarDecl *Var = dyn_cast<VarDecl>(D)) {
16932 for (VarDecl *VD : *E)
16943 if (auto *VD = dyn_cast<VarDecl>(D)) {
16943 if (auto *VD = dyn_cast<VarDecl>(D)) {
17014 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
17014 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
17118 if (auto *VD = dyn_cast_or_null<VarDecl>(
17118 if (auto *VD = dyn_cast_or_null<VarDecl>(
17739 } else if (isa<VarDecl>(VD)) {
tools/clang/lib/Sema/SemaExprCXX.cpp 736 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
736 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
794 const VarDecl *NRVOVariable = nullptr;
3148 if (const VarDecl *VD = dyn_cast<const VarDecl>(D->getDecl())) {
3148 if (const VarDecl *VD = dyn_cast<const VarDecl>(D->getDecl())) {
3621 CheckConditionVariable(cast<VarDecl>(ConditionVar), StmtLoc, CK);
7425 static inline bool VariableCanNeverBeAConstantExpression(VarDecl *Var,
7428 const VarDecl *DefVD = nullptr;
7614 VarDecl *InitDecl; // A decl to avoid as a correction because it is in the
7844 TransformTypos(Sema &SemaRef, VarDecl *InitDecl, llvm::function_ref<ExprResult(Expr *)> Filter)
tools/clang/lib/Sema/SemaExprMember.cpp 812 VarDecl *baseVariable = indirectField->getVarDecl();
937 VarDecl *
952 VarDecl *Var = cast<VarDecl>(VDecl.get());
952 VarDecl *Var = cast<VarDecl>(VDecl.get());
1131 if (VarDecl *Var = dyn_cast<VarDecl>(MemberDecl)) {
1131 if (VarDecl *Var = dyn_cast<VarDecl>(MemberDecl)) {
1162 if (VarDecl *Var = getVarTemplateSpecialization(
1817 if (auto *PrivateCopy = isOpenMPCapturedDecl(Field)) {
tools/clang/lib/Sema/SemaExprObjC.cpp 3426 VarDecl *var = dyn_cast<VarDecl>(e->getDecl());
3426 VarDecl *var = dyn_cast<VarDecl>(e->getDecl());
tools/clang/lib/Sema/SemaInit.cpp 1974 } else if (cast<VarDecl>(Entity.getDecl())->hasLocalStorage()) {
3759 VarDecl *VD = cast<VarDecl>(Entity.getDecl());
3759 VarDecl *VD = cast<VarDecl>(Entity.getDecl());
5360 VarDecl *var = dyn_cast<VarDecl>(cast<DeclRefExpr>(e)->getDecl());
5360 VarDecl *var = dyn_cast<VarDecl>(cast<DeclRefExpr>(e)->getDecl());
6679 static bool isVarOnPath(IndirectLocalPath &Path, VarDecl *VD) {
6964 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
6964 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
7061 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
7061 auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
7297 if (cast<VarDecl>(Path[I].D)->isImplicit())
7463 auto *VD = DRE ? dyn_cast<VarDecl>(DRE->getDecl()) : nullptr;
7463 auto *VD = DRE ? dyn_cast<VarDecl>(DRE->getDecl()) : nullptr;
7547 const VarDecl *VD = cast<VarDecl>(Elem.D);
7547 const VarDecl *VD = cast<VarDecl>(Elem.D);
7617 const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl());
7617 const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl());
8494 auto Var = cast<VarDecl>(DRE->getDecl());
tools/clang/lib/Sema/SemaLambda.cpp 65 VarDecl *VarToCapture) {
175 VarDecl *VarToCapture, Sema &S) {
299 } else if (VarDecl *Var = dyn_cast<VarDecl>(ManglingContextDecl)) {
299 } else if (VarDecl *Var = dyn_cast<VarDecl>(ManglingContextDecl)) {
849 VarDecl *Sema::createLambdaInitCaptureVarDecl(SourceLocation Loc,
864 VarDecl *NewVD = VarDecl::Create(Context, CurContext, Loc,
864 VarDecl *NewVD = VarDecl::Create(Context, CurContext, Loc,
877 void Sema::addInitCapture(LambdaScopeInfo *LSI, VarDecl *Var) {
1075 VarDecl *Var = nullptr;
1098 InitStyle = VarDecl::CInit;
1101 InitStyle = VarDecl::CallInit;
1104 InitStyle = VarDecl::ListInit;
1148 DeclFilterCCC<VarDecl> Validator{};
1153 Var = R.getAsSingle<VarDecl>();
1507 VarDecl *Var = Cap.getVariable();
1606 auto *Var = Capture.getVariable();
1754 VarDecl *Var = From.getVariable();
1909 VarDecl *CapVar = VarDecl::Create(Context, Block, ConvLocation,
1909 VarDecl *CapVar = VarDecl::Create(Context, Block, ConvLocation,
tools/clang/lib/Sema/SemaLookup.cpp 429 if (VarDecl *DVD = dyn_cast<VarDecl>(DUnderlying)) {
429 if (VarDecl *DVD = dyn_cast<VarDecl>(DUnderlying)) {
430 VarDecl *EVD = cast<VarDecl>(EUnderlying);
430 VarDecl *EVD = cast<VarDecl>(EUnderlying);
440 if (!isa<FunctionDecl>(DUnderlying) && !isa<VarDecl>(DUnderlying)) {
469 return isa<VarDecl>(D) || isa<EnumConstantDecl>(D) || isa<FunctionDecl>(D) ||
1535 } else if (VarDecl *VD = dyn_cast<VarDecl>(Entity)) {
1535 } else if (VarDecl *VD = dyn_cast<VarDecl>(Entity)) {
1536 if (VarDecl *Pattern = VD->getTemplateInstantiationPattern())
1650 if (auto *VD = dyn_cast<VarDecl>(D))
2144 if (isa<VarDecl>(D) || isa<TypeDecl>(D) || isa<EnumConstantDecl>(D))
5279 if (VarDecl *VD = dyn_cast<VarDecl>(D))
5279 if (VarDecl *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Sema/SemaOpenMP.cpp 89 using LCDeclInfo = std::pair<unsigned, VarDecl *>;
254 bool isOpenMPLocal(VarDecl *D, const_iterator Iter) const;
421 void addLoopControlVariable(const ValueDecl *D, VarDecl *Capture);
622 bool isThreadPrivate(VarDecl *D) {
883 const auto *VD = dyn_cast<VarDecl>(D);
883 const auto *VD = dyn_cast<VarDecl>(D);
904 auto *VD = dyn_cast<VarDecl>(D);
904 auto *VD = dyn_cast<VarDecl>(D);
1026 void DSAStackTy::addLoopControlVariable(const ValueDecl *D, VarDecl *Capture) {
1100 static VarDecl *buildVarDecl(Sema &SemaRef, SourceLocation Loc, QualType Type,
1106 auto *Decl =
1107 VarDecl::Create(SemaRef.Context, DC, Loc, Loc, II, Type, TInfo, SC_None);
1121 static DeclRefExpr *buildDeclRefExpr(Sema &S, VarDecl *D, QualType Ty,
1147 VarDecl *VD = buildVarDecl(SemaRef, SR.getBegin(),
1170 VarDecl *VD = buildVarDecl(SemaRef, SR.getBegin(),
1227 bool DSAStackTy::isOpenMPLocal(VarDecl *D, const_iterator I) const {
1275 const VarDecl *VD = dyn_cast<VarDecl>(D);
1275 const VarDecl *VD = dyn_cast<VarDecl>(D);
1277 VarDecl::DeclarationOnly;
1292 auto *VD = dyn_cast<VarDecl>(D);
1292 auto *VD = dyn_cast<VarDecl>(D);
1310 if ((VD && VD->getTLSKind() != VarDecl::TLS_None &&
1892 VarDecl *Sema::isOpenMPCapturedDecl(ValueDecl *D, bool CheckScopeInfo,
1897 auto *VD = dyn_cast<VarDecl>(D);
1897 auto *VD = dyn_cast<VarDecl>(D);
1959 return VD ? VD : cast<VarDecl>(DVarPrivate.PrivateCopy->getDecl());
1970 return VD ? VD : cast<VarDecl>(DVarPrivate.PrivateCopy->getDecl());
2012 if (const auto *VD = dyn_cast<VarDecl>(D)) {
2012 if (const auto *VD = dyn_cast<VarDecl>(D)) {
2074 const auto *VD = dyn_cast<VarDecl>(D);
2074 const auto *VD = dyn_cast<VarDecl>(D);
2165 auto *VD = cast<VarDecl>(DRE->getDecl());
2165 auto *VD = cast<VarDecl>(DRE->getDecl());
2175 VarDecl *VDPrivate = buildVarDecl(
2218 if (const auto *VD = dyn_cast_or_null<VarDecl>(ND)) {
2218 if (const auto *VD = dyn_cast_or_null<VarDecl>(ND)) {
2240 if (ND && ((isa<VarDecl>(ND) && ND->getKind() == Decl::Var) ||
2265 VarDecl *VD;
2276 VD = Corrected.getCorrectionDeclAs<VarDecl>();
2283 } else if (!(VD = Lookup.getAsSingle<VarDecl>())) {
2296 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2303 VarDecl *CanonicalVD = VD->getCanonicalDecl();
2313 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2328 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2344 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2358 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2399 if (const auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
2399 if (const auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
2427 auto *VD = cast<VarDecl>(DE->getDecl());
2427 auto *VD = cast<VarDecl>(DE->getDecl());
2454 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2463 if ((VD->getTLSKind() != VarDecl::TLS_None &&
2470 << VD << ((VD->getTLSKind() != VarDecl::TLS_None) ? 0 : 1);
2472 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
2529 Sema &S, DSAStackTy *Stack, Expr *RefExpr, VarDecl *VD,
2579 applyOMPAllocateAttribute(Sema &S, VarDecl *VD,
2617 auto *VD = cast<VarDecl>(DE->getDecl());
2617 auto *VD = cast<VarDecl>(DE->getDecl());
2620 if (VD->getTLSKind() != VarDecl::TLS_None ||
2642 VarDecl::DeclarationOnly;
2732 auto *VD = dyn_cast<VarDecl>(D);
2789 if (auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
2789 if (auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
3056 VarDecl *VD = Cap.getCapturedVar();
3536 if (VarDecl *VD = S.isOpenMPCapturedDecl(D))
3610 llvm::DenseMap<const VarDecl *, FieldDecl *> Captures;
3615 VarDecl *VD = LC.getCapturedVar();
3740 MarkVariableReferenced(D->getLocation(), cast<VarDecl>(D));
4111 if ((!DE || !isa<VarDecl>(DE->getDecl())) &&
4137 llvm::DenseMap<CanonicalDeclPtr<Decl>, CanonicalDeclPtr<VarDecl>>
4193 cast<VarDecl>(cast<DeclRefExpr>(*I)->getDecl()));
4224 VarDecl *PrivateVD = DeclToCopy[VD];
4781 const VarDecl *CanonPVD = PVD->getCanonicalDecl();
4851 const VarDecl *CanonPVD = PVD->getCanonicalDecl();
4920 const VarDecl *CanonPVD = PVD->getCanonicalDecl();
5593 if (isa<VarDecl>(VD))
5600 if (isa<VarDecl>(VD) || isa<FieldDecl>(VD))
5681 if (auto *Var = dyn_cast_or_null<VarDecl>(DS->getSingleDecl())) {
5681 if (auto *Var = dyn_cast_or_null<VarDecl>(DS->getSingleDecl())) {
5684 if (Var->getInitStyle() != VarDecl::CInit && EmitDiags)
5738 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
5738 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
6367 auto *VD = dyn_cast<VarDecl>(LCDecl);
6367 auto *VD = dyn_cast<VarDecl>(LCDecl);
6386 VarDecl *PrivateVar = buildVarDecl(
6389 isa<VarDecl>(LCDecl)
6390 ? buildDeclRefExpr(SemaRef, cast<VarDecl>(LCDecl), Type, DefaultLoc)
6475 auto *VD = dyn_cast<VarDecl>(D);
6475 auto *VD = dyn_cast<VarDecl>(D);
6478 if (VarDecl *Private = isOpenMPCapturedDecl(D)) {
6483 VD = cast<VarDecl>(PrivateRef->getDecl());
6490 if (auto *Var = dyn_cast_or_null<VarDecl>(LD))
7140 VarDecl *LBDecl = buildVarDecl(SemaRef, InitLoc, VType, ".omp.lb");
7147 VarDecl *UBDecl = buildVarDecl(SemaRef, InitLoc, VType, ".omp.ub");
7155 VarDecl *ILDecl = buildVarDecl(SemaRef, InitLoc, Int32Ty, ".omp.is_last");
7162 VarDecl *STDecl =
7186 VarDecl *CombLBDecl =
7194 VarDecl *CombUBDecl =
7234 VarDecl *IVDecl = buildVarDecl(SemaRef, InitLoc, RealVType, ".omp.iv");
7492 auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IS.CounterVar)->getDecl());
7492 auto *VD = cast<VarDecl>(cast<DeclRefExpr>(IS.CounterVar)->getDecl());
12033 auto *VD = dyn_cast<VarDecl>(D);
12033 auto *VD = dyn_cast<VarDecl>(D);
12077 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
12121 VarDecl *VDPrivate =
12201 auto *VD = dyn_cast<VarDecl>(D);
12201 auto *VD = dyn_cast<VarDecl>(D);
12363 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
12371 VarDecl *VDPrivate =
12384 VarDecl *VDInit =
12389 VarDecl *VDInitTemp = buildVarDecl(*this, RefExpr->getExprLoc(), ElemType,
12404 VarDecl *VDInit = buildVarDecl(*this, RefExpr->getExprLoc(), Type,
12477 auto *VD = dyn_cast<VarDecl>(D);
12477 auto *VD = dyn_cast<VarDecl>(D);
12548 VarDecl *SrcVD = buildVarDecl(*this, ERange.getBegin(),
12553 VarDecl *DstVD =
12629 auto *VD = dyn_cast<VarDecl>(D);
12629 auto *VD = dyn_cast<VarDecl>(D);
12667 if (auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
12667 if (auto *VD = dyn_cast<VarDecl>(E->getDecl())) {
13202 auto *VD = dyn_cast<VarDecl>(D);
13202 auto *VD = dyn_cast<VarDecl>(D);
13223 VarDecl *VDDef = VD->getDefinition();
13318 VarDecl::DeclarationOnly;
13331 VarDecl::DeclarationOnly;
13341 VarDecl *LHSVD = buildVarDecl(S, ELoc, Type, ".reduction.lhs",
13343 VarDecl *RHSVD = buildVarDecl(S, ELoc, Type, D->getName(),
13392 VarDecl *PrivateVD =
13406 RHSVD->setInitStyle(VarDecl::CallInit);
13521 VarDecl::DeclarationOnly;
13756 const auto *VD = dyn_cast_or_null<VarDecl>(D);
13756 const auto *VD = dyn_cast_or_null<VarDecl>(D);
13784 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
13822 auto *VD = dyn_cast<VarDecl>(D);
13822 auto *VD = dyn_cast<VarDecl>(D);
13841 VarDecl *Private =
13847 VarDecl *Init = buildVarDecl(*this, ELoc, Type, ".linear.start");
13899 VarDecl *SaveVar =
13978 CapturedRef = cast<VarDecl>(DE->getDecl())->getInit();
13981 buildDeclRefExpr(SemaRef, cast<VarDecl>(DE->getDecl()),
14051 auto *VD = dyn_cast<VarDecl>(D);
14051 auto *VD = dyn_cast<VarDecl>(D);
14063 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
14131 if (!DE || !isa<VarDecl>(DE->getDecl())) {
14138 auto *VD = cast<VarDecl>(D);
14138 auto *VD = cast<VarDecl>(D);
14164 VarDecl *SrcVD =
14169 VarDecl *DstVD =
14226 auto *VD = dyn_cast<VarDecl>(D);
14226 auto *VD = dyn_cast<VarDecl>(D);
14265 VD->isThisDeclarationADefinition(Context) == VarDecl::DeclarationOnly;
14278 VarDecl *SrcVD =
14282 VarDecl *DstVD =
14677 if (!isa<VarDecl>(CurE->getDecl()))
15371 auto *VD = dyn_cast<VarDecl>(CurDeclaration);
15371 auto *VD = dyn_cast<VarDecl>(CurDeclaration);
15683 VarDecl *OmpInParm =
15691 VarDecl *OmpOutParm =
15721 VarDecl *Sema::ActOnOpenMPDeclareReductionInitializerStart(Scope *S, Decl *D) {
15743 VarDecl *OmpPrivParm =
15751 VarDecl *OmpOrigParm =
15769 VarDecl *OmpPrivParm) {
15916 VarDecl *VD = buildVarDecl(*this, StartLoc, MapperType, VN.getAsString());
16201 if (!isa<VarDecl>(ND) && !isa<FunctionDecl>(ND) &&
16248 if (!D || !isa<VarDecl>(D))
16250 auto *VD = cast<VarDecl>(D);
16250 auto *VD = cast<VarDecl>(D);
16292 if (auto *VD = dyn_cast<VarDecl>(D)) {
16292 if (auto *VD = dyn_cast<VarDecl>(D)) {
16333 if (isa<VarDecl>(D) || isa<FunctionDecl>(D) ||
16409 auto *VD = dyn_cast<VarDecl>(D);
16409 auto *VD = dyn_cast<VarDecl>(D);
16431 VarDecl *VDInit =
16596 auto *VD = dyn_cast<VarDecl>(D);
16596 auto *VD = dyn_cast<VarDecl>(D);
tools/clang/lib/Sema/SemaStmt.cpp 95 VarDecl *var = dyn_cast<VarDecl>(decl);
95 VarDecl *var = dyn_cast<VarDecl>(decl);
799 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
799 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
1363 llvm::SetVector<VarDecl *, llvm::SmallVector<VarDecl *, 8>,
1363 llvm::SetVector<VarDecl *, llvm::SmallVector<VarDecl *, 8>,
1364 llvm::SmallPtrSet<VarDecl *, 8>>;
1435 VarDecl *VD = dyn_cast<VarDecl>(E->getDecl());
1435 VarDecl *VD = dyn_cast<VarDecl>(E->getDecl());
1509 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
1509 if (VarDecl *VD = dyn_cast<VarDecl>(E->getDecl()))
1552 for (auto *VD : Decls)
1566 for (auto *VD : Decls)
1776 VarDecl *VD = dyn_cast<VarDecl>(DI);
1776 VarDecl *VD = dyn_cast<VarDecl>(DI);
1917 VarDecl *D = dyn_cast<VarDecl>(DS->getSingleDecl());
1917 VarDecl *D = dyn_cast<VarDecl>(DS->getSingleDecl());
1985 static bool FinishForRangeVarDecl(Sema &SemaRef, VarDecl *Decl, Expr *Init,
2057 VarDecl *BuildForRangeVarDecl(Sema &SemaRef, SourceLocation Loc,
2062 VarDecl *Decl = VarDecl::Create(SemaRef.Context, DC, Loc, Loc, II, Type,
2062 VarDecl *Decl = VarDecl::Create(SemaRef.Context, DC, Loc, Loc, II, Type,
2135 VarDecl *RangeVar = BuildForRangeVarDecl(*this, RangeLoc,
2170 QualType RangeType, VarDecl *BeginVar, VarDecl *EndVar,
2170 QualType RangeType, VarDecl *BeginVar, VarDecl *EndVar,
2375 VarDecl *RangeVar = cast<VarDecl>(RangeDS->getSingleDecl());
2375 VarDecl *RangeVar = cast<VarDecl>(RangeDS->getSingleDecl());
2379 VarDecl *LoopVar = cast<VarDecl>(LoopVarDS->getSingleDecl());
2379 VarDecl *LoopVar = cast<VarDecl>(LoopVarDS->getSingleDecl());
2430 VarDecl *BeginVar = BuildForRangeVarDecl(*this, ColonLoc, AutoType,
2432 VarDecl *EndVar = BuildForRangeVarDecl(*this, ColonLoc, AutoType,
2708 const VarDecl *VD,
2782 const VarDecl *VD) {
2833 const VarDecl *VD = ForStmt->getLoopVariable();
2965 VarDecl *Sema::getCopyElisionCandidate(QualType ReturnType, Expr *E,
2972 VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl());
2972 VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl());
2981 bool Sema::isCopyElisionCandidate(QualType ReturnType, const VarDecl *VD,
3044 const VarDecl *NRVOCandidate,
3122 const VarDecl *NRVOCandidate,
3145 const VarDecl *NRVOCandidateInCXX11 =
3182 const VarDecl *FakeNRVOCandidate =
3334 const VarDecl *NRVOCandidate = nullptr;
3566 if (VarDecl *VD =
3754 const VarDecl *NRVOCandidate = nullptr;
3823 VarDecl *Var = cast_or_null<VarDecl>(Parm);
3823 VarDecl *Var = cast_or_null<VarDecl>(Parm);
3943 CXXCatchStmt(CatchLoc, cast_or_null<VarDecl>(ExDecl), HandlerBlock);
tools/clang/lib/Sema/SemaStmtAsm.cpp 196 const VarDecl *Variable = dyn_cast<VarDecl>(AsmDeclRef->getDecl());
196 const VarDecl *Variable = dyn_cast<VarDecl>(AsmDeclRef->getDecl());
790 if (VarDecl *VD = dyn_cast<VarDecl>(FoundDecl))
790 if (VarDecl *VD = dyn_cast<VarDecl>(FoundDecl))
tools/clang/lib/Sema/SemaTemplate.cpp 4063 VarDecl *InstantiationPattern = Template->getTemplatedDecl();
4201 VarDecl *Var = cast<VarDecl>(Decl.get());
4201 VarDecl *Var = cast<VarDecl>(Decl.get());
6076 VarDecl *Var = dyn_cast<VarDecl>(Entity);
6076 VarDecl *Var = dyn_cast<VarDecl>(Entity);
7427 if (VarDecl *Var = dyn_cast<VarDecl>(D))
7427 if (VarDecl *Var = dyn_cast<VarDecl>(D))
7473 else if (isa<VarDecl>(Specialized))
8658 } else if (isa<VarDecl>(Member)) {
8659 VarDecl *PrevVar;
8661 (PrevVar = dyn_cast<VarDecl>(Previous.getFoundDecl())))
8768 } else if (auto *MemberVar = dyn_cast<VarDecl>(Member)) {
8768 } else if (auto *MemberVar = dyn_cast<VarDecl>(Member)) {
8770 cast<VarDecl>(InstantiatedFrom), TSK_ExplicitSpecialization);
8794 static void completeMemberSpecializationImpl(Sema &S, DeclT *OrigD,
8815 else if (auto *Var = dyn_cast<VarDecl>(Instantiation))
8815 else if (auto *Var = dyn_cast<VarDecl>(Instantiation))
9453 VarDecl *Prev = Previous.getAsSingle<VarDecl>();
9453 VarDecl *Prev = Previous.getAsSingle<VarDecl>();
9513 Prev = cast<VarDecl>(Res.get());
10384 if (auto *VD = dyn_cast<VarDecl>(ND))
10384 if (auto *VD = dyn_cast<VarDecl>(ND))
10418 void checkImpl(SpecDecl *Spec) {
10454 void checkInstantiated(VarDecl *RD) {
tools/clang/lib/Sema/SemaTemplateDeduction.cpp 4616 void Sema::DiagnoseAutoDeductionFailure(VarDecl *VDecl, Expr *Init) {
tools/clang/lib/Sema/SemaTemplateInstantiate.cpp 508 } else if (VarDecl *VD = dyn_cast<VarDecl>(D)) {
508 } else if (VarDecl *VD = dyn_cast<VarDecl>(D)) {
887 Old, cast<VarDecl>(New));
927 VarDecl *RebuildExceptionDecl(VarDecl *ExceptionDecl,
927 VarDecl *RebuildExceptionDecl(VarDecl *ExceptionDecl,
935 VarDecl *RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
935 VarDecl *RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
1128 VarDecl *
1129 TemplateInstantiator::RebuildExceptionDecl(VarDecl *ExceptionDecl,
1134 VarDecl *Var = inherited::RebuildExceptionDecl(ExceptionDecl, Declarator,
1141 VarDecl *TemplateInstantiator::RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
1141 VarDecl *TemplateInstantiator::RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
1144 VarDecl *Var = inherited::RebuildObjCExceptionDecl(ExceptionDecl, TSInfo, T);
1407 VarDecl *D = E->getExpansion(getSema().ArgumentPackSubstitutionIndex);
1408 VarDecl *VD = cast_or_null<VarDecl>(TransformDecl(E->getExprLoc(), D));
1408 VarDecl *VD = cast_or_null<VarDecl>(TransformDecl(E->getExprLoc(), D));
1420 SmallVector<VarDecl *, 8> Vars;
1424 VarDecl *D = cast_or_null<VarDecl>(TransformDecl(E->getExprLoc(), *I));
1424 VarDecl *D = cast_or_null<VarDecl>(TransformDecl(E->getExprLoc(), *I));
1465 return RebuildVarDeclRefExpr(cast<VarDecl>(TransformedDecl), E->getExprLoc());
1483 if (VarDecl *PD = dyn_cast<VarDecl>(D))
1483 if (VarDecl *PD = dyn_cast<VarDecl>(D))
2713 } else if (auto *Var = dyn_cast<VarDecl>(D)) {
2713 } else if (auto *Var = dyn_cast<VarDecl>(D)) {
3058 Pack->push_back(cast<VarDecl>(Inst));
3065 VarDecl *Inst) {
tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp 647 static DeclT *getPreviousDeclForInstantiation(DeclT *D) {
647 static DeclT *getPreviousDeclForInstantiation(DeclT *D) {
648 DeclT *Result = D->getPreviousDecl();
867 Decl *TemplateDeclInstantiator::VisitVarDecl(VarDecl *D) {
871 Decl *TemplateDeclInstantiator::VisitVarDecl(VarDecl *D,
893 VarDecl *Var;
899 Var = VarDecl::Create(SemaRef.Context, DC, D->getInnerLocStart(),
1531 VarDecl *Pattern = D->getTemplatedDecl();
1540 VarDecl *VarInst =
1541 cast_or_null<VarDecl>(VisitVarDecl(Pattern,
3094 VarDecl *OmpPrivParm =
3425 VarTemplateDecl *VarTemplate, VarDecl *D, void *InsertPos,
4406 VarTemplateDecl *VarTemplate, VarDecl *FromVar,
4455 VarTemplateSpecializationDecl *VarSpec, VarDecl *PatternDecl,
4483 VarDecl *NewVar, VarDecl *OldVar,
4483 VarDecl *NewVar, VarDecl *OldVar,
4614 VarDecl *Var, VarDecl *OldVar,
4614 VarDecl *Var, VarDecl *OldVar,
4637 OldVar->getInitStyle() == VarDecl::CallInit);
4697 VarDecl *Var, bool Recursive,
4709 VarDecl *PatternDecl = Var->getTemplateInstantiationPattern();
4774 VarDecl *Def = PatternDecl->getDefinition(getASTContext());
4823 VarDecl *Var;
4825 PassToConsumerRAII(ASTConsumer &Consumer, VarDecl *Var)
4834 if (VarDecl *Def = Var->getDefinition()) {
4861 VarDecl *OldVar = Var;
4867 Var = cast_or_null<VarDecl>(SubstDecl(Def, Var->getDeclContext(),
4876 Var = cast_or_null<VarDecl>(Instantiator.VisitVarTemplateSpecializationDecl(
5186 static bool isInstantiationOfStaticDataMember(VarDecl *Pattern,
5187 VarDecl *Instance) {
5222 if (auto *Var = dyn_cast<VarDecl>(Other))
5222 if (auto *Var = dyn_cast<VarDecl>(Other))
5224 return isInstantiationOfStaticDataMember(cast<VarDecl>(D), Var);
5630 VarDecl *Var = cast<VarDecl>(Inst.first);
5630 VarDecl *Var = cast<VarDecl>(Inst.first);
tools/clang/lib/Sema/SemaTemplateVariadic.cpp 42 if (auto *VD = dyn_cast<VarDecl>(ND)) {
42 if (auto *VD = dyn_cast<VarDecl>(ND)) {
672 if (isa<VarDecl>(ND))
800 if (isa<VarDecl>(ND)) {
1106 for (VarDecl *PD : *Subst)
tools/clang/lib/Sema/SemaType.cpp 7732 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
7732 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
7734 auto *Def = Var->getDefinition();
7903 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
7903 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
7904 if (auto *Pattern = VD->getTemplateInstantiationPattern())
8332 if (isa<FieldDecl>(VD) || isa<VarDecl>(VD))
8354 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
8354 if (VarDecl *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
tools/clang/lib/Sema/TreeTransform.h 440 Sema::ConditionResult TransformCondition(SourceLocation Loc, VarDecl *Var,
1468 VarDecl *RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
1468 VarDecl *RebuildObjCExceptionDecl(VarDecl *ExceptionDecl,
1482 VarDecl *Var,
2037 VarDecl *RebuildExceptionDecl(VarDecl *ExceptionDecl,
2037 VarDecl *RebuildExceptionDecl(VarDecl *ExceptionDecl,
2042 VarDecl *Var = getSema().BuildExceptionDeclaration(nullptr, Declarator,
2054 VarDecl *ExceptionDecl,
2083 if (VarDecl *RangeVar = dyn_cast<VarDecl>(RangeStmt->getSingleDecl())) {
2083 if (VarDecl *RangeVar = dyn_cast<VarDecl>(RangeStmt->getSingleDecl())) {
3643 SourceLocation Loc, VarDecl *Var, Expr *Expr, Sema::ConditionKind Kind) {
3645 VarDecl *ConditionVar = cast_or_null<VarDecl>(
3645 VarDecl *ConditionVar = cast_or_null<VarDecl>(
7197 auto *Promise = SemaRef.buildCoroutinePromise(FD->getLocation());
7408 VarDecl *Var = nullptr;
7409 if (VarDecl *FromVar = S->getCatchParamDecl()) {
7562 VarDecl *Var = nullptr;
7563 if (VarDecl *ExceptionDecl = S->getExceptionDecl()) {
11398 VarDecl *OldVD = C->getCapturedVar();
11403 OldVD->getInit(), OldVD->getInitStyle() == VarDecl::CallInit);
11415 C->getCapturedVar()->getInitStyle() != VarDecl::CInit,
11574 VarDecl *OldVD = C->getCapturedVar();
11584 VarDecl *NewVD = getSema().createLambdaInitCaptureVarDecl(
11629 VarDecl *Pack = C->getCapturedVar();
11632 VarDecl *CapturedVar
11633 = cast_or_null<VarDecl>(getDerived().TransformDecl(C->getLocation(),
11653 VarDecl *CapturedVar
11654 = cast_or_null<VarDecl>(getDerived().TransformDecl(C->getLocation(),
11732 VarDecl *CapturedVar = cast_or_null<VarDecl>(
11732 VarDecl *CapturedVar = cast_or_null<VarDecl>(
12781 VarDecl *oldCapture = I.getVariable();
12787 VarDecl *newCapture =
12788 cast<VarDecl>(getDerived().TransformDecl(E->getCaretLocation(),
tools/clang/lib/Serialization/ASTCommon.cpp 440 if (auto *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Serialization/ASTCommon.h 122 if (auto *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Serialization/ASTReader.cpp 8672 SmallVectorImpl<VarDecl *> &TentativeDefs) {
8674 VarDecl *Var = dyn_cast_or_null<VarDecl>(GetDecl(TentativeDefinitions[I]));
8674 VarDecl *Var = dyn_cast_or_null<VarDecl>(GetDecl(TentativeDefinitions[I]));
11343 VarDecl *FirstVD = cast<VarDecl>(FirstDecl);
11343 VarDecl *FirstVD = cast<VarDecl>(FirstDecl);
11344 VarDecl *SecondVD = cast<VarDecl>(SecondDecl);
11344 VarDecl *SecondVD = cast<VarDecl>(SecondDecl);
tools/clang/lib/Serialization/ASTReaderDecl.cpp 144 T *ReadDeclAs() {
145 return Record.readDeclAs<T>();
249 operator T*() const { return dyn_cast_or_null<T>(Existing); }
249 operator T*() const { return dyn_cast_or_null<T>(Existing); }
377 RedeclarableResult VisitVarDeclImpl(VarDecl *D);
378 void VisitVarDecl(VarDecl *VD) { VisitVarDeclImpl(VD); }
412 RedeclarableResult VisitRedeclarable(Redeclarable<T> *D);
415 void mergeRedeclarable(Redeclarable<T> *D, RedeclarableResult &Redecl,
419 void mergeRedeclarable(Redeclarable<T> *D, T *Existing,
419 void mergeRedeclarable(Redeclarable<T> *D, T *Existing,
1360 ASTDeclReader::RedeclarableResult ASTDeclReader::VisitVarDeclImpl(VarDecl *VD) {
1426 auto *Tmpl = ReadDeclAs<VarDecl>();
1426 auto *Tmpl = ReadDeclAs<VarDecl>();
1506 auto *decl = ReadDeclAs<VarDecl>();
1506 auto *decl = ReadDeclAs<VarDecl>();
1712 auto *Var = ReadDeclAs<VarDecl>();
1712 auto *Var = ReadDeclAs<VarDecl>();
2394 auto *FirstDecl = cast_or_null<T>(Reader.GetDecl(FirstDeclID));
2394 auto *FirstDecl = cast_or_null<T>(Reader.GetDecl(FirstDeclID));
2400 D->RedeclLink = Redeclarable<T>::PreviousDeclLink(FirstDecl);
2404 auto *DAsT = static_cast<T *>(D);
2430 auto *D = static_cast<T *>(DBase);
2434 mergeRedeclarable(D, cast<T>(Existing), Redecl, TemplatePatternID);
2436 if (T *Existing = ExistingRes)
2482 if (auto *DVar = dyn_cast<VarDecl>(DPattern))
2482 if (auto *DVar = dyn_cast<VarDecl>(DPattern))
2483 return mergeRedeclarable(DVar, cast<VarDecl>(ExistingPattern), Result);
2496 auto *D = static_cast<T *>(DBase);
2497 T *ExistingCanon = Existing->getCanonicalDecl();
2498 T *DCanon = D->getCanonicalDecl();
2506 D->RedeclLink = Redeclarable<T>::PreviousDeclLink(ExistingCanon);
2776 if (const auto *Var = dyn_cast<VarDecl>(D))
2776 if (const auto *Var = dyn_cast<VarDecl>(D))
2778 (Var->isThisDeclarationADefinition() == VarDecl::Definition ||
3038 if (const auto *VarX = dyn_cast<VarDecl>(X)) {
3038 if (const auto *VarX = dyn_cast<VarDecl>(X)) {
3039 const auto *VarY = cast<VarDecl>(Y);
3039 const auto *VarY = cast<VarDecl>(Y);
3381 Decl *ASTDeclReader::getMostRecentDeclImpl(Redeclarable<DeclT> *D) {
3418 Redeclarable<VarDecl> *D,
3420 auto *VD = static_cast<VarDecl *>(D);
3421 auto *PrevVD = cast<VarDecl>(Previous);
3421 auto *PrevVD = cast<VarDecl>(Previous);
3428 if (VD->isThisDeclarationADefinition() == VarDecl::Definition) {
3429 for (VarDecl *CurD = PrevVD; CurD; CurD = CurD->getPreviousDecl()) {
3430 if (CurD->isThisDeclarationADefinition() == VarDecl::Definition) {
3567 void ASTDeclReader::attachLatestDeclImpl(Redeclarable<DeclT> *D, Decl *Latest) {
3568 D->RedeclLink.setLatest(cast<DeclT>(Latest));
3589 void ASTDeclReader::markIncompleteDeclChainImpl(Redeclarable<DeclT> *D) {
3819 D = VarDecl::CreateDeserialized(Context, ID);
4276 auto *VD = cast<VarDecl>(D);
4276 auto *VD = cast<VarDecl>(D);
4295 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
4295 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
4480 Reader.getContext().setStaticLocalNumber(cast<VarDecl>(D),
tools/clang/lib/Serialization/ASTReaderStmt.cpp 95 T *ReadDeclAs() {
96 return Record.readDeclAs<T>();
232 S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
255 S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
279 S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
297 S->setConditionVariable(Record.getContext(), ReadDeclAs<VarDecl>());
336 S->setNRVOCandidate(ReadDeclAs<VarDecl>());
514 I.VarAndKind.setPointer(ReadDeclAs<VarDecl>());
1332 S->setCatchParamDecl(ReadDeclAs<VarDecl>());
1397 S->ExceptionDecl = ReadDeclAs<VarDecl>();
1896 auto **Parms = E->getTrailingObjects<VarDecl *>();
1896 auto **Parms = E->getTrailingObjects<VarDecl *>();
1898 Parms[i] = ReadDeclAs<VarDecl>();
tools/clang/lib/Serialization/ASTWriter.cpp 5292 const VarDecl *VD = cast<VarDecl>(D);
5292 const VarDecl *VD = cast<VarDecl>(D);
6243 VarDecl *Var =
6453 void ASTWriter::VariableDefinitionInstantiated(const VarDecl *D) {
6480 if (auto *VD = dyn_cast<VarDecl>(D))
tools/clang/lib/Serialization/ASTWriterDecl.cpp 98 void VisitVarDecl(VarDecl *D);
129 template <typename T> void VisitRedeclarable(Redeclarable<T> *D);
944 void ASTDeclWriter::VisitVarDecl(VarDecl *D) {
1085 D->getInitStyle() == VarDecl::CInit && // Can params have anything else?
1722 T *First = D->getFirstDecl();
1723 T *MostRecent = First->getMostRecentDecl();
1724 T *DAsT = static_cast<T *>(D);
tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp 896 const VarDecl *ElemDecl = cast<VarDecl>(DS->getSingleDecl());
896 const VarDecl *ElemDecl = cast<VarDecl>(DS->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp 2280 const VarDecl *D = dyn_cast<VarDecl>(I);
2280 const VarDecl *D = dyn_cast<VarDecl>(I);
tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp 168 const auto *LenArgVal = dyn_cast<VarDecl>(LenArgDRE->getDecl());
168 const auto *LenArgVal = dyn_cast<VarDecl>(LenArgDRE->getDecl());
tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp 210 getIncrementedVar(const Expr *expr, const VarDecl *x, const VarDecl *y) {
210 getIncrementedVar(const Expr *expr, const VarDecl *x, const VarDecl *y) {
286 const VarDecl *vdLHS = drLHS ? dyn_cast<VarDecl>(drLHS->getDecl()) : nullptr;
286 const VarDecl *vdLHS = drLHS ? dyn_cast<VarDecl>(drLHS->getDecl()) : nullptr;
287 const VarDecl *vdRHS = drRHS ? dyn_cast<VarDecl>(drRHS->getDecl()) : nullptr;
287 const VarDecl *vdRHS = drRHS ? dyn_cast<VarDecl>(drRHS->getDecl()) : nullptr;
297 const VarDecl *vdInc = cast<VarDecl>(drInc->getDecl());
297 const VarDecl *vdInc = cast<VarDecl>(drInc->getDecl());
tools/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp 37 llvm::DenseSet<const VarDecl *> &S;
56 if (const VarDecl *D = dyn_cast<VarDecl>(DR->getDecl()))
56 if (const VarDecl *D = dyn_cast<VarDecl>(DR->getDecl()))
61 EHCodeVisitor(llvm::DenseSet<const VarDecl *> &S) :
139 llvm::SmallPtrSet<const VarDecl*, 20> Escaped;
142 std::unique_ptr<llvm::DenseSet<const VarDecl *>> InEH;
150 llvm::SmallPtrSet<const VarDecl *, 20> &escaped,
157 bool isLive(const LiveVariables::LivenessValues &Live, const VarDecl *D) {
163 InEH.reset(new llvm::DenseSet<const VarDecl *>());
194 void Report(const VarDecl *V, DeadStoreKind dsk,
267 void CheckVarDecl(const VarDecl *VD, const Expr *Ex, const Expr *Val,
290 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
290 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
294 bool isIncrement(VarDecl *VD, const BinaryOperator* B) {
332 if (VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
332 if (VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
350 if (VD == dyn_cast<VarDecl>(RhsDR->getDecl()))
378 const auto *V = dyn_cast<VarDecl>(DI);
378 const auto *V = dyn_cast<VarDecl>(DI);
420 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
420 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
458 llvm::SmallPtrSet<const VarDecl*, 20> Escaped;
477 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
477 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
484 llvm::DenseMap<const VarDecl *, FieldDecl *> CaptureFields;
492 VarDecl *VD = C.getCapturedVar();
tools/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp 64 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
64 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) {
99 const VarDecl *VD;
tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp 685 if (const auto *D = dyn_cast_or_null<VarDecl>(DeclReg->getDecl())) {
685 if (const auto *D = dyn_cast_or_null<VarDecl>(DeclReg->getDecl())) {
tools/clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp 132 void VisitVarDecl(VarDecl *VD);
146 if (VarDecl *VD = dyn_cast<VarDecl>(I))
146 if (VarDecl *VD = dyn_cast<VarDecl>(I))
150 void StringRefCheckerVisitor::VisitVarDecl(VarDecl *VD) {
tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp 1246 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
1246 if (const VarDecl *VD = dyn_cast<VarDecl>(DRE->getDecl())) {
tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp 96 const VarDecl *VD = VR->getDecl();
tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp 1994 const VarDecl *VD;
2009 const VarDecl *VD;
2024 const VarDecl *VD;
3045 if (const VarDecl *D = dyn_cast<VarDecl>(ArgDRE->getDecl()))
3045 if (const VarDecl *D = dyn_cast<VarDecl>(ArgDRE->getDecl()))
tools/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp 31 typedef llvm::PointerUnion<const Stmt *, const VarDecl *> ExprParent;
103 if (const VarDecl *VD = dyn_cast<VarDecl>(I))
103 if (const VarDecl *VD = dyn_cast<VarDecl>(I))
211 if (i->CastedExprParent.is<const VarDecl *>()) {
213 i->CastedExprParent.get<const VarDecl *>()->getTypeSourceInfo();
tools/clang/lib/StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp 98 const VarDecl *Decl = Region->getDecl();
tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp 997 auto *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
1033 auto *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp 57 bool VisitVarDecl(const VarDecl *VD) {
114 void visitVariable(const VarDecl *VD) const {
tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp 514 const VarDecl *VD = VR->getDecl();
tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp 37 const VarDecl *VD) {
66 const VarDecl *VD = VR->getDecl();
tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp 88 const VarDecl *VD = cast<VarDecl>(DS->getSingleDecl());
88 const VarDecl *VD = cast<VarDecl>(DS->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp 86 const VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
86 const VarDecl *VD = dyn_cast<VarDecl>(DS->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp 163 const VarDecl *LhsDecl;
tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp 196 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
196 if (const auto *VD = dyn_cast<VarDecl>(DRE->getDecl()))
860 if (const auto *VD = dyn_cast<VarDecl>(DS->getSingleDecl()))
860 if (const auto *VD = dyn_cast<VarDecl>(DS->getSingleDecl()))
1269 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
1269 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
1837 if (const auto *VD = dyn_cast<VarDecl>(DR->getDecl())) {
1837 if (const auto *VD = dyn_cast<VarDecl>(DR->getDecl())) {
2348 const bool quotes = isa<VarDecl>(DR->getDecl());
2353 if (const MemRegion *R = state->getLValue(cast<VarDecl>(DR->getDecl()),
2555 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
2555 const auto *VD = dyn_cast<VarDecl>(DRE->getDecl());
tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp 1351 const VarDecl *SelfD = CalleeCtx->getAnalysisDeclContext()->getSelfDecl();
tools/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp 55 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
55 if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl()))
79 std::pair<const clang::VarDecl *, const clang::Expr *>
81 const VarDecl *VD = nullptr;
89 VD = dyn_cast_or_null<VarDecl>(DE->getDecl());
94 VD = cast<VarDecl>(PD->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp 953 const VarDecl *varDecl = Dtor.getVarDecl();
2194 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
2194 const auto *VD = cast<VarDecl>(DS->getSingleDecl());
2427 if (const auto *VD = dyn_cast<VarDecl>(D)) {
2427 if (const auto *VD = dyn_cast<VarDecl>(D)) {
2442 llvm::DenseMap<const VarDecl *, FieldDecl *> LambdaCaptureFields;
2572 if (isa<VarDecl>(Member) || isa<EnumConstantDecl>(Member)) {
tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp 577 const VarDecl *VD = dyn_cast_or_null<VarDecl>(*DS->decl_begin());
577 const VarDecl *VD = dyn_cast_or_null<VarDecl>(*DS->decl_begin());
tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp 127 const auto *Var = cast<VarDecl>(DS->getSingleDecl());
127 const auto *Var = cast<VarDecl>(DS->getSingleDecl());
857 const VarDecl *VD = CS->getExceptionDecl();
tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp 121 const VarDecl *elemD = cast<VarDecl>(DS->getSingleDecl());
121 const VarDecl *elemD = cast<VarDecl>(DS->getSingleDecl());
tools/clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp 162 static bool isPossiblyEscaped(const VarDecl *VD, ExplodedNode *N) {
211 auto CounterVar = Matches[0].getNodeAs<VarDecl>("initVarName");
tools/clang/lib/StaticAnalyzer/Core/LoopWidening.cpp 73 const VarDecl *VD = Match.getNodeAs<VarDecl>(MatchRef);
73 const VarDecl *VD = Match.getNodeAs<VarDecl>(MatchRef);
tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp 533 const auto *VD = cast<VarDecl>(D);
533 const auto *VD = cast<VarDecl>(D);
821 const VarDecl *VD) {
845 const VarRegion* MemRegionManager::getVarRegion(const VarDecl *D,
932 const VarRegion *MemRegionManager::getVarRegion(const VarDecl *D,
1478 BlockDataRegion::getCaptureRegions(const VarDecl *VD) {
1525 for (const auto *VD : ReferencedBlockVars) {
tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp 1099 auto *VD = Match.getNodeAs<VarDecl>(DeclBind);
1115 const VarDecl *VD = VR->getDecl();
1707 const VarDecl *VD = VR->getDecl();
1796 const VarDecl *VD = VR->getDecl();
1993 const VarDecl *VD = R->getDecl();
tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp 390 bool VisitVarDecl(VarDecl *VD) {
405 llvm::Expected<const VarDecl *> CTUDeclOrError =
tools/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp 66 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
66 } else if (const auto *VD = dyn_cast<VarDecl>(D)) {
tools/clang/tools/extra/clang-change-namespace/ChangeNamespace.cpp 592 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var_decl");
592 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var_decl");
tools/clang/tools/extra/clang-include-fixer/find-all-symbols/FindAllSymbols.cpp 76 if (llvm::isa<VarDecl>(ND)) {
tools/clang/tools/extra/clang-move/Move.cpp 180 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("var");
180 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("var");
233 else if (const auto *VD =
234 Result.Nodes.getNodeAs<VarDecl>("class_static_var_decl"))
tools/clang/tools/extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp 55 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var");
55 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var");
tools/clang/tools/extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp 28 static bool isAccessForVar(const Stmt *S, const VarDecl *Var) {
36 static bool isPtrOrReferenceForVar(const Stmt *S, const VarDecl *Var) {
39 if (const auto *LeftVar = dyn_cast<VarDecl>(D)) {
39 if (const auto *LeftVar = dyn_cast<VarDecl>(D)) {
54 static bool hasPtrOrReferenceInStmt(const Stmt *S, const VarDecl *Var) {
71 const VarDecl *Var) {
76 static bool isChanged(const Stmt *LoopStmt, const VarDecl *Var,
96 if (const auto *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
96 if (const auto *Var = dyn_cast<VarDecl>(DRE->getDecl())) {
138 if (const auto *Var = dyn_cast<VarDecl>(DRE->getDecl()))
138 if (const auto *Var = dyn_cast<VarDecl>(DRE->getDecl()))
tools/clang/tools/extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp 52 if (const auto *DestVD = Result.Nodes.getNodeAs<VarDecl>(DestVarDeclName))
52 if (const auto *DestVD = Result.Nodes.getNodeAs<VarDecl>(DestVarDeclName))
71 if (const auto *LengthVD = dyn_cast<VarDecl>(LengthDRE->getDecl()))
71 if (const auto *LengthVD = dyn_cast<VarDecl>(LengthDRE->getDecl()))
81 if (const auto *StrVD = dyn_cast<VarDecl>(StrDRE->getDecl()))
81 if (const auto *StrVD = dyn_cast<VarDecl>(StrDRE->getDecl()))
241 if (const auto *SrcVD = Result.Nodes.getNodeAs<VarDecl>(SrcVarDeclName))
241 if (const auto *SrcVD = Result.Nodes.getNodeAs<VarDecl>(SrcVarDeclName))
242 return dyn_cast<VarDecl>(ArgDRE->getDecl()) == SrcVD;
tools/clang/tools/extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp 41 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("var");
41 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("var");
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp 48 const auto *MatchedDecl = Result.Nodes.getNodeAs<VarDecl>("vardecl");
48 const auto *MatchedDecl = Result.Nodes.getNodeAs<VarDecl>("vardecl");
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp 38 const auto *const Var = Result.Nodes.getNodeAs<VarDecl>("var");
38 const auto *const Var = Result.Nodes.getNodeAs<VarDecl>("var");
42 const auto *const Referencee = Result.Nodes.getNodeAs<VarDecl>("referencee");
42 const auto *const Referencee = Result.Nodes.getNodeAs<VarDecl>("referencee");
44 const auto *const ReferenceeDef = Referencee->getDefinition();
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp 252 const auto *OwnerInitialization =
253 Nodes.getNodeAs<VarDecl>("owner_initialization");
294 const auto *BadOwnerInitialization =
295 Nodes.getNodeAs<VarDecl>("bad_owner_creation_variable");
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp 311 } else if (const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var")) {
311 } else if (const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var")) {
527 const ASTContext &Context, const VarDecl *Var) {
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h 63 const VarDecl *Var);
tools/clang/tools/extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp 64 if (const auto *Matched = Result.Nodes.getNodeAs<VarDecl>("va_list")) {
64 if (const auto *Matched = Result.Nodes.getNodeAs<VarDecl>("va_list")) {
tools/clang/tools/extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.cpp 39 if (const auto *VD = Result.Nodes.getNodeAs<VarDecl>("non-static-var")) {
39 if (const auto *VD = Result.Nodes.getNodeAs<VarDecl>("non-static-var")) {
tools/clang/tools/extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp 51 if (const auto *D = Result.Nodes.getNodeAs<VarDecl>("decl"))
51 if (const auto *D = Result.Nodes.getNodeAs<VarDecl>("decl"))
tools/clang/tools/extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp 28 FixItHint generateFixItHint(const VarDecl *Decl, bool IsConst) {
87 if (const auto *Decl = Result.Nodes.getNodeAs<VarDecl>("global_var")) {
87 if (const auto *Decl = Result.Nodes.getNodeAs<VarDecl>("global_var")) {
95 if (const auto *Decl = Result.Nodes.getNodeAs<VarDecl>("global_const")) {
95 if (const auto *Decl = Result.Nodes.getNodeAs<VarDecl>("global_const")) {
tools/clang/tools/extra/clang-tidy/hicpp/NoAssemblerCheck.cpp 39 else if (const auto *ASM = Result.Nodes.getNodeAs<VarDecl>("asm-var"))
39 else if (const auto *ASM = Result.Nodes.getNodeAs<VarDecl>("asm-var"))
tools/clang/tools/extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.cpp 37 const auto *UserVarDecl = Result.Nodes.getNodeAs<VarDecl>("var");
37 const auto *UserVarDecl = Result.Nodes.getNodeAs<VarDecl>("var");
tools/clang/tools/extra/clang-tidy/llvm/TwineLocalCheck.cpp 27 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("variable");
27 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("variable");
tools/clang/tools/extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp 136 } else if (const auto *VD = dyn_cast<VarDecl>(ND)) {
136 } else if (const auto *VD = dyn_cast<VarDecl>(ND)) {
tools/clang/tools/extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp 57 if (auto *varDecl = dyn_cast<VarDecl>(valueDecl))
141 auto *varDecl = catchStmt->getExceptionDecl();
tools/clang/tools/extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp 48 isa<FunctionDecl>(TargetDecl) || isa<VarDecl>(TargetDecl) ||
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertCheck.cpp 166 internal::Matcher<VarDecl> TestDerefReturnsByValue =
375 return dyn_cast<VarDecl>(DRE->getDecl());
521 ASTContext *Context, const VarDecl *IndexVar,
533 const auto *AliasVar = cast<VarDecl>(AliasDecl->getSingleDecl());
533 const auto *AliasVar = cast<VarDecl>(AliasDecl->getSingleDecl());
711 const auto *InitVar = Nodes.getNodeAs<VarDecl>(InitVarName);
711 const auto *InitVar = Nodes.getNodeAs<VarDecl>(InitVarName);
771 const auto *LoopVar = Nodes.getNodeAs<VarDecl>(IncrementVarName);
771 const auto *LoopVar = Nodes.getNodeAs<VarDecl>(IncrementVarName);
772 const auto *CondVar = Nodes.getNodeAs<VarDecl>(ConditionVarName);
772 const auto *CondVar = Nodes.getNodeAs<VarDecl>(ConditionVarName);
773 const auto *InitVar = Nodes.getNodeAs<VarDecl>(InitVarName);
773 const auto *InitVar = Nodes.getNodeAs<VarDecl>(InitVarName);
776 const auto *EndVar = Nodes.getNodeAs<VarDecl>(EndVarName);
776 const auto *EndVar = Nodes.getNodeAs<VarDecl>(EndVarName);
777 const auto *ConditionEndVar = Nodes.getNodeAs<VarDecl>(ConditionEndVarName);
777 const auto *ConditionEndVar = Nodes.getNodeAs<VarDecl>(ConditionEndVarName);
830 const auto *LoopVar = Nodes.getNodeAs<VarDecl>(IncrementVarName);
830 const auto *LoopVar = Nodes.getNodeAs<VarDecl>(IncrementVarName);
831 const auto *EndVar = Nodes.getNodeAs<VarDecl>(EndVarName);
831 const auto *EndVar = Nodes.getNodeAs<VarDecl>(EndVarName);
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertCheck.h 38 void doConversion(ASTContext *Context, const VarDecl *IndexVar,
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertUtils.cpp 54 if (const auto *V = dyn_cast<VarDecl>(decl))
54 if (const auto *V = dyn_cast<VarDecl>(decl))
75 if (auto *V = dyn_cast_or_null<VarDecl>(DeclRef->getDecl()))
75 if (auto *V = dyn_cast_or_null<VarDecl>(DeclRef->getDecl()))
81 bool DependencyFinderASTVisitor::VisitVarDecl(VarDecl *V) {
254 const VarDecl *IndexVar) {
288 const VarDecl *IndexVar, const Expr *Obj,
314 const VarDecl *IndexVar) {
327 const VarDecl *IndexVar) {
350 const VarDecl *IndexVar) {
351 const auto *VDecl = dyn_cast<VarDecl>(TheDecl);
351 const auto *VDecl = dyn_cast<VarDecl>(TheDecl);
449 const VarDecl *IndexVar,
450 const VarDecl *EndVar,
781 const VarDecl *VDecl = C->getCapturedVar();
tools/clang/tools/extra/clang-tidy/modernize/LoopConvertUtils.h 36 typedef llvm::DenseMap<const clang::VarDecl *, const clang::DeclStmt *>
41 typedef llvm::DenseMap<const clang::ForStmt *, const clang::VarDecl *>
164 bool VisitVarDecl(clang::VarDecl *V);
286 ForLoopIndexUseVisitor(ASTContext *Context, const VarDecl *IndexVar,
287 const VarDecl *EndVar, const Expr *ContainerExpr,
361 const VarDecl *IndexVar;
363 const VarDecl *EndVar;
434 const clang::VarDecl *OldIndex,
452 const clang::VarDecl *OldIndex;
tools/clang/tools/extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp 85 } else if (const auto *Var = Nodes.getNodeAs<VarDecl>(VarId)) {
85 } else if (const auto *Var = Nodes.getNodeAs<VarDecl>(VarId)) {
203 const MatchFinder::MatchResult &Result, const VarDecl *Var) {
tools/clang/tools/extra/clang-tidy/modernize/RedundantVoidArgCheck.h 52 const VarDecl *Var);
tools/clang/tools/extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp 77 if (const auto *VD = dyn_cast<VarDecl>(
77 if (const auto *VD = dyn_cast<VarDecl>(
tools/clang/tools/extra/clang-tidy/modernize/UseAutoCheck.cpp 84 return Node.getInitStyle() != VarDecl::ListInit;
337 const auto *V = cast<VarDecl>(Dec);
337 const auto *V = cast<VarDecl>(Dec);
375 const auto *V = cast<VarDecl>(*D->decl_begin());
375 const auto *V = cast<VarDecl>(*D->decl_begin());
389 const auto *FirstDecl = dyn_cast<VarDecl>(*D->decl_begin());
389 const auto *FirstDecl = dyn_cast<VarDecl>(*D->decl_begin());
398 const auto *V = cast<VarDecl>(Dec);
398 const auto *V = cast<VarDecl>(Dec);
tools/clang/tools/extra/clang-tidy/performance/ForRangeCopyCheck.cpp 51 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("loopVar");
51 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("loopVar");
62 bool ForRangeCopyCheck::handleConstValueCopy(const VarDecl &LoopVar,
86 const VarDecl &LoopVar, const CXXForRangeStmt &ForRange,
tools/clang/tools/extra/clang-tidy/performance/ForRangeCopyCheck.h 32 bool handleConstValueCopy(const VarDecl &LoopVar, ASTContext &Context);
37 bool handleCopyIsOnlyConstReferenced(const VarDecl &LoopVar,
tools/clang/tools/extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp 65 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("faulty-var");
65 const auto *VD = Result.Nodes.getNodeAs<VarDecl>("faulty-var");
86 const ASTContext *Context, const VarDecl *VD,
tools/clang/tools/extra/clang-tidy/performance/ImplicitConversionInLoopCheck.h 29 void ReportAndFix(const ASTContext *Context, const VarDecl *VD,
tools/clang/tools/extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp 183 const auto *VectorVarDecl =
184 Result.Nodes.getNodeAs<VarDecl>(VectorVarDeclName);
190 const auto *ProtoVarDecl = Result.Nodes.getNodeAs<VarDecl>(ProtoVarDeclName);
190 const auto *ProtoVarDecl = Result.Nodes.getNodeAs<VarDecl>(ProtoVarDeclName);
204 const auto *TargetVarDecl = VectorVarDecl;
tools/clang/tools/extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp 21 void recordFixes(const VarDecl &Var, ASTContext &Context,
89 const auto *NewVar = Result.Nodes.getNodeAs<VarDecl>("newVarDecl");
89 const auto *NewVar = Result.Nodes.getNodeAs<VarDecl>("newVarDecl");
90 const auto *OldVar = Result.Nodes.getNodeAs<VarDecl>("oldVarDecl");
90 const auto *OldVar = Result.Nodes.getNodeAs<VarDecl>("oldVarDecl");
91 const auto *ObjectArg = Result.Nodes.getNodeAs<VarDecl>("objectArg");
91 const auto *ObjectArg = Result.Nodes.getNodeAs<VarDecl>("objectArg");
118 const VarDecl &Var, const Stmt &BlockStmt, bool IssueFix,
119 const VarDecl *ObjectArg, ASTContext &Context) {
141 const VarDecl &NewVar, const VarDecl &OldVar, const Stmt &BlockStmt,
141 const VarDecl &NewVar, const VarDecl &OldVar, const Stmt &BlockStmt,
tools/clang/tools/extra/clang-tidy/performance/UnnecessaryCopyInitialization.h 34 void handleCopyFromMethodReturn(const VarDecl &Var, const Stmt &BlockStmt,
35 bool IssueFix, const VarDecl *ObjectArg,
37 void handleCopyFromLocalVar(const VarDecl &NewVar, const VarDecl &OldVar,
37 void handleCopyFromLocalVar(const VarDecl &NewVar, const VarDecl &OldVar,
tools/clang/tools/extra/clang-tidy/readability/FunctionSizeCheck.cpp 24 bool VisitVarDecl(VarDecl *VD) {
tools/clang/tools/extra/clang-tidy/readability/IdentifierNamingCheck.cpp 521 if (const auto *Decl = dyn_cast<VarDecl>(D)) {
521 if (const auto *Decl = dyn_cast<VarDecl>(D)) {
tools/clang/tools/extra/clang-tidy/readability/IsolateDeclarationCheck.cpp 23 return llvm::all_of(Node.decls(), [](Decl *D) { return isa<VarDecl>(D); });
127 const auto *FirstDecl = dyn_cast<VarDecl>(*DS->decl_begin());
127 const auto *FirstDecl = dyn_cast<VarDecl>(*DS->decl_begin());
180 const auto *CurrentDecl = cast<VarDecl>(Decl);
180 const auto *CurrentDecl = cast<VarDecl>(Decl);
tools/clang/tools/extra/clang-tidy/readability/NonConstParameterCheck.cpp 92 } else if (const auto *VD = Result.Nodes.getNodeAs<VarDecl>("Mark")) {
92 } else if (const auto *VD = Result.Nodes.getNodeAs<VarDecl>("Mark")) {
tools/clang/tools/extra/clang-tidy/readability/RedundantDeclarationCheck.cpp 64 if (const auto *VD = dyn_cast<VarDecl>(D)) {
64 if (const auto *VD = dyn_cast<VarDecl>(D)) {
tools/clang/tools/extra/clang-tidy/utils/DeclRefExprUtils.cpp 107 bool isOnlyUsedAsConst(const VarDecl &Var, const Stmt &Stmt,
tools/clang/tools/extra/clang-tidy/utils/DeclRefExprUtils.h 27 bool isOnlyUsedAsConst(const VarDecl &Var, const Stmt &Stmt,
32 allDeclRefExprs(const VarDecl &VarDecl, const Stmt &Stmt, ASTContext &Context);
36 allDeclRefExprs(const VarDecl &VarDecl, const Decl &Decl, ASTContext &Context);
41 constReferenceDeclRefExprs(const VarDecl &VarDecl, const Stmt &Stmt,
47 constReferenceDeclRefExprs(const VarDecl &VarDecl, const Decl &Decl,
tools/clang/tools/extra/clang-tidy/utils/ExprSequence.cpp 132 if (const auto *TheVarDecl = dyn_cast<VarDecl>(TheDecl)) {
132 if (const auto *TheVarDecl = dyn_cast<VarDecl>(TheDecl)) {
tools/clang/tools/extra/clang-tidy/utils/FixItHintUtils.cpp 18 FixItHint changeVarDeclToReference(const VarDecl &Var, ASTContext &Context) {
29 FixItHint changeVarDeclToConst(const VarDecl &Var) {
tools/clang/tools/extra/clang-tidy/utils/FixItHintUtils.h 21 FixItHint changeVarDeclToReference(const VarDecl &Var, ASTContext &Context);
24 FixItHint changeVarDeclToConst(const VarDecl &Var);
tools/clang/tools/extra/clangd/AST.cpp 56 if (const auto *TD = dyn_cast<T>(D))
56 if (const auto *TD = dyn_cast<T>(D))
65 isTemplateSpecializationKind<VarDecl>(D, Kind);
tools/clang/tools/extra/clangd/FindTarget.cpp 96 } else if (auto *VD = dyn_cast<VarDecl>(D)) {
98 VarDecl *T = VD->getTemplateInstantiationPattern();
tools/clang/tools/extra/clangd/Selection.cpp 375 else if (auto *VD = llvm::dyn_cast<VarDecl>(D))
tools/clang/tools/extra/clangd/SemanticHighlighting.cpp 74 if (auto *VD = dyn_cast<VarDecl>(D))
tools/clang/tools/extra/clangd/XRefs.cpp 65 if (const auto *VD = dyn_cast<VarDecl>(D))
65 if (const auto *VD = dyn_cast<VarDecl>(D))
572 if (const VarDecl *VD = llvm::dyn_cast<VarDecl>(D)) {
572 if (const VarDecl *VD = llvm::dyn_cast<VarDecl>(D)) {
679 if (const VarDecl *VD = llvm::dyn_cast<VarDecl>(D))
679 if (const VarDecl *VD = llvm::dyn_cast<VarDecl>(D))
694 if (const auto *Var = dyn_cast<VarDecl>(D)) {
694 if (const auto *Var = dyn_cast<VarDecl>(D)) {
1167 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
1167 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
tools/clang/tools/extra/clangd/refactor/tweaks/ExtractVariable.cpp 138 if (InsertionPoint->ASTNode.get<VarDecl>())
tools/clang/tools/extra/unittests/clang-tidy/ClangTidyDiagnosticConsumerTest.cpp 17 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var");
17 const auto *Var = Result.Nodes.getNodeAs<VarDecl>("var");
tools/clang/tools/extra/unittests/clang-tidy/OverlappingReplacementsTest.cpp 34 auto *VD = Result.Nodes.getNodeAs<VarDecl>(BoundDecl);
76 auto *VD = Result.Nodes.getNodeAs<VarDecl>(BoundDecl);
tools/clang/tools/libclang/CIndex.cpp 906 bool CursorVisitor::VisitVarDecl(VarDecl *D) {
3950 if (auto *Var = dyn_cast<VarDecl>(D))
4562 const VarDecl *Var = getCursorVariableRef(C).first;
4749 if (!D || !(isa<FunctionDecl>(D) || isa<VarDecl>(D)))
5851 std::pair<const VarDecl *, SourceLocation> P = getCursorVariableRef(C);
5932 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
5932 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
6065 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
6065 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
6104 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
6104 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
6348 if (const VarDecl *Def = cast<VarDecl>(D)->getDefinition())
6348 if (const VarDecl *Def = cast<VarDecl>(D)->getDefinition())
6369 if (VarDecl *Def =
6371 return MakeCXCursor(cast<VarDecl>(Def)->getDescribedVarTemplate(), TU);
7984 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
7984 if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
7986 case VarDecl::TLS_None:
7988 case VarDecl::TLS_Dynamic:
7990 case VarDecl::TLS_Static:
8023 } else if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
8023 } else if (const VarDecl *VD = dyn_cast<VarDecl>(D)) {
tools/clang/tools/libclang/CIndexCXX.cpp 111 } else if (const VarDecl *Var = dyn_cast<VarDecl>(D)) {
111 } else if (const VarDecl *Var = dyn_cast<VarDecl>(D)) {
tools/clang/tools/libclang/CXCursor.cpp 838 CXCursor cxcursor::MakeCursorVariableRef(const VarDecl *Var, SourceLocation Loc,
847 std::pair<const VarDecl *, SourceLocation>
tools/clang/tools/libclang/CXCursor.h 117 CXCursor MakeCursorVariableRef(const VarDecl *Var, SourceLocation Loc,
122 std::pair<const VarDecl *, SourceLocation> getCursorVariableRef(CXCursor C);
tools/clang/tools/libclang/CXIndexDataConsumer.cpp 39 bool VisitVarDecl(const VarDecl *D) {
624 bool CXIndexDataConsumer::handleVar(const VarDecl *D) {
1210 if (const VarDecl *Var = dyn_cast<VarDecl>(D))
1210 if (const VarDecl *Var = dyn_cast<VarDecl>(D))
tools/clang/tools/libclang/CXIndexDataConsumer.h 381 bool handleVar(const VarDecl *D);
tools/clang/tools/libclang/CursorVisitor.h 215 bool VisitVarDecl(VarDecl *);
tools/clang/unittests/AST/ASTImporterFixtures.h 174 template <class DeclT> DeclT *Import(DeclT *From, Language Lang) {
174 template <class DeclT> DeclT *Import(DeclT *From, Language Lang) {
175 return cast_or_null<DeclT>(Import(cast<Decl>(From), Lang));
tools/clang/unittests/AST/ASTImporterGenericRedeclTest.cpp 39 using DeclTy = VarDecl;
160 auto *FromD = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
167 auto *ToD = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
177 auto *FromD = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
184 auto *ToD = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
193 auto *From0 = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
194 auto *From1 = LastDeclMatcher<DeclTy>().match(FromTU, getPattern());
203 auto *To0 = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
204 auto *To1 = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
215 auto *FromProto = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
216 auto *FromDef = LastDeclMatcher<DeclTy>().match(FromTU, getPattern());
225 auto *ToProto = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
226 auto *ToDef = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
237 auto *FromDef = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
238 auto *FromProto = LastDeclMatcher<DeclTy>().match(FromTU, getPattern());
247 auto *ToDef = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
248 auto *ToProto = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
260 auto *From0 = FirstDeclMatcher<DeclTy>().match(FromTU0, getPattern());
261 auto *From1 = FirstDeclMatcher<DeclTy>().match(FromTU1, getPattern());
270 auto *To0 = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
271 auto *To1 = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
283 auto *From0 = FirstDeclMatcher<DeclTy>().match(FromTU0, getPattern());
284 auto *From1 = FirstDeclMatcher<DeclTy>().match(FromTU1, getPattern());
294 auto *To0 = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
305 auto *FromDef = FirstDeclMatcher<DeclTy>().match(FromTUDef, getPattern());
306 auto *FromProto =
317 auto *ToDef = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
318 auto *ToProto = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
330 auto *FromProto =
332 auto *FromDef = FirstDeclMatcher<DeclTy>().match(FromTUDef, getPattern());
342 auto *ToProto = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
343 auto *ToDef = LastDeclMatcher<DeclTy>().match(ToTU, getPattern());
354 auto *FromD = // Definition
369 auto *FromD = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
375 auto *FromD = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
tools/clang/unittests/AST/ASTImporterODRStrategiesTest.cpp 87 using DeclTy = VarDecl;
253 auto *ToD = FirstDeclMatcher<DeclTy>().match(ToTU, getPattern());
256 auto *FromD = FirstDeclMatcher<DeclTy>().match(FromTU, getPattern());
tools/clang/unittests/AST/ASTImporterTest.cpp 243 template <typename T> RecordDecl *getRecordDecl(T *D) {
962 auto *FromVar =
1839 auto *Obj0 =
1842 auto *Obj1 =
1916 VarDecl *Imported1;
1919 auto *FromD = FirstDeclMatcher<VarDecl>().match(FromTU, Pattern);
1920 Imported1 = cast<VarDecl>(Import(FromD, Lang_CXX));
1922 VarDecl *Imported2;
1925 auto *FromD = FirstDeclMatcher<VarDecl>().match(FromTU, Pattern);
1926 Imported2 = cast<VarDecl>(Import(FromD, Lang_CXX));
1942 VarDecl *ExistingD;
1960 VarDecl *ExistingD;
1982 auto *FromD = FirstDeclMatcher<VarDecl>().match(FromTU, Pattern);
1993 auto *FromD = FirstDeclMatcher<VarDecl>().match(FromTU, Pattern);
1995 auto *Imported1 = cast<VarDecl>(Import(FromD, Lang_CXX));
1995 auto *Imported1 = cast<VarDecl>(Import(FromD, Lang_CXX));
2000 auto *Imported2 = cast<VarDecl>(Import(FromD, Lang_CXX));
2000 auto *Imported2 = cast<VarDecl>(Import(FromD, Lang_CXX));
2296 auto *From0 = FirstDeclMatcher<VarDecl>().match(FromTu, Pattern);
2297 auto *From1 = LastDeclMatcher<VarDecl>().match(FromTu, Pattern);
2299 auto *To0 = Import(From0, Lang_C);
2300 auto *To1 = Import(From1, Lang_C);
3561 auto *FromD = FirstDeclMatcher<VarDecl>().match(TU, varDecl(hasName("a")));
3567 auto *ToD = Import(FromD, Lang_CXX11);
3569 auto *ToInitExpr = cast<VarDecl>(ToD)->getAnyInitializer();
3585 auto *FromDWithInit = FirstDeclMatcher<VarDecl>().match(
3587 auto *FromDWithDef = LastDeclMatcher<VarDecl>().match(
3592 auto *ToD0 = cast<VarDecl>(Import(FromDWithInit, Lang_CXX11));
3592 auto *ToD0 = cast<VarDecl>(Import(FromDWithInit, Lang_CXX11));
3593 auto *ToD1 = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
3593 auto *ToD1 = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
3611 auto *FromDWithInit = FirstDeclMatcher<VarDecl>().match(
3613 auto *FromDWithDef = LastDeclMatcher<VarDecl>().match(
3621 auto *ToD = FirstDeclMatcher<VarDecl>().match(
3626 auto *ImportedD = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
3626 auto *ImportedD = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
3642 auto *FromDDeclarationOnly = FirstDeclMatcher<VarDecl>().match(
3644 auto *FromDWithDef = LastDeclMatcher<VarDecl>().match(
3652 auto *ToD = FirstDeclMatcher<VarDecl>().match(
3657 auto *ImportedD = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
3657 auto *ImportedD = cast<VarDecl>(Import(FromDWithDef, Lang_CXX11));
4013 auto *A0 = FirstDeclMatcher<VarDecl>().match(TU, varDecl(hasName("A")));
4014 auto *A1 = LastDeclMatcher<VarDecl>().match(TU, varDecl(hasName("A")));
4276 auto *D = FirstDeclMatcher<VarDecl>().match(ToTU, varDecl(hasName("a")));
4779 auto *A = FirstDeclMatcher<VarDecl>().match(ToTU, varDecl(hasName("A")));
tools/clang/unittests/AST/ASTImporterVisibilityTest.cpp 31 using DeclTy = VarDecl;
104 auto *FromD0 = FirstDeclMatcher<DeclTy>().match(FromTu, Pattern);
105 auto *FromD1 = LastDeclMatcher<DeclTy>().match(FromTu, Pattern);
107 auto *ToD0 = Import(FromD0, Lang_CXX14);
108 auto *ToD1 = Import(FromD1, Lang_CXX14);
195 auto *ToD0 = FirstDeclMatcher<DeclTy>().match(ToTu, getPattern());
196 auto *FromD1 = FirstDeclMatcher<DeclTy>().match(FromTu, getPattern());
198 auto *ToD1 = Import(FromD1, Lang_CXX14);
215 auto *FromD0 = FirstDeclMatcher<DeclTy>().match(FromTu0, getPattern());
216 auto *FromD1 = FirstDeclMatcher<DeclTy>().match(FromTu1, getPattern());
217 auto *ToD0 = Import(FromD0, Lang_CXX14);
218 auto *ToD1 = Import(FromD1, Lang_CXX14);
tools/clang/unittests/AST/ASTTypeTraitsTest.cpp 25 return ASTNodeKind::getFromNodeKind<T>();
tools/clang/unittests/AST/DeclMatcher.h 22 NodeType *Node = nullptr;
26 Node = const_cast<NodeType *>(Result.Nodes.getNodeAs<NodeType>(""));
32 NodeType *match(const Decl *D, const MatcherType &AMatcher) {
47 using UnaryPredicate = std::function<bool(const NodeType *)>;
51 if (auto N = Result.Nodes.getNodeAs<NodeType>("")) {
tools/clang/unittests/AST/EvaluateAsRValueTest.cpp 42 bool VisitVarDecl(const clang::VarDecl *VD) {
tools/clang/unittests/AST/MatchVerifier.h 62 const NodeType &Node) {}
150 const NodeType *Node = Result.Nodes.getNodeAs<NodeType>("");
150 const NodeType *Node = Result.Nodes.getNodeAs<NodeType>("");
179 class LocationVerifier : public MatchVerifier<NodeType> {
188 const NodeType &Node) override {
203 virtual SourceLocation getLocation(const NodeType &Node) {
216 class RangeVerifier : public MatchVerifier<NodeType> {
228 const NodeType &Node) override {
250 virtual SourceRange getRange(const NodeType &Node) {
tools/clang/unittests/AST/SourceLocationTest.cpp 31 LocationVerifier<VarDecl> Verifier;
37 LocationVerifier<VarDecl> Verifier;
49 LocationVerifier<VarDecl> Verifier;
55 RangeVerifier<VarDecl> Verifier;
144 RangeVerifier<VarDecl> Verifier;
tools/clang/unittests/ASTMatchers/ASTMatchersTest.h 421 if (Nodes->getNodeAs<T>(Id)) {
tools/clang/unittests/CodeGen/CodeGenExternalTest.cpp 64 void HandleCXXStaticMemberVarInstantiation(VarDecl *VD) override;
74 void CompleteTentativeDefinition(VarDecl *D) override;
130 void MyASTConsumer::CompleteTentativeDefinition(VarDecl *D) {
138 void MyASTConsumer::HandleCXXStaticMemberVarInstantiation(VarDecl *VD) {
tools/clang/unittests/StaticAnalyzer/Reusables.h 22 const T *findNode(const Decl *Where, MatcherT What) {
28 const T *Node = selectFirst<T>("root", Matches);
28 const T *Node = selectFirst<T>("root", Matches);
35 const T *findDeclByName(const Decl *Where, StringRef Name) {
37 return findNode<T>(Where, namedDecl(hasName(Name)));
tools/clang/unittests/StaticAnalyzer/StoreTest.cpp 27 const auto *VDX0 = findDeclByName<VarDecl>(D, "x0");
27 const auto *VDX0 = findDeclByName<VarDecl>(D, "x0");
28 const auto *VDY0 = findDeclByName<VarDecl>(D, "y0");
28 const auto *VDY0 = findDeclByName<VarDecl>(D, "y0");
29 const auto *VDZ0 = findDeclByName<VarDecl>(D, "z0");
29 const auto *VDZ0 = findDeclByName<VarDecl>(D, "z0");
30 const auto *VDX1 = findDeclByName<VarDecl>(D, "x1");
30 const auto *VDX1 = findDeclByName<VarDecl>(D, "x1");
31 const auto *VDY1 = findDeclByName<VarDecl>(D, "y1");
31 const auto *VDY1 = findDeclByName<VarDecl>(D, "y1");
tools/clang/unittests/StaticAnalyzer/SymbolReaperTest.cpp 21 const auto *VD = findDeclByName<VarDecl>(D, "s");
21 const auto *VD = findDeclByName<VarDecl>(D, "s");
tools/clang/unittests/Tooling/RecursiveASTVisitorTestDeclVisitor.cpp 17 bool VisitVarDecl(VarDecl *Variable) {
tools/clang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp 48 bool VisitVarDecl(VarDecl *D) {
tools/lldb/include/lldb/Symbol/ClangASTContext.h 810 static clang::VarDecl *AddVariableToRecordType(const CompilerType &type,
950 clang::VarDecl *CreateVariableDeclaration(clang::DeclContext *decl_context,
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp 315 clang::VarDecl *result_decl = nullptr;
339 VarDecl::Create(Ctx, DC, SourceLocation(), SourceLocation(),
355 VarDecl::Create(Ctx, DC, SourceLocation(), SourceLocation(), &result_id,
487 void ASTResultSynthesizer::CompleteTentativeDefinition(VarDecl *D) {
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.h 76 void CompleteTentativeDefinition(clang::VarDecl *D) override;
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.cpp 156 void ASTStructExtractor::CompleteTentativeDefinition(VarDecl *D) {
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTStructExtractor.h 81 void CompleteTentativeDefinition(clang::VarDecl *D) override;
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h 186 void CompleteTentativeDefinition(clang::VarDecl *D) override {
194 void HandleCXXStaticMemberVarInstantiation(clang::VarDecl *D) override {
488 llvm::SmallVectorImpl<clang::VarDecl *> &Defs) override {
tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp 2103 clang::NamedDecl *Decl = VarDecl::Create(
tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp 1456 } else if (llvm::isa<clang::VarDecl>(decl_from_modules)) {
1465 clang::VarDecl *copied_var_decl =
1466 copied_decl ? dyn_cast_or_null<clang::VarDecl>(copied_decl)
1790 const VarDecl *var_decl = dyn_cast<VarDecl>(named_decl);
1790 const VarDecl *var_decl = dyn_cast<VarDecl>(named_decl);
tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp 793 } else if (const VarDecl *V = dyn_cast<VarDecl>(D)) {
793 } else if (const VarDecl *V = dyn_cast<VarDecl>(D)) {
tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp 256 clang::VarDecl *result_var = dyn_cast<clang::VarDecl>(result_decl);
256 clang::VarDecl *result_var = dyn_cast<clang::VarDecl>(result_decl);
1092 clang::VarDecl *decl = reinterpret_cast<clang::VarDecl *>(ptr);
tools/lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp 831 clang::VarDecl *PdbAstBuilder::CreateVariableDecl(PdbSymUid uid, CVSymbol sym,
836 clang::VarDecl *var_decl = m_clang.CreateVariableDeclaration(
847 clang::VarDecl *
851 return llvm::dyn_cast<clang::VarDecl>(decl);
859 clang::VarDecl *PdbAstBuilder::GetOrCreateVariableDecl(PdbGlobalSymId var_id) {
861 return llvm::dyn_cast<clang::VarDecl>(decl);
tools/lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h 65 clang::VarDecl *GetOrCreateVariableDecl(PdbCompilandSymId scope_id,
67 clang::VarDecl *GetOrCreateVariableDecl(PdbGlobalSymId var_id);
111 clang::VarDecl *CreateVariableDecl(PdbSymUid uid,
tools/lldb/source/Symbol/ClangASTContext.cpp 1935 clang::VarDecl *ClangASTContext::CreateVariableDeclaration(
1938 clang::VarDecl *var_decl = clang::VarDecl::Create(
1938 clang::VarDecl *var_decl = clang::VarDecl::Create(
8079 clang::VarDecl *ClangASTContext::AddVariableToRecordType(
8093 clang::VarDecl *var_decl = nullptr;
8098 var_decl = clang::VarDecl::Create(
usr/include/c++/7.4.0/type_traits 215 : public __is_void_helper<typename remove_cv<_Tp>::type>::type
381 : public __is_pointer_helper<typename remove_cv<_Tp>::type>::type
581 : public __or_<is_lvalue_reference<_Tp>,
582 is_rvalue_reference<_Tp>>::type
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
602 is_void<_Tp>>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
1554 { typedef _Tp type; };
1558 { typedef _Tp type; };
1563 { typedef _Tp type; };
1574 remove_const<typename remove_volatile<_Tp>::type>::type type;
1580 { typedef _Tp const type; };
1629 { typedef _Tp type; };
1983 { typedef _Up type; };
1999 { typedef typename remove_reference<_Tp>::type* type; };
2003 : public __add_pointer_helper<_Tp>
utils/unittest/googletest/include/gtest/gtest-printers.h 407 T* p, ::std::ostream* os) {
416 if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {