Lines Matching refs:ILE
348 InitListExpr *ILE, bool &RequiresSecondPass,
352 InitListExpr *ILE, bool &RequiresSecondPass,
355 InitListExpr *ILE, bool &RequiresSecondPass,
495 const InitializedEntity &ParentEntity, InitListExpr *ILE, in FillInEmptyInitForBase() argument
497 assert(Init < ILE->getNumInits() && "should have been expanded"); in FillInEmptyInitForBase()
502 if (!ILE->getInit(Init)) { in FillInEmptyInitForBase()
505 : PerformEmptyInit(SemaRef, ILE->getLocEnd(), BaseEntity, in FillInEmptyInitForBase()
513 ILE->setInit(Init, BaseInit.getAs<Expr>()); in FillInEmptyInitForBase()
515 dyn_cast<InitListExpr>(ILE->getInit(Init))) { in FillInEmptyInitForBase()
519 dyn_cast<DesignatedInitUpdateExpr>(ILE->getInit(Init))) { in FillInEmptyInitForBase()
527 InitListExpr *ILE, in FillInEmptyInitForField() argument
530 SourceLocation Loc = ILE->getLocEnd(); in FillInEmptyInitForField()
531 unsigned NumInits = ILE->getNumInits(); in FillInEmptyInitForField()
535 if (const RecordType *RType = ILE->getType()->getAs<RecordType>()) in FillInEmptyInitForField()
539 if (Init >= NumInits || !ILE->getInit(Init)) { in FillInEmptyInitForField()
543 ILE->setInit(Init, Filler); in FillInEmptyInitForField()
545 ILE->updateInit(SemaRef.Context, Init, Filler); in FillInEmptyInitForField()
559 ILE->setInit(Init, DIE.get()); in FillInEmptyInitForField()
561 ILE->updateInit(SemaRef.Context, Init, DIE.get()); in FillInEmptyInitForField()
574 << ILE->getSyntacticForm()->getSourceRange(); in FillInEmptyInitForField()
592 ILE->setInit(Init, MemberInit.getAs<Expr>()); in FillInEmptyInitForField()
598 ILE->updateInit(SemaRef.Context, Init, MemberInit.getAs<Expr>()); in FillInEmptyInitForField()
602 = dyn_cast<InitListExpr>(ILE->getInit(Init))) in FillInEmptyInitForField()
606 = dyn_cast<DesignatedInitUpdateExpr>(ILE->getInit(Init))) in FillInEmptyInitForField()
616 InitListExpr *ILE, in FillInEmptyInitializations() argument
619 assert((ILE->getType() != SemaRef.Context.VoidTy) && in FillInEmptyInitializations()
622 if (const RecordType *RType = ILE->getType()->getAs<RecordType>()) { in FillInEmptyInitializations()
624 if (RDecl->isUnion() && ILE->getInitializedFieldInUnion()) in FillInEmptyInitializations()
625 FillInEmptyInitForField(0, ILE->getInitializedFieldInUnion(), in FillInEmptyInitializations()
626 Entity, ILE, RequiresSecondPass, FillWithNoInit); in FillInEmptyInitializations()
631 FillInEmptyInitForField(0, Field, Entity, ILE, RequiresSecondPass, in FillInEmptyInitializations()
640 unsigned NumElems = numStructUnionElements(ILE->getType()); in FillInEmptyInitializations()
643 if (ILE->getNumInits() < NumElems) in FillInEmptyInitializations()
644 ILE->resizeInits(SemaRef.Context, NumElems); in FillInEmptyInitializations()
653 FillInEmptyInitForBase(Init, Base, Entity, ILE, RequiresSecondPass, in FillInEmptyInitializations()
666 FillInEmptyInitForField(Init, Field, Entity, ILE, RequiresSecondPass, in FillInEmptyInitializations()
685 unsigned NumInits = ILE->getNumInits(); in FillInEmptyInitializations()
687 if (const ArrayType *AType = SemaRef.Context.getAsArrayType(ILE->getType())) { in FillInEmptyInitializations()
693 } else if (const VectorType *VType = ILE->getType()->getAs<VectorType>()) { in FillInEmptyInitializations()
699 ElementType = ILE->getType(); in FillInEmptyInitializations()
709 Expr *InitExpr = (Init < NumInits ? ILE->getInit(Init) : nullptr); in FillInEmptyInitializations()
710 if (!InitExpr && Init < NumInits && ILE->hasArrayFiller()) in FillInEmptyInitializations()
711 ILE->setInit(Init, ILE->getArrayFiller()); in FillInEmptyInitializations()
712 else if (!InitExpr && !ILE->hasArrayFiller()) { in FillInEmptyInitializations()
718 ExprResult ElementInit = PerformEmptyInit(SemaRef, ILE->getLocEnd(), in FillInEmptyInitializations()
736 ILE->setArrayFiller(Filler); in FillInEmptyInitializations()
738 ILE->setInit(Init, Filler); in FillInEmptyInitializations()
743 ILE->setArrayFiller(Filler); in FillInEmptyInitializations()
752 ILE->updateInit(SemaRef.Context, Init, Filler); in FillInEmptyInitializations()
3560 InitListExpr *ILE = cast<InitListExpr>(Args[0]); in TryConstructorInitialization() local
3565 if (ILE->getNumInits() != 0 || !DestRecordDecl->hasDefaultConstructor()) in TryConstructorInitialization()
3573 Args = MultiExprArg(ILE->getInits(), ILE->getNumInits()); in TryConstructorInitialization()
5943 if (InitListExpr *ILE = dyn_cast<InitListExpr>(Init)) { in performReferenceExtension() local
5944 if (ILE->getNumInits() == 1 && ILE->isGLValue()) { in performReferenceExtension()
5946 Init = ILE->getInit(0); in performReferenceExtension()
5993 if (CXXStdInitializerListExpr *ILE = in performLifetimeExtension() local
5995 performReferenceExtension(ILE->getSubExpr(), ExtendingEntity); in performLifetimeExtension()
5999 if (InitListExpr *ILE = dyn_cast<InitListExpr>(Init)) { in performLifetimeExtension() local
6000 if (ILE->getType()->isArrayType()) { in performLifetimeExtension()
6001 for (unsigned I = 0, N = ILE->getNumInits(); I != N; ++I) in performLifetimeExtension()
6002 performLifetimeExtension(ILE->getInit(I), ExtendingEntity); in performLifetimeExtension()
6006 if (CXXRecordDecl *RD = ILE->getType()->getAsCXXRecordDecl()) { in performLifetimeExtension()
6012 if (RD->isUnion() && ILE->getInitializedFieldInUnion() && in performLifetimeExtension()
6013 ILE->getInitializedFieldInUnion()->getType()->isReferenceType()) in performLifetimeExtension()
6014 performReferenceExtension(ILE->getInit(0), ExtendingEntity); in performLifetimeExtension()
6018 if (Index >= ILE->getNumInits()) in performLifetimeExtension()
6022 Expr *SubInit = ILE->getInit(Index); in performLifetimeExtension()
6726 InitListExpr *ILE = new (S.Context) InitListExpr(S.Context, in Perform() local
6728 ILE->setSyntacticForm(Syntactic); in Perform()
6729 ILE->setType(E->getType()); in Perform()
6730 ILE->setValueKind(E->getValueKind()); in Perform()
6731 CurInit = ILE; in Perform()