diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -9615,6 +9615,7 @@ } } + const StringRef &Dirname = llvm::sys::path::filename(Dir); std::error_code EC; unsigned Count = 0; for (auto It = FS.dir_begin(Dir, EC); @@ -9648,7 +9649,9 @@ if (!(Filename.endswith_insensitive(".h") || Filename.endswith_insensitive(".hh") || Filename.endswith_insensitive(".hpp") || - Filename.endswith_insensitive(".inc"))) + Filename.endswith_insensitive(".inc") || + Dirname == "Headers" || + Dirname.startswith("Qt") || Dirname == "ActiveQt")) break; } AddCompletion(Filename, /*IsDirectory=*/false);