[llvm-branch-commits] [clang] [SSAF] Remove UnsafeBufferUsageTest.h (PR #195201)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Thu Apr 30 17:07:57 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Ziqing Luo (ziqingluo-90)
<details>
<summary>Changes</summary>
The idea is that we do not want to have test-only functionality in any interface.
We have lit tests covering the removed unit test.
---
Full diff: https://github.com/llvm/llvm-project/pull/195201.diff
3 Files Affected:
- (removed) clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h (-29)
- (modified) clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp (-23)
- (modified) clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp (-47)
``````````diff
diff --git a/clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h b/clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h
deleted file mode 100644
index 6a2d1161246f2..0000000000000
--- a/clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h
+++ /dev/null
@@ -1,29 +0,0 @@
-//===- UnsafeBufferUsageTest.h ----------------------------------*- 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
-//
-//===----------------------------------------------------------------------===//
-//
-// Functions and data structures that help UnsafeBufferUsage unit tests.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_ANALYSES_UNSAFEBUFFERUSAGE_UNSAFEBUFFERUSAGETEST_H
-#define LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_ANALYSES_UNSAFEBUFFERUSAGE_UNSAFEBUFFERUSAGETEST_H
-
-#include "clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h"
-#include "clang/ScalableStaticAnalysisFramework/Core/TUSummary/EntitySummary.h"
-#include "llvm/Support/Error.h"
-
-namespace clang::ssaf {
-
-llvm::Expected<std::unique_ptr<EntitySummary>> serializeDeserializeRoundTrip(
- const UnsafeBufferUsageEntitySummary &S,
- std::function<uint64_t(EntityId)> IdToIntFn,
- std::function<llvm::Expected<EntityId>(uint64_t)> IdFromIntFn);
-
-} // namespace clang::ssaf
-
-#endif // LLVM_CLANG_SCALABLESTATICANALYSISFRAMEWORK_ANALYSES_UNSAFEBUFFERUSAGE_UNSAFEBUFFERUSAGETEST_H
diff --git a/clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp b/clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
index ce1ef0b3ba691..dc686c416ac0c 100644
--- a/clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
+++ b/clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
@@ -10,7 +10,6 @@
#include "clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h"
#include "clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h"
#include "clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h"
-#include "clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h"
#include "clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/JSON.h"
@@ -84,25 +83,3 @@ static llvm::Registry<JSONFormat::FormatInfo>::Add<
// NOLINTNEXTLINE(misc-use-internal-linkage)
volatile int UnsafeBufferUsageSSAFJSONFormatAnchorSource = 0;
-
-// For unit test:
-llvm::Expected<std::unique_ptr<EntitySummary>>
-ssaf::serializeDeserializeRoundTrip(
- const UnsafeBufferUsageEntitySummary &S,
- std::function<uint64_t(EntityId)> IdToIntFn,
- std::function<llvm::Expected<EntityId>(uint64_t)> IdFromIntFn) {
-
- auto IdToJson = [&IdToIntFn](EntityId Id) -> Object {
- return Object({{"@", IdToIntFn(Id)}});
- };
- auto IdFromJson =
- [&IdFromIntFn](const Object &O) -> llvm::Expected<EntityId> {
- const auto *Int = O.get("@");
-
- if (Int && Int->getAsUINT64())
- return IdFromIntFn(*Int->getAsUINT64());
- return llvm::createStringError("failed to get EntityId from Object");
- };
-
- return deserializeImpl(serialize(S, IdToJson), IdFromJson);
-}
diff --git a/clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp b/clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
index 465488357e20e..4c51214253cef 100644
--- a/clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
+++ b/clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
@@ -12,7 +12,6 @@
#include "clang/AST/ASTConsumer.h"
#include "clang/Frontend/ASTUnit.h"
#include "clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h"
-#include "clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.h"
#include "clang/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.h"
#include "clang/ScalableStaticAnalysisFramework/Core/Model/EntityId.h"
#include "clang/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.h"
@@ -188,52 +187,6 @@ TEST_F(UnsafeBufferUsageTest, UnsafeBufferUsageEntityPointerLevelSetTest) {
EXPECT_THAT(getSubsetOf(Set, E3), UnorderedElementsAre(P5));
}
-//////////////////////////////////////////////////////////////
-// (De-)Serialization Tests //
-//////////////////////////////////////////////////////////////
-
-TEST_F(UnsafeBufferUsageTest, UnsafeBufferUsageSerializeTest) {
- ASSERT_TRUE(setUpTest(R"cpp(
- void foo(int ***p, int ****q, int x) {
- p[5][5][5];
- q[5][5][5][5];
- }
- )cpp"));
- const auto *Sum = getEntitySummary("foo");
- ASSERT_NE(Sum, nullptr);
- EXPECT_EQ(*Sum, makeSet(__LINE__, {{"p", 1U},
- {"p", 2U},
- {"p", 3U},
- {"q", 1U},
- {"q", 2U},
- {"q", 3U},
- {"q", 4U}}));
-
- std::function<uint64_t(EntityId)> IdToIntFn = [](EntityId Id) -> uint64_t {
- return getIndex(Id);
- };
- std::function<llvm::Expected<EntityId>(uint64_t)> IdFromIntFn =
- [this](uint64_t Int) -> llvm::Expected<EntityId> {
- std::optional<EntityId> Result = std::nullopt;
-
- getIdTable(TUSum).forEach([&Int, &Result](const EntityName &, EntityId Id) {
- if (getIndex(Id) == Int)
- Result = Id;
- });
- if (Result)
- return *Result;
- return llvm::createStringError("failed to convert %d to an EntityId", Int);
- };
-
- auto RoundTripResult =
- serializeDeserializeRoundTrip(*Sum, IdToIntFn, IdFromIntFn);
-
- EXPECT_THAT_ERROR(RoundTripResult.takeError(), llvm::Succeeded());
- ASSERT_NE(*RoundTripResult, nullptr);
- EXPECT_EQ(*Sum, *static_cast<const UnsafeBufferUsageEntitySummary *>(
- RoundTripResult->get()));
-}
-
//////////////////////////////////////////////////////////////
// Extractor Tests //
//////////////////////////////////////////////////////////////
``````````
</details>
https://github.com/llvm/llvm-project/pull/195201
More information about the llvm-branch-commits
mailing list