Skip to content

Commit e08005e

Browse files
committed
rebase updates
1 parent caf4482 commit e08005e

File tree

2 files changed

+35
-16
lines changed

2 files changed

+35
-16
lines changed

clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3277,7 +3277,7 @@ TEST(SignatureHelpTest, SkipExplicitObjectParameter) {
32773277
A a {};
32783278
a.foo($c1^);
32793279
(&A::bar)($c2^);
3280-
// TODO: (&A::foo)(^c3)
3280+
(&A::foo)($c3^);
32813281
}
32823282
)cpp");
32833283

@@ -3294,18 +3294,27 @@ TEST(SignatureHelpTest, SkipExplicitObjectParameter) {
32943294
const auto Result = signatureHelp(testPath(TU.Filename), Code.point("c1"),
32953295
*Preamble, Inputs, MarkupKind::PlainText);
32963296

3297-
EXPECT_EQ(1, Result.signatures.size());
3297+
EXPECT_EQ(1U, Result.signatures.size());
32983298

32993299
EXPECT_THAT(Result.signatures[0], AllOf(sig("foo([[int arg]]) -> void")));
33003300
}
33013301
{
33023302
const auto Result = signatureHelp(testPath(TU.Filename), Code.point("c2"),
33033303
*Preamble, Inputs, MarkupKind::PlainText);
33043304

3305-
EXPECT_EQ(1, Result.signatures.size());
3305+
EXPECT_EQ(1U, Result.signatures.size());
33063306

33073307
EXPECT_THAT(Result.signatures[0], AllOf(sig("([[A]], [[int]]) -> void")));
33083308
}
3309+
{
3310+
const auto Result = signatureHelp(testPath(TU.Filename), Code.point("c3"),
3311+
*Preamble, Inputs, MarkupKind::PlainText);
3312+
// TODO: We expect 1 signature here
3313+
// EXPECT_EQ(1U, Result.signatures.size());
3314+
3315+
// EXPECT_THAT(Result.signatures[0], AllOf(sig("([[A]], [[int]]) ->
3316+
// void")));
3317+
}
33093318
}
33103319

33113320
TEST(CompletionTest, IncludedCompletionKinds) {
@@ -4415,9 +4424,9 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44154424
44164425
int main() {
44174426
A a {};
4418-
a.$c1^s
4427+
a.$c1^
44194428
(&A::ba$c2^;
4420-
// TODO: (&A::fo$c3^
4429+
(&A::fo$c3^;
44214430
}
44224431
)cpp");
44234432

@@ -4435,11 +4444,11 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44354444
auto Result = codeComplete(testPath(TU.Filename), Code.point("c1"),
44364445
Preamble.get(), Inputs, Opts);
44374446

4438-
EXPECT_THAT(Result.Completions,
4439-
UnorderedElementsAre(AllOf(named("foo"), signature("(int arg)"),
4440-
snippetSuffix("(${1:int arg})")),
4441-
AllOf(named("bar"), signature("(int arg)"),
4442-
snippetSuffix("(${1:int arg})"))));
4447+
EXPECT_THAT(
4448+
Result.Completions,
4449+
UnorderedElementsAre(
4450+
AllOf(named("foo"), signature("(int arg)"), snippetSuffix("")),
4451+
AllOf(named("bar"), signature("(int arg)"), snippetSuffix(""))));
44434452
}
44444453
{
44454454
auto Result = codeComplete(testPath(TU.Filename), Code.point("c2"),
@@ -4449,6 +4458,14 @@ TEST(CompletionTest, SkipExplicitObjectParameter) {
44494458
ElementsAre(AllOf(named("bar"), signature("(int arg)"),
44504459
snippetSuffix(""))));
44514460
}
4461+
{
4462+
auto Result = codeComplete(testPath(TU.Filename), Code.point("c3"),
4463+
Preamble.get(), Inputs, Opts);
4464+
EXPECT_THAT(
4465+
Result.Completions,
4466+
ElementsAre(AllOf(named("foo"), signature("<class self:auto>(int arg)"),
4467+
snippetSuffix("<${1:class self:auto}>"))));
4468+
}
44524469
}
44534470
} // namespace
44544471
} // namespace clangd

clang/test/CodeCompletion/skip-explicit-object-parameter.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,17 @@ int func2() {
2828
// CHECK-CC2: OVERLOAD: [#void#]foo(int arg)
2929

3030
int func3() {
31-
// TODO: (&A::foo)
31+
(&A::foo)
3232
(&A::bar)
3333
}
34-
// RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:%(line-2):10 -std=c++23 %s | FileCheck -check-prefix=CHECK-CC3 %s
35-
// CHECK-CC3: COMPLETION: bar : [#void#]bar(<#int arg#>)
34+
// RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:%(line-3):10 -std=c++23 %s | FileCheck -check-prefix=CHECK-CC3 %s
35+
// CHECK-CC3: COMPLETION: foo : [#void#]foo<<#class self:auto#>>(<#int arg#>)
36+
// RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:%(line-4):10 -std=c++23 %s | FileCheck -check-prefix=CHECK-CC4 %s
37+
// CHECK-CC4: COMPLETION: bar : [#void#]bar(<#int arg#>)
3638

3739
int func4() {
38-
// TODO: (&A::foo)(
40+
// TODO (&A::foo)(
3941
(&A::bar)(
4042
}
41-
// RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:%(line-2):13 -std=c++23 %s | FileCheck -check-prefix=CHECK-CC4 %s
42-
// CHECK-CC4: OVERLOAD: [#void#](<#A#>, int)
43+
// RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:%(line-2):13 -std=c++23 %s | FileCheck -check-prefix=CHECK-CC5 %s
44+
// CHECK-CC5: OVERLOAD: [#void#](<#A#>, int)

0 commit comments

Comments
 (0)