Author: Christian Kandeler Date: 2021-08-13T00:18:15+02:00 New Revision: 6b28835b3754aa3b795e7684b3e7f465b516f753
URL: https://github.com/llvm/llvm-project/commit/6b28835b3754aa3b795e7684b3e7f465b516f753 DIFF: https://github.com/llvm/llvm-project/commit/6b28835b3754aa3b795e7684b3e7f465b516f753.diff LOG: clangd: Make documentation property of completion items more similar ... to the one of signature hints. In particular, completion items now also carry annotations, which client code might be interested in. Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D107365 Added: Modified: clang-tools-extra/clangd/CodeComplete.cpp clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp Removed: ################################################################################ diff --git a/clang-tools-extra/clangd/CodeComplete.cpp b/clang-tools-extra/clangd/CodeComplete.cpp index 593426127aa2..abaedff82686 100644 --- a/clang-tools-extra/clangd/CodeComplete.cpp +++ b/clang-tools-extra/clangd/CodeComplete.cpp @@ -403,8 +403,9 @@ struct CodeCompletionBuilder { if (C.IndexResult) { SetDoc(C.IndexResult->Documentation); } else if (C.SemaResult) { - SetDoc(getDocComment(*ASTCtx, *C.SemaResult, - /*CommentsFromHeader=*/false)); + const auto DocComment = getDocComment(*ASTCtx, *C.SemaResult, + /*CommentsFromHeader=*/false); + SetDoc(formatDocumentation(*SemaCCS, DocComment)); } } if (Completion.Deprecated) { diff --git a/clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp b/clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp index 3170099b437b..e37b65a9d4b8 100644 --- a/clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp +++ b/clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp @@ -907,7 +907,7 @@ TEST(CompletionTest, Documentation) { auto Results = completions( R"cpp( // Non-doxygen comment. - int foo(); + __attribute__((annotate("custom_annotation"))) int foo(); /// Doxygen comment. /// \param int a int bar(int a); @@ -919,7 +919,8 @@ TEST(CompletionTest, Documentation) { int x = ^ )cpp"); EXPECT_THAT(Results.Completions, - Contains(AllOf(Named("foo"), Doc("Non-doxygen comment.")))); + Contains(AllOf(Named("foo"), + Doc("Annotation: custom_annotation\nNon-doxygen comment.")))); EXPECT_THAT( Results.Completions, Contains(AllOf(Named("bar"), Doc("Doxygen comment.\n\\param int a")))); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits