This is an archive of the discontinued LLVM Phabricator instance.

[clangd] Remove duplicates from code completion
ClosedPublic

Authored by ilya-biryukov on Jan 10 2018, 4:55 AM.

Details

Summary

This patch removes hidden items from code completion.
Hidden items are the ones that are hidden by other items (e.g., by
other items in the child scopes).
This patch addresses a particular problem of a duplicate completion
item for the class in the following example:

struct Adapter { void method(); };
void Adapter::method() {
   Adapter^
}

We should probably investigate if there are other duplicates in
completion and remove them, possibly adding assertions that it never
happens.

Diff Detail

Repository
rL LLVM

Event Timeline

ilya-biryukov created this revision.Jan 10 2018, 4:55 AM
sammccall accepted this revision.Jan 10 2018, 5:32 AM
This revision is now accepted and ready to land.Jan 10 2018, 5:32 AM
This revision was automatically updated to reflect the committed changes.