Lines Matching refs:SemaRef

526   Sema &SemaRef;  member in __anon4bf2252c0311::CommaVisitor
528 CommaVisitor(Sema &SemaRef) : Inherited(SemaRef.Context), SemaRef(SemaRef) {} in CommaVisitor() argument
531 SemaRef.DiagnoseCommaOperator(E->getLHS(), E->getExprLoc()); in VisitBinaryOperator()
1969 static bool FinishForRangeVarDecl(Sema &SemaRef, VarDecl *Decl, Expr *Init, in FinishForRangeVarDecl() argument
1972 ExprResult Res = SemaRef.CorrectDelayedTyposInExpr(Init); in FinishForRangeVarDecl()
1984 SemaRef.DeduceAutoType(Decl->getTypeSourceInfo(), Init, InitType) == in FinishForRangeVarDecl()
1986 SemaRef.Diag(Loc, DiagID) << Init->getType(); in FinishForRangeVarDecl()
1996 if (SemaRef.getLangOpts().ObjCAutoRefCount && in FinishForRangeVarDecl()
1997 SemaRef.inferObjCARCLifetime(Decl)) in FinishForRangeVarDecl()
2000 SemaRef.AddInitializerToDecl(Decl, Init, /*DirectInit=*/false); in FinishForRangeVarDecl()
2001 SemaRef.FinalizeDeclaration(Decl); in FinishForRangeVarDecl()
2002 SemaRef.CurContext->addHiddenDecl(Decl); in FinishForRangeVarDecl()
2018 void NoteForRangeBeginEndFunction(Sema &SemaRef, Expr *E, in NoteForRangeBeginEndFunction() argument
2031 Description = SemaRef.getTemplateArgumentBindingsText( in NoteForRangeBeginEndFunction()
2036 SemaRef.Diag(Loc, diag::note_for_range_begin_end) in NoteForRangeBeginEndFunction()
2041 VarDecl *BuildForRangeVarDecl(Sema &SemaRef, SourceLocation Loc, in BuildForRangeVarDecl() argument
2043 DeclContext *DC = SemaRef.CurContext; in BuildForRangeVarDecl()
2044 IdentifierInfo *II = &SemaRef.PP.getIdentifierTable().get(Name); in BuildForRangeVarDecl()
2045 TypeSourceInfo *TInfo = SemaRef.Context.getTrivialTypeSourceInfo(Type, Loc); in BuildForRangeVarDecl()
2046 VarDecl *Decl = VarDecl::Create(SemaRef.Context, DC, Loc, Loc, II, Type, in BuildForRangeVarDecl()
2153 BuildNonArrayForRange(Sema &SemaRef, Expr *BeginRange, Expr *EndRange, in BuildNonArrayForRange() argument
2159 &SemaRef.PP.getIdentifierTable().get("begin"), ColonLoc); in BuildNonArrayForRange()
2160 DeclarationNameInfo EndNameInfo(&SemaRef.PP.getIdentifierTable().get("end"), in BuildNonArrayForRange()
2163 LookupResult BeginMemberLookup(SemaRef, BeginNameInfo, in BuildNonArrayForRange()
2165 LookupResult EndMemberLookup(SemaRef, EndNameInfo, Sema::LookupMemberName); in BuildNonArrayForRange()
2170 SemaRef.BuildForRangeBeginEndCall(ColonLoc, ColonLoc, BeginNameInfo, in BuildNonArrayForRange()
2176 SemaRef.Diag(BeginRange->getBeginLoc(), diag::note_in_for_range) in BuildNonArrayForRange()
2184 *BeginExpr = SemaRef.ActOnCoawaitExpr(SemaRef.getCurScope(), ColonLoc, in BuildNonArrayForRange()
2189 if (FinishForRangeVarDecl(SemaRef, BeginVar, BeginExpr->get(), ColonLoc, in BuildNonArrayForRange()
2191 NoteForRangeBeginEndFunction(SemaRef, BeginExpr->get(), *BEF); in BuildNonArrayForRange()
2200 SemaRef.BuildForRangeBeginEndCall(ColonLoc, ColonLoc, EndNameInfo, in BuildNonArrayForRange()
2205 SemaRef.Diag(EndRange->getBeginLoc(), diag::note_in_for_range) in BuildNonArrayForRange()
2209 if (FinishForRangeVarDecl(SemaRef, EndVar, EndExpr->get(), ColonLoc, in BuildNonArrayForRange()
2211 NoteForRangeBeginEndFunction(SemaRef, EndExpr->get(), *BEF); in BuildNonArrayForRange()
2223 SemaRef.LookupQualifiedName(BeginMemberLookup, D); in BuildNonArrayForRange()
2227 SemaRef.LookupQualifiedName(EndMemberLookup, D); in BuildNonArrayForRange()
2251 SemaRef.Diag(BeginRange->getBeginLoc(), diag::err_for_range_invalid) in BuildNonArrayForRange()
2253 CandidateSet->NoteCandidates(SemaRef, OCD_AllCandidates, BeginRange); in BuildNonArrayForRange()
2258 SemaRef.Diag(D->getLocation(), in BuildNonArrayForRange()
2285 static StmtResult RebuildForRangeWithDereference(Sema &SemaRef, Scope *S, in RebuildForRangeWithDereference() argument
2298 Sema::SFINAETrap Trap(SemaRef); in RebuildForRangeWithDereference()
2300 AdjustedRange = SemaRef.BuildUnaryOp(S, RangeLoc, UO_Deref, Range); in RebuildForRangeWithDereference()
2304 StmtResult SR = SemaRef.ActOnCXXForRangeStmt( in RebuildForRangeWithDereference()
2314 SemaRef.Diag(RangeLoc, diag::err_for_range_dereference) in RebuildForRangeWithDereference()
2316 return SemaRef.ActOnCXXForRangeStmt( in RebuildForRangeWithDereference()
2324 InvalidateOnErrorScope(Sema &SemaRef, Decl *D, bool Enabled) in InvalidateOnErrorScope()
2325 : Trap(SemaRef.Diags), D(D), Enabled(Enabled) {} in InvalidateOnErrorScope()
2680 static void DiagnoseForRangeReferenceVariableCopies(Sema &SemaRef, in DiagnoseForRangeReferenceVariableCopies() argument
2731 SemaRef.Diag(VD->getLocation(), diag::warn_for_range_const_reference_copy) in DiagnoseForRangeReferenceVariableCopies()
2736 SemaRef.Context.getLValueReferenceType(E->getType().withConst()); in DiagnoseForRangeReferenceVariableCopies()
2737 SemaRef.Diag(VD->getBeginLoc(), diag::note_use_type_or_non_reference) in DiagnoseForRangeReferenceVariableCopies()
2742 SemaRef.Diag(VD->getLocation(), diag::warn_for_range_variable_always_copy) in DiagnoseForRangeReferenceVariableCopies()
2746 SemaRef.Diag(VD->getBeginLoc(), diag::note_use_non_reference_type) in DiagnoseForRangeReferenceVariableCopies()
2754 static void DiagnoseForRangeConstVariableCopies(Sema &SemaRef, in DiagnoseForRangeConstVariableCopies() argument
2775 if (VariableType.isPODType(SemaRef.Context)) in DiagnoseForRangeConstVariableCopies()
2780 SemaRef.Diag(VD->getLocation(), diag::warn_for_range_copy) in DiagnoseForRangeConstVariableCopies()
2782 SemaRef.Diag(VD->getBeginLoc(), diag::note_use_reference_type) in DiagnoseForRangeConstVariableCopies()
2783 << SemaRef.Context.getLValueReferenceType(VariableType) in DiagnoseForRangeConstVariableCopies()
2795 static void DiagnoseForRangeVariableCopies(Sema &SemaRef, in DiagnoseForRangeVariableCopies() argument
2797 if (SemaRef.Diags.isIgnored(diag::warn_for_range_const_reference_copy, in DiagnoseForRangeVariableCopies()
2799 SemaRef.Diags.isIgnored(diag::warn_for_range_variable_always_copy, in DiagnoseForRangeVariableCopies()
2801 SemaRef.Diags.isIgnored(diag::warn_for_range_copy, in DiagnoseForRangeVariableCopies()
2820 DiagnoseForRangeReferenceVariableCopies(SemaRef, VD, in DiagnoseForRangeVariableCopies()
2823 DiagnoseForRangeConstVariableCopies(SemaRef, VD); in DiagnoseForRangeVariableCopies()