[PATCH] D51437: [clangd] Report position of opening paren in singature help
Sam McCall via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 30 01:34:27 PDT 2018
sammccall accepted this revision.
sammccall added inline comments.
This revision is now accepted and ready to land.
================
Comment at: clangd/Protocol.h:832
+
+ /// Position of the opening paren of the argument list.
+ /// This is a clangd-specific extension, it is only available via C++ API and
----------------
As noted offline, I misread this as being *inside* the paren - could maybe be more explicit?
```Position of the start of the argument list, including opening paren. e.g.
foo("first arg",
^argListStart ^cursor
```
================
Comment at: unittests/clangd/CodeCompleteTests.cpp:914
+TEST(SignatureHelpTest, OpeningParen) {
+ Annotations Code(R"cpp(
----------------
Hmm, I think this test would be easier to follow if tests 1-5 were written separately - it's hard to spot all the locations and how the code interacts.
As a bonus, no need to mess around with explicit positions and the failure message can just echo the test:
```
for (const char* Test : {
R"cpp(
int foo(int a, b, c);
int main() { foo(foo$p^(foo(10, 10, 10), ^); }
)cpp",
...
}) {
EXPECT_EQ(signatures(Test).argListStart, Annotations(Test).point("p")) << Test;
}
```
Repository:
rCTE Clang Tools Extra
https://reviews.llvm.org/D51437
More information about the cfe-commits
mailing list