[llvm] [FileCheck] Inline destructor to avoid missing symbol with hidden visibility (PR #225978)
Tom Stellard via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 29 14:48:25 PDT 2026
https://github.com/tstellar updated https://github.com/llvm/llvm-project/pull/225978
>From a1f1b09fb3bf37f752c94dd52e47dadee05882b2 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Wed, 23 Sep 2026 23:46:41 +0000
Subject: [PATCH 1/5] [FileCheck] Add missing export to symbol used in test
---
llvm/lib/FileCheck/FileCheck.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/lib/FileCheck/FileCheck.cpp b/llvm/lib/FileCheck/FileCheck.cpp
index 9889f5d68a52f..f01f714268d1c 100644
--- a/llvm/lib/FileCheck/FileCheck.cpp
+++ b/llvm/lib/FileCheck/FileCheck.cpp
@@ -1525,7 +1525,7 @@ StringRef FileCheck::CanonicalizeFile(MemoryBuffer &MB,
FileCheckDiag::~FileCheckDiag() {}
MatchResultDiag::~MatchResultDiag() {}
-MatchNoteDiag::~MatchNoteDiag() {}
+LLVM_ABI_FOR_TEST MatchNoteDiag::~MatchNoteDiag() {}
static bool IsPartOfWord(char c) {
return (isAlnum(c) || c == '-' || c == '_');
>From e431a9362290a70d72c362706c5c2907703a870b Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 24 Sep 2026 22:12:21 +0000
Subject: [PATCH 2/5] Fix
---
llvm/include/llvm/FileCheck/FileCheck.h | 2 ++
llvm/lib/FileCheck/FileCheck.cpp | 1 -
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/llvm/include/llvm/FileCheck/FileCheck.h b/llvm/include/llvm/FileCheck/FileCheck.h
index 61486567c403b..f09c5d82253ca 100644
--- a/llvm/include/llvm/FileCheck/FileCheck.h
+++ b/llvm/include/llvm/FileCheck/FileCheck.h
@@ -322,6 +322,8 @@ class MatchNoteDiag : public FileCheckDiag {
}
};
+inline MatchNoteDiag::~MatchNoteDiag() {}
+
/// \c MatchNoteDiag for a fuzzy match that serves as a suggestion for the next
/// intended match for an expected pattern with too few or no good matches.
class MatchFuzzyDiag : public MatchNoteDiag {
diff --git a/llvm/lib/FileCheck/FileCheck.cpp b/llvm/lib/FileCheck/FileCheck.cpp
index f01f714268d1c..22198d2b68451 100644
--- a/llvm/lib/FileCheck/FileCheck.cpp
+++ b/llvm/lib/FileCheck/FileCheck.cpp
@@ -1525,7 +1525,6 @@ StringRef FileCheck::CanonicalizeFile(MemoryBuffer &MB,
FileCheckDiag::~FileCheckDiag() {}
MatchResultDiag::~MatchResultDiag() {}
-LLVM_ABI_FOR_TEST MatchNoteDiag::~MatchNoteDiag() {}
static bool IsPartOfWord(char c) {
return (isAlnum(c) || c == '-' || c == '_');
>From 021ca4d2863d568fbd287d6cb8de16a5650c4a55 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 24 Sep 2026 22:20:59 +0000
Subject: [PATCH 3/5] Revert "Fix"
This reverts commit e431a9362290a70d72c362706c5c2907703a870b.
---
llvm/include/llvm/FileCheck/FileCheck.h | 2 --
llvm/lib/FileCheck/FileCheck.cpp | 1 +
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/llvm/include/llvm/FileCheck/FileCheck.h b/llvm/include/llvm/FileCheck/FileCheck.h
index f09c5d82253ca..61486567c403b 100644
--- a/llvm/include/llvm/FileCheck/FileCheck.h
+++ b/llvm/include/llvm/FileCheck/FileCheck.h
@@ -322,8 +322,6 @@ class MatchNoteDiag : public FileCheckDiag {
}
};
-inline MatchNoteDiag::~MatchNoteDiag() {}
-
/// \c MatchNoteDiag for a fuzzy match that serves as a suggestion for the next
/// intended match for an expected pattern with too few or no good matches.
class MatchFuzzyDiag : public MatchNoteDiag {
diff --git a/llvm/lib/FileCheck/FileCheck.cpp b/llvm/lib/FileCheck/FileCheck.cpp
index 22198d2b68451..f01f714268d1c 100644
--- a/llvm/lib/FileCheck/FileCheck.cpp
+++ b/llvm/lib/FileCheck/FileCheck.cpp
@@ -1525,6 +1525,7 @@ StringRef FileCheck::CanonicalizeFile(MemoryBuffer &MB,
FileCheckDiag::~FileCheckDiag() {}
MatchResultDiag::~MatchResultDiag() {}
+LLVM_ABI_FOR_TEST MatchNoteDiag::~MatchNoteDiag() {}
static bool IsPartOfWord(char c) {
return (isAlnum(c) || c == '-' || c == '_');
>From 81a7257700a71999acdf0c1746c0809e27b9e066 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Thu, 24 Sep 2026 22:12:21 +0000
Subject: [PATCH 4/5] Fix
---
llvm/include/llvm/FileCheck/FileCheck.h | 2 ++
llvm/lib/FileCheck/FileCheck.cpp | 1 -
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/llvm/include/llvm/FileCheck/FileCheck.h b/llvm/include/llvm/FileCheck/FileCheck.h
index 61486567c403b..f09c5d82253ca 100644
--- a/llvm/include/llvm/FileCheck/FileCheck.h
+++ b/llvm/include/llvm/FileCheck/FileCheck.h
@@ -322,6 +322,8 @@ class MatchNoteDiag : public FileCheckDiag {
}
};
+inline MatchNoteDiag::~MatchNoteDiag() {}
+
/// \c MatchNoteDiag for a fuzzy match that serves as a suggestion for the next
/// intended match for an expected pattern with too few or no good matches.
class MatchFuzzyDiag : public MatchNoteDiag {
diff --git a/llvm/lib/FileCheck/FileCheck.cpp b/llvm/lib/FileCheck/FileCheck.cpp
index f01f714268d1c..22198d2b68451 100644
--- a/llvm/lib/FileCheck/FileCheck.cpp
+++ b/llvm/lib/FileCheck/FileCheck.cpp
@@ -1525,7 +1525,6 @@ StringRef FileCheck::CanonicalizeFile(MemoryBuffer &MB,
FileCheckDiag::~FileCheckDiag() {}
MatchResultDiag::~MatchResultDiag() {}
-LLVM_ABI_FOR_TEST MatchNoteDiag::~MatchNoteDiag() {}
static bool IsPartOfWord(char c) {
return (isAlnum(c) || c == '-' || c == '_');
>From 1a7453188a8ba930e3f936a46f956df1f04b5ad8 Mon Sep 17 00:00:00 2001
From: Tom Stellard <tstellar at redhat.com>
Date: Tue, 29 Sep 2026 21:42:34 +0000
Subject: [PATCH 5/5] Move more destructors
---
llvm/include/llvm/FileCheck/FileCheck.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/llvm/include/llvm/FileCheck/FileCheck.h b/llvm/include/llvm/FileCheck/FileCheck.h
index f09c5d82253ca..730b5f8b6846f 100644
--- a/llvm/include/llvm/FileCheck/FileCheck.h
+++ b/llvm/include/llvm/FileCheck/FileCheck.h
@@ -322,6 +322,8 @@ class MatchNoteDiag : public FileCheckDiag {
}
};
+inline FileCheckDiag::~FileCheckDiag() {}
+inline MatchResultDiag::~MatchResultDiag() {}
inline MatchNoteDiag::~MatchNoteDiag() {}
/// \c MatchNoteDiag for a fuzzy match that serves as a suggestion for the next
More information about the llvm-commits
mailing list