Home
last modified time | relevance | path

Searched refs:CXXRecordDecl (Results 1 – 25 of 279) sorted by relevance

12345678910>>...12

/freebsd/contrib/llvm-project/clang/lib/AST/
H A DCXXInheritance.cpp67 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base) const { in isDerivedFrom()
73 bool CXXRecordDecl::isDerivedFrom(const CXXRecordDecl *Base, in isDerivedFrom()
89 bool CXXRecordDecl::isVirtuallyDerivedFrom(const CXXRecordDecl *Base) const { in isVirtuallyDerivedFrom()
109 bool CXXRecordDecl::isProvablyNotDerivedFrom(const CXXRecordDecl *Base) const { in isProvablyNotDerivedFrom()
130 const CXXRecordDecl *Record = this; in forallBases()
137 CXXRecordDecl *Base = in forallBases()
247 CXXRecordDecl *BaseRecord; in lookupInBases()
335 CXXRecordDecl *VBase = nullptr; in lookupInBases()
522 const CXXRecordDecl *BaseDecl = cast<CXXRecordDecl>(RT->getDecl()); in Collect()
691 const CXXRecordDecl *BaseDecl = in AddIndirectPrimaryBases()
[all …]
H A DVTableBuilder.cpp37 const CXXRecordDecl *DerivedClass;
42 const CXXRecordDecl *VirtualBase;
71 const CXXRecordDecl *VirtualBase;
93 const CXXRecordDecl *LayoutClass;
315 const CXXRecordDecl *DerivedRD = in ComputeReturnAdjustmentBaseOffset()
318 const CXXRecordDecl *BaseRD = in ComputeReturnAdjustmentBaseOffset()
2351 const CXXRecordDecl *VBase = in computeVTableRelatedInformation()
2906 const CXXRecordDecl *RD, in GroupNewVirtualOverloads()
2937 static bool isDirectVBase(const CXXRecordDecl *Base, const CXXRecordDecl *RD) { in isDirectVBase()
3603 const CXXRecordDecl *RD) { in computeVTableRelatedInformation()
[all …]
H A DDeclCXX.cpp75 CXXRecordDecl::DefinitionData::DefinitionData(CXXRecordDecl *D) in DefinitionData()
123 CXXRecordDecl::CXXRecordDecl(Kind K, TagKind TK, const ASTContext &C, in CXXRecordDecl() function in CXXRecordDecl
131 CXXRecordDecl *CXXRecordDecl::Create(const ASTContext &C, TagKind TK, in Create()
146 CXXRecordDecl *
163 CXXRecordDecl *
509 void CXXRecordDecl::addedClassSubobject(CXXRecordDecl *Subobj) { in addedClassSubobject()
1549 bool CXXRecordDecl::isCLike() const { in isCLike()
1873 CXXRecordDecl *CXXRecordDecl::getInstantiatedFromMemberClass() const { in getInstantiatedFromMemberClass()
1885 CXXRecordDecl::setInstantiationOfMemberClass(CXXRecordDecl *RD, in setInstantiationOfMemberClass()
1927 const CXXRecordDecl *CXXRecordDecl::getTemplateInstantiationPattern() const { in getTemplateInstantiationPattern()
[all …]
H A DRecordLayoutBuilder.cpp41 const CXXRecordDecl *Class;
110 const CXXRecordDecl *Class;
482 const CXXRecordDecl *RD, const CXXRecordDecl *Class, CharUnits Offset, in UpdateEmptyFieldSubobjects()
985 const CXXRecordDecl *RD) { in ComputeBaseSubobjectInfo()
1026 const CXXRecordDecl *RD) { in LayoutNonVirtualBases()
1145 const CXXRecordDecl *RD, const CXXRecordDecl *MostDerivedClass) { in LayoutVirtualBases()
2142 if (const CXXRecordDecl *RD = dyn_cast<CXXRecordDecl>(D)) { in FinishLayout()
2922 const CXXRecordDecl *RD, const CXXRecordDecl *BaseDecl, in layoutNonVirtualBase()
2990 const CXXRecordDecl *ParentClass = cast<CXXRecordDecl>(FD->getParent()); in layoutField()
3643 Bases, [&](const CXXRecordDecl *L, const CXXRecordDecl *R) { in DumpRecordLayout()
[all …]
H A DVTTBuilder.cpp32 const CXXRecordDecl *MostDerivedClass, in VTTBuilder()
43 const CXXRecordDecl *VTableClass) { in AddVTablePointer()
60 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVTTs()
68 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutSecondaryVTTs()
83 const CXXRecordDecl *VTableClass, in LayoutSecondaryVirtualPointers()
85 const CXXRecordDecl *RD = Base.getBase(); in LayoutSecondaryVirtualPointers()
94 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutSecondaryVirtualPointers()
154 void VTTBuilder::LayoutVirtualVTTs(const CXXRecordDecl *RD, in LayoutVirtualVTTs()
158 cast<CXXRecordDecl>(I.getType()->castAs<RecordType>()->getDecl()); in LayoutVirtualVTTs()
180 const CXXRecordDecl *RD = Base.getBase(); in LayoutVTT()
H A DMicrosoftCXXABI.cpp109 llvm::SmallDenseMap<CXXRecordDecl *, CXXConstructorDecl *> RecordToCopyCtor;
145 bool isNearlyEmpty(const CXXRecordDecl *RD) const override { in isNearlyEmpty()
150 getCopyConstructorForExceptionObject(CXXRecordDecl *RD) override { in getCopyConstructorForExceptionObject()
155 addCopyConstructorForExceptionObject(CXXRecordDecl *RD, in addCopyConstructorForExceptionObject()
208 static bool usesMultipleInheritanceModel(const CXXRecordDecl *RD) { in usesMultipleInheritanceModel()
213 const CXXRecordDecl *Base = in usesMultipleInheritanceModel()
222 MSInheritanceModel CXXRecordDecl::calculateInheritanceModel() const { in calculateInheritanceModel()
232 MSInheritanceModel CXXRecordDecl::getMSInheritanceModel() const { in getMSInheritanceModel()
238 bool CXXRecordDecl::nullFieldOffsetIsZero() const { in nullFieldOffsetIsZero()
244 MSVtorDispMode CXXRecordDecl::getMSVtorDispMode() const { in getMSVtorDispMode()
[all …]
/freebsd/contrib/llvm-project/clang/include/clang/AST/
H A DVTableBuilder.h27 class CXXRecordDecl; variable
119 const CXXRecordDecl *getRTTIDecl() const { in getRTTIDecl()
371 typedef llvm::DenseMap<const CXXRecordDecl *,
376 typedef std::pair<const CXXRecordDecl *,
449 VPtrInfo(const CXXRecordDecl *RD) in VPtrInfo()
455 const CXXRecordDecl *ObjectWithVPtr;
459 const CXXRecordDecl *IntroducingObject;
473 const CXXRecordDecl *NextBaseToMangle;
490 const CXXRecordDecl *getVBaseWithVPtr() const { in getVBaseWithVPtr()
516 const CXXRecordDecl *VBase;
[all …]
H A DVTTBuilder.h30 class CXXRecordDecl; variable
33 llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> BaseAndIsVirtual;
38 VTTVTable(const CXXRecordDecl *Base, CharUnits BaseOffset, bool BaseIsVirtual) in VTTVTable()
44 const CXXRecordDecl *getBase() const { in getBase()
75 const CXXRecordDecl *MostDerivedClass;
90 using VisitedVirtualBasesSetTy = llvm::SmallPtrSet<const CXXRecordDecl *, 4>;
106 const CXXRecordDecl *VTableClass);
119 const CXXRecordDecl *VTableClass,
129 void LayoutVirtualVTTs(const CXXRecordDecl *RD,
137 VTTBuilder(ASTContext &Ctx, const CXXRecordDecl *MostDerivedClass,
H A DRecordLayout.h29 class CXXRecordDecl; variable
59 using VBaseOffsetsMapTy = llvm::DenseMap<const CXXRecordDecl *, VBaseInfo>;
132 llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> PrimaryBase;
135 const CXXRecordDecl *BaseSharingVBPtr;
138 using BaseOffsetsMapTy = llvm::DenseMap<const CXXRecordDecl *, CharUnits>;
167 const CXXRecordDecl *PrimaryBase, bool IsPrimaryBaseVirtual,
168 const CXXRecordDecl *BaseSharingVBPtr,
234 const CXXRecordDecl *getPrimaryBase() const { in getPrimaryBase()
249 CharUnits getBaseClassOffset(const CXXRecordDecl *Base) const { in getBaseClassOffset()
259 CharUnits getVBaseClassOffset(const CXXRecordDecl *VBase) const { in getVBaseClassOffset()
[all …]
H A DCXXInheritance.h50 const CXXRecordDecl *Class;
117 friend class CXXRecordDecl; variable
120 const CXXRecordDecl *Origin = nullptr;
142 llvm::SmallPtrSet<const CXXRecordDecl *, 4> VisitedDependentRecords;
166 bool lookupInBases(ASTContext &Context, const CXXRecordDecl *Record,
167 CXXRecordDecl::BaseMatchesCallback BaseMatches,
217 const CXXRecordDecl *getOrigin() const { return Origin; } in getOrigin()
218 void setOrigin(const CXXRecordDecl *Rec) { Origin = Rec; } in setOrigin()
241 const CXXRecordDecl *InVirtualSubobject = nullptr;
246 const CXXRecordDecl *InVirtualSubobject) in UniqueVirtualMethod()
[all …]
H A DBaseSubobject.h25 class CXXRecordDecl; variable
32 const CXXRecordDecl *Base;
39 BaseSubobject(const CXXRecordDecl *Base, CharUnits BaseOffset) in BaseSubobject()
43 const CXXRecordDecl *getBase() const { return Base; } in getBase()
60 DenseMapInfo<const clang::CXXRecordDecl *>::getEmptyKey(),
66 DenseMapInfo<const clang::CXXRecordDecl *>::getTombstoneKey(),
71 using PairTy = std::pair<const clang::CXXRecordDecl *, clang::CharUnits>;
H A DMangle.h115 virtual std::string getLambdaString(const CXXRecordDecl *Lambda) = 0;
196 virtual void mangleCXXVTT(const CXXRecordDecl *RD, raw_ostream &) = 0;
198 const CXXRecordDecl *Type,
240 virtual void mangleCXXVFTable(const CXXRecordDecl *Derived,
241 ArrayRef<const CXXRecordDecl *> BasePath,
247 virtual void mangleCXXVBTable(const CXXRecordDecl *Derived,
248 ArrayRef<const CXXRecordDecl *> BasePath,
259 virtual void mangleCXXVirtualDisplacementMap(const CXXRecordDecl *SrcRD,
279 virtual void mangleCXXRTTIBaseClassArray(const CXXRecordDecl *Derived,
282 mangleCXXRTTIClassHierarchyDescriptor(const CXXRecordDecl *Derived,
[all …]
H A DDeclFriend.h61 friend class CXXRecordDecl;
62 friend class CXXRecordDecl::friend_iterator;
186 class CXXRecordDecl::friend_iterator {
187 friend class CXXRecordDecl; variable
238 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_begin() const { in friend_begin()
242 inline CXXRecordDecl::friend_iterator CXXRecordDecl::friend_end() const { in friend_end()
246 inline CXXRecordDecl::friend_range CXXRecordDecl::friends() const { in friends()
250 inline void CXXRecordDecl::pushFriendDecl(FriendDecl *FD) { in pushFriendDecl()
H A DDeclCXX.h258 class CXXRecordDecl : public RecordDecl {
343 CXXRecordDecl *Definition;
351 DefinitionData(CXXRecordDecl *D);
531 CXXRecordDecl *getPreviousDecl() { in getPreviousDecl()
532 return cast_or_null<CXXRecordDecl>( in getPreviousDecl()
540 CXXRecordDecl *getMostRecentDecl() { in getMostRecentDecl()
541 return cast<CXXRecordDecl>( in getMostRecentDecl()
550 CXXRecordDecl *Recent = in getMostRecentNonInjectedDecl()
1534 return const_cast<CXXRecordDecl *>(const_cast<const CXXRecordDecl *>(this) in getTemplateInstantiationPattern()
2185 CXXRecordDecl *getParent() { in getParent()
[all …]
/freebsd/contrib/llvm-project/clang/lib/Sema/
H A DSemaAccess.cpp73 CXXRecordDecl *DeclaringClass = cast<CXXRecordDecl>(DC); in FindDeclaringClass()
120 if (isa<CXXRecordDecl>(DC)) { in EffectiveContext()
121 CXXRecordDecl *Record = cast<CXXRecordDecl>(DC); in EffectiveContext()
322 const CXXRecordDecl *RD; in IsDerivedFromInclusive()
470 CXXRecordDecl *Record = *I; in MatchesFriend()
585 if (isa<CXXRecordDecl>(Friend)) in MatchesFriend()
623 const CXXRecordDecl *NamingClass;
675 const CXXRecordDecl *RD; in findFriendship()
1531 CXXRecordDecl *NamingClass = cast<CXXRecordDecl>(NamingD); in HandleDependentAccessCheck()
1703 CXXRecordDecl *ObjectClass; in CheckConstructorAccess()
[all …]
/freebsd/contrib/llvm-project/clang/lib/CodeGen/
H A DCGVTables.h25 class CXXRecordDecl; variable
40 typedef std::pair<const CXXRecordDecl *, BaseSubobject> BaseSubobjectPairTy;
105 uint64_t getSubVTTIndex(const CXXRecordDecl *RD, BaseSubobject Base);
109 uint64_t getSecondaryVirtualPointerIndex(const CXXRecordDecl *RD,
115 GenerateConstructionVTable(const CXXRecordDecl *RD, const BaseSubobject &Base,
122 llvm::GlobalVariable *GetAddrOfVTT(const CXXRecordDecl *RD);
127 const CXXRecordDecl *RD);
136 void GenerateClassData(const CXXRecordDecl *RD);
138 bool isVTableExternal(const CXXRecordDecl *RD);
H A DCGCXXABI.h33 class CXXRecordDecl; variable
169 virtual RecordArgABI getRecordArgABI(const CXXRecordDecl *RD) const = 0;
178 isPermittedToBeHomogeneousAggregate(const CXXRecordDecl *RD) const { in isPermittedToBeHomogeneousAggregate()
325 const CXXRecordDecl *RD) {} in initializeHiddenVirtualInheritanceMembers()
456 const CXXRecordDecl *RD) = 0;
469 const CXXRecordDecl *VTableClass) = 0;
476 const CXXRecordDecl *NearestVBase) = 0;
486 virtual llvm::GlobalVariable *getAddrOfVTable(const CXXRecordDecl *RD,
512 virtual void emitVirtualInheritanceTables(const CXXRecordDecl *RD) = 0;
667 virtual std::pair<llvm::Value *, const CXXRecordDecl *>
[all …]
H A DCGClass.cpp177 const CXXRecordDecl *RD = DerivedClass; in computeNonVirtualBaseClassOffset()
299 const CXXRecordDecl *VBase = nullptr; in GetAddressOfBaseClass()
306 VBase = cast<CXXRecordDecl>( in GetAddressOfBaseClass()
502 const CXXRecordDecl *BaseClass;
771 const CXXRecordDecl *ClassDecl = in EmitAsanPrologueOrEpilogue()
990 const CXXRecordDecl *ClassDecl;
1395 CXXRecordDecl *FieldClassDecl = cast<CXXRecordDecl>(RT->getDecl()); in FieldHasTrivialDestructorBody()
1700 const CXXRecordDecl *BaseClass;
2104 const CXXRecordDecl *record = cast<CXXRecordDecl>(rtype->getDecl()); in destroyCXXObject()
2692 static const CXXRecordDecl *
[all …]
H A DMicrosoftCXXABI.cpp1078 const CXXRecordDecl *BaseClassDecl) { in GetVirtualBaseClassOffset()
1498 const CXXRecordDecl *VBase = ML.VBase; in adjustThisArgumentForVirtualFunctionCall()
1776 const CXXRecordDecl *NearestVBase) { in getVTableAddressPointInStructor()
2915 const CXXRecordDecl *RD = cast<CXXRecordDecl>(FD->getParent()); in EmitMemberPointer()
2921 const CXXRecordDecl *SrcRD = cast<CXXRecordDecl>(MPD->getDeclContext()); in EmitMemberPointer()
2929 const CXXRecordDecl *PrevRD = SrcRD; in EmitMemberPointer()
2931 const CXXRecordDecl *Base = nullptr; in EmitMemberPointer()
3615 const CXXRecordDecl *RD, *VirtualRoot;
3694 const CXXRecordDecl *RD;
4072 const CXXRecordDecl *RD = CD->getParent(); in getAddrOfCXXCtorClosure()
[all …]
H A DCGRecordLayout.h146 llvm::DenseMap<const CXXRecordDecl *, unsigned> NonVirtualBases;
149 llvm::DenseMap<const CXXRecordDecl *, unsigned> CompleteObjectVirtualBases;
205 bool hasNonVirtualBaseLLVMField(const CXXRecordDecl *RD) const { in hasNonVirtualBaseLLVMField()
209 unsigned getNonVirtualBaseLLVMFieldNo(const CXXRecordDecl *RD) const { in getNonVirtualBaseLLVMFieldNo()
216 unsigned getVirtualBaseIndex(const CXXRecordDecl *base) const { in getVirtualBaseIndex()
/freebsd/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/WebKit/
H A DPtrTypesSemantics.h18 class CXXRecordDecl; variable
31 std::optional<const clang::CXXRecordDecl *>
36 std::optional<bool> isRefCountable(const clang::CXXRecordDecl* Class);
39 bool isRefCounted(const clang::CXXRecordDecl *Class);
43 std::optional<bool> isUncounted(const clang::CXXRecordDecl* Class);
H A DPtrTypesSemantics.cpp21 bool hasPublicMethodInBaseClass(const CXXRecordDecl *R, in hasPublicMethodInBaseClass()
38 std::optional<const clang::CXXRecordDecl *>
46 const CXXRecordDecl *R = T->getAsCXXRecordDecl(); in hasPublicMethodInBase()
55 std::optional<bool> isRefCountable(const CXXRecordDecl* R) in isRefCountable()
69 Paths.setOrigin(const_cast<CXXRecordDecl *>(R)); in isRefCountable()
121 std::optional<bool> isUncounted(const CXXRecordDecl* Class) in isUncounted()
151 const CXXRecordDecl *calleeMethodsClass = M->getParent(); in isGetterOfRefCounted()
177 bool isRefCounted(const CXXRecordDecl *R) { in isRefCounted()
H A DRefCntblBaseVirtualDtorChecker.cpp52 bool VisitCXXRecordDecl(const CXXRecordDecl *RD) { in checkASTDecl()
62 void visitCXXRecordDecl(const CXXRecordDecl *RD) const { in visitCXXRecordDecl()
70 const CXXRecordDecl *ProblematicBaseClass = nullptr; in visitCXXRecordDecl()
90 const CXXRecordDecl *C = T->getAsCXXRecordDecl(); in visitCXXRecordDecl()
139 bool shouldSkipDecl(const CXXRecordDecl *RD) const { in shouldSkipDecl()
167 void reportBug(const CXXRecordDecl *DerivedClass, in reportBug()
169 const CXXRecordDecl *ProblematicBaseClass) const { in reportBug()
/freebsd/contrib/llvm-project/clang/include/clang/Sema/
H A DHLSLExternalSemaSource.h26 CXXRecordDecl *ResourceDecl = nullptr;
28 using CompletionFunction = std::function<void(CXXRecordDecl *)>;
29 llvm::DenseMap<CXXRecordDecl *, CompletionFunction> Completions;
35 void onCompletion(CXXRecordDecl *Record, CompletionFunction Fn);
H A DDelayedDiagnostic.h61 MemberNonce _, CXXRecordDecl *NamingClass, in AccessedEntity()
68 BaseNonce _, CXXRecordDecl *BaseClass, in AccessedEntity()
69 CXXRecordDecl *DerivedClass, AccessSpecifier Access) in AccessedEntity()
81 CXXRecordDecl *getNamingClass() const { return NamingClass; } in getNamingClass()
84 CXXRecordDecl *getBaseClass() const { in getBaseClass()
85 assert(!IsMember); return cast<CXXRecordDecl>(Target); in getBaseClass()
87 CXXRecordDecl *getDerivedClass() const { return NamingClass; } in getDerivedClass()
117 CXXRecordDecl *NamingClass;

12345678910>>...12