Home | History | Annotate | Download | only in Sema

Lines Matching full:sema

1 //=- AnalysisBasedWarnings.cpp - Sema warnings based on libAnalysis -*- C++ -*-=//
11 // Together they are used by Sema to issue warnings based on inexpensive
16 #include "clang/Sema/AnalysisBasedWarnings.h"
39 #include "clang/Sema/ScopeInfo.h"
40 #include "clang/Sema/SemaInternal.h"
64 Sema &S;
66 UnreachableCodeHandler(Sema &s) : S(s) {}
105 static void CheckUnreachable(Sema &S, AnalysisDeclContext &AC) {
122 Sema &S;
125 LogicalErrorHandler(Sema &S) : CFGCallback(), S(S) {}
173 static void checkForFunctionCall(Sema &S, const FunctionDecl *FD,
232 static void checkRecursiveFunction(Sema &S, const FunctionDecl *FD,
500 static void CheckFallThroughForBody(Sema &S, const Decl *D, const Stmt *Body,
610 static bool SuggestInitializationFixit(Sema &S, const VarDecl *VD) {
642 static void CreateIfFixit(Sema &S, const Stmt *If, const Stmt *Then,
669 static void DiagUninitUse(Sema &S, const VarDecl *VD, const UninitUse &Use,
841 static bool DiagnoseUninitializedUse(Sema &S, const VarDecl *VD,
895 FallthroughMapper(Sema &S)
1063 Sema &S;
1068 static void DiagnoseSwitchLabelsFallthrough(Sema &S, AnalysisDeclContext &AC,
1179 static void diagnoseRepeatedUseOfWeak(Sema &S,
1180 const sema::FunctionScopeInfo *CurFn,
1183 typedef sema::FunctionScopeInfo::WeakObjectProfileTy WeakObjectProfileTy;
1184 typedef sema::FunctionScopeInfo::WeakObjectUseMap WeakObjectUseMap;
1185 typedef sema::FunctionScopeInfo::WeakUseVector WeakUseVector;
1257 // possibilities all throughout Sema?
1265 if (isa<sema::BlockScopeInfo>(CurFn))
1267 else if (isa<sema::LambdaScopeInfo>(CurFn))
1331 Sema &S;
1341 UninitValsDiagReporter(Sema &S) : S(S), uses(nullptr) {}
1450 Sema &S;
1466 ThreadSafetyReporter(Sema &S, SourceLocation FL, SourceLocation FEL)
1624 Sema &S;
1629 ConsumedWarningsHandler(Sema &S) : S(S) {}
1707 // AnalysisBasedWarnings - Worker object used by Sema to execute analysis-based
1711 clang::sema::AnalysisBasedWarnings::Policy::Policy() {
1722 clang::sema::AnalysisBasedWarnings::AnalysisBasedWarnings(Sema &s)
1750 static void flushDiagnostics(Sema &S, const sema::FunctionScopeInfo *fscope) {
1755 void clang::sema::
1756 AnalysisBasedWarnings::IssueWarnings(sema::AnalysisBasedWarnings::Policy P,
1757 sema::FunctionScopeInfo *fscope,
1850 // edge cases; see test/Sema/vla-2.c.
1981 void clang::sema::AnalysisBasedWarnings::PrintStats() const {