///
/// This routine involves a system call, and therefore should only be used
/// in non-performance-critical code.
-static Optional<uint64_t> getActualFileUID(const FileEntry *File) {
+static Optional<llvm::sys::fs::UniqueID>
+getActualFileUID(const FileEntry *File) {
if (!File)
return None;
- uint64_t ID;
+ llvm::sys::fs::UniqueID ID;
if (llvm::sys::fs::getUniqueID(File->getName(), ID))
return None;
// First, check the main file ID, since it is common to look for a
// location in the main file.
- Optional<uint64_t> SourceFileUID;
+ Optional<llvm::sys::fs::UniqueID> SourceFileUID;
Optional<StringRef> SourceFileName;
if (!MainFileID.isInvalid()) {
bool Invalid = false;
if (*SourceFileName == llvm::sys::path::filename(MainFile->getName())) {
SourceFileUID = getActualFileUID(SourceFile);
if (SourceFileUID) {
- if (Optional<uint64_t> MainFileUID = getActualFileUID(MainFile)) {
+ if (Optional<llvm::sys::fs::UniqueID> MainFileUID =
+ getActualFileUID(MainFile)) {
if (*SourceFileUID == *MainFileUID) {
FirstFID = MainFileID;
SourceFile = MainFile;
const FileEntry *Entry =FileContentCache? FileContentCache->OrigEntry : 0;
if (Entry &&
*SourceFileName == llvm::sys::path::filename(Entry->getName())) {
- if (Optional<uint64_t> EntryUID = getActualFileUID(Entry)) {
+ if (Optional<llvm::sys::fs::UniqueID> EntryUID =
+ getActualFileUID(Entry)) {
if (*SourceFileUID == *EntryUID) {
FirstFID = FileID::get(I);
SourceFile = Entry;
// (to a memory buffer).
llvm::MemoryBuffer *Buffer = 0;
std::string MainFilePath(FrontendOpts.Inputs[0].getFile());
- uint64_t MainFileID;
+ llvm::sys::fs::UniqueID MainFileID;
if (!llvm::sys::fs::getUniqueID(MainFilePath, MainFileID)) {
// Check whether there is a file-file remapping of the main file
for (PreprocessorOptions::remapped_file_iterator
M != E;
++M) {
std::string MPath(M->first);
- uint64_t MID;
+ llvm::sys::fs::UniqueID MID;
if (!llvm::sys::fs::getUniqueID(MPath, MID)) {
if (MainFileID == MID) {
// We found a remapping. Try to load the resulting, remapped source.
M != E;
++M) {
std::string MPath(M->first);
- uint64_t MID;
+ llvm::sys::fs::UniqueID MID;
if (!llvm::sys::fs::getUniqueID(MPath, MID)) {
if (MainFileID == MID) {
// We found a remapping.
llvm::MemoryBuffer *OverrideMainBuffer = 0;
if (!getPreambleFile(this).empty()) {
std::string CompleteFilePath(File);
- uint64_t CompleteFileID;
+ llvm::sys::fs::UniqueID CompleteFileID;
if (!llvm::sys::fs::getUniqueID(CompleteFilePath, CompleteFileID)) {
std::string MainPath(OriginalSourceFile);
- uint64_t MainID;
+ llvm::sys::fs::UniqueID MainID;
if (!llvm::sys::fs::getUniqueID(MainPath, MainID)) {
if (CompleteFileID == MainID && Line > 1)
OverrideMainBuffer