[clang-tools-extra] [clangd] Fix unittests in TargetDeclTest bucket (PR #89630)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 22 10:00:38 PDT 2024
https://github.com/zibi2 created https://github.com/llvm/llvm-project/pull/89630
This PR fixes the build errors for one of the `clangd` unit tests bucket similar to the following:
```
.../clang-tools-extra/clangd/unittests/FindTargetTests.cpp:430:29: error: passing no argument for the '...' parameter of a variadic macro is a C++20 extension [-Werror,-Wc++20-extensions]
430 | EXPECT_DECLS("AutoTypeLoc");
| ^
.../clang-tools-extra/clangd/unittests/FindTargetTests.cpp:98:9: note: macro 'EXPECT_DECLS' defined here
98 | #define EXPECT_DECLS(NodeType, ...) \
| ^
```
This happens when using a build compiler with #84520. The fix is to include commas to compensate for empty vararg macro arguments in a few instances.
>From 69c889cbc4f21194b038ea8908a412ac6ec85ea0 Mon Sep 17 00:00:00 2001
From: Zibi Sarbinowski <zibi at ca.ibm.com>
Date: Mon, 22 Apr 2024 11:41:43 -0500
Subject: [PATCH] Fix clangd unittests in TargetDeclTest bucket
---
.../clangd/unittests/FindTargetTests.cpp | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/clang-tools-extra/clangd/unittests/FindTargetTests.cpp b/clang-tools-extra/clangd/unittests/FindTargetTests.cpp
index 0af6036734ba53..f260deec537e72 100644
--- a/clang-tools-extra/clangd/unittests/FindTargetTests.cpp
+++ b/clang-tools-extra/clangd/unittests/FindTargetTests.cpp
@@ -427,7 +427,7 @@ TEST_F(TargetDeclTest, Types) {
[[auto]] X = S{};
)cpp";
// FIXME: deduced type missing in AST. https://llvm.org/PR42914
- EXPECT_DECLS("AutoTypeLoc");
+ EXPECT_DECLS("AutoTypeLoc",);
Code = R"cpp(
template <typename... E>
@@ -727,13 +727,13 @@ TEST_F(TargetDeclTest, BuiltinTemplates) {
template <class T, int N>
using make_integer_sequence = [[__make_integer_seq]]<integer_sequence, T, N>;
)cpp";
- EXPECT_DECLS("TemplateSpecializationTypeLoc");
+ EXPECT_DECLS("TemplateSpecializationTypeLoc",);
Code = R"cpp(
template <int N, class... Pack>
using type_pack_element = [[__type_pack_element]]<N, Pack...>;
)cpp";
- EXPECT_DECLS("TemplateSpecializationTypeLoc");
+ EXPECT_DECLS("TemplateSpecializationTypeLoc",);
}
TEST_F(TargetDeclTest, MemberOfTemplate) {
@@ -1018,7 +1018,7 @@ TEST_F(TargetDeclTest, DependentTypes) {
typedef typename waldo<N - 1>::type::[[next]] type;
};
)cpp";
- EXPECT_DECLS("DependentNameTypeLoc");
+ EXPECT_DECLS("DependentNameTypeLoc",);
// Similar to above but using mutually recursive templates.
Code = R"cpp(
@@ -1035,7 +1035,7 @@ TEST_F(TargetDeclTest, DependentTypes) {
using type = typename even<N - 1>::type::[[next]];
};
)cpp";
- EXPECT_DECLS("DependentNameTypeLoc");
+ EXPECT_DECLS("DependentNameTypeLoc",);
}
TEST_F(TargetDeclTest, TypedefCascade) {
@@ -1263,14 +1263,14 @@ TEST_F(TargetDeclTest, ObjC) {
+ ([[id]])sharedInstance;
@end
)cpp";
- EXPECT_DECLS("TypedefTypeLoc");
+ EXPECT_DECLS("TypedefTypeLoc",);
Code = R"cpp(
@interface Foo
+ ([[instancetype]])sharedInstance;
@end
)cpp";
- EXPECT_DECLS("TypedefTypeLoc");
+ EXPECT_DECLS("TypedefTypeLoc",);
}
class FindExplicitReferencesTest : public ::testing::Test {
More information about the cfe-commits
mailing list