reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1304 Expr *TransformedExpr = getDerived().TransformExpr(LH->getValue()).get();
tools/clang/lib/Sema/TreeTransform.h188 OldLocation = Self.getDerived().getBaseLocation(); 189 OldEntity = Self.getDerived().getBaseEntity(); 192 Self.getDerived().setBase(Location, Entity); 196 Self.getDerived().setBase(OldLocation, OldEntity); 469 return getDerived().TransformDecl(Loc, D); 482 return cast_or_null<NamedDecl>(getDerived().TransformDecl(Loc, D)); 601 getDerived().getBaseLocation()); 1005 TemplateName InstName = getDerived().RebuildTemplateName( 1022 getDerived().RebuildTemplateSpecializationType(InstName, NameLoc, Args); 2559 return getDerived().RebuildCXXStaticCastExpr(OpLoc, LAngleLoc, TInfo, 2564 return getDerived().RebuildCXXDynamicCastExpr(OpLoc, LAngleLoc, TInfo, 2569 return getDerived().RebuildCXXReinterpretCastExpr(OpLoc, LAngleLoc, TInfo, 2575 return getDerived().RebuildCXXConstCastExpr(OpLoc, LAngleLoc, TInfo, 3397 ExprResult E = getDerived().TransformExpr(cast<Expr>(S)); 3475 return getDerived().TransformExpr(Init); 3480 return getDerived().RebuildParenListExpr(Parens.getBegin(), None, 3486 return getDerived().RebuildParenListExpr(SourceLocation(), None, 3492 return getDerived().TransformExpr(Init); 3506 if (getDerived().TransformExprs(Construct->getArgs(), Construct->getNumArgs(), 3512 return getDerived().RebuildInitList(Construct->getBeginLoc(), NewArgs, 3524 return getDerived().RebuildParenListExpr(Parens.getBegin(), NewArgs, 3536 if (IsCall && getDerived().DropCallArgument(Inputs[I])) { 3556 if (getDerived().TryExpandParameterPacks(Expansion->getEllipsisLoc(), 3568 ExprResult OutPattern = getDerived().TransformExpr(Pattern); 3572 ExprResult Out = getDerived().RebuildPackExpansion(OutPattern.get(), 3592 ExprResult Out = getDerived().TransformExpr(Pattern); 3597 Out = getDerived().RebuildPackExpansion( 3609 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 3611 ExprResult Out = getDerived().TransformExpr(Pattern); 3615 Out = getDerived().RebuildPackExpansion( 3627 IsCall ? getDerived().TransformInitializer(Inputs[I], /*DirectInit*/false) 3628 : getDerived().TransformExpr(Inputs[I]); 3646 getDerived().TransformDefinition(Var->getLocation(), Var)); 3655 ExprResult CondExpr = getDerived().TransformExpr(Expr); 3695 getDerived().TransformDecl( 3705 getDerived().TransformDecl(Q.getLocalBeginLoc(), 3720 cast_or_null<CXXRecordDecl>(getDerived().TransformDecl( 3764 !getDerived().AlwaysRebuild()) 3798 getDerived().TransformDecl(NameInfo.getLoc(), OldTemplate)); 3814 NewTInfo = getDerived().TransformType(OldTInfo); 3822 QualType NewT = getDerived().TransformType(Name.getCXXNameType()); 3854 = cast_or_null<TemplateDecl>(getDerived().TransformDecl(NameLoc, 3859 if (!getDerived().AlwaysRebuild() && 3864 return getDerived().RebuildTemplateName(SS, QTN->hasTemplateKeyword(), 3875 if (!getDerived().AlwaysRebuild() && 3884 return getDerived().RebuildTemplateName(SS, 3893 return getDerived().RebuildTemplateName(SS, TemplateKWLoc, 3900 = cast_or_null<TemplateDecl>(getDerived().TransformDecl(NameLoc, 3905 if (!getDerived().AlwaysRebuild() && 3916 getDerived().TransformDecl(NameLoc, SubstPack->getParameterPack())); 3920 if (!getDerived().AlwaysRebuild() && 3924 return getDerived().RebuildTemplateName(TransParam, 3936 SourceLocation Loc = getDerived().getBaseLocation(); 4000 DI = getDerived().TransformType(DI); 4010 QualifierLoc = getDerived().TransformNestedNameSpecifierLoc(QualifierLoc); 4018 = getDerived().TransformTemplateName(SS, Arg.getAsTemplate(), 4043 ExprResult E = getDerived().TransformExpr(InputExpr); 4160 if (getDerived().TryExpandParameterPacks(Ellipsis, 4174 if (getDerived().TransformTemplateArgument(Pattern, OutPattern, Uneval)) 4177 Out = getDerived().RebuildPackExpansion(OutPattern, Ellipsis, 4191 if (getDerived().TransformTemplateArgument(Pattern, Out, Uneval)) 4195 Out = getDerived().RebuildPackExpansion(Out, Ellipsis, 4207 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 4209 if (getDerived().TransformTemplateArgument(Pattern, Out, Uneval)) 4212 Out = getDerived().RebuildPackExpansion(Out, Ellipsis, 4224 if (getDerived().TransformTemplateArgument(In, Out, Uneval)) 4240 if (getDerived().AlreadyTransformed(T)) 4246 getDerived().getBaseLocation()); 4248 TypeSourceInfo *NewDI = getDerived().TransformType(DI); 4260 getDerived().getBaseEntity()); 4261 if (getDerived().AlreadyTransformed(DI->getType())) 4269 QualType Result = getDerived().TransformType(TLB, TL); 4312 getDerived().getBaseEntity()); 4313 if (getDerived().AlreadyTransformed(DI->getType())) 4327 QualType Result = getDerived().TransformDependentNameType( 4333 Result = getDerived().RebuildQualifiedType(Result, QTL); 4346 QualType Result = getDerived().TransformType(TLB, T.getUnqualifiedLoc()); 4350 Result = getDerived().RebuildQualifiedType(Result, T); 4446 if (getDerived().AlreadyTransformed(TL.getType())) 4462 if (getDerived().AlreadyTransformed(TSInfo->getType())) 4474 assert(!getDerived().AlreadyTransformed(T)); 4483 TemplateName Template = getDerived().TransformTemplateName( 4489 Result = getDerived().TransformTemplateSpecializationType(TLB, SpecTL, 4496 = getDerived().RebuildTemplateName(SS, 4505 Result = getDerived().TransformDependentTemplateSpecializationType(TLB, 4511 Result = getDerived().TransformType(TLB, TL); 4548 return getDerived().TransformType(TLB, TL.getOriginalLoc()); 4554 QualType OriginalType = getDerived().TransformType(TLB, TL.getOriginalLoc()); 4559 if (getDerived().AlwaysRebuild() || 4579 = getDerived().TransformType(TLB, TL.getPointeeLoc()); 4599 if (getDerived().AlwaysRebuild() || 4601 Result = getDerived().RebuildPointerType(PointeeType, TL.getSigilLoc()); 4620 = getDerived().TransformType(TLB, TL.getPointeeLoc()); 4628 if (getDerived().AlwaysRebuild() || 4630 Result = getDerived().RebuildBlockPointerType(PointeeType, 4652 QualType PointeeType = getDerived().TransformType(TLB, TL.getPointeeLoc()); 4660 if (getDerived().AlwaysRebuild() || 4662 Result = getDerived().RebuildReferenceType(PointeeType, 4703 QualType PointeeType = getDerived().TransformType(TLB, TL.getPointeeLoc()); 4710 NewClsTInfo = getDerived().TransformType(OldClsTInfo); 4721 NewClsType = getDerived().TransformType(OldClsType); 4727 if (getDerived().AlwaysRebuild() || 4730 Result = getDerived().RebuildMemberPointerType(PointeeType, NewClsType, 4756 QualType ElementType = getDerived().TransformType(TLB, TL.getElementLoc()); 4768 NewSize = getDerived().TransformExpr(OldSize).template getAs<Expr>(); 4773 if (getDerived().AlwaysRebuild() || 4776 Result = getDerived().RebuildConstantArrayType(ElementType, 4802 QualType ElementType = getDerived().TransformType(TLB, TL.getElementLoc()); 4807 if (getDerived().AlwaysRebuild() || 4809 Result = getDerived().RebuildIncompleteArrayType(ElementType, 4830 QualType ElementType = getDerived().TransformType(TLB, TL.getElementLoc()); 4838 SizeResult = getDerived().TransformExpr(T->getSizeExpr()); 4850 if (getDerived().AlwaysRebuild() || 4853 Result = getDerived().RebuildVariableArrayType(ElementType, 4877 QualType ElementType = getDerived().TransformType(TLB, TL.getElementLoc()); 4890 = getDerived().TransformExpr(origSize); 4898 if (getDerived().AlwaysRebuild() || 4901 Result = getDerived().RebuildDependentSizedArrayType(ElementType, 4924 QualType ElementType = getDerived().TransformType(T->getElementType()); 4931 ExprResult Size = getDerived().TransformExpr(T->getSizeExpr()); 4937 if (getDerived().AlwaysRebuild() || ElementType != T->getElementType() || 4939 Result = getDerived().RebuildDependentVectorType( 4965 QualType ElementType = getDerived().TransformType(T->getElementType()); 4973 ExprResult Size = getDerived().TransformExpr(T->getSizeExpr()); 4979 if (getDerived().AlwaysRebuild() || 4982 Result = getDerived().RebuildDependentSizedExtVectorType(ElementType, 5007 QualType pointeeType = getDerived().TransformType(T->getPointeeType()); 5016 ExprResult AddrSpace = getDerived().TransformExpr(T->getAddrSpaceExpr()); 5022 if (getDerived().AlwaysRebuild() || pointeeType != T->getPointeeType() || 5024 Result = getDerived().RebuildDependentAddressSpaceType( 5041 Result, getDerived().getBaseLocation()); 5052 QualType ElementType = getDerived().TransformType(T->getElementType()); 5057 if (getDerived().AlwaysRebuild() || 5059 Result = getDerived().RebuildVectorType(ElementType, T->getNumElements(), 5075 QualType ElementType = getDerived().TransformType(T->getElementType()); 5080 if (getDerived().AlwaysRebuild() || 5082 Result = getDerived().RebuildExtVectorType(ElementType, 5112 QualType Result = getDerived().TransformType(TLB, 5129 NewDI = getDerived().TransformType(OldDI); 5184 if (getDerived().TryExpandParameterPacks(ExpansionTL.getEllipsisLoc(), 5196 getDerived().ExpandingFunctionParameterPack(OldParm); 5200 = getDerived().TransformFunctionTypeParam(OldParm, 5217 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 5219 = getDerived().TransformFunctionTypeParam(OldParm, 5246 NewParm = getDerived().TransformFunctionTypeParam(OldParm, 5251 NewParm = getDerived().TransformFunctionTypeParam( 5282 if (getDerived().TryExpandParameterPacks(Loc, SourceRange(), 5295 QualType NewType = getDerived().TransformType(Pattern); 5321 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 5322 QualType NewType = getDerived().TransformType(Pattern); 5338 NewType = getDerived().TransformType(OldType); 5340 NewType = getDerived().TransformType(OldType); 5374 return getDerived().TransformFunctionProtoType( 5402 if (getDerived().TransformFunctionTypeParams( 5418 ResultType = getDerived().TransformType(TLB, TL.getReturnLoc()); 5424 ResultType = getDerived().TransformType(TLB, TL.getReturnLoc()); 5428 if (getDerived().TransformFunctionTypeParams( 5457 if (getDerived().AlwaysRebuild() || ResultType != T->getReturnType() || 5459 Result = getDerived().RebuildFunctionProtoType(ResultType, ParamTypes, EPI); 5486 ExprResult NoexceptExpr = getDerived().TransformExpr(ESI.NoexceptExpr); 5525 if (getDerived().TryExpandParameterPacks( 5535 QualType U = getDerived().TransformType(PackExpansion->getPattern()); 5549 QualType U = getDerived().TransformType(PackExpansion->getPattern()); 5556 QualType U = getDerived().TransformType(T); 5577 QualType ResultType = getDerived().TransformType(TLB, TL.getReturnLoc()); 5582 if (getDerived().AlwaysRebuild() || ResultType != T->getReturnType()) 5583 Result = getDerived().RebuildFunctionNoProtoType(ResultType); 5598 Decl *D = getDerived().TransformDecl(TL.getNameLoc(), T->getDecl()); 5603 if (getDerived().AlwaysRebuild() || D != T->getDecl()) { 5604 Result = getDerived().RebuildUnresolvedUsingType(TL.getNameLoc(), D); 5622 = cast_or_null<TypedefNameDecl>(getDerived().TransformDecl(TL.getNameLoc(), 5628 if (getDerived().AlwaysRebuild() || 5630 Result = getDerived().RebuildTypedefType(Typedef); 5649 ExprResult E = getDerived().TransformExpr(TL.getUnderlyingExpr()); 5658 if (getDerived().AlwaysRebuild() || 5660 Result = getDerived().RebuildTypeOfExprType(E.get(), TL.getTypeofLoc()); 5678 TypeSourceInfo* New_Under_TI = getDerived().TransformType(Old_Under_TI); 5683 if (getDerived().AlwaysRebuild() || New_Under_TI != Old_Under_TI) { 5684 Result = getDerived().RebuildTypeOfType(New_Under_TI->getType()); 5708 ExprResult E = getDerived().TransformExpr(T->getUnderlyingExpr()); 5717 if (getDerived().AlwaysRebuild() || 5719 Result = getDerived().RebuildDecltypeType(E.get(), TL.getNameLoc()); 5739 getDerived().TransformType(TL.getUnderlyingTInfo())->getType(); 5740 Result = getDerived().RebuildUnaryTransformType(NewBase, 5761 NewDeduced = getDerived().TransformType(OldDeduced); 5767 if (getDerived().AlwaysRebuild() || NewDeduced != OldDeduced || 5769 Result = getDerived().RebuildAutoType(NewDeduced, T->getKeyword()); 5786 TemplateName TemplateName = getDerived().TransformTemplateName( 5794 NewDeduced = getDerived().TransformType(OldDeduced); 5799 QualType Result = getDerived().RebuildDeducedTemplateSpecializationType( 5816 = cast_or_null<RecordDecl>(getDerived().TransformDecl(TL.getNameLoc(), 5822 if (getDerived().AlwaysRebuild() || 5824 Result = getDerived().RebuildRecordType(Record); 5840 = cast_or_null<EnumDecl>(getDerived().TransformDecl(TL.getNameLoc(), 5846 if (getDerived().AlwaysRebuild() || 5848 Result = getDerived().RebuildEnumType(Enum); 5863 Decl *D = getDerived().TransformDecl(TL.getNameLoc(), 5889 QualType Replacement = getDerived().TransformType(T->getReplacementType()); 5924 = getDerived().TransformTemplateName(SS, T->getTemplateName(), 5929 return getDerived().TransformTemplateSpecializationType(TLB, TL, Template); 5935 QualType ValueType = getDerived().TransformType(TLB, TL.getValueLoc()); 5940 if (getDerived().AlwaysRebuild() || 5942 Result = getDerived().RebuildAtomicType(ValueType, TL.getKWLoc()); 5958 QualType ValueType = getDerived().TransformType(TLB, TL.getValueLoc()); 5963 if (getDerived().AlwaysRebuild() || ValueType != TL.getValueLoc().getType()) { 5966 Result = getDerived().RebuildPipeType(ValueType, TL.getKWLoc(), isReadPipe); 6052 if (getDerived().TransformTemplateArguments(ArgIterator(TL, 0), 6060 getDerived().RebuildTemplateSpecializationType(Template, 6107 if (getDerived().TransformTemplateArguments(ArgIterator(TL, 0), 6136 = getDerived().RebuildTemplateSpecializationType(Template, 6165 = getDerived().TransformNestedNameSpecifierLoc(TL.getQualifierLoc()); 6170 QualType NamedT = getDerived().TransformType(TLB, TL.getNamedTypeLoc()); 6194 if (getDerived().AlwaysRebuild() || 6197 Result = getDerived().RebuildElaboratedType(TL.getElaboratedKeywordLoc(), 6215 QualType modifiedType = getDerived().TransformType(TLB, TL.getModifiedLoc()); 6221 const Attr *newAttr = oldAttr ? getDerived().TransformAttr(oldAttr) : nullptr; 6228 if (getDerived().AlwaysRebuild() || 6233 = getDerived().TransformType(oldType->getEquivalentType()); 6262 QualType Inner = getDerived().TransformType(TLB, TL.getInnerLoc()); 6267 if (getDerived().AlwaysRebuild() || 6269 Result = getDerived().RebuildParenType(Inner); 6284 QualType Inner = getDerived().TransformType(TLB, TL.getInnerLoc()); 6289 if (getDerived().AlwaysRebuild() || Inner != TL.getInnerLoc().getType()) { 6291 getDerived().RebuildMacroQualifiedType(Inner, TL.getMacroIdentifier()); 6313 = getDerived().TransformNestedNameSpecifierLoc(TL.getQualifierLoc()); 6318 = getDerived().RebuildDependentNameType(T->getKeyword(), 6350 = getDerived().TransformNestedNameSpecifierLoc(TL.getQualifierLoc()); 6355 return getDerived() 6372 if (getDerived().TransformTemplateArguments(ArgIterator(TL, 0), 6377 QualType Result = getDerived().RebuildDependentTemplateSpecializationType( 6429 = getDerived().TransformType(TLB, TL.getPatternLoc()); 6434 if (getDerived().AlwaysRebuild() || 6436 Result = getDerived().RebuildPackExpansionType(Pattern, 6464 getDerived().TransformDecl(T->getDecl()->getLocation(), T->getDecl())); 6469 if (getDerived().AlwaysRebuild() || 6471 Result = getDerived().RebuildObjCTypeParamType(OTP, 6496 QualType BaseType = getDerived().TransformType(TLB, TL.getBaseLoc()); 6525 if (getDerived().TryExpandParameterPacks( 6538 QualType NewPatternType = getDerived().TransformType(TypeArgBuilder, 6560 QualType NewTypeArg = getDerived().TransformType(TypeArgBuilder, 6574 QualType NewTypeArg = getDerived().TransformType(TypeArgBuilder, TypeArgLoc); 6590 if (getDerived().AlwaysRebuild() || AnyChanged) { 6592 Result = getDerived().RebuildObjCObjectType( 6619 QualType PointeeType = getDerived().TransformType(TLB, TL.getPointeeLoc()); 6624 if (getDerived().AlwaysRebuild() || 6626 Result = getDerived().RebuildObjCObjectPointerType(PointeeType, 6649 return getDerived().TransformCompoundStmt(S, false); 6663 StmtResult Result = getDerived().TransformStmt( 6684 if (!getDerived().AlwaysRebuild() && 6688 return getDerived().RebuildCompoundStmt(S->getLBracLoc(), 6703 LHS = getDerived().TransformExpr(S->getLHS()); 6709 RHS = getDerived().TransformExpr(S->getRHS()); 6718 StmtResult Case = getDerived().RebuildCaseStmt(S->getCaseLoc(), 6728 getDerived().TransformStmt(S->getSubStmt()); 6733 return getDerived().RebuildCaseStmtBody(Case.get(), SubStmt.get()); 6740 getDerived().TransformStmt(S->getSubStmt()); 6745 return getDerived().RebuildDefaultStmt(S->getDefaultLoc(), S->getColonLoc(), 6752 StmtResult SubStmt = getDerived().TransformStmt(S->getSubStmt(), SDK); 6756 Decl *LD = getDerived().TransformDecl(S->getDecl()->getLocation(), 6768 return getDerived().RebuildLabelStmt(S->getIdentLoc(), 6799 const Attr *R = getDerived().TransformAttr(I); 6804 StmtResult SubStmt = getDerived().TransformStmt(S->getSubStmt(), SDK); 6811 return getDerived().RebuildAttributedStmt(S->getAttrLoc(), Attrs, 6819 StmtResult Init = getDerived().TransformStmt(S->getInit()); 6824 Sema::ConditionResult Cond = getDerived().TransformCondition( 6839 Then = getDerived().TransformStmt(S->getThen()); 6849 Else = getDerived().TransformStmt(S->getElse()); 6854 if (!getDerived().AlwaysRebuild() && 6861 return getDerived().RebuildIfStmt(S->getIfLoc(), S->isConstexpr(), Cond, 6870 StmtResult Init = getDerived().TransformStmt(S->getInit()); 6875 Sema::ConditionResult Cond = getDerived().TransformCondition( 6883 = getDerived().RebuildSwitchStmtStart(S->getSwitchLoc(), Init.get(), Cond); 6888 StmtResult Body = getDerived().TransformStmt(S->getBody()); 6893 return getDerived().RebuildSwitchStmtBody(S->getSwitchLoc(), Switch.get(), 6901 Sema::ConditionResult Cond = getDerived().TransformCondition( 6908 StmtResult Body = getDerived().TransformStmt(S->getBody()); 6912 if (!getDerived().AlwaysRebuild() && 6917 return getDerived().RebuildWhileStmt(S->getWhileLoc(), Cond, Body.get()); 6924 StmtResult Body = getDerived().TransformStmt(S->getBody()); 6929 ExprResult Cond = getDerived().TransformExpr(S->getCond()); 6933 if (!getDerived().AlwaysRebuild() && 6938 return getDerived().RebuildDoStmt(S->getDoLoc(), Body.get(), S->getWhileLoc(), 6950 StmtResult Init = getDerived().TransformStmt(S->getInit()); 6960 Sema::ConditionResult Cond = getDerived().TransformCondition( 6967 ExprResult Inc = getDerived().TransformExpr(S->getInc()); 6976 StmtResult Body = getDerived().TransformStmt(S->getBody()); 6980 if (!getDerived().AlwaysRebuild() && 6987 return getDerived().RebuildForStmt(S->getForLoc(), S->getLParenLoc(), 6995 Decl *LD = getDerived().TransformDecl(S->getLabel()->getLocation(), 7001 return getDerived().RebuildGotoStmt(S->getGotoLoc(), S->getLabelLoc(), 7008 ExprResult Target = getDerived().TransformExpr(S->getTarget()); 7013 if (!getDerived().AlwaysRebuild() && 7017 return getDerived().RebuildIndirectGotoStmt(S->getGotoLoc(), S->getStarLoc(), 7036 ExprResult Result = getDerived().TransformInitializer(S->getRetValue(), 7043 return getDerived().RebuildReturnStmt(S->getReturnLoc(), Result.get()); 7052 Decl *Transformed = getDerived().TransformDefinition(D->getLocation(), D); 7062 if (!getDerived().AlwaysRebuild() && !DeclChanged) 7065 return getDerived().RebuildDeclStmt(Decls, S->getBeginLoc(), S->getEndLoc()); 7090 ExprResult Result = getDerived().TransformExpr(OutputExpr); 7108 ExprResult Result = getDerived().TransformExpr(InputExpr); 7121 ExprResult Result = getDerived().TransformExpr(S->getLabelExpr(I)); 7127 if (!getDerived().AlwaysRebuild() && !ExprsChanged) 7136 return getDerived().RebuildGCCAsmStmt(S->getAsmLoc(), S->isSimple(), 7156 ExprResult Result = getDerived().TransformExpr(SrcExprs[i]); 7166 if (!HadChange && !getDerived().AlwaysRebuild()) 7169 return getDerived().RebuildMSAsmStmt(S->getAsmLoc(), S->getLBraceLoc(), 7200 getDerived().transformedLocalDecl(S->getPromiseDecl(), {Promise}); 7205 StmtResult InitSuspend = getDerived().TransformStmt(S->getInitSuspendStmt()); 7209 getDerived().TransformStmt(S->getFinalSuspendStmt()); 7215 StmtResult BodyRes = getDerived().TransformStmt(S->getBody()); 7225 ExprResult Res = getDerived().TransformInitializer(ReturnObject, 7250 StmtResult Res = getDerived().TransformStmt(OnFallthrough); 7257 StmtResult Res = getDerived().TransformStmt(OnException); 7264 StmtResult Res = getDerived().TransformStmt(OnAllocFailure); 7273 ExprResult AllocRes = getDerived().TransformExpr(S->getAllocate()); 7278 ExprResult DeallocRes = getDerived().TransformExpr(S->getDeallocate()); 7284 StmtResult ResultDecl = getDerived().TransformStmt(S->getResultDecl()); 7290 StmtResult Res = getDerived().TransformStmt(ReturnStmt); 7297 return getDerived().RebuildCoroutineBodyStmt(Builder); 7303 ExprResult Result = getDerived().TransformInitializer(S->getOperand(), 7310 return getDerived().RebuildCoreturnStmt(S->getKeywordLoc(), Result.get(), 7317 ExprResult Result = getDerived().TransformInitializer(E->getOperand(), 7324 return getDerived().RebuildCoawaitExpr(E->getKeywordLoc(), Result.get(), 7331 ExprResult OperandResult = getDerived().TransformInitializer(E->getOperand(), 7336 ExprResult LookupResult = getDerived().TransformUnresolvedLookupExpr( 7344 return getDerived().RebuildDependentCoawaitExpr( 7352 ExprResult Result = getDerived().TransformInitializer(E->getOperand(), 7359 return getDerived().RebuildCoyieldExpr(E->getKeywordLoc(), Result.get()); 7368 StmtResult TryBody = getDerived().TransformStmt(S->getTryBody()); 7376 StmtResult Catch = getDerived().TransformStmt(S->getCatchStmt(I)); 7387 Finally = getDerived().TransformStmt(S->getFinallyStmt()); 7393 if (!getDerived().AlwaysRebuild() && 7400 return getDerived().RebuildObjCAtTryStmt(S->getAtTryLoc(), TryBody.get(), 7412 TSInfo = getDerived().TransformType(FromVar->getTypeSourceInfo()); 7421 T = getDerived().TransformType(FromVar->getType()); 7426 Var = getDerived().RebuildObjCExceptionDecl(FromVar, TSInfo, T); 7431 StmtResult Body = getDerived().TransformStmt(S->getCatchBody()); 7435 return getDerived().RebuildObjCAtCatchStmt(S->getAtCatchLoc(), 7444 StmtResult Body = getDerived().TransformStmt(S->getFinallyBody()); 7449 if (!getDerived().AlwaysRebuild() && 7454 return getDerived().RebuildObjCAtFinallyStmt(S->getAtFinallyLoc(), 7463 Operand = getDerived().TransformExpr(S->getThrowExpr()); 7468 if (!getDerived().AlwaysRebuild() && 7472 return getDerived().RebuildObjCAtThrowStmt(S->getThrowLoc(), Operand.get()); 7480 ExprResult Object = getDerived().TransformExpr(S->getSynchExpr()); 7484 getDerived().RebuildObjCAtSynchronizedOperand(S->getAtSynchronizedLoc(), 7490 StmtResult Body = getDerived().TransformStmt(S->getSynchBody()); 7495 if (!getDerived().AlwaysRebuild() && 7501 return getDerived().RebuildObjCAtSynchronizedStmt(S->getAtSynchronizedLoc(), 7510 StmtResult Body = getDerived().TransformStmt(S->getSubStmt()); 7515 if (!getDerived().AlwaysRebuild() && 7520 return getDerived().RebuildObjCAutoreleasePoolStmt( 7530 getDerived().TransformStmt(S->getElement(), SDK_NotDiscarded); 7535 ExprResult Collection = getDerived().TransformExpr(S->getCollection()); 7540 StmtResult Body = getDerived().TransformStmt(S->getBody()); 7545 if (!getDerived().AlwaysRebuild() && 7552 return getDerived().RebuildObjCForCollectionStmt(S->getForLoc(), 7565 getDerived().TransformType(ExceptionDecl->getTypeSourceInfo()); 7569 Var = getDerived().RebuildExceptionDecl( 7577 StmtResult Handler = getDerived().TransformStmt(S->getHandlerBlock()); 7581 if (!getDerived().AlwaysRebuild() && !Var && 7585 return getDerived().RebuildCXXCatchStmt(S->getCatchLoc(), Var, Handler.get()); 7591 StmtResult TryBlock = getDerived().TransformCompoundStmt(S->getTryBlock()); 7599 StmtResult Handler = getDerived().TransformCXXCatchStmt(S->getHandler(I)); 7607 if (!getDerived().AlwaysRebuild() && TryBlock.get() == S->getTryBlock() && 7611 return getDerived().RebuildCXXTryStmt(S->getTryLoc(), TryBlock.get(), 7619 S->getInit() ? getDerived().TransformStmt(S->getInit()) : StmtResult(); 7623 StmtResult Range = getDerived().TransformStmt(S->getRangeStmt()); 7627 StmtResult Begin = getDerived().TransformStmt(S->getBeginStmt()); 7630 StmtResult End = getDerived().TransformStmt(S->getEndStmt()); 7634 ExprResult Cond = getDerived().TransformExpr(S->getCond()); 7644 ExprResult Inc = getDerived().TransformExpr(S->getInc()); 7650 StmtResult LoopVar = getDerived().TransformStmt(S->getLoopVarStmt()); 7655 if (getDerived().AlwaysRebuild() || 7663 NewStmt = getDerived().RebuildCXXForRangeStmt(S->getForLoc(), 7674 StmtResult Body = getDerived().TransformStmt(S->getBody()); 7681 NewStmt = getDerived().RebuildCXXForRangeStmt(S->getForLoc(), 7706 = getDerived().TransformNestedNameSpecifierLoc(S->getQualifierLoc()); 7714 NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); 7720 if (!getDerived().AlwaysRebuild() && 7751 StmtResult SubStmt = getDerived().TransformCompoundStmt(S->getSubStmt()); 7760 return getDerived().RebuildMSDependentExistsStmt(S->getKeywordLoc(), 7773 = getDerived().TransformNestedNameSpecifierLoc(E->getQualifierLoc()); 7779 getDerived().TransformDecl(E->getMemberLoc(), E->getPropertyDecl())); 7783 ExprResult Base = getDerived().TransformExpr(E->getBaseExpr()); 7796 auto BaseRes = getDerived().TransformExpr(E->getBase()); 7799 auto IdxRes = getDerived().TransformExpr(E->getIdx()); 7803 if (!getDerived().AlwaysRebuild() && 7808 return getDerived().RebuildArraySubscriptExpr( 7814 StmtResult TryBlock = getDerived().TransformCompoundStmt(S->getTryBlock()); 7818 StmtResult Handler = getDerived().TransformSEHHandler(S->getHandler()); 7822 if (!getDerived().AlwaysRebuild() && TryBlock.get() == S->getTryBlock() && 7826 return getDerived().RebuildSEHTryStmt(S->getIsCXXTry(), S->getTryLoc(), 7832 StmtResult Block = getDerived().TransformCompoundStmt(S->getBlock()); 7836 return getDerived().RebuildSEHFinallyStmt(S->getFinallyLoc(), Block.get()); 7841 ExprResult FilterExpr = getDerived().TransformExpr(S->getFilterExpr()); 7845 StmtResult Block = getDerived().TransformCompoundStmt(S->getBlock()); 7849 return getDerived().RebuildSEHExceptStmt(S->getExceptLoc(), FilterExpr.get(), 7856 return getDerived().TransformSEHFinallyStmt(cast<SEHFinallyStmt>(Handler)); 7858 return getDerived().TransformSEHExceptStmt(cast<SEHExceptStmt>(Handler)); 7881 getDerived().getSema().StartOpenMPClause((*I)->getClauseKind()); 7882 OMPClause *Clause = getDerived().TransformOMPClause(*I); 7883 getDerived().getSema().EndOpenMPClause(); 7892 getDerived().getSema().ActOnOpenMPRegionStart(D->getDirectiveKind(), 7898 Body = getDerived().TransformStmt(CS); 7901 getDerived().getSema().ActOnOpenMPRegionEnd(Body, TClauses); 7914 DirName = getDerived().TransformDeclarationNameInfo(DirName); 7923 return getDerived().RebuildOMPExecutableDirective( 7932 getDerived().getSema().StartOpenMPDSABlock(OMPD_parallel, DirName, nullptr, 7934 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7935 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7943 getDerived().getSema().StartOpenMPDSABlock(OMPD_simd, DirName, nullptr, 7945 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7946 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7954 getDerived().getSema().StartOpenMPDSABlock(OMPD_for, DirName, nullptr, 7956 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7957 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7965 getDerived().getSema().StartOpenMPDSABlock(OMPD_for_simd, DirName, nullptr, 7967 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7968 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7976 getDerived().getSema().StartOpenMPDSABlock(OMPD_sections, DirName, nullptr, 7978 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7979 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7987 getDerived().getSema().StartOpenMPDSABlock(OMPD_section, DirName, nullptr, 7989 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 7990 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 7998 getDerived().getSema().StartOpenMPDSABlock(OMPD_single, DirName, nullptr, 8000 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8001 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8009 getDerived().getSema().StartOpenMPDSABlock(OMPD_master, DirName, nullptr, 8011 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8012 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8019 getDerived().getSema().StartOpenMPDSABlock( 8021 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8022 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8030 getDerived().getSema().StartOpenMPDSABlock(OMPD_parallel_for, DirName, 8032 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8033 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8041 getDerived().getSema().StartOpenMPDSABlock(OMPD_parallel_for_simd, DirName, 8043 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8044 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8052 getDerived().getSema().StartOpenMPDSABlock(OMPD_parallel_sections, DirName, 8054 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8055 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8063 getDerived().getSema().StartOpenMPDSABlock(OMPD_task, DirName, nullptr, 8065 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8066 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8074 getDerived().getSema().StartOpenMPDSABlock(OMPD_taskyield, DirName, nullptr, 8076 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8077 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8085 getDerived().getSema().StartOpenMPDSABlock(OMPD_barrier, DirName, nullptr, 8087 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8088 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8096 getDerived().getSema().StartOpenMPDSABlock(OMPD_taskwait, DirName, nullptr, 8098 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8099 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8107 getDerived().getSema().StartOpenMPDSABlock(OMPD_taskgroup, DirName, nullptr, 8109 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8110 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8118 getDerived().getSema().StartOpenMPDSABlock(OMPD_flush, DirName, nullptr, 8120 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8121 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8129 getDerived().getSema().StartOpenMPDSABlock(OMPD_ordered, DirName, nullptr, 8131 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8132 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8140 getDerived().getSema().StartOpenMPDSABlock(OMPD_atomic, DirName, nullptr, 8142 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8143 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8151 getDerived().getSema().StartOpenMPDSABlock(OMPD_target, DirName, nullptr, 8153 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8154 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8162 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_data, DirName, nullptr, 8164 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8165 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8173 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_enter_data, DirName, 8175 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8176 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8184 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_exit_data, DirName, 8186 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8187 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8195 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_parallel, DirName, 8197 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8198 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8206 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_parallel_for, DirName, 8208 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8209 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8217 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_update, DirName, 8219 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8220 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8228 getDerived().getSema().StartOpenMPDSABlock(OMPD_teams, DirName, nullptr, 8230 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8231 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8239 getDerived().getSema().StartOpenMPDSABlock(OMPD_cancellation_point, DirName, 8241 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8242 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8250 getDerived().getSema().StartOpenMPDSABlock(OMPD_cancel, DirName, nullptr, 8252 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8253 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8261 getDerived().getSema().StartOpenMPDSABlock(OMPD_taskloop, DirName, nullptr, 8263 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8264 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8272 getDerived().getSema().StartOpenMPDSABlock(OMPD_taskloop_simd, DirName, 8274 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8275 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8283 getDerived().getSema().StartOpenMPDSABlock(OMPD_master_taskloop, DirName, 8285 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8286 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8294 getDerived().getSema().StartOpenMPDSABlock(OMPD_master_taskloop_simd, DirName, 8296 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8297 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8305 getDerived().getSema().StartOpenMPDSABlock( 8307 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8308 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8316 getDerived().getSema().StartOpenMPDSABlock(OMPD_distribute, DirName, nullptr, 8318 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8319 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8327 getDerived().getSema().StartOpenMPDSABlock( 8329 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8330 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8339 getDerived().getSema().StartOpenMPDSABlock( 8341 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8342 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8350 getDerived().getSema().StartOpenMPDSABlock(OMPD_distribute_simd, DirName, 8352 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8353 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8361 getDerived().getSema().StartOpenMPDSABlock( 8363 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8364 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8372 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_simd, DirName, nullptr, 8374 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8375 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8383 getDerived().getSema().StartOpenMPDSABlock(OMPD_teams_distribute, DirName, 8385 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8386 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8394 getDerived().getSema().StartOpenMPDSABlock( 8396 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8397 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8405 getDerived().getSema().StartOpenMPDSABlock( 8408 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8409 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8417 getDerived().getSema().StartOpenMPDSABlock( 8419 StmtResult Res = getDerived().TransformOMPExecutableDirective(D); 8420 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8428 getDerived().getSema().StartOpenMPDSABlock(OMPD_target_teams, DirName, 8430 auto Res = getDerived().TransformOMPExecutableDirective(D); 8431 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8439 getDerived().getSema().StartOpenMPDSABlock( 8441 auto Res = getDerived().TransformOMPExecutableDirective(D); 8442 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8451 getDerived().getSema().StartOpenMPDSABlock( 8454 auto Res = getDerived().TransformOMPExecutableDirective(D); 8455 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8464 getDerived().getSema().StartOpenMPDSABlock( 8467 auto Res = getDerived().TransformOMPExecutableDirective(D); 8468 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8477 getDerived().getSema().StartOpenMPDSABlock( 8479 auto Res = getDerived().TransformOMPExecutableDirective(D); 8480 getDerived().getSema().EndOpenMPDSABlock(Res.get()); 8490 ExprResult Cond = getDerived().TransformExpr(C->getCondition()); 8493 return getDerived().RebuildOMPIfClause( 8500 ExprResult Cond = getDerived().TransformExpr(C->getCondition()); 8503 return getDerived().RebuildOMPFinalClause(Cond.get(), C->getBeginLoc(), 8510 ExprResult NumThreads = getDerived().TransformExpr(C->getNumThreads()); 8513 return getDerived().RebuildOMPNumThreadsClause( 8520 ExprResult E = getDerived().TransformExpr(C->getSafelen()); 8523 return getDerived().RebuildOMPSafelenClause( 8530 ExprResult E = getDerived().TransformExpr(C->getAllocator()); 8533 return getDerived().RebuildOMPAllocatorClause( 8540 ExprResult E = getDerived().TransformExpr(C->getSimdlen()); 8543 return getDerived().RebuildOMPSimdlenClause( 8550 ExprResult E = getDerived().TransformExpr(C->getNumForLoops()); 8553 return getDerived().RebuildOMPCollapseClause( 8560 return getDerived().RebuildOMPDefaultClause( 8568 return getDerived().RebuildOMPProcBindClause( 8576 ExprResult E = getDerived().TransformExpr(C->getChunkSize()); 8579 return getDerived().RebuildOMPScheduleClause( 8591 E = getDerived().TransformExpr(Num); 8595 return getDerived().RebuildOMPOrderedClause(C->getBeginLoc(), C->getEndLoc(), 8712 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8717 return getDerived().RebuildOMPPrivateClause( 8727 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8732 return getDerived().RebuildOMPFirstprivateClause( 8742 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8747 return getDerived().RebuildOMPLastprivateClause( 8757 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8762 return getDerived().RebuildOMPSharedClause(Vars, C->getBeginLoc(), 8772 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8782 NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); 8796 cast<NamedDecl>(getDerived().TransformDecl(E->getExprLoc(), D)); 8808 return getDerived().RebuildOMPReductionClause( 8819 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8829 NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); 8843 cast<NamedDecl>(getDerived().TransformDecl(E->getExprLoc(), D)); 8853 return getDerived().RebuildOMPTaskReductionClause( 8864 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8874 NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); 8888 cast<NamedDecl>(getDerived().TransformDecl(E->getExprLoc(), D)); 8898 return getDerived().RebuildOMPInReductionClause( 8909 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8914 ExprResult Step = getDerived().TransformExpr(C->getStep()); 8917 return getDerived().RebuildOMPLinearClause( 8928 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8933 ExprResult Alignment = getDerived().TransformExpr(C->getAlignment()); 8936 return getDerived().RebuildOMPAlignedClause( 8947 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8952 return getDerived().RebuildOMPCopyinClause(Vars, C->getBeginLoc(), 8962 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8967 return getDerived().RebuildOMPCopyprivateClause( 8976 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8981 return getDerived().RebuildOMPFlushClause(Vars, C->getBeginLoc(), 8991 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 8996 return getDerived().RebuildOMPDependClause( 9004 ExprResult E = getDerived().TransformExpr(C->getDevice()); 9007 return getDerived().RebuildOMPDeviceClause(E.get(), C->getBeginLoc(), 9020 ExprResult EVar = TT.getDerived().TransformExpr(cast<Expr>(VE)); 9028 QualifierLoc = TT.getDerived().TransformNestedNameSpecifierLoc( 9036 MapperIdInfo = TT.getDerived().TransformDeclarationNameInfo(MapperIdInfo); 9049 cast<NamedDecl>(TT.getDerived().TransformDecl(E->getExprLoc(), D)); 9074 return getDerived().RebuildOMPMapClause( 9085 ExprResult AllocatorRes = getDerived().TransformExpr(Allocator); 9093 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 9098 return getDerived().RebuildOMPAllocateClause( 9106 ExprResult E = getDerived().TransformExpr(C->getNumTeams()); 9109 return getDerived().RebuildOMPNumTeamsClause( 9116 ExprResult E = getDerived().TransformExpr(C->getThreadLimit()); 9119 return getDerived().RebuildOMPThreadLimitClause( 9126 ExprResult E = getDerived().TransformExpr(C->getPriority()); 9129 return getDerived().RebuildOMPPriorityClause( 9136 ExprResult E = getDerived().TransformExpr(C->getGrainsize()); 9139 return getDerived().RebuildOMPGrainsizeClause( 9146 ExprResult E = getDerived().TransformExpr(C->getNumTasks()); 9149 return getDerived().RebuildOMPNumTasksClause( 9155 ExprResult E = getDerived().TransformExpr(C->getHint()); 9158 return getDerived().RebuildOMPHintClause(E.get(), C->getBeginLoc(), 9165 ExprResult E = getDerived().TransformExpr(C->getChunkSize()); 9168 return getDerived().RebuildOMPDistScheduleClause( 9189 return getDerived().RebuildOMPToClause(Vars, MapperIdScopeSpec, MapperIdInfo, 9203 return getDerived().RebuildOMPFromClause( 9213 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 9219 return getDerived().RebuildOMPUseDevicePtrClause(Vars, Locs); 9228 ExprResult EVar = getDerived().TransformExpr(cast<Expr>(VE)); 9234 return getDerived().RebuildOMPIsDevicePtrClause(Vars, Locs); 9252 return getDerived().RebuildPredefinedExpr(E->getLocation(), 9262 = getDerived().TransformNestedNameSpecifierLoc(E->getQualifierLoc()); 9268 = cast_or_null<ValueDecl>(getDerived().TransformDecl(E->getLocation(), 9276 getDerived().TransformDecl(E->getLocation(), E->getFoundDecl())); 9283 NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); 9288 if (!getDerived().AlwaysRebuild() && 9307 if (getDerived().TransformTemplateArguments(E->getTemplateArgs(), 9313 return getDerived().RebuildDeclRefExpr(QualifierLoc, ND, NameInfo, 9365 getDerived().TransformExpr(E->getControllingExpr()); 9374 TypeSourceInfo *AssocType = getDerived().TransformType(TSI); 9383 getDerived().TransformExpr(Assoc.getAssociationExpr()); 9389 return getDerived().RebuildGenericSelectionExpr(E->getGenericLoc(), 9400 ExprResult SubExpr = getDerived().TransformExpr(E->getSubExpr()); 9404 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getSubExpr()) 9407 return getDerived().RebuildParenExpr(SubExpr.get(), E->getLParen(), 9418 return getDerived().TransformDependentScopeDeclRefExpr(DRE, true, nullptr); 9420 return getDerived().TransformExpr(E); 9434 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getSubExpr()) 9437 return getDerived().RebuildUnaryOperator(E->getOperatorLoc(), 9446 TypeSourceInfo *Type = getDerived().TransformType(E->getTypeSourceInfo()); 9468 ExprResult Index = getDerived().TransformExpr(FromIndex); 9496 if (!getDerived().AlwaysRebuild() && 9502 return getDerived().RebuildOffsetOfExpr(E->getOperatorLoc(), Type, 9509 assert((!E->getSourceExpr() || getDerived().AlreadyTransformed(E->getType())) && 9530 ExprResult result = getDerived().TransformExpr(newSyntacticForm); 9549 TypeSourceInfo *NewT = getDerived().TransformType(OldT); 9553 if (!getDerived().AlwaysRebuild() && OldT == NewT) 9556 return getDerived().RebuildUnaryExprOrTypeTrait(NewT, E->getOperatorLoc(), 9575 SubExpr = getDerived().TransformParenDependentScopeDeclRefExpr( 9578 SubExpr = getDerived().TransformExpr(E->getArgumentExpr()); 9581 return getDerived().RebuildUnaryExprOrTypeTrait( 9586 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getArgumentExpr()) 9589 return getDerived().RebuildUnaryExprOrTypeTrait(SubExpr.get(), 9598 ExprResult LHS = getDerived().TransformExpr(E->getLHS()); 9602 ExprResult RHS = getDerived().TransformExpr(E->getRHS()); 9607 if (!getDerived().AlwaysRebuild() && 9612 return getDerived().RebuildArraySubscriptExpr( 9620 ExprResult Base = getDerived().TransformExpr(E->getBase()); 9626 LowerBound = getDerived().TransformExpr(E->getLowerBound()); 9633 Length = getDerived().TransformExpr(E->getLength()); 9638 if (!getDerived().AlwaysRebuild() && Base.get() == E->getBase() && 9642 return getDerived().RebuildOMPArraySectionExpr( 9651 ExprResult Callee = getDerived().TransformExpr(E->getCallee()); 9658 if (getDerived().TransformExprs(E->getArgs(), E->getNumArgs(), true, Args, 9662 if (!getDerived().AlwaysRebuild() && 9670 return getDerived().RebuildCallExpr(Callee.get(), FakeLParenLoc, 9678 ExprResult Base = getDerived().TransformExpr(E->getBase()); 9685 = getDerived().TransformNestedNameSpecifierLoc(E->getQualifierLoc()); 9693 = cast_or_null<ValueDecl>(getDerived().TransformDecl(E->getMemberLoc(), 9703 getDerived().TransformDecl(E->getMemberLoc(), FoundDecl)); 9708 if (!getDerived().AlwaysRebuild() && 9726 if (getDerived().TransformTemplateArguments(E->getTemplateArgs(), 9743 MemberNameInfo = getDerived().TransformDeclarationNameInfo(MemberNameInfo); 9748 return getDerived().RebuildMemberExpr(Base.get(), FakeOperatorLoc, 9763 ExprResult LHS = getDerived().TransformExpr(E->getLHS()); 9767 ExprResult RHS = getDerived().TransformExpr(E->getRHS()); 9771 if (!getDerived().AlwaysRebuild() && 9779 return getDerived().RebuildBinaryOperator(E->getOperatorLoc(), E->getOpcode(), 9788 ExprResult LHS = getDerived().TransformExpr(const_cast<Expr*>(Decomp.LHS)); 9792 ExprResult RHS = getDerived().TransformExpr(const_cast<Expr*>(Decomp.RHS)); 9796 if (!getDerived().AlwaysRebuild() && 9816 NamedDecl *Found = cast_or_null<NamedDecl>(getDerived().TransformDecl( 9823 return getDerived().RebuildCXXRewrittenBinaryOperator( 9831 return getDerived().TransformBinaryOperator(E); 9840 ExprResult commonExpr = getDerived().TransformExpr(e->getCommon()); 9844 ExprResult rhs = getDerived().TransformExpr(e->getFalseExpr()); 9848 if (!getDerived().AlwaysRebuild() && 9853 return getDerived().RebuildConditionalOperator(commonExpr.get(), 9863 ExprResult Cond = getDerived().TransformExpr(E->getCond()); 9867 ExprResult LHS = getDerived().TransformExpr(E->getLHS()); 9871 ExprResult RHS = getDerived().TransformExpr(E->getRHS()); 9875 if (!getDerived().AlwaysRebuild() && 9881 return getDerived().RebuildConditionalOperator(Cond.get(), 9893 return getDerived().TransformExpr(E->getSubExprAsWritten()); 9899 TypeSourceInfo *Type = getDerived().TransformType(E->getTypeInfoAsWritten()); 9904 = getDerived().TransformExpr(E->getSubExprAsWritten()); 9908 if (!getDerived().AlwaysRebuild() && 9913 return getDerived().RebuildCStyleCastExpr(E->getLParenLoc(), 9923 TypeSourceInfo *NewT = getDerived().TransformType(OldT); 9927 ExprResult Init = getDerived().TransformExpr(E->getInitializer()); 9931 if (!getDerived().AlwaysRebuild() && 9940 return getDerived().RebuildCompoundLiteralExpr( 9948 ExprResult Base = getDerived().TransformExpr(E->getBase()); 9952 if (!getDerived().AlwaysRebuild() && 9959 return getDerived().RebuildExtVectorElementExpr(Base.get(), FakeOperatorLoc, 9976 if (getDerived().TransformExprs(E->getInits(), E->getNumInits(), false, 9980 if (!getDerived().AlwaysRebuild() && !InitChanged) { 9987 return getDerived().RebuildInitList(E->getLBraceLoc(), Inits, 9997 ExprResult Init = getDerived().TransformExpr(E->getInit()); 10011 getDerived().TransformDecl(D.getFieldLoc(), D.getField())); 10026 ExprResult Index = getDerived().TransformExpr(E->getArrayIndex(D)); 10040 = getDerived().TransformExpr(E->getArrayRangeStart(D)); 10044 ExprResult End = getDerived().TransformExpr(E->getArrayRangeEnd(D)); 10060 if (!getDerived().AlwaysRebuild() && 10065 return getDerived().RebuildDesignatedInitExpr(Desig, ArrayExprs, 10111 QualType T = getDerived().TransformType(E->getType()); 10115 if (!getDerived().AlwaysRebuild() && 10119 return getDerived().RebuildImplicitValueInitExpr(T); 10125 TypeSourceInfo *TInfo = getDerived().TransformType(E->getWrittenTypeInfo()); 10129 ExprResult SubExpr = getDerived().TransformExpr(E->getSubExpr()); 10133 if (!getDerived().AlwaysRebuild() && 10138 return getDerived().RebuildVAArgExpr(E->getBuiltinLoc(), SubExpr.get(), 10151 return getDerived().RebuildParenListExpr(E->getLParenLoc(), 10164 Decl *LD = getDerived().TransformDecl(E->getLabel()->getLocation(), 10169 return getDerived().RebuildAddrLabelExpr(E->getAmpAmpLoc(), E->getLabelLoc(), 10178 = getDerived().TransformCompoundStmt(E->getSubStmt(), true); 10184 if (!getDerived().AlwaysRebuild() && 10191 return getDerived().RebuildStmtExpr(E->getLParenLoc(), 10199 ExprResult Cond = getDerived().TransformExpr(E->getCond()); 10203 ExprResult LHS = getDerived().TransformExpr(E->getLHS()); 10207 ExprResult RHS = getDerived().TransformExpr(E->getRHS()); 10211 if (!getDerived().AlwaysRebuild() && 10217 return getDerived().RebuildChooseExpr(E->getBuiltinLoc(), 10243 ExprResult Object = getDerived().TransformExpr(E->getArg(0)); 10253 if (getDerived().TransformExprs(E->getArgs() + 1, E->getNumArgs() - 1, true, 10257 return getDerived().RebuildCallExpr(Object.get(), FakeLParenLoc, Args, 10277 ExprResult Callee = getDerived().TransformExpr(E->getCallee()); 10283 First = getDerived().TransformAddressOfOperand(E->getArg(0)); 10285 First = getDerived().TransformExpr(E->getArg(0)); 10291 Second = getDerived().TransformExpr(E->getArg(1)); 10296 if (!getDerived().AlwaysRebuild() && 10305 return getDerived().RebuildCXXOperatorCallExpr(E->getOperator(), 10315 return getDerived().TransformCallExpr(E); 10323 if (!getDerived().AlwaysRebuild() && !NeedRebuildFunc) 10326 return getDerived().RebuildSourceLocExpr(E->getIdentKind(), E->getBeginLoc(), 10335 ExprResult Callee = getDerived().TransformExpr(E->getCallee()); 10340 ExprResult EC = getDerived().TransformCallExpr(E->getConfig()); 10347 if (getDerived().TransformExprs(E->getArgs(), E->getNumArgs(), true, Args, 10351 if (!getDerived().AlwaysRebuild() && 10359 return getDerived().RebuildCallExpr(Callee.get(), FakeLParenLoc, 10367 TypeSourceInfo *Type = getDerived().TransformType(E->getTypeInfoAsWritten()); 10372 = getDerived().TransformExpr(E->getSubExprAsWritten()); 10376 if (!getDerived().AlwaysRebuild() && 10380 return getDerived().RebuildCXXNamedCastExpr( 10391 getDerived().TransformType(BCE->getTypeInfoAsWritten()); 10395 ExprResult Sub = getDerived().TransformExpr(BCE->getSubExpr()); 10399 return getDerived().RebuildBuiltinBitCastExpr(BCE->getBeginLoc(), TSI, 10406 return getDerived().TransformCXXNamedCastExpr(E); 10412 return getDerived().TransformCXXNamedCastExpr(E); 10419 return getDerived().TransformCXXNamedCastExpr(E); 10425 return getDerived().TransformCXXNamedCastExpr(E); 10433 getDerived().TransformTypeWithDeducedTST(E->getTypeInfoAsWritten()); 10438 = getDerived().TransformExpr(E->getSubExprAsWritten()); 10442 if (!getDerived().AlwaysRebuild() && 10447 return getDerived().RebuildCXXFunctionalCastExpr(Type, 10459 = getDerived().TransformType(E->getTypeOperandSourceInfo()); 10463 if (!getDerived().AlwaysRebuild() && 10467 return getDerived().RebuildCXXTypeidExpr(E->getType(), E->getBeginLoc(), 10479 ExprResult SubExpr = getDerived().TransformExpr(E->getExprOperand()); 10483 if (!getDerived().AlwaysRebuild() && 10487 return getDerived().RebuildCXXTypeidExpr(E->getType(), E->getBeginLoc(), 10496 = getDerived().TransformType(E->getTypeOperandSourceInfo()); 10500 if (!getDerived().AlwaysRebuild() && 10504 return getDerived().RebuildCXXUuidofExpr(E->getType(), E->getBeginLoc(), 10511 ExprResult SubExpr = getDerived().TransformExpr(E->getExprOperand()); 10515 if (!getDerived().AlwaysRebuild() && 10519 return getDerived().RebuildCXXUuidofExpr(E->getType(), E->getBeginLoc(), 10541 if (!getDerived().AlwaysRebuild() && T == E->getType()) { 10548 return getDerived().RebuildCXXThisExpr(E->getBeginLoc(), T, E->isImplicit()); 10554 ExprResult SubExpr = getDerived().TransformExpr(E->getSubExpr()); 10558 if (!getDerived().AlwaysRebuild() && 10562 return getDerived().RebuildCXXThrowExpr(E->getThrowLoc(), SubExpr.get(), 10570 getDerived().TransformDecl(E->getBeginLoc(), E->getParam())); 10574 if (!getDerived().AlwaysRebuild() && Param == E->getParam() && 10578 return getDerived().RebuildCXXDefaultArgExpr(E->getUsedLocation(), Param); 10585 getDerived().TransformDecl(E->getBeginLoc(), E->getField())); 10589 if (!getDerived().AlwaysRebuild() && Field == E->getField() && 10593 return getDerived().RebuildCXXDefaultInitExpr(E->getExprLoc(), Field); 10600 TypeSourceInfo *T = getDerived().TransformType(E->getTypeSourceInfo()); 10604 if (!getDerived().AlwaysRebuild() && 10608 return getDerived().RebuildCXXScalarValueInitExpr(T, 10618 getDerived().TransformTypeWithDeducedTST(E->getAllocatedTypeSourceInfo()); 10627 NewArraySize = getDerived().TransformExpr(*OldArraySize); 10637 if (getDerived().TransformExprs(E->getPlacementArgs(), 10646 NewInit = getDerived().TransformInitializer(OldInit, true); 10654 getDerived().TransformDecl(E->getBeginLoc(), E->getOperatorNew())); 10662 getDerived().TransformDecl(E->getBeginLoc(), E->getOperatorDelete())); 10667 if (!getDerived().AlwaysRebuild() && 10720 return getDerived().RebuildCXXNewExpr( 10730 ExprResult Operand = getDerived().TransformExpr(E->getArgument()); 10738 getDerived().TransformDecl(E->getBeginLoc(), E->getOperatorDelete())); 10743 if (!getDerived().AlwaysRebuild() && 10764 return getDerived().RebuildCXXDeleteExpr( 10772 ExprResult Base = getDerived().TransformExpr(E->getBase()); 10790 = getDerived().TransformNestedNameSpecifierLoc(QualifierLoc, ObjectType); 10800 = getDerived().TransformTypeInObjectScope(E->getDestroyedTypeInfo(), 10829 ScopeTypeInfo = getDerived().TransformTypeInObjectScope( 10835 return getDerived().RebuildCXXPseudoDestructorExpr(Base.get(), 10852 Decl *InstD = getDerived().TransformDecl(Old->getNameLoc(), OldD); 10916 = getDerived().TransformNestedNameSpecifierLoc(Old->getQualifierLoc()); 10925 = cast_or_null<CXXRecordDecl>(getDerived().TransformDecl( 10951 return getDerived().RebuildDeclarationNameExpr(SS, R, Old->requiresADL()); 10958 getDerived().TransformTemplateArguments(Old->getTemplateArgs(), 10965 return getDerived().RebuildTemplateIdExpr(SS, TemplateKWLoc, R, 10980 QualType To = getDerived().TransformType(TLB, FromTL); 11008 if (getDerived().TryExpandParameterPacks(ExpansionTL.getEllipsisLoc(), 11024 QualType To = getDerived().TransformType(TLB, PatternTL); 11028 To = getDerived().RebuildPackExpansionType(To, 11048 QualType To = getDerived().TransformType(TLB, PatternTL); 11053 To = getDerived().RebuildPackExpansionType(To, 11073 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 11078 QualType To = getDerived().TransformType(TLB, PatternTL); 11082 To = getDerived().RebuildPackExpansionType(To, 11095 if (!getDerived().AlwaysRebuild() && !ArgChanged) 11098 return getDerived().RebuildTypeTrait(E->getTrait(), E->getBeginLoc(), Args, 11108 if (getDerived().TransformTemplateArguments(Old->getTemplateArgs(), 11112 return getDerived().RebuildConceptSpecializationExpr( 11122 TypeSourceInfo *T = getDerived().TransformType(E->getQueriedTypeSourceInfo()); 11126 if (!getDerived().AlwaysRebuild() && 11134 SubExpr = getDerived().TransformExpr(E->getDimensionExpression()); 11138 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getDimensionExpression()) 11142 return getDerived().RebuildArrayTypeTrait(E->getTrait(), E->getBeginLoc(), T, 11153 SubExpr = getDerived().TransformExpr(E->getQueriedExpression()); 11157 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getQueriedExpression()) 11161 return getDerived().RebuildExpressionTrait(E->getTrait(), E->getBeginLoc(), 11169 ExprResult NewDRE = getDerived().TransformDependentScopeDeclRefExpr( 11177 if (!getDerived().AlwaysRebuild() && NewDRE.get() == DRE) 11179 return getDerived().RebuildParenExpr(NewDRE.get(), PE->getLParen(), 11198 = getDerived().TransformNestedNameSpecifierLoc(E->getQualifierLoc()); 11208 = getDerived().TransformDeclarationNameInfo(E->getNameInfo()); 11213 if (!getDerived().AlwaysRebuild() && 11220 return getDerived().RebuildDependentScopeDeclRefExpr( 11226 if (getDerived().TransformTemplateArguments(E->getTemplateArgs(), 11231 return getDerived().RebuildDependentScopeDeclRefExpr( 11243 (E->getNumArgs() > 1 && getDerived().DropCallArgument(E->getArg(1)))) && 11244 (!getDerived().DropCallArgument(E->getArg(0))) && 11246 return getDerived().TransformExpr(E->getArg(0)); 11250 QualType T = getDerived().TransformType(E->getType()); 11255 getDerived().TransformDecl(E->getBeginLoc(), E->getConstructor())); 11265 if (getDerived().TransformExprs(E->getArgs(), E->getNumArgs(), true, Args, 11270 if (!getDerived().AlwaysRebuild() && 11280 return getDerived().RebuildCXXConstructExpr( 11290 QualType T = getDerived().TransformType(E->getType()); 11295 getDerived().TransformDecl(E->getBeginLoc(), E->getConstructor())); 11299 if (!getDerived().AlwaysRebuild() && 11308 return getDerived().RebuildCXXInheritedCtorInitExpr( 11320 return getDerived().TransformExpr(E->getSubExpr()); 11331 return getDerived().TransformExpr(E->getSubExpr()); 11339 getDerived().TransformTypeWithDeducedTST(E->getTypeSourceInfo()); 11344 getDerived().TransformDecl(E->getBeginLoc(), E->getConstructor())); 11360 if (!getDerived().AlwaysRebuild() && 11372 return getDerived().RebuildCXXTemporaryObjectExpr( 11402 ExprResult NewExprInitResult = getDerived().TransformInitializer( 11436 if (getDerived().TryExpandParameterPacks( 11448 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 11462 auto TPL = getDerived().TransformTemplateParameterList( 11498 getDerived().transformedLocalDecl(OldClass, {Class}); 11501 if (getDerived().ReplacingOriginal()) 11522 ExprResult R = getDerived().TransformExpr( 11528 getDerived().transformAttrs(E->getCallOperator(), NewCallOperator); 11529 getDerived().transformedLocalDecl(E->getCallOperator(), {NewCallOperator}); 11598 getDerived().transformedLocalDecl(OldVD, NewVDs); 11616 if (getDerived().TryExpandParameterPacks(C->getEllipsisLoc(), 11633 = cast_or_null<VarDecl>(getDerived().TransformDecl(C->getLocation(), 11654 = cast_or_null<VarDecl>(getDerived().TransformDecl(C->getLocation(), 11674 Invalid ? StmtError() : getDerived().TransformLambdaBody(E, E->getBody()); 11733 getDerived().TransformDecl(C->getLocation(), C->getCapturedVar())); 11749 getDerived().TransformTypeWithDeducedTST(E->getTypeSourceInfo()); 11760 if (getDerived().TransformExprs(E->arg_begin(), E->arg_size(), true, Args, 11765 if (!getDerived().AlwaysRebuild() && 11771 return getDerived().RebuildCXXUnresolvedConstructExpr( 11786 Base = getDerived().TransformExpr(OldBase); 11805 BaseType = getDerived().TransformType(E->getBaseType()); 11812 = getDerived().TransformFirstQualifierInScope( 11819 = getDerived().TransformNestedNameSpecifierLoc(E->getQualifierLoc(), 11833 = getDerived().TransformDeclarationNameInfo(E->getMemberNameInfo()); 11840 if (!getDerived().AlwaysRebuild() && 11848 return getDerived().RebuildCXXDependentScopeMemberExpr(Base.get(), 11860 if (getDerived().TransformTemplateArguments(E->getTemplateArgs(), 11865 return getDerived().RebuildCXXDependentScopeMemberExpr(Base.get(), 11883 Base = getDerived().TransformExpr(Old->getBase()); 11892 BaseType = getDerived().TransformType(Old->getBaseType()); 11898 = getDerived().TransformNestedNameSpecifierLoc(Old->getQualifierLoc()); 11915 = cast_or_null<CXXRecordDecl>(getDerived().TransformDecl( 11928 if (getDerived().TransformTemplateArguments(Old->getTemplateArgs(), 11940 return getDerived().RebuildUnresolvedMemberExpr(Base.get(), 11957 ExprResult SubExpr = getDerived().TransformExpr(E->getOperand()); 11961 if (!getDerived().AlwaysRebuild() && SubExpr.get() == E->getOperand()) 11964 return getDerived().RebuildCXXNoexceptExpr(E->getSourceRange(),SubExpr.get()); 11970 ExprResult Pattern = getDerived().TransformExpr(E->getPattern()); 11974 if (!getDerived().AlwaysRebuild() && Pattern.get() == E->getPattern()) 11977 return getDerived().RebuildPackExpansion(Pattern.get(), E->getEllipsisLoc(), 12003 if (getDerived().TryExpandParameterPacks(E->getOperatorLoc(), E->getPackLoc(), 12036 getDerived().TransformDecl(E->getPackLoc(), E->getPack())); 12039 return getDerived().RebuildSizeOfPackExpr(E->getOperatorLoc(), Pack, 12065 if (getDerived().TransformTemplateArgument(Pattern, OutPattern, 12085 return getDerived().RebuildSizeOfPackExpr(E->getOperatorLoc(), E->getPack(), 12112 return getDerived().RebuildSizeOfPackExpr(E->getOperatorLoc(), E->getPack(), 12116 return getDerived().RebuildSizeOfPackExpr(E->getOperatorLoc(), E->getPack(), 12148 return getDerived().TransformExpr(E->GetTemporaryExpr()); 12166 if (getDerived().TryExpandParameterPacks(E->getEllipsisLoc(), 12179 E->getLHS() ? getDerived().TransformExpr(E->getLHS()) : ExprResult(); 12184 E->getRHS() ? getDerived().TransformExpr(E->getRHS()) : ExprResult(); 12188 if (!getDerived().AlwaysRebuild() && 12192 return getDerived().RebuildCXXFoldExpr( 12199 ExprResult Result = getDerived().TransformExpr(E->getInit()); 12207 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 12209 ExprResult Out = getDerived().TransformExpr(Pattern); 12213 Result = getDerived().RebuildCXXFoldExpr( 12223 ExprResult Out = getDerived().TransformExpr(Pattern); 12229 Result = getDerived().RebuildCXXFoldExpr( 12236 Result = getDerived().RebuildBinaryOperator( 12250 ForgetPartiallySubstitutedPackRAII Forget(getDerived()); 12252 ExprResult Out = getDerived().TransformExpr(Pattern); 12256 Result = getDerived().RebuildCXXFoldExpr( 12266 return getDerived().RebuildEmptyCXXFoldExpr(E->getEllipsisLoc(), 12276 return getDerived().TransformExpr(E->getSubExpr()); 12294 ExprResult SubExpr = getDerived().TransformExpr(E->getSubExpr()); 12298 if (!getDerived().AlwaysRebuild() && 12302 return getDerived().RebuildObjCBoxedExpr(E->getSourceRange(), SubExpr.get()); 12311 if (getDerived().TransformExprs(E->getElements(), E->getNumElements(), 12315 if (!getDerived().AlwaysRebuild() && !ArgChanged) 12318 return getDerived().RebuildObjCArrayLiteral(E->getSourceRange(), 12348 if (getDerived().TryExpandParameterPacks(OrigElement.EllipsisLoc, 12358 ExprResult Key = getDerived().TransformExpr(OrigElement.Key); 12365 ExprResult Value = getDerived().TransformExpr(OrigElement.Value); 12387 ExprResult Key = getDerived().TransformExpr(OrigElement.Key); 12391 ExprResult Value = getDerived().TransformExpr(OrigElement.Value); 12416 ExprResult Key = getDerived().TransformExpr(OrigElement.Key); 12425 = getDerived().TransformExpr(OrigElement.Value); 12438 if (!getDerived().AlwaysRebuild() && !ArgChanged) 12441 return getDerived().RebuildObjCDictionaryLiteral(E->getSourceRange(), 12449 = getDerived().TransformType(E->getEncodedTypeSourceInfo()); 12453 if (!getDerived().AlwaysRebuild() && 12457 return getDerived().RebuildObjCEncodeExpr(E->getAtLoc(), 12469 return getDerived().TransformExpr(E->getSubExpr()); 12476 = getDerived().TransformType(E->getTypeInfoAsWritten()); 12480 ExprResult Result = getDerived().TransformExpr(E->getSubExpr()); 12484 if (!getDerived().AlwaysRebuild() && 12507 if (getDerived().TransformExprs(E->getArgs(), E->getNumArgs(), false, Args, 12514 = getDerived().TransformType(E->getClassReceiverTypeInfo()); 12519 if (!getDerived().AlwaysRebuild() && 12526 return getDerived().RebuildObjCMessageExpr(ReceiverTypeInfo, 12542 return getDerived().RebuildObjCMessageExpr(E->getSuperLoc(), 12556 = getDerived().TransformExpr(E->getInstanceReceiver()); 12561 if (!getDerived().AlwaysRebuild() && 12568 return getDerived().RebuildObjCMessageExpr(Receiver.get(), 12593 ExprResult Base = getDerived().TransformExpr(E->getBase()); 12600 if (!getDerived().AlwaysRebuild() && 12604 return getDerived().RebuildObjCIvarRefExpr(Base.get(), E->getDecl(), 12618 ExprResult Base = getDerived().TransformExpr(E->getBase()); 12625 if (!getDerived().AlwaysRebuild() && 12630 return getDerived().RebuildObjCPropertyRefExpr(Base.get(), 12634 return getDerived().RebuildObjCPropertyRefExpr(Base.get(), 12645 ExprResult Base = getDerived().TransformExpr(E->getBaseExpr()); 12650 ExprResult Key = getDerived().TransformExpr(E->getKeyExpr()); 12655 if (!getDerived().AlwaysRebuild() && 12659 return getDerived().RebuildObjCSubscriptRefExpr(E->getRBracket(), 12669 ExprResult Base = getDerived().TransformExpr(E->getBase()); 12674 if (!getDerived().AlwaysRebuild() && 12678 return getDerived().RebuildObjCIsaExpr(Base.get(), E->getIsaMemberLoc(), 12689 if (getDerived().TransformExprs(E->getSubExprs(), E->getNumSubExprs(), false, 12693 if (!getDerived().AlwaysRebuild() && 12697 return getDerived().RebuildShuffleVectorExpr(E->getBuiltinLoc(), 12705 ExprResult SrcExpr = getDerived().TransformExpr(E->getSrcExpr()); 12709 TypeSourceInfo *Type = getDerived().TransformType(E->getTypeSourceInfo()); 12713 if (!getDerived().AlwaysRebuild() && 12718 return getDerived().RebuildConvertVectorExpr(E->getBuiltinLoc(), 12742 if (getDerived().TransformFunctionTypeParams( 12751 getDerived().TransformType(exprFunctionType->getReturnType()); 12757 getDerived().RebuildFunctionProtoType(exprResultType, paramTypes, epi); 12770 StmtResult body = getDerived().TransformStmt(E->getBody()); 12788 cast<VarDecl>(getDerived().TransformDecl(E->getCaretLocation(), 12812 if (getDerived().TransformExprs(E->getSubExprs(), E->getNumSubExprs(), false, 12816 if (!getDerived().AlwaysRebuild() && 12820 return getDerived().RebuildAtomicExpr(E->getBuiltinLoc(), SubExprs, 12832 getDerived().getBaseEntity()); 12839 getDerived().getBaseEntity()); 12848 Sigil, getDerived().getBaseEntity()); 12857 getDerived().getBaseEntity()); 12909 getDerived().getBaseEntity()); 12931 getDerived().getBaseEntity()); 12942 return getDerived().RebuildArrayType(ElementType, SizeMod, &Size, SizeExpr, 12952 return getDerived().RebuildArrayType(ElementType, SizeMod, nullptr, nullptr, 12963 return getDerived().RebuildArrayType(ElementType, SizeMod, nullptr, 12975 return getDerived().RebuildArrayType(ElementType, SizeMod, nullptr, 13029 getDerived().getBaseLocation(), 13030 getDerived().getBaseEntity(), 13376 getDerived().TransformType(CD->getParam(I)->getType()))); 13386 Body = getDerived().TransformStmt(S->getCapturedStmt());