[clang-tools-extra] Symbol tags in SymbolInformation, WorkspaceSymbol, CallHierarchyItem and TypeHierarchyItem (PR #170103)
Dimitri Ratz via cfe-commits
cfe-commits at lists.llvm.org
Mon Mar 30 03:49:59 PDT 2026
================
@@ -208,21 +266,103 @@ SymbolTags computeSymbolTags(const NamedDecl &ND) {
return Result;
}
+// Filter symbol tags based on the presence of other tags and the kind of
+// symbol. This is needed to avoid redundant tags.
+SymbolTags filterSymbolTags(const NamedDecl &ND, const SymbolTags ST) {
----------------
ratzdi wrote:
It is not always advisable to pass on the calculated symbol tags directly. For example, `void foo() final {}` would have, among others, the tags `virtual` and `overrides`. These two can be correctly reduced to a single symbol tag.
https://github.com/llvm/llvm-project/pull/170103
More information about the cfe-commits
mailing list