[clang] [clang][ssaf] Remove `BuildNamespaceKind` (PR #207313)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 2 21:35:02 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang-ssaf
Author: Aviral Goel (aviralg)
<details>
<summary>Changes</summary>
---
Patch is 219.23 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/207313.diff
260 Files Affected:
- (modified) clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h (+3-30)
- (modified) clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def (-1)
- (modified) clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h (-7)
- (modified) clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp (+3-24)
- (modified) clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h (-36)
- (modified) clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp (+1-39)
- (modified) clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h (-13)
- (modified) clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp (-12)
- (modified) clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp (-10)
- (modified) clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp (+1-3)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-array.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-summary.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-no-key.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-bad-edges.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-odd-count.json (-1)
- (modified) clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result.json (-3)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/tu-summary-bad-element.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/tu-summary-bad-ptr-level.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/tu-summary-no-key.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/tu-summary.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/wpa-result-bad-epls.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/wpa-result-odd-count.json (-1)
- (modified) clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/wpa-result.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Inputs/lu-tags-only.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Inputs/lu.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/all.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/both.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/pairs.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/tags.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-lu-empty.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-empty.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-nonempty.json (-5)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-empty.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-nonempty.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-static-library-empty.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-tu-empty.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/invalid-direct-callee-element.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/invalid-direct-callee-id.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-def-col.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-def-file.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-def-line.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-def.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-direct-callees.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-pretty-name.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/Inputs/CallGraph/missing-virtual-callees.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/data-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/data-entry-missing-data.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/data-entry-missing-summary-name.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/data-not-array.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/duplicate-entity-id-in-data-map.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/duplicate-entity.json (+1-6)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/duplicate-summary-name.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-data-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-data-missing-entity-id.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-data-missing-entity-summary.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-id-not-uint64.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-name-missing-namespace.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-name-missing-suffix.json (+1-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/entity-name-missing-usr.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/id-table-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/id-table-entry-id-not-uint64.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/id-table-entry-missing-id.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/id-table-entry-missing-name.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/id-table-not-array.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-duplicate-id.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-entry-id-not-uint64.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-entry-linkage-invalid-type.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-entry-linkage-missing-type.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-entry-missing-id.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-entry-missing-linkage.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-extra-id.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-missing-id.json (+1-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/linkage-table-not-array.json (+1-2)
- (removed) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/lu-namespace-element-invalid-kind.json (-13)
- (removed) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/lu-namespace-element-missing-kind.json (-12)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/lu-namespace-element-missing-name.json (+1-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/lu-namespace-not-array.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/mismatched-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/missing-data.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/missing-id-table.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/missing-linkage-table.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/missing-target-triple.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/missing-type.json (-1)
- (removed) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/namespace-element-invalid-kind.json (-34)
- (removed) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/namespace-element-missing-kind.json (-33)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/namespace-element-missing-name.json (+2-5)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/namespace-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/not-normalized-target-triple.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-element-not-object.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-invalid-first-field.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-invalid-pairs-field-type.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-invalid-second-field.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-missing-first-field.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-missing-pairs-field.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/pairs-missing-second-field.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/read-entity-summary-no-format-info.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-empty-data-entry.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-empty-namespace.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-linkage-external.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-linkage-internal.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-linkage-multiple.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-linkage-none.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-multiple-namespace-elements.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-single-namespace-element.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/Inputs/rt-two-summary-types.json (-6)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/id-table.test (-25)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/permissions.test (+1-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/LUSummary/top-level.test (-19)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/duplicate-target-triple.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-empty-lu-namespace.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-inner-error.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-mismatched-type.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-missing-type.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-namespace-mismatch.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/members-not-array.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/mismatched-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-members.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-empty-members.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-multiple-members.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-nonempty-members.json (-5)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-single-member.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-three-members.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-members-input.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-three-members-input.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/duplicate-target-triple.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-inner-error.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-mismatched-type.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-missing-type.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-namespace-mismatch.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/members-not-array.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/mismatched-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-members.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-type.json (-1)
- (removed) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/namespace-wrong-kind.json (-8)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-empty-members.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-multiple-members.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-nonempty-members.json (-5)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-single-member.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-three-members.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-members-input.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-three-members-input.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/top-level.test (-6)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/duplicate-member.json (-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-inner-error.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-mismatched-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-missing-type.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-triple-mismatch.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/members-not-array.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/mismatched-type.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-members.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-target-triple.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-type.json (-1)
- (removed) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-invalid-kind.json (-9)
- (removed) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-kind.json (-8)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-name.json (+1-3)
- (removed) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-wrong-kind.json (-9)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-normalized-target-triple.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-empty.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-single-member.json (-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json (-4)
- (modified) clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test (+1-22)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/data-element-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/data-entry-missing-data.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/data-entry-missing-summary-name.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/data-not-array.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/duplicate-entity-id-in-data-map.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/duplicate-entity.json (+2-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/duplicate-summary-name.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-data-element-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-data-missing-entity-id.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-data-missing-entity-summary.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-id-not-uint64.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-name-missing-suffix.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/entity-name-missing-usr.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/id-table-element-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/id-table-entry-id-not-uint64.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/id-table-entry-missing-id.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/id-table-entry-missing-name.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/id-table-not-array.json (-1)
- (removed) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/invalid-kind.json (-11)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/linkage-table-duplicate-id.json (+2-3)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/linkage-table-element-not-object.json (-1)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/linkage-table-entry-id-not-uint64.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/linkage-table-entry-linkage-invalid-type.json (+1-2)
- (modified) clang/test/Analysis/Scalable/ssaf-format/TUSummary/Inputs/linkage-table-entry-linkage-missing-type.json (-1)
``````````diff
diff --git a/clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h b/clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
index d503b16bf294c..a11b979c4a550 100644
--- a/clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
+++ b/clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
@@ -27,38 +27,20 @@
namespace clang::ssaf {
-enum class BuildNamespaceKind : unsigned short {
- CompilationUnit,
- LinkUnit,
- StaticLibrary,
- MultiArchStaticLibrary
-};
-
/// Represents a single namespace in the build process.
///
/// A BuildNamespace groups program entities, such as those belonging to a
-/// compilation unit or link unit (e.g., a shared library). Each namespace has a
-/// kind (CompilationUnit or LinkUnit) and a unique identifier name within that
-/// kind.
+/// compilation unit or link unit (e.g., a shared library). Each namespace is
+/// identified by a unique name.
///
/// BuildNamespaces can be composed into NestedBuildNamespace to represent
/// hierarchical namespace structures that model how software is constructed
/// from its components.
class BuildNamespace {
- BuildNamespaceKind Kind;
std::string Name;
- auto asTuple() const { return std::tie(Kind, Name); }
-
public:
- BuildNamespace(BuildNamespaceKind Kind, llvm::StringRef Name)
- : Kind(Kind), Name(Name.str()) {}
-
- /// Creates a BuildNamespace representing a compilation unit.
- ///
- /// \param CompilationId The unique identifier for the compilation unit.
- /// \returns A BuildNamespace with CompilationUnit kind.
- static BuildNamespace makeCompilationUnit(llvm::StringRef CompilationId);
+ explicit BuildNamespace(llvm::StringRef Name) : Name(Name.str()) {}
bool operator==(const BuildNamespace &Other) const;
bool operator!=(const BuildNamespace &Other) const;
@@ -93,14 +75,6 @@ class NestedBuildNamespace {
Namespaces.push_back(N);
}
- /// Creates a NestedBuildNamespace representing a compilation unit.
- ///
- /// \param CompilationId The unique identifier for the compilation unit.
- /// \returns A NestedBuildNamespace containing a single CompilationUnit
- /// BuildNamespace.
- static NestedBuildNamespace
- makeCompilationUnit(llvm::StringRef CompilationId);
-
/// Creates a new NestedBuildNamespace by appending additional namespace.
///
/// \param Namespace The namespace to append.
@@ -124,7 +98,6 @@ class NestedBuildNamespace {
const NestedBuildNamespace &NBN);
};
-llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, BuildNamespaceKind BNK);
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const BuildNamespace &BN);
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS,
const NestedBuildNamespace &NBN);
diff --git a/clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def b/clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
index 33f47f8f9151c..e77d699814d0e 100644
--- a/clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
+++ b/clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
@@ -17,7 +17,6 @@
#define FIELD(CLASS, FIELD_NAME)
#endif
-FIELD(BuildNamespace, Kind)
FIELD(BuildNamespace, Name)
FIELD(EntityId, Index)
FIELD(EntityIdTable, Entities)
diff --git a/clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h b/clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
index e4a7b54033924..b3b9e597dbc74 100644
--- a/clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
+++ b/clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
@@ -46,13 +46,6 @@ template <> struct format_provider<clang::ssaf::EntityLinkage> {
}
};
-template <> struct format_provider<clang::ssaf::BuildNamespaceKind> {
- static void format(clang::ssaf::BuildNamespaceKind Val, raw_ostream &OS,
- StringRef Style) {
- OS << Val;
- }
-};
-
template <> struct format_provider<clang::ssaf::BuildNamespace> {
static void format(const clang::ssaf::BuildNamespace &Val, raw_ostream &OS,
StringRef Style) {
diff --git a/clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp b/clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
index f68ed961f71b9..953af8b12534b 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
+++ b/clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
@@ -7,21 +7,12 @@
//===----------------------------------------------------------------------===//
#include "clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h"
-#include "../ModelStringConversions.h"
#include "llvm/ADT/STLExtras.h"
-#include "llvm/Support/ErrorHandling.h"
-#include <tuple>
namespace clang::ssaf {
-BuildNamespace
-BuildNamespace::makeCompilationUnit(llvm::StringRef CompilationId) {
- return BuildNamespace{BuildNamespaceKind::CompilationUnit,
- CompilationId.str()};
-}
-
bool BuildNamespace::operator==(const BuildNamespace &Other) const {
- return asTuple() == Other.asTuple();
+ return Name == Other.Name;
}
bool BuildNamespace::operator!=(const BuildNamespace &Other) const {
@@ -29,15 +20,7 @@ bool BuildNamespace::operator!=(const BuildNamespace &Other) const {
}
bool BuildNamespace::operator<(const BuildNamespace &Other) const {
- return asTuple() < Other.asTuple();
-}
-
-NestedBuildNamespace
-NestedBuildNamespace::makeCompilationUnit(llvm::StringRef CompilationId) {
- NestedBuildNamespace Result;
- Result.Namespaces.push_back(
- BuildNamespace::makeCompilationUnit(CompilationId));
- return Result;
+ return Name < Other.Name;
}
bool NestedBuildNamespace::empty() const { return Namespaces.empty(); }
@@ -54,12 +37,8 @@ bool NestedBuildNamespace::operator<(const NestedBuildNamespace &Other) const {
return Namespaces < Other.Namespaces;
}
-llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, BuildNamespaceKind BNK) {
- return OS << buildNamespaceKindToString(BNK);
-}
-
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const BuildNamespace &BN) {
- return OS << "BuildNamespace(" << BN.Kind << ", " << BN.Name << ")";
+ return OS << "BuildNamespace(" << BN.Name << ")";
}
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS,
diff --git a/clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h b/clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
index 9a4392bd72990..03f76211e8cea 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
+++ b/clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
@@ -16,7 +16,6 @@
#ifndef LLVM_CLANG_LIB_ScalableStaticAnalysis_CORE_MODELSTRINGCONVERSIONS_H
#define LLVM_CLANG_LIB_ScalableStaticAnalysis_CORE_MODELSTRINGCONVERSIONS_H
-#include "clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h"
#include "clang/ScalableStaticAnalysis/Core/Model/EntityLinkage.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/ErrorHandling.h"
@@ -24,41 +23,6 @@
namespace clang::ssaf {
-//===----------------------------------------------------------------------===//
-// BuildNamespaceKind
-//===----------------------------------------------------------------------===//
-
-/// Returns the canonical string representation of \p BNK used for
-/// serialization and display (e.g. "CompilationUnit", "LinkUnit").
-inline llvm::StringRef buildNamespaceKindToString(BuildNamespaceKind BNK) {
- switch (BNK) {
- case BuildNamespaceKind::CompilationUnit:
- return "CompilationUnit";
- case BuildNamespaceKind::LinkUnit:
- return "LinkUnit";
- case BuildNamespaceKind::StaticLibrary:
- return "StaticLibrary";
- case BuildNamespaceKind::MultiArchStaticLibrary:
- return "MultiArchStaticLibrary";
- }
- llvm_unreachable("Unhandled BuildNamespaceKind variant");
-}
-
-/// Parses a string produced by buildNamespaceKindToString(). Returns
-/// std::nullopt if \p Str does not match any known BuildNamespaceKind value.
-inline std::optional<BuildNamespaceKind>
-buildNamespaceKindFromString(llvm::StringRef Str) {
- if (Str == "CompilationUnit")
- return BuildNamespaceKind::CompilationUnit;
- if (Str == "LinkUnit")
- return BuildNamespaceKind::LinkUnit;
- if (Str == "StaticLibrary")
- return BuildNamespaceKind::StaticLibrary;
- if (Str == "MultiArchStaticLibrary")
- return BuildNamespaceKind::MultiArchStaticLibrary;
- return std::nullopt;
-}
-
//===----------------------------------------------------------------------===//
// EntityLinkageType
//===----------------------------------------------------------------------===//
diff --git a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
index f935761b3c476..95226bef38b97 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
+++ b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
@@ -235,49 +235,12 @@ Object JSONFormat::entityIdToJSONObject(EntityId EI) {
return Result;
}
-//----------------------------------------------------------------------------
-// BuildNamespaceKind
-//----------------------------------------------------------------------------
-
-llvm::Expected<BuildNamespaceKind>
-buildNamespaceKindFromJSON(llvm::StringRef BuildNamespaceKindStr) {
- auto OptBuildNamespaceKind =
- buildNamespaceKindFromString(BuildNamespaceKindStr);
- if (!OptBuildNamespaceKind) {
- return ErrorBuilder::create(std::errc::invalid_argument,
- ErrorMessages::InvalidBuildNamespaceKind,
- BuildNamespaceKindStr)
- .build();
- }
- return *OptBuildNamespaceKind;
-}
-
-// Provided for consistency with respect to rest of the codebase.
-llvm::StringRef buildNamespaceKindToJSON(BuildNamespaceKind BNK) {
- return buildNamespaceKindToString(BNK);
-}
-
//----------------------------------------------------------------------------
// BuildNamespace
//----------------------------------------------------------------------------
llvm::Expected<BuildNamespace>
JSONFormat::buildNamespaceFromJSON(const Object &BuildNamespaceObject) const {
- auto OptBuildNamespaceKindStr = BuildNamespaceObject.getString("kind");
- if (!OptBuildNamespaceKindStr) {
- return ErrorBuilder::create(std::errc::invalid_argument,
- ErrorMessages::FailedToReadObjectAtField,
- "BuildNamespaceKind", "kind", "string")
- .build();
- }
-
- auto ExpectedKind = buildNamespaceKindFromJSON(*OptBuildNamespaceKindStr);
- if (!ExpectedKind) {
- return ErrorBuilder::wrap(ExpectedKind.takeError())
- .context(ErrorMessages::ReadingFromField, "BuildNamespaceKind", "kind")
- .build();
- }
-
auto OptNameStr = BuildNamespaceObject.getString("name");
if (!OptNameStr) {
return ErrorBuilder::create(std::errc::invalid_argument,
@@ -286,12 +249,11 @@ JSONFormat::buildNamespaceFromJSON(const Object &BuildNamespaceObject) const {
.build();
}
- return {BuildNamespace(*ExpectedKind, *OptNameStr)};
+ return {BuildNamespace(*OptNameStr)};
}
Object JSONFormat::buildNamespaceToJSON(const BuildNamespace &BN) const {
Object Result;
- Result["kind"] = buildNamespaceKindToJSON(getKind(BN));
Result["name"] = getName(BN);
return Result;
}
diff --git a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
index b17f296eda1b4..cd3643982dac2 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
+++ b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
@@ -108,9 +108,6 @@ inline constexpr const char
*FailedToSerializeEntitySummaryMismatchedSummaryName =
"JSONFormat - EntitySummary data for '{0}' reports mismatched '{1}'";
-inline constexpr const char *InvalidBuildNamespaceKind =
- "invalid BuildNamespaceKind value '{0}' for field 'kind'";
-
inline constexpr const char *InvalidEntityLinkageType =
"invalid EntityLinkageType value '{0}' for field 'type'";
@@ -200,16 +197,6 @@ llvm::StringRef summaryNameToJSON(const SummaryName &SN);
AnalysisName analysisNameFromJSON(llvm::StringRef AnalysisNameStr);
llvm::StringRef analysisNameToJSON(const AnalysisName &AN);
-//----------------------------------------------------------------------------
-// BuildNamespaceKind helpers
-//----------------------------------------------------------------------------
-
-llvm::Expected<BuildNamespaceKind>
-buildNamespaceKindFromJSON(llvm::StringRef BuildNamespaceKindStr);
-
-// Provided for consistency with respect to rest of the codebase.
-llvm::StringRef buildNamespaceKindToJSON(BuildNamespaceKind BNK);
-
//----------------------------------------------------------------------------
// EntityLinkageType helpers
//----------------------------------------------------------------------------
diff --git a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp
index e8971a2f34be3..cfa84dbdcf883 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp
+++ b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp
@@ -70,18 +70,6 @@ JSONFormat::readMultiArchStaticLibraryFromObject(const Object &RootObject) {
.build();
}
- if (getKind(*ExpectedNamespace) !=
- BuildNamespaceKind::MultiArchStaticLibrary) {
- return ErrorBuilder::create(
- std::errc::invalid_argument,
- ErrorMessages::MismatchedSummaryType,
- buildNamespaceKindToJSON(
- BuildNamespaceKind::MultiArchStaticLibrary),
- "namespace.kind",
- buildNamespaceKindToJSON(getKind(*ExpectedNamespace)))
- .build();
- }
-
const Array *MembersArray = RootObject.getArray("members");
if (!MembersArray) {
return ErrorBuilder::create(std::errc::invalid_argument,
diff --git a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
index d4538d19aed24..7786c58fa7c04 100644
--- a/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
+++ b/clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
@@ -86,16 +86,6 @@ JSONFormat::readStaticLibraryFromObject(const Object &RootObject) {
.build();
}
- if (getKind(*ExpectedNamespace) != BuildNamespaceKind::StaticLibrary) {
- return ErrorBuilder::create(
- std::errc::invalid_argument,
- ErrorMessages::MismatchedSummaryType,
- buildNamespaceKindToJSON(BuildNamespaceKind::StaticLibrary),
- "namespace.kind",
- buildNamespaceKindToJSON(getKind(*ExpectedNamespace)))
- .build();
- }
-
StaticLibrary S(std::move(T), std::move(*ExpectedNamespace));
const Array *MembersArray = RootObject.getArray("members");
diff --git a/clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp b/clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
index bb4caef8f99ab..5c017ebca5d2c 100644
--- a/clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
+++ b/clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
@@ -141,9 +141,7 @@ TUSummaryRunner::TUSummaryRunner(llvm::Triple TargetTriple,
std::unique_ptr<SerializationFormat> Format,
const SSAFOptions &Opts)
: MultiplexConsumer(std::vector<std::unique_ptr<ASTConsumer>>{}),
- Summary(std::move(TargetTriple),
- BuildNamespace(BuildNamespaceKind::CompilationUnit,
- Opts.CompilationUnitId)),
+ Summary(std::move(TargetTriple), BuildNamespace(Opts.CompilationUnitId)),
Opts(Opts), Format(std::move(Format)) {
assert(this->Format);
assert(!Opts.CompilationUnitId.empty());
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-array.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-array.json
index 282917559e5b5..adbc21b787283 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-array.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-array.json
@@ -82,7 +82,6 @@
}
],
"tu_namespace": {
- "kind": "CompilationUnit",
"name": "Mock.cpp"
},
"target_triple": "arm64-apple-macosx",
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-summary.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-summary.json
index c2c5e119ca330..1e1823ae8ba92 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-summary.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-bad-summary.json
@@ -59,7 +59,6 @@
}
],
"tu_namespace": {
- "kind": "CompilationUnit",
"name": "Mock.cpp"
},
"target_triple": "arm64-apple-macosx",
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-no-key.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-no-key.json
index 14c654f8b7c14..506fd25759af4 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-no-key.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary-no-key.json
@@ -88,7 +88,6 @@
}
],
"tu_namespace": {
- "kind": "CompilationUnit",
"name": "Mock.cpp"
},
"target_triple": "arm64-apple-macosx",
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary.json
index 9b0b4575e2f61..e9179fd5843f3 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/tu-summary.json
@@ -86,7 +86,6 @@
],
"target_triple": "arm64-apple-macosx",
"tu_namespace": {
- "kind": "CompilationUnit",
"name": "Mock.cpp"
},
"type": "TUSummary"
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-bad-edges.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-bad-edges.json
index 85d68e0b5f1d0..381a2bb7d490a 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-bad-edges.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-bad-edges.json
@@ -5,7 +5,6 @@
"name": {
"namespace": [
{
- "kind": "LinkUnit",
"name": "test.exe"
}
],
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-odd-count.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-odd-count.json
index 391926df77dcb..f16c948422626 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-odd-count.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result-odd-count.json
@@ -5,7 +5,6 @@
"name": {
"namespace": [
{
- "kind": "LinkUnit",
"name": "test.exe"
}
],
diff --git a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result.json b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result.json
index 2d28f8697d339..575184b82b58c 100644
--- a/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result.json
+++ b/clang/test/Analysis/Scalable/PointerFlow/Inputs/wpa-result.json
@@ -5,7 +5,6 @@
"name": {
"namespace": [
{
- "kind": "LinkUnit",
"name": "test.exe"
}
],
@@ -18,7 +17,6 @@
"name": {
"namespace": [
{
- "kind": "LinkUnit",
"name": "test.exe"
}
],
@@ -31,7 +29,6 @@
"name": {
"namespace": [
{
- "kind": "LinkUnit",
"name": "test.exe"
}
],
diff --git a/clang/test/Analysis/Scalable/UnsafeBufferUsage/Inputs/tu-summa...
[truncated]
``````````
</details>
https://github.com/llvm/llvm-project/pull/207313
More information about the cfe-commits
mailing list