From b4000fa956f00634752c1b91fc561c1b7739ecb5 Mon Sep 17 00:00:00 2001 From: Jacob Dufault Date: Wed, 28 Jun 2017 23:34:04 -0700 Subject: [PATCH] Don't show code lens on include/header guards. --- src/command_line.cc | 8 +++++++- src/query.cc | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/command_line.cc b/src/command_line.cc index 71e21f22..4a8c5968 100644 --- a/src/command_line.cc +++ b/src/command_line.cc @@ -2322,7 +2322,13 @@ bool QueryDbMainLoop( if (var->def.is_local && !config->codeLensOnLocalVariables) continue; - AddCodeLens("ref", "refs", &common, ref.loc.OffsetStartColumn(0), var->uses, var->def.definition_spelling, true /*force_display*/); + bool force_display = true; + // Do not show 0 refs on macro with no uses, as it is most likely a + // header guard. + if (var->def.is_macro) + force_display = false; + + AddCodeLens("ref", "refs", &common, ref.loc.OffsetStartColumn(0), var->uses, var->def.definition_spelling, force_display); break; } case SymbolKind::File: diff --git a/src/query.cc b/src/query.cc index 1ed0b5a1..11fc1925 100644 --- a/src/query.cc +++ b/src/query.cc @@ -64,6 +64,7 @@ optional ToQuery(const IdMap& id_map, const IndexVar::Def& result.variable_type = id_map.ToQuery(var.variable_type); result.declaring_type = id_map.ToQuery(var.declaring_type); result.is_local = var.is_local; + result.is_macro = var.is_macro; return result; }