reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
556 return data().Polymorphic || data().NumVBases != 0; 556 return data().Polymorphic || data().NumVBases != 0; 571 void setIsParsingBaseSpecifiers() { data().IsParsingBaseSpecifiers = true; } 574 return data().IsParsingBaseSpecifiers; 583 unsigned getNumBases() const { return data().NumBases; } 596 base_class_iterator bases_begin() { return data().getBases(); } 597 base_class_const_iterator bases_begin() const { return data().getBases(); } 598 base_class_iterator bases_end() { return bases_begin() + data().NumBases; } 600 return bases_begin() + data().NumBases; 604 unsigned getNumVBases() const { return data().NumVBases; } 613 base_class_iterator vbases_begin() { return data().getVBases(); } 614 base_class_const_iterator vbases_begin() const { return data().getVBases(); } 615 base_class_iterator vbases_end() { return vbases_begin() + data().NumVBases; } 617 return vbases_begin() + data().NumVBases; 673 return data().FirstFriend.isValid(); 680 (data().DeclaredSpecialMembers & SMF_CopyConstructor)) && 682 return data().DefaultedCopyConstructorIsDeleted; 689 (data().DeclaredSpecialMembers & SMF_MoveConstructor)) && 691 return data().DefaultedMoveConstructorIsDeleted; 697 (data().DeclaredSpecialMembers & SMF_Destructor)) && 699 return data().DefaultedDestructorIsDeleted; 706 !data().DefaultedCopyConstructorIsDeleted; 713 !data().DefaultedMoveConstructorIsDeleted; 720 !data().DefaultedMoveAssignmentIsDeleted; 727 !data().DefaultedDestructorIsDeleted; 732 return (data().DeclaredSpecialMembers & SMF_DefaultConstructor) || 741 return !data().UserDeclaredConstructor && 742 !(data().DeclaredSpecialMembers & SMF_DefaultConstructor) && 750 return data().UserDeclaredConstructor; 756 return data().UserProvidedDefaultConstructor; 763 return data().UserDeclaredSpecialMembers & SMF_CopyConstructor; 769 return !(data().DeclaredSpecialMembers & SMF_CopyConstructor); 781 if (data().UserDeclaredSpecialMembers & 784 return data().NeedOverloadResolutionForCopyConstructor; 790 return data().ImplicitCopyConstructorCanHaveConstParamForNonVBase && 792 data().ImplicitCopyConstructorCanHaveConstParamForVBase); 798 return data().HasDeclaredCopyConstructorWithConstParam || 809 return data().UserDeclaredSpecialMembers & 816 return data().UserDeclaredSpecialMembers & SMF_MoveConstructor; 821 return (data().DeclaredSpecialMembers & SMF_MoveConstructor) || 828 assert((data().DefaultedCopyConstructorIsDeleted || 831 data().DefaultedCopyConstructorIsDeleted = true; 837 assert((data().DefaultedMoveConstructorIsDeleted || 840 data().DefaultedMoveConstructorIsDeleted = true; 846 assert((data().DefaultedDestructorIsDeleted || 849 data().DefaultedDestructorIsDeleted = true; 855 return !(data().DeclaredSpecialMembers & SMF_MoveConstructor) && 865 return data().NeedOverloadResolutionForMoveConstructor; 873 return data().UserDeclaredSpecialMembers & SMF_CopyAssignment; 879 return !(data().DeclaredSpecialMembers & SMF_CopyAssignment); 885 return data().HasMutableFields; 891 return data().ImplicitCopyAssignmentHasConstParam; 898 return data().HasDeclaredCopyAssignmentWithConstParam || 906 return data().UserDeclaredSpecialMembers & SMF_MoveAssignment; 911 return (data().DeclaredSpecialMembers & SMF_MoveAssignment) || 918 assert((data().DefaultedMoveAssignmentIsDeleted || 921 data().DefaultedMoveAssignmentIsDeleted = true; 928 return !(data().DeclaredSpecialMembers & SMF_MoveAssignment) && 939 return data().NeedOverloadResolutionForMoveAssignment; 946 return data().UserDeclaredSpecialMembers & SMF_Destructor; 952 return !(data().DeclaredSpecialMembers & SMF_Destructor); 958 return data().NeedOverloadResolutionForDestructor; 1037 return data().Conversions.get(getASTContext()).begin(); 1041 return data().Conversions.get(getASTContext()).end(); 1057 bool isAggregate() const { return data().Aggregate; } 1062 bool hasInClassInitializer() const { return data().HasInClassInitializer; } 1074 data().HasUninitializedReferenceMember; 1085 bool isPOD() const { return data().PlainOldData; } 1100 bool isEmpty() const { return data().Empty; } 1103 return data().HasPrivateFields; 1107 return data().HasProtectedFields; 1112 auto &D = data(); 1118 bool isPolymorphic() const { return data().Polymorphic; } 1125 bool isAbstract() const { return data().Abstract; } 1129 bool isStandardLayout() const { return data().IsStandardLayout; } 1133 bool isCXX11StandardLayout() const { return data().IsCXX11StandardLayout; } 1137 bool hasMutableFields() const { return data().HasMutableFields; } 1140 bool hasVariantMembers() const { return data().HasVariantMembers; } 1146 (data().HasTrivialSpecialMembers & SMF_DefaultConstructor); 1152 return (data().DeclaredNonTrivialSpecialMembers & SMF_DefaultConstructor) || 1154 !(data().HasTrivialSpecialMembers & SMF_DefaultConstructor)); 1160 return data().HasConstexprNonCopyMoveConstructor || 1168 return data().DefaultedDefaultConstructorIsConstexpr && 1175 return data().HasConstexprDefaultConstructor || 1183 return data().HasTrivialSpecialMembers & SMF_CopyConstructor; 1187 return data().HasTrivialSpecialMembersForCall & SMF_CopyConstructor; 1193 return data().DeclaredNonTrivialSpecialMembers & SMF_CopyConstructor || 1198 return (data().DeclaredNonTrivialSpecialMembersForCall & 1207 (data().HasTrivialSpecialMembers & SMF_MoveConstructor); 1212 (data().HasTrivialSpecialMembersForCall & SMF_MoveConstructor); 1218 return (data().DeclaredNonTrivialSpecialMembers & SMF_MoveConstructor) || 1220 !(data().HasTrivialSpecialMembers & SMF_MoveConstructor)); 1224 return (data().DeclaredNonTrivialSpecialMembersForCall & 1227 !(data().HasTrivialSpecialMembersForCall & SMF_MoveConstructor)); 1233 return data().HasTrivialSpecialMembers & SMF_CopyAssignment; 1239 return data().DeclaredNonTrivialSpecialMembers & SMF_CopyAssignment || 1247 (data().HasTrivialSpecialMembers & SMF_MoveAssignment); 1253 return (data().DeclaredNonTrivialSpecialMembers & SMF_MoveAssignment) || 1255 !(data().HasTrivialSpecialMembers & SMF_MoveAssignment)); 1261 return data().DefaultedDestructorIsConstexpr && 1271 return data().HasTrivialSpecialMembers & SMF_Destructor; 1275 return data().HasTrivialSpecialMembersForCall & SMF_Destructor; 1281 return !(data().HasTrivialSpecialMembers & SMF_Destructor); 1285 return !(data().HasTrivialSpecialMembersForCall & SMF_Destructor); 1289 data().HasTrivialSpecialMembersForCall = 1296 return !data().HasUninitializedFields || 1297 !(data().HasDefaultedDefaultConstructor || 1307 return data().HasIrrelevantDestructor; 1313 return data().HasNonLiteralTypeFieldsOrBases; 1319 return data().HasInheritedConstructor; 1325 return data().HasInheritedAssignment;tools/clang/include/clang/AST/DeclFriend.h
253 FD->NextFriend = data().FirstFriend; 254 data().FirstFriend = FD;tools/clang/lib/AST/ASTImporter.cpp
1837 struct CXXRecordDecl::DefinitionData &ToData = ToCXX->data(); 1838 struct CXXRecordDecl::DefinitionData &FromData = FromCXX->data();tools/clang/lib/AST/DeclCXX.cpp
190 if (!data().Bases.isOffset() && data().NumBases > 0) 190 if (!data().Bases.isOffset() && data().NumBases > 0) 191 C.Deallocate(data().getBases()); 197 data().Aggregate = false; 202 data().PlainOldData = false; 211 data().Bases = new(C) CXXBaseSpecifier [NumBases]; 212 data().NumBases = NumBases; 214 data().getBases()[i] = *Bases[i]; 229 if (BaseClassDecl->data().HasBasesWithFields || 231 if (data().HasBasesWithFields) 233 data().IsStandardLayout = false; 234 data().HasBasesWithFields = true; 241 if (BaseClassDecl->data().HasBasesWithNonStaticDataMembers || 243 if (data().HasBasesWithNonStaticDataMembers) 244 data().IsCXX11StandardLayout = false; 245 data().HasBasesWithNonStaticDataMembers = true; 252 data().Empty = false; 258 data().Aggregate = false; 264 data().Polymorphic = true; 267 data().Aggregate = false; 274 data().IsStandardLayout = false; 276 data().IsCXX11StandardLayout = false; 280 data().HasNonLiteralTypeFieldsOrBases = true; 295 data().ImplicitCopyConstructorCanHaveConstParamForVBase = false; 299 data().Aggregate = false; 311 data().Empty = false; 315 data().Aggregate = false; 321 data().HasTrivialSpecialMembers &= SMF_Destructor; 322 data().HasTrivialSpecialMembersForCall &= SMF_Destructor; 327 data().IsStandardLayout = false; 328 data().IsCXX11StandardLayout = false; 334 data().DefaultedDefaultConstructorIsConstexpr = false; 335 data().DefaultedDestructorIsConstexpr = false; 343 data().ImplicitCopyConstructorCanHaveConstParamForVBase = false; 350 data().HasTrivialSpecialMembers &= ~SMF_DefaultConstructor; 358 data().HasTrivialSpecialMembers &= ~SMF_CopyConstructor; 361 data().HasTrivialSpecialMembersForCall &= ~SMF_CopyConstructor; 368 data().HasTrivialSpecialMembers &= ~SMF_MoveConstructor; 371 data().HasTrivialSpecialMembersForCall &= ~SMF_MoveConstructor; 379 data().HasTrivialSpecialMembers &= ~SMF_CopyAssignment; 385 data().HasTrivialSpecialMembers &= ~SMF_MoveAssignment; 392 data().DefaultedDefaultConstructorIsConstexpr = false; 400 data().ImplicitCopyConstructorCanHaveConstParamForNonVBase = false; 407 data().HasTrivialSpecialMembers &= ~SMF_Destructor; 410 data().HasTrivialSpecialMembersForCall &= ~SMF_Destructor; 413 data().HasIrrelevantDestructor = false; 421 data().ImplicitCopyAssignmentHasConstParam = false; 437 data().HasMutableFields = true; 438 data().NeedOverloadResolutionForCopyConstructor = true; 442 data().HasUninitializedReferenceMember = true; 445 data().HasUninitializedFields = true; 457 if (data().IsStandardLayout && NumBases > 1 && hasRepeatedBaseClass(this)) 458 data().IsStandardLayout = false; 461 data().IsParsingBaseSpecifiers = false; 466 data().VBases = new (C) CXXBaseSpecifier[VBases.size()]; 467 data().NumVBases = VBases.size(); 472 data().getVBases()[I] = *VBases[I]; 475 data().IsParsingBaseSpecifiers = false; 502 data().NeedOverloadResolutionForCopyConstructor = true; 504 data().NeedOverloadResolutionForMoveConstructor = true; 513 data().NeedOverloadResolutionForMoveAssignment = true; 523 data().NeedOverloadResolutionForCopyConstructor = true; 524 data().NeedOverloadResolutionForMoveConstructor = true; 525 data().NeedOverloadResolutionForDestructor = true; 534 data().DefaultedDestructorIsConstexpr = false; 569 data().Abstract = true; 591 if (!RD->data().HasBasesWithFields) { 677 data().HasOnlyCMembers = false; 699 data().Aggregate = false; 703 data().PlainOldData = false; 707 data().Empty = false; 712 data().Polymorphic = true; 718 data().HasTrivialSpecialMembers &= SMF_Destructor; 719 data().HasTrivialSpecialMembersForCall &= SMF_Destructor; 724 data().IsStandardLayout = false; 725 data().IsCXX11StandardLayout = false; 733 L->AddedCXXImplicitMember(data().Definition, D); 742 data().UserDeclaredConstructor = true; 748 data().PlainOldData = false; 755 data().UserProvidedDefaultConstructor = true; 757 data().HasConstexprDefaultConstructor = true; 759 data().HasDefaultedDefaultConstructor = true; 768 data().HasDeclaredCopyConstructorWithConstParam = true; 782 data().Aggregate = false; 794 data().HasConstexprNonCopyMoveConstructor = true; 802 data().HasIrrelevantDestructor = false; 810 data().HasTrivialSpecialMembers &= ~SMF_Destructor; 811 data().HasTrivialSpecialMembersForCall &= ~SMF_Destructor; 823 data().HasDeclaredCopyAssignmentWithConstParam = true; 843 ASTUnresolvedSet &Conversions = data().Conversions.get(Ctx); 857 data().HasTrivialSpecialMembers &= 858 data().DeclaredSpecialMembers | ~SMKind; 859 data().HasTrivialSpecialMembersForCall &= 860 data().DeclaredSpecialMembers | ~SMKind; 867 data().HasTrivialSpecialMembers |= SMKind; 868 data().HasTrivialSpecialMembersForCall |= SMKind; 870 data().HasTrivialSpecialMembersForCall |= SMKind; 871 data().DeclaredNonTrivialSpecialMembers |= SMKind; 873 data().DeclaredNonTrivialSpecialMembers |= SMKind; 880 data().DeclaredNonTrivialSpecialMembersForCall |= SMKind; 885 data().DeclaredSpecialMembers |= SMKind; 888 data().UserDeclaredSpecialMembers |= SMKind; 901 data().PlainOldData = false; 917 if (data().HasBasesWithFields) 918 data().IsStandardLayout = false; 928 if (data().Empty && !Field->isZeroLengthBitField(Context) && 931 data().Empty = false; 939 if (data().HasBasesWithNonStaticDataMembers) 940 data().IsCXX11StandardLayout = false; 948 data().Aggregate = false; 949 data().PlainOldData = false; 954 bool IsFirstField = !data().HasPrivateFields && 955 !data().HasProtectedFields && !data().HasPublicFields; 955 !data().HasProtectedFields && !data().HasPublicFields; 962 case AS_private: data().HasPrivateFields = true; break; 963 case AS_protected: data().HasProtectedFields = true; break; 964 case AS_public: data().HasPublicFields = true; break; 967 if ((data().HasPrivateFields + data().HasProtectedFields + 967 if ((data().HasPrivateFields + data().HasProtectedFields + 968 data().HasPublicFields) > 1) { 969 data().IsStandardLayout = false; 970 data().IsCXX11StandardLayout = false; 975 data().HasMutableFields = true; 976 data().NeedOverloadResolutionForCopyConstructor = true; 983 data().HasVariantMembers = true; 1002 struct DefinitionData &Data = data(); 1010 data().HasTrivialSpecialMembersForCall = 0; 1019 data().DefaultedCopyConstructorIsDeleted = true; 1020 data().DefaultedMoveConstructorIsDeleted = true; 1021 data().DefaultedMoveAssignmentIsDeleted = true; 1022 data().DefaultedDestructorIsDeleted = true; 1023 data().NeedOverloadResolutionForCopyConstructor = true; 1024 data().NeedOverloadResolutionForMoveConstructor = true; 1025 data().NeedOverloadResolutionForMoveAssignment = true; 1026 data().NeedOverloadResolutionForDestructor = true; 1032 data().PlainOldData = false; 1036 data().HasUninitializedReferenceMember = true; 1041 data().IsStandardLayout = false; 1042 data().IsCXX11StandardLayout = false; 1048 data().DefaultedCopyConstructorIsDeleted = true; 1054 data().HasUninitializedFields = true; 1056 data().HasUninitializedFields = true; 1062 data().HasNonLiteralTypeFieldsOrBases = true; 1067 data().HasInClassInitializer = true; 1072 data().HasTrivialSpecialMembers &= ~SMF_DefaultConstructor; 1080 data().Aggregate = false; 1084 data().PlainOldData = false; 1092 data().DefaultedMoveAssignmentIsDeleted = true; 1109 data().NeedOverloadResolutionForCopyConstructor = true; 1110 data().NeedOverloadResolutionForMoveConstructor = true; 1111 data().NeedOverloadResolutionForMoveAssignment = true; 1121 data().DefaultedCopyConstructorIsDeleted = true; 1123 data().DefaultedMoveConstructorIsDeleted = true; 1125 data().DefaultedMoveAssignmentIsDeleted = true; 1127 data().DefaultedDestructorIsDeleted = true; 1133 data().NeedOverloadResolutionForCopyConstructor |= 1134 FieldRec->data().NeedOverloadResolutionForCopyConstructor; 1135 data().NeedOverloadResolutionForMoveConstructor |= 1136 FieldRec->data().NeedOverloadResolutionForMoveConstructor; 1137 data().NeedOverloadResolutionForMoveAssignment |= 1138 FieldRec->data().NeedOverloadResolutionForMoveAssignment; 1139 data().NeedOverloadResolutionForDestructor |= 1140 FieldRec->data().NeedOverloadResolutionForDestructor; 1149 data().HasTrivialSpecialMembers &= ~SMF_DefaultConstructor; 1158 data().HasTrivialSpecialMembers &= ~SMF_CopyConstructor; 1161 data().HasTrivialSpecialMembersForCall &= ~SMF_CopyConstructor; 1167 data().HasTrivialSpecialMembers &= ~SMF_MoveConstructor; 1170 data().HasTrivialSpecialMembersForCall &= ~SMF_MoveConstructor; 1179 data().HasTrivialSpecialMembers &= ~SMF_CopyAssignment; 1184 data().HasTrivialSpecialMembers &= ~SMF_MoveAssignment; 1187 data().HasTrivialSpecialMembers &= ~SMF_Destructor; 1189 data().HasTrivialSpecialMembersForCall &= ~SMF_Destructor; 1191 data().HasIrrelevantDestructor = false; 1205 data().IsStandardLayout = false; 1207 data().IsCXX11StandardLayout = false; 1213 if (data().IsStandardLayout && 1216 data().IsStandardLayout = false; 1222 if (data().IsCXX11StandardLayout && IsFirstField) { 1227 data().IsCXX11StandardLayout = false; 1235 data().HasMutableFields = true; 1236 data().NeedOverloadResolutionForCopyConstructor = true; 1250 data().DefaultedDefaultConstructorIsConstexpr = false; 1258 data().ImplicitCopyConstructorCanHaveConstParamForNonVBase = false; 1267 data().ImplicitCopyAssignmentHasConstParam = false; 1271 data().HasUninitializedReferenceMember = true; 1278 data().HasVariantMembers = true; 1285 data().DefaultedDefaultConstructorIsConstexpr = false; 1293 data().DefaultedMoveAssignmentIsDeleted = true; 1299 if (data().Empty && !IsZeroSize) 1300 data().Empty = false; 1308 data().Conversions.get(Ctx).addDecl(Ctx, Shadow, Shadow->getAccess()); 1315 data().HasInheritedConstructor = true; 1318 data().Aggregate = false; 1322 data().HasInheritedAssignment = true; 1336 data().HasConstexprDefaultConstructor = true; 1344 data().HasConstexprNonCopyMoveConstructor = true; 1348 data().HasIrrelevantDestructor = false; 1357 data().HasTrivialSpecialMembers |= SMKind; 1359 data().DeclaredNonTrivialSpecialMembers |= SMKind; 1374 data().HasTrivialSpecialMembersForCall |= SMKind; 1376 data().DeclaredNonTrivialSpecialMembersForCall |= SMKind; 1386 return isPOD() && data().HasOnlyCMembers; 1629 Set = &data().Conversions.get(Ctx); 1631 Set = &data().VisibleConversions.get(Ctx); 1633 if (!data().ComputedVisibleConversions) { 1635 data().ComputedVisibleConversions = true; 1653 ASTUnresolvedSet &Convs = data().Conversions.get(getASTContext()); 1892 data().Abstract = true; 1907 if (data().Abstract || isInvalidDecl() || !data().Polymorphic || 1907 if (data().Abstract || isInvalidDecl() || !data().Polymorphic ||tools/clang/lib/AST/DeclFriend.cpp
74 Decl *First = data().FirstFriend.get(Source);
tools/clang/lib/Serialization/ASTWriter.cpp 6186 auto &Data = D->data();