Lines Matching refs:SemaRef
2367 const TypoCorrection &TC, Sema &SemaRef, const CXXScopeSpec &SS, in emitEmptyLookupTypoDiagnostic() argument
2371 SS.isEmpty() ? nullptr : SemaRef.computeDeclContext(SS, false); in emitEmptyLookupTypoDiagnostic()
2376 SemaRef.Diag(TypoLoc, diag::err_no_member) << Typo << Ctx in emitEmptyLookupTypoDiagnostic()
2379 SemaRef.Diag(TypoLoc, DiagnosticID) << Typo; in emitEmptyLookupTypoDiagnostic()
2383 std::string CorrectedStr = TC.getAsString(SemaRef.getLangOpts()); in emitEmptyLookupTypoDiagnostic()
2390 SemaRef.diagnoseTypo(TC, SemaRef.PDiag(DiagnosticSuggestID) << Typo, in emitEmptyLookupTypoDiagnostic()
2391 SemaRef.PDiag(NoteID)); in emitEmptyLookupTypoDiagnostic()
2393 SemaRef.diagnoseTypo(TC, SemaRef.PDiag(diag::err_no_member_suggest) in emitEmptyLookupTypoDiagnostic()
2396 SemaRef.PDiag(NoteID)); in emitEmptyLookupTypoDiagnostic()
6237 EnsureImmediateInvocationInDefaultArgs(Sema &SemaRef) in EnsureImmediateInvocationInDefaultArgs()
6238 : TreeTransform(SemaRef) {} in EnsureImmediateInvocationInDefaultArgs()
6464 FunctionCallCCC(Sema &SemaRef, const IdentifierInfo *FuncName, in FunctionCallCCC() argument
6466 : FunctionCallFilterCCC(SemaRef, NumArgs, false, ME), in FunctionCallCCC()
18133 TransformToPE(Sema &SemaRef) : BaseTransform(SemaRef) { } in TransformToPE() argument
18148 !SemaRef.isUnevaluatedContext()) in TransformDeclRefExpr()
18149 return SemaRef.Diag(E->getLocation(), in TransformDeclRefExpr()
18394 Sema &SemaRef, Sema::ImmediateInvocationCandidate Candidate) { in EvaluateAndDiagnoseImmediateInvocation() argument
18400 Eval, SemaRef.getASTContext(), ConstantExprKind::ImmediateInvocation); in EvaluateAndDiagnoseImmediateInvocation()
18402 SemaRef.FailedImmediateInvocations.insert(CE); in EvaluateAndDiagnoseImmediateInvocation()
18418 SemaRef.Diag(CE->getBeginLoc(), diag::err_invalid_consteval_call) in EvaluateAndDiagnoseImmediateInvocation()
18421 SemaRef.InnermostDeclarationWithDelayedImmediateInvocations()) { in EvaluateAndDiagnoseImmediateInvocation()
18422 SemaRef.Diag(Context->Loc, diag::note_invalid_consteval_initializer) in EvaluateAndDiagnoseImmediateInvocation()
18424 SemaRef.Diag(Context->Decl->getBeginLoc(), diag::note_declared_at); in EvaluateAndDiagnoseImmediateInvocation()
18427 SemaRef.DiagnoseImmediateEscalatingReason(FD); in EvaluateAndDiagnoseImmediateInvocation()
18429 SemaRef.Diag(Note.first, Note.second); in EvaluateAndDiagnoseImmediateInvocation()
18432 CE->MoveIntoResult(Eval.Val, SemaRef.getASTContext()); in EvaluateAndDiagnoseImmediateInvocation()
18436 Sema &SemaRef, Sema::ExpressionEvaluationContextRecord &Rec, in RemoveNestedImmediateInvocation() argument
18444 ComplexRemove(Sema &SemaRef, llvm::SmallPtrSetImpl<DeclRefExpr *> &DR, in RemoveNestedImmediateInvocation()
18448 : Base(SemaRef), DRSet(DR), IISet(II), CurrentII(Current) {} in RemoveNestedImmediateInvocation()
18459 if (SemaRef.FailedImmediateInvocations.contains(E)) in RemoveNestedImmediateInvocation()
18509 } Transformer(SemaRef, Rec.ReferenceToConsteval, in RemoveNestedImmediateInvocation()
18526 Res = SemaRef.MaybeCreateExprWithCleanups(Res); in RemoveNestedImmediateInvocation()
18532 HandleImmediateInvocations(Sema &SemaRef, in HandleImmediateInvocations() argument
18536 SemaRef.RebuildingImmediateInvocation) in HandleImmediateInvocations()
18545 !SemaRef.FailedImmediateInvocations.empty()) { in HandleImmediateInvocations()
18550 SemaRef.RebuildingImmediateInvocation, true); in HandleImmediateInvocations()
18553 Sema::TentativeAnalysisScope DisableDiag(SemaRef); in HandleImmediateInvocations()
18558 RemoveNestedImmediateInvocation(SemaRef, Rec, It); in HandleImmediateInvocations()
18574 EvaluateAndDiagnoseImmediateInvocation(SemaRef, CE); in HandleImmediateInvocations()
18598 if (SemaRef.inTemplateInstantiation() && IsPotentiallyEvaluated) in HandleImmediateInvocations()
18602 (SemaRef.inTemplateInstantiation() && !ImmediateEscalating)) { in HandleImmediateInvocations()
18603 SemaRef.Diag(DR->getBeginLoc(), diag::err_invalid_consteval_take_address) in HandleImmediateInvocations()
18605 SemaRef.Diag(ND->getLocation(), diag::note_declared_at); in HandleImmediateInvocations()
18607 SemaRef.InnermostDeclarationWithDelayedImmediateInvocations()) { in HandleImmediateInvocations()
18608 SemaRef.Diag(Context->Loc, diag::note_invalid_consteval_initializer) in HandleImmediateInvocations()
18610 SemaRef.Diag(Context->Decl->getBeginLoc(), diag::note_declared_at); in HandleImmediateInvocations()
18613 SemaRef.DiagnoseImmediateEscalatingReason(FD); in HandleImmediateInvocations()
18616 SemaRef.MarkExpressionAsImmediateEscalating(DR); in HandleImmediateInvocations()
18709 static bool isPotentiallyConstantEvaluatedContext(Sema &SemaRef) { in isPotentiallyConstantEvaluatedContext() argument
18712 switch (SemaRef.ExprEvalContexts.back().Context) { in isPotentiallyConstantEvaluatedContext()
18828 static OdrUseContext isOdrUseContext(Sema &SemaRef) { in isOdrUseContext() argument
18831 switch (SemaRef.ExprEvalContexts.back().Context) { in isOdrUseContext()
18854 if (SemaRef.CurContext->isDependentContext()) in isOdrUseContext()
19143 MarkVarDeclODRUsed(ValueDecl *V, SourceLocation Loc, Sema &SemaRef, in MarkVarDeclODRUsed() argument
19150 if (Var->hasDefinition(SemaRef.Context) == VarDecl::DeclarationOnly && in MarkVarDeclODRUsed()
19152 SemaRef.isExternalWithNoLinkageType(Var)) && in MarkVarDeclODRUsed()
19154 SourceLocation &old = SemaRef.UndefinedButUsed[Var->getCanonicalDecl()]; in MarkVarDeclODRUsed()
19159 if (SemaRef.LangOpts.OpenMP) in MarkVarDeclODRUsed()
19160 SemaRef.tryCaptureOpenMPLambdas(V); in MarkVarDeclODRUsed()
19161 SemaRef.tryCaptureVariable(V, Loc, Sema::TryCapture_Implicit, in MarkVarDeclODRUsed()
19166 if (SemaRef.LangOpts.CUDA && Var->hasGlobalStorage()) { in MarkVarDeclODRUsed()
19167 auto *FD = dyn_cast_or_null<FunctionDecl>(SemaRef.CurContext); in MarkVarDeclODRUsed()
19168 auto VarTarget = SemaRef.IdentifyCUDATarget(Var); in MarkVarDeclODRUsed()
19169 auto UserTarget = SemaRef.IdentifyCUDATarget(FD); in MarkVarDeclODRUsed()
19176 if (SemaRef.LangOpts.CUDAIsDevice && !SemaRef.LangOpts.HIPStdPar) { in MarkVarDeclODRUsed()
19177 SemaRef.targetDiag(Loc, diag::err_ref_bad_target) in MarkVarDeclODRUsed()
19179 SemaRef.targetDiag(Var->getLocation(), in MarkVarDeclODRUsed()
19199 SemaRef.getASTContext().CUDADeviceVarODRUsedByHost.insert(Var); in MarkVarDeclODRUsed()
19200 else if (SemaRef.LangOpts.GPURelocatableDeviceCode) in MarkVarDeclODRUsed()
19201 SemaRef.getASTContext().CUDAExternalDeviceDeclODRUsedByHost.insert(Var); in MarkVarDeclODRUsed()
19205 V->markUsed(SemaRef.Context); in MarkVarDeclODRUsed()
20433 static void DoMarkPotentialCapture(Sema &SemaRef, SourceLocation Loc, in DoMarkPotentialCapture() argument
20440 (SemaRef.CurContext != VD->getDeclContext() && in DoMarkPotentialCapture()
20444 SemaRef.getCurLambda(/*IgnoreNonLambdaCapturingScope=*/true); in DoMarkPotentialCapture()
20459 !VD->isUsableInConstantExpressions(SemaRef.Context)) in DoMarkPotentialCapture()
20466 Sema &SemaRef, SourceLocation Loc, VarDecl *Var, Expr *E, in DoMarkVarDeclReferenced() argument
20480 OdrUseContext OdrUse = isOdrUseContext(SemaRef); in DoMarkVarDeclReferenced()
20482 Var->mightBeUsableInConstantExpressions(SemaRef.Context); in DoMarkVarDeclReferenced()
20494 isPotentiallyConstantEvaluatedContext(SemaRef) && UsableInConstantExpr; in DoMarkVarDeclReferenced()
20507 SemaRef.checkSpecializationVisibility(Loc, Var); in DoMarkVarDeclReferenced()
20537 SemaRef.runWithSufficientStackSpace(PointOfInstantiation, [&] { in DoMarkVarDeclReferenced()
20538 SemaRef.InstantiateVariableDefinition(PointOfInstantiation, Var); in DoMarkVarDeclReferenced()
20548 SemaRef.PendingInstantiations in DoMarkVarDeclReferenced()
20552 for (auto &I : SemaRef.SavedPendingInstantiations) { in DoMarkVarDeclReferenced()
20558 SemaRef.PendingInstantiations.push_back(*Iter); in DoMarkVarDeclReferenced()
20571 SemaRef.PendingInstantiations in DoMarkVarDeclReferenced()
20608 SemaRef.isUnevaluatedContext()) && in DoMarkVarDeclReferenced()
20620 if (E && Var->isUsableInConstantExpressions(SemaRef.Context)) in DoMarkVarDeclReferenced()
20621 SemaRef.MaybeODRUseExprs.insert(E); in DoMarkVarDeclReferenced()
20623 MarkVarDeclODRUsed(Var, Loc, SemaRef); in DoMarkVarDeclReferenced()
20631 DoMarkPotentialCapture(SemaRef, Loc, Var, E); in DoMarkVarDeclReferenced()
20636 static void DoMarkBindingDeclReferenced(Sema &SemaRef, SourceLocation Loc, in DoMarkBindingDeclReferenced() argument
20643 OdrUseContext OdrUse = isOdrUseContext(SemaRef); in DoMarkBindingDeclReferenced()
20646 SemaRef.tryCaptureVariable(BD, Loc, Sema::TryCapture_Implicit, in DoMarkBindingDeclReferenced()
20652 DoMarkPotentialCapture(SemaRef, Loc, BD, E); in DoMarkBindingDeclReferenced()
20669 Sema &SemaRef, ValueDecl *D, Expr *E) { in FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter() argument
20675 const LambdaScopeInfo *LSI = SemaRef.getCurLambda(); in FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter()
20688 IsDependent, SemaRef.getASTContext()); in FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter()
20692 MarkExprReferenced(Sema &SemaRef, SourceLocation Loc, Decl *D, Expr *E, in MarkExprReferenced() argument
20695 if (SemaRef.isInOpenMPDeclareTargetContext()) in MarkExprReferenced()
20696 SemaRef.checkDeclIsAllowedInOpenMPTarget(E, D); in MarkExprReferenced()
20699 DoMarkVarDeclReferenced(SemaRef, Loc, Var, E, RefsMinusAssignments); in MarkExprReferenced()
20700 if (SemaRef.getLangOpts().CPlusPlus) in MarkExprReferenced()
20701 FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter(SemaRef, in MarkExprReferenced()
20707 DoMarkBindingDeclReferenced(SemaRef, Loc, Decl, E); in MarkExprReferenced()
20708 if (SemaRef.getLangOpts().CPlusPlus) in MarkExprReferenced()
20709 FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter(SemaRef, in MarkExprReferenced()
20713 SemaRef.MarkAnyDeclReferenced(Loc, D, MightBeOdrUse); in MarkExprReferenced()
20725 ME->performsVirtualDispatch(SemaRef.getLangOpts()); in MarkExprReferenced()
20732 ME->getBase(), SemaRef.getLangOpts().AppleKext); in MarkExprReferenced()
20734 SemaRef.MarkAnyDeclReferenced(Loc, DM, MightBeOdrUse); in MarkExprReferenced()