Lines Matching refs:InitializedEntity
242 void CheckImplicitInitList(const InitializedEntity &Entity,
246 void CheckExplicitInitList(const InitializedEntity &Entity,
251 void CheckListElementTypes(const InitializedEntity &Entity,
258 void CheckSubElementType(const InitializedEntity &Entity,
263 void CheckComplexType(const InitializedEntity &Entity,
268 void CheckScalarType(const InitializedEntity &Entity,
273 void CheckReferenceType(const InitializedEntity &Entity,
278 void CheckVectorType(const InitializedEntity &Entity,
282 void CheckStructUnionTypes(const InitializedEntity &Entity,
289 void CheckArrayType(const InitializedEntity &Entity,
295 bool CheckDesignatedInitializer(const InitializedEntity &Entity,
318 const InitializedEntity &ParentEntity,
320 void FillInValueInitializations(const InitializedEntity &Entity,
322 bool CheckFlexibleArrayInit(const InitializedEntity &Entity,
325 void CheckValueInitializable(const InitializedEntity &Entity);
328 InitListChecker(Sema &S, const InitializedEntity &Entity,
338 void InitListChecker::CheckValueInitializable(const InitializedEntity &Entity) {
351 const InitializedEntity &ParentEntity,
356 InitializedEntity MemberEntity
357 = InitializedEntity::InitializeMember(Field, &ParentEntity);
429 InitListChecker::FillInValueInitializations(const InitializedEntity &Entity,
481 InitializedEntity ElementEntity = Entity;
488 ElementEntity = InitializedEntity::InitializeElement(SemaRef.Context,
493 ElementEntity = InitializedEntity::InitializeElement(SemaRef.Context,
503 if (ElementEntity.getKind() == InitializedEntity::EK_ArrayElement ||
504 ElementEntity.getKind() == InitializedEntity::EK_VectorElement)
530 if (ElementEntity.getKind() == InitializedEntity::EK_ArrayElement)
537 if (ElementEntity.getKind() == InitializedEntity::EK_ArrayElement) {
558 InitListChecker::InitListChecker(Sema &S, const InitializedEntity &Entity,
606 void InitListChecker::CheckImplicitInitList(const InitializedEntity &Entity,
673 void InitListChecker::CheckExplicitInitList(const InitializedEntity &Entity,
752 void InitListChecker::CheckListElementTypes(const InitializedEntity &Entity,
809 void InitListChecker::CheckSubElementType(const InitializedEntity &Entity,
942 void InitListChecker::CheckComplexType(const InitializedEntity &Entity,
968 InitializedEntity ElementEntity =
969 InitializedEntity::InitializeElement(SemaRef.Context, 0, Entity);
979 void InitListChecker::CheckScalarType(const InitializedEntity &Entity,
1049 void InitListChecker::CheckReferenceType(const InitializedEntity &Entity,
1106 void InitListChecker::CheckVectorType(const InitializedEntity &Entity,
1120 InitializedEntity::InitializeElement(SemaRef.Context, 0, Entity));
1161 InitializedEntity ElementEntity =
1162 InitializedEntity::InitializeElement(SemaRef.Context, 0, Entity);
1179 InitializedEntity ElementEntity =
1180 InitializedEntity::InitializeElement(SemaRef.Context, 0, Entity);
1221 void InitListChecker::CheckArrayType(const InitializedEntity &Entity,
1313 InitializedEntity ElementEntity =
1314 InitializedEntity::InitializeElement(SemaRef.Context, StructuredIndex,
1345 CheckValueInitializable(InitializedEntity::InitializeElement(
1350 bool InitListChecker::CheckFlexibleArrayInit(const InitializedEntity &Entity,
1367 } else if (Entity.getKind() != InitializedEntity::EK_Variable) {
1389 void InitListChecker::CheckStructUnionTypes(const InitializedEntity &Entity,
1432 InitializedEntity::InitializeMember(*Field, &Entity));
1508 InitializedEntity MemberEntity =
1509 InitializedEntity::InitializeMember(*Field, &Entity);
1545 InitializedEntity::InitializeMember(*Field, &Entity));
1560 InitializedEntity MemberEntity =
1561 InitializedEntity::InitializeMember(*Field, &Entity);
1689 InitListChecker::CheckDesignatedInitializer(const InitializedEntity &Entity,
1942 InitializedEntity MemberEntity =
1943 InitializedEntity::InitializeMember(*Field, &Entity);
1961 InitializedEntity MemberEntity =
1962 InitializedEntity::InitializeMember(*Field, &Entity);
2150 InitializedEntity ElementEntity =
2151 InitializedEntity::InitializeElement(SemaRef.Context, 0, Entity);
2440 InitializedEntity::InitializedEntity(ASTContext &Context, unsigned Index,
2441 const InitializedEntity &Parent)
2458 InitializedEntity
2459 InitializedEntity::InitializeBase(ASTContext &Context,
2462 InitializedEntity Result;
2473 DeclarationName InitializedEntity::getName() const {
2506 DeclaratorDecl *InitializedEntity::getDecl() const {
2535 bool InitializedEntity::allowsNRVO() const {
2562 unsigned InitializedEntity::dumpImpl(raw_ostream &OS) const {
2602 void InitializedEntity::dump() const {
2923 const InitializedEntity &Entity) {
2940 } else if (Entity.getKind() == InitializedEntity::EK_Result) {
2949 const InitializedEntity &Entity,
2977 InitializedEntity HiddenArray =
2978 InitializedEntity::InitializeTemporary(ArrayType);
3055 const InitializedEntity &Entity,
3198 const InitializedEntity &Entity,
3208 const InitializedEntity &Entity,
3215 const InitializedEntity &Entity,
3267 InitializedEntity TempEntity = InitializedEntity::InitializeTemporary(cv1T1);
3282 const InitializedEntity &Entity,
3350 const InitializedEntity &Entity,
3540 const InitializedEntity &Entity,
3545 const InitializedEntity &Entity,
3622 const InitializedEntity &Entity,
3806 InitializedEntity TempEntity = InitializedEntity::InitializeTemporary(cv1T1);
3863 const InitializedEntity &Entity,
3872 const InitializedEntity &Entity,
3950 const InitializedEntity &Entity,
3989 const InitializedEntity &Entity,
4155 const InitializedEntity &Entity,
4158 Entity.getKind() == InitializedEntity::EK_Result &&
4273 const InitializedEntity &Entity,
4352 const InitializedEntity &Entity,
4483 Entity.getKind() == InitializedEntity::EK_Member &&
4627 getAssignmentAction(const InitializedEntity &Entity, bool Diagnose = false) {
4629 case InitializedEntity::EK_Variable:
4630 case InitializedEntity::EK_New:
4631 case InitializedEntity::EK_Exception:
4632 case InitializedEntity::EK_Base:
4633 case InitializedEntity::EK_Delegating:
4636 case InitializedEntity::EK_Parameter:
4643 case InitializedEntity::EK_Parameter_CF_Audited:
4650 case InitializedEntity::EK_Result:
4653 case InitializedEntity::EK_Temporary:
4654 case InitializedEntity::EK_RelatedResult:
4658 case InitializedEntity::EK_Member:
4659 case InitializedEntity::EK_ArrayElement:
4660 case InitializedEntity::EK_VectorElement:
4661 case InitializedEntity::EK_ComplexElement:
4662 case InitializedEntity::EK_BlockElement:
4663 case InitializedEntity::EK_LambdaCapture:
4664 case InitializedEntity::EK_CompoundLiteralInit:
4673 static bool shouldBindAsTemporary(const InitializedEntity &Entity) {
4675 case InitializedEntity::EK_ArrayElement:
4676 case InitializedEntity::EK_Member:
4677 case InitializedEntity::EK_Result:
4678 case InitializedEntity::EK_New:
4679 case InitializedEntity::EK_Variable:
4680 case InitializedEntity::EK_Base:
4681 case InitializedEntity::EK_Delegating:
4682 case InitializedEntity::EK_VectorElement:
4683 case InitializedEntity::EK_ComplexElement:
4684 case InitializedEntity::EK_Exception:
4685 case InitializedEntity::EK_BlockElement:
4686 case InitializedEntity::EK_LambdaCapture:
4687 case InitializedEntity::EK_CompoundLiteralInit:
4690 case InitializedEntity::EK_Parameter:
4691 case InitializedEntity::EK_Parameter_CF_Audited:
4692 case InitializedEntity::EK_Temporary:
4693 case InitializedEntity::EK_RelatedResult:
4697 llvm_unreachable("missed an InitializedEntity kind?");
4702 static bool shouldDestroyTemporary(const InitializedEntity &Entity) {
4704 case InitializedEntity::EK_Result:
4705 case InitializedEntity::EK_New:
4706 case InitializedEntity::EK_Base:
4707 case InitializedEntity::EK_Delegating:
4708 case InitializedEntity::EK_VectorElement:
4709 case InitializedEntity::EK_ComplexElement:
4710 case InitializedEntity::EK_BlockElement:
4711 case InitializedEntity::EK_LambdaCapture:
4714 case InitializedEntity::EK_Member:
4715 case InitializedEntity::EK_Variable:
4716 case InitializedEntity::EK_Parameter:
4717 case InitializedEntity::EK_Parameter_CF_Audited:
4718 case InitializedEntity::EK_Temporary:
4719 case InitializedEntity::EK_ArrayElement:
4720 case InitializedEntity::EK_Exception:
4721 case InitializedEntity::EK_CompoundLiteralInit:
4722 case InitializedEntity::EK_RelatedResult:
4726 llvm_unreachable("missed an InitializedEntity kind?");
4779 static SourceLocation getInitializationLoc(const InitializedEntity &Entity,
4782 case InitializedEntity::EK_Result:
4785 case InitializedEntity::EK_Exception:
4788 case InitializedEntity::EK_Variable:
4791 case InitializedEntity::EK_LambdaCapture:
4794 case InitializedEntity::EK_ArrayElement:
4795 case InitializedEntity::EK_Member:
4796 case InitializedEntity::EK_Parameter:
4797 case InitializedEntity::EK_Parameter_CF_Audited:
4798 case InitializedEntity::EK_Temporary:
4799 case InitializedEntity::EK_New:
4800 case InitializedEntity::EK_Base:
4801 case InitializedEntity::EK_Delegating:
4802 case InitializedEntity::EK_VectorElement:
4803 case InitializedEntity::EK_ComplexElement:
4804 case InitializedEntity::EK_BlockElement:
4805 case InitializedEntity::EK_CompoundLiteralInit:
4806 case InitializedEntity::EK_RelatedResult:
4809 llvm_unreachable("missed an InitializedEntity kind?");
4834 const InitializedEntity &Entity,
4965 const InitializedEntity &Entity,
5016 const InitializedEntity &Entity) {
5027 else if (Entity.getKind() == InitializedEntity::EK_RelatedResult &&
5041 static bool isExplicitTemporary(const InitializedEntity &Entity,
5045 case InitializedEntity::EK_Temporary:
5046 case InitializedEntity::EK_CompoundLiteralInit:
5047 case InitializedEntity::EK_RelatedResult:
5067 const InitializedEntity &Entity,
5138 if (Entity.getKind() == InitializedEntity::EK_Base) {
5142 } else if (Entity.getKind() == InitializedEntity::EK_Delegating) {
5187 /// Determine whether the specified InitializedEntity definitely has a lifetime
5191 InitializedEntityOutlivesFullExpression(const InitializedEntity &Entity) {
5192 const InitializedEntity *Top = &Entity;
5197 case InitializedEntity::EK_Variable:
5198 case InitializedEntity::EK_Result:
5199 case InitializedEntity::EK_Exception:
5200 case InitializedEntity::EK_Member:
5201 case InitializedEntity::EK_New:
5202 case InitializedEntity::EK_Base:
5203 case InitializedEntity::EK_Delegating:
5206 case InitializedEntity::EK_ArrayElement:
5207 case InitializedEntity::EK_VectorElement:
5208 case InitializedEntity::EK_BlockElement:
5209 case InitializedEntity::EK_ComplexElement:
5214 case InitializedEntity::EK_Parameter:
5215 case InitializedEntity::EK_Parameter_CF_Audited:
5216 case InitializedEntity::EK_Temporary:
5217 case InitializedEntity::EK_LambdaCapture:
5218 case InitializedEntity::EK_CompoundLiteralInit:
5219 case InitializedEntity::EK_RelatedResult:
5231 getDeclForTemporaryLifetimeExtension(const InitializedEntity &Entity,
5235 case InitializedEntity::EK_Variable:
5239 case InitializedEntity::EK_Member:
5250 case InitializedEntity::EK_Parameter:
5251 case InitializedEntity::EK_Parameter_CF_Audited:
5255 case InitializedEntity::EK_Result:
5259 case InitializedEntity::EK_New:
5265 case InitializedEntity::EK_Temporary:
5266 case InitializedEntity::EK_CompoundLiteralInit:
5267 case InitializedEntity::EK_RelatedResult:
5273 case InitializedEntity::EK_ArrayElement:
5278 case InitializedEntity::EK_Base:
5279 case InitializedEntity::EK_Delegating:
5286 case InitializedEntity::EK_BlockElement:
5287 case InitializedEntity::EK_LambdaCapture:
5288 case InitializedEntity::EK_Exception:
5289 case InitializedEntity::EK_VectorElement:
5290 case InitializedEntity::EK_ComplexElement:
5402 static void warnOnLifetimeExtension(Sema &S, const InitializedEntity &Entity,
5414 for (const InitializedEntity *Ent = Entity.getParent(); Ent;
5416 if (Ent->getKind() != InitializedEntity::EK_Base) {
5437 const InitializedEntity &Entity,
5871 InitializedEntity TempEntity = InitializedEntity::InitializeTemporary(Ty);
5872 InitializedEntity InitEntity = IsTemporary ? TempEntity : Entity;
5907 InitializedEntity TempEntity = InitializedEntity::InitializeTemporary(
5946 InitializedEntity TempEntity = InitializedEntity::InitializeTemporary(
5989 Entity.getKind() == InitializedEntity::EK_Parameter_CF_Audited);
6115 } else if (Entity.getKind() != InitializedEntity::EK_Variable) {
6134 if (Entity.getKind() == InitializedEntity::EK_Member &&
6187 static void emitBadConversionNotes(Sema &S, const InitializedEntity &entity,
6199 if (entity.getKind() == InitializedEntity::EK_Result)
6205 const InitializedEntity &Entity,
6438 (Entity.getKind() == InitializedEntity::EK_Base ||
6439 Entity.getKind() == InitializedEntity::EK_Member) &&
6447 if (Entity.getKind() == InitializedEntity::EK_Base) {
6516 if (Entity.getKind() == InitializedEntity::EK_Member &&
6967 Sema::CanPerformCopyInitialization(const InitializedEntity &Entity,
6982 Sema::PerformCopyInitialization(const InitializedEntity &Entity,