Use FileEntryRef for PPCallbacks::HasInclude

This fixes the issue where a filename dependendency was missing if the file that
was referenced with __has_include() was accessed through a symlink in an earlier run,
if the file manager was reused between runs.

git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@370081 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/clang-tidy/ExpandModularHeadersPPCallbacks.cpp b/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
index 8da3c7e..d200718 100644
--- a/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
+++ b/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
@@ -210,7 +210,7 @@
   parseToLocation(Loc);
 }
 void ExpandModularHeadersPPCallbacks::HasInclude(SourceLocation Loc, StringRef,
-                                                 bool, const FileEntry *,
+                                                 bool, Optional<FileEntryRef>,
                                                  SrcMgr::CharacteristicKind) {
   parseToLocation(Loc);
 }
diff --git a/clang-tidy/ExpandModularHeadersPPCallbacks.h b/clang-tidy/ExpandModularHeadersPPCallbacks.h
index 8602805..30c8236 100644
--- a/clang-tidy/ExpandModularHeadersPPCallbacks.h
+++ b/clang-tidy/ExpandModularHeadersPPCallbacks.h
@@ -83,7 +83,7 @@
   void PragmaDiagnosticPop(SourceLocation Loc, StringRef) override;
   void PragmaDiagnostic(SourceLocation Loc, StringRef, diag::Severity,
                         StringRef) override;
-  void HasInclude(SourceLocation Loc, StringRef, bool, const FileEntry *,
+  void HasInclude(SourceLocation Loc, StringRef, bool, Optional<FileEntryRef> ,
                   SrcMgr::CharacteristicKind) override;
   void PragmaOpenCLExtension(SourceLocation NameLoc, const IdentifierInfo *,
                              SourceLocation StateLoc, unsigned) override;