//=- UninitializedValues.h - Finding uses of uninitialized values -*- C++ -*-=// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file defines APIs for invoking and reported uninitialized values // warnings. // //===----------------------------------------------------------------------===// #ifndef LLVM_CLANG_ANALYSIS_ANALYSES_UNINITIALIZEDVALUES_H #define LLVM_CLANG_ANALYSIS_ANALYSES_UNINITIALIZEDVALUES_H #include "clang/Basic/LLVM.h" #include "llvm/ADT/SmallVector.h" namespace clang { class AnalysisDeclContext; class CFG; class DeclContext; class Expr; class Stmt; class VarDecl; /// A use of a variable, which might be uninitialized. class UninitUse { … }; class UninitVariablesHandler { … }; struct UninitVariablesAnalysisStats { … }; void runUninitializedVariablesAnalysis(const DeclContext &dc, const CFG &cfg, AnalysisDeclContext &ac, UninitVariablesHandler &handler, UninitVariablesAnalysisStats &stats); } // namespace clang #endif // LLVM_CLANG_ANALYSIS_ANALYSES_UNINITIALIZEDVALUES_H