From 9ef53ceb51939e1191a18d6f77ba3fea19e25335 Mon Sep 17 00:00:00 2001 From: Argyrios Kyrtzidis Date: Wed, 9 Apr 2014 18:21:23 +0000 Subject: [Preprocessor/CodeComplete] Don't add include guard macros to code-completion results. llvm-svn: 205917 --- clang/lib/Sema/SemaCodeComplete.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'clang/lib/Sema/SemaCodeComplete.cpp') diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp index d44c04b4809..38f7967f9f8 100644 --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -2987,11 +2987,16 @@ static void AddMacroResults(Preprocessor &PP, ResultBuilder &Results, for (Preprocessor::macro_iterator M = PP.macro_begin(), MEnd = PP.macro_end(); M != MEnd; ++M) { - if (IncludeUndefined || M->first->hasMacroDefinition()) + if (IncludeUndefined || M->first->hasMacroDefinition()) { + if (MacroInfo *MI = M->second->getMacroInfo()) + if (MI->isUsedForHeaderGuard()) + continue; + Results.AddResult(Result(M->first, getMacroUsagePriority(M->first->getName(), PP.getLangOpts(), TargetTypeIsPointer))); + } } Results.ExitScope(); -- cgit v1.2.3