[clangd] Quality fixes (uninit var, missing debug output, pattern decl CCRs).
llvm-svn: 334032
diff --git a/clang-tools-extra/clangd/Quality.cpp b/clang-tools-extra/clangd/Quality.cpp
index 9ac9955..9ec01b2 100644
--- a/clang-tools-extra/clangd/Quality.cpp
+++ b/clang-tools-extra/clangd/Quality.cpp
@@ -69,7 +69,7 @@
static SymbolRelevanceSignals::AccessibleScope
ComputeScope(const NamedDecl &D) {
- bool InClass;
+ bool InClass = true;
for (const DeclContext *DC = D.getDeclContext(); !DC->isFileContext();
DC = DC->getParent()) {
if (DC->isFunctionOrMethod())
@@ -103,7 +103,7 @@
}
// Declarations are scoped, others (like macros) are assumed global.
- if (SemaCCResult.Kind == CodeCompletionResult::RK_Declaration)
+ if (SemaCCResult.Declaration)
Scope = std::min(Scope, ComputeScope(*SemaCCResult.Declaration));
}
@@ -142,6 +142,9 @@
OS << formatv("=== Symbol relevance: {0}\n", S.evaluate());
OS << formatv("\tName match: {0}\n", S.NameMatch);
OS << formatv("\tForbidden: {0}\n", S.Forbidden);
+ OS << formatv("\tProximity: {0}\n", S.ProximityScore);
+ OS << formatv("\tQuery type: {0}\n", static_cast<int>(S.Query));
+ OS << formatv("\tScope: {0}\n", static_cast<int>(S.Scope));
return OS;
}