Lines Matching defs:LSI
4612 if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
4613 DC = LSI->CallOperator;
5326 if (auto *LSI = dyn_cast<LambdaScopeInfo>(CSI))
5327 DC = LSI->CallOperator;
18752 static bool captureInLambda(LambdaScopeInfo *LSI, ValueDecl *Var,
18764 ByRef = (LSI->ImpCaptureStyle == LambdaScopeInfo::ImpCap_LambdaByref);
18841 bool Const = LSI->lambdaCaptureShouldBeConst();
18853 LSI->addCapture(Var, /*isBlock=*/false, ByRef, RefersToCapturedVariable,
18885 static void buildLambdaCaptureFixit(Sema &Sema, LambdaScopeInfo *LSI,
18887 assert(LSI->ImpCaptureStyle == CapturingScopeInfo::ImpCap_None);
18893 StringRef Separator = LSI->NumExplicitCaptures > 0 ? ", " : "";
18895 SourceLocation VarInsertLoc = LSI->IntroducerRange.getEnd();
18918 if (llvm::any_of(LSI->Captures, [](Capture &C) {
18926 LSI->IntroducerRange.getBegin().getLocWithOffset(1);
18932 if (LSI->isCXXThisCaptured() && !Sema.getLangOpts().CPlusPlus20)
18934 ? LSI->getCXXThisCapture().isCopyCapture()
18938 if (CanDefaultCopyCapture && llvm::none_of(LSI->Captures, [](Capture &C) {
18950 if (llvm::none_of(LSI->Captures, [](Capture &C) {
19004 // NOT the lambda but its parent. So move away the current LSI before
19006 if (auto *LSI = dyn_cast<LambdaScopeInfo>(FunctionScopes[FSIndex]);
19007 FSIndex && LSI && !LSI->AfterParameterList)
19044 LambdaScopeInfo *LSI = nullptr;
19046 LSI = dyn_cast_or_null<LambdaScopeInfo>(
19050 !LSI || LSI->AfterParameterList || CurContext == LSI->CallOperator;
19052 if (LSI && !LSI->AfterParameterList) {
19105 LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
19106 if (LSI->ImpCaptureStyle == CapturingScopeInfo::ImpCap_None) {
19109 Diag(LSI->Lambda->getBeginLoc(), diag::note_lambda_decl);
19110 buildLambdaCaptureFixit(*this, LSI, Var);
19199 auto *LSI = cast<LambdaScopeInfo>(CSI);
19200 if (LSI->Lambda) {
19201 Diag(LSI->Lambda->getBeginLoc(), diag::note_lambda_decl);
19202 buildLambdaCaptureFixit(*this, LSI, Var);
19256 LambdaScopeInfo *LSI = cast<LambdaScopeInfo>(CSI);
19258 !captureInLambda(LSI, Var, ExprLoc, BuildAndDiagnose, CaptureType,
19404 if (LambdaScopeInfo *LSI = S.getCurLambda())
19405 LSI->markVariableExprAsNonODRUsed(E);
19726 LambdaScopeInfo *const LSI =
19728 if (LSI && (!LSI->CallOperator ||
19729 !LSI->CallOperator->Encloses(Var->getDeclContext()))) {
19743 LSI->addPotentialCapture(E->IgnoreParens());
19960 auto *LSI = dyn_cast<sema::LambdaScopeInfo>(Scope);
19961 if (!LSI)
19964 if (LSI->Lambda && !LSI->Lambda->Encloses(SemaRef.CurContext) &&
19965 LSI->AfterParameterList)
19968 const auto *MD = LSI->CallOperator;
19977 if (auto *C = LSI->CaptureMap.count(D) ? &LSI->getCapture(D) : nullptr) {
19983 if (LSI->ImpCaptureStyle == LambdaScopeInfo::ImpCap_LambdaByval)