[clang] 13cd184 - [clang-dataflow][NFC] Mark test analysis classes as `final`.
Yitzhak Mandelbaum via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 14 10:52:09 PDT 2022
Author: Yitzhak Mandelbaum
Date: 2022-10-14T17:51:57Z
New Revision: 13cd184ef7fa9d76deaffb1924521fa914edba5e
URL: https://github.com/llvm/llvm-project/commit/13cd184ef7fa9d76deaffb1924521fa914edba5e
DIFF: https://github.com/llvm/llvm-project/commit/13cd184ef7fa9d76deaffb1924521fa914edba5e.diff
LOG: [clang-dataflow][NFC] Mark test analysis classes as `final`.
Change from marking individual methods as `final` to marking the whole class.
Differential Revision: https://reviews.llvm.org/D135923
Added:
Modified:
clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
Removed:
################################################################################
diff --git a/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp b/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
index 341e2f2da833d..bf06953394692 100644
--- a/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
+++ b/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
@@ -311,10 +311,7 @@ TEST_F(NoreturnDestructorTest, ConditionalOperatorNestedBranchReturns) {
}
// Models an analysis that uses flow conditions.
-//
-// FIXME: Here and below: change class to final and final methods to override,
-// since we're marking them all as final.
-class SpecialBoolAnalysis
+class SpecialBoolAnalysis final
: public DataflowAnalysis<SpecialBoolAnalysis, NoopLattice> {
public:
explicit SpecialBoolAnalysis(ASTContext &Context)
@@ -356,7 +353,7 @@ class SpecialBoolAnalysis
bool compareEquivalent(QualType Type, const Value &Val1,
const Environment &Env1, const Value &Val2,
- const Environment &Env2) final {
+ const Environment &Env2) override {
const auto *Decl = Type->getAsCXXRecordDecl();
if (Decl == nullptr || Decl->getIdentifier() == nullptr ||
Decl->getName() != "SpecialBool")
@@ -377,7 +374,7 @@ class SpecialBoolAnalysis
// Always returns `true` to accept the `MergedVal`.
bool merge(QualType Type, const Value &Val1, const Environment &Env1,
const Value &Val2, const Environment &Env2, Value &MergedVal,
- Environment &MergedEnv) final {
+ Environment &MergedEnv) override {
const auto *Decl = Type->getAsCXXRecordDecl();
if (Decl == nullptr || Decl->getIdentifier() == nullptr ||
Decl->getName() != "SpecialBool")
@@ -469,7 +466,7 @@ TEST_F(JoinFlowConditionsTest, JoinDistinctButProvablyEquivalentValues) {
});
}
-class OptionalIntAnalysis
+class OptionalIntAnalysis final
: public DataflowAnalysis<OptionalIntAnalysis, NoopLattice> {
public:
explicit OptionalIntAnalysis(ASTContext &Context)
@@ -514,7 +511,7 @@ class OptionalIntAnalysis
bool compareEquivalent(QualType Type, const Value &Val1,
const Environment &Env1, const Value &Val2,
- const Environment &Env2) final {
+ const Environment &Env2) override {
// Nothing to say about a value that does not model an `OptionalInt`.
if (!Type->isRecordType() ||
Type->getAsCXXRecordDecl()->getQualifiedNameAsString() != "OptionalInt")
@@ -529,7 +526,7 @@ class OptionalIntAnalysis
bool merge(QualType Type, const Value &Val1, const Environment &Env1,
const Value &Val2, const Environment &Env2, Value &MergedVal,
- Environment &MergedEnv) final {
+ Environment &MergedEnv) override {
// Nothing to say about a value that does not model an `OptionalInt`.
if (!Type->isRecordType() ||
Type->getAsCXXRecordDecl()->getQualifiedNameAsString() != "OptionalInt")
More information about the cfe-commits
mailing list