From 1cd49873a8d5862e24de1dfe8ed3c0921b0dda07 Mon Sep 17 00:00:00 2001 From: Mike Popoloski Date: Mon, 10 Feb 2025 19:55:59 -0500 Subject: [PATCH] Fix build warnings, add docs for new warning --- include/slang/analysis/AnalysisManager.h | 6 +++--- include/slang/analysis/AnalyzedProcedure.h | 2 +- include/slang/analysis/DataFlowAnalysis.h | 4 ++-- scripts/warning_docs.txt | 13 +++++++++++++ source/analysis/AnalysisManager.cpp | 2 +- source/analysis/AnalyzedProcedure.cpp | 2 +- 6 files changed, 21 insertions(+), 8 deletions(-) diff --git a/include/slang/analysis/AnalysisManager.h b/include/slang/analysis/AnalysisManager.h index ffae2c7fc..9915e5efc 100644 --- a/include/slang/analysis/AnalysisManager.h +++ b/include/slang/analysis/AnalysisManager.h @@ -35,18 +35,18 @@ class AnalyzedScope; class SLANG_EXPORT AnalyzedInstance { public: /// The symbol that was analyzed. - const ast::InstanceSymbol& symbol; + not_null symbol; /// Constructs a new AnalyzedInstance object. AnalyzedInstance(AnalysisManager& analysisManager, const ast::InstanceSymbol& symbol) : - symbol(symbol), analysisManager(analysisManager) {} + symbol(&symbol), analysisManager(&analysisManager) {} /// Returns the analyzed body of the instance, if available. /// If the body has not been analyzed yet, this will return nullptr. const AnalyzedScope* getBody() const; private: - AnalysisManager& analysisManager; + not_null analysisManager; }; /// Represents an analyzed AST scope. diff --git a/include/slang/analysis/AnalyzedProcedure.h b/include/slang/analysis/AnalyzedProcedure.h index c550b7266..fd7ef72eb 100644 --- a/include/slang/analysis/AnalyzedProcedure.h +++ b/include/slang/analysis/AnalyzedProcedure.h @@ -23,7 +23,7 @@ class AnalysisManager; class SLANG_EXPORT AnalyzedProcedure { public: - const ast::ProceduralBlockSymbol& procedureSymbol; + not_null procedureSymbol; AnalyzedProcedure(AnalysisManager& analysisManager, AnalysisContext& context, const ast::ProceduralBlockSymbol& symbol); diff --git a/include/slang/analysis/DataFlowAnalysis.h b/include/slang/analysis/DataFlowAnalysis.h index 7d3627583..48a302b10 100644 --- a/include/slang/analysis/DataFlowAnalysis.h +++ b/include/slang/analysis/DataFlowAnalysis.h @@ -106,7 +106,7 @@ class SLANG_EXPORT DataFlowAnalysis : public AbstractFlowAnalysisgetAnalyzedScope(symbol->body); } AnalysisManager::AnalysisManager(uint32_t numThreads) : threadPool(numThreads) { diff --git a/source/analysis/AnalyzedProcedure.cpp b/source/analysis/AnalyzedProcedure.cpp index 5d647e68b..8d7d78c62 100644 --- a/source/analysis/AnalyzedProcedure.cpp +++ b/source/analysis/AnalyzedProcedure.cpp @@ -131,7 +131,7 @@ static const TimingControl* inferClock(const ProceduralBlockSymbol& procedureSym AnalyzedProcedure::AnalyzedProcedure(AnalysisManager&, AnalysisContext& context, const ProceduralBlockSymbol& procedure) : - procedureSymbol(procedure) { + procedureSymbol(&procedure) { DataFlowAnalysis dfa(context, procedure); dfa.run(procedure.getBody());