For PR1291:
Change uses of sys::Path class to sys::PathWithStatus in those places where
the file status information is needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35743 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Debugger/ProgramInfo.cpp b/lib/Debugger/ProgramInfo.cpp
index d811f60..833fe7c 100644
--- a/lib/Debugger/ProgramInfo.cpp
+++ b/lib/Debugger/ProgramInfo.cpp
@@ -195,7 +195,7 @@
 ProgramInfo::ProgramInfo(Module *m) : M(m), ProgramTimeStamp(0,0) {
   assert(M && "Cannot create program information with a null module!");
   const sys::FileStatus *Stat;
-  Stat = sys::Path(M->getModuleIdentifier()).getFileStatus();
+  Stat = sys::PathWithStatus(M->getModuleIdentifier()).getFileStatus();
   if (Stat)
     ProgramTimeStamp = Stat->getTimestamp();
 
diff --git a/lib/Support/FileUtilities.cpp b/lib/Support/FileUtilities.cpp
index 1ea5dda..1736b0d 100644
--- a/lib/Support/FileUtilities.cpp
+++ b/lib/Support/FileUtilities.cpp
@@ -148,8 +148,8 @@
 /// error occurs, allowing the caller to distinguish between a failed diff and a
 /// file system error.
 ///
-int llvm::DiffFilesWithTolerance(const sys::Path &FileA,
-                                 const sys::Path &FileB,
+int llvm::DiffFilesWithTolerance(const sys::PathWithStatus &FileA,
+                                 const sys::PathWithStatus &FileB,
                                  double AbsTol, double RelTol,
                                  std::string *Error) {
   const sys::FileStatus *FileAStat = FileA.getFileStatus(false, Error);
diff --git a/tools/llvm-ar/llvm-ar.cpp b/tools/llvm-ar/llvm-ar.cpp
index 649eb7a..fc40f78 100644
--- a/tools/llvm-ar/llvm-ar.cpp
+++ b/tools/llvm-ar/llvm-ar.cpp
@@ -281,7 +281,8 @@
     for (std::set<sys::Path>::iterator I = content.begin(), E = content.end();
          I != E; ++I) {
       // Make sure it exists and is a directory
-      const sys::FileStatus *Status = I->getFileStatus(false, ErrMsg);
+      const sys::FileStatus *Status =
+        sys::PathWithStatus(*I).getFileStatus(false, ErrMsg);
       if (!Status)
         return true;
       if (Status->isDir) {
@@ -309,7 +310,8 @@
       if (!aPath.exists())
         throw std::string("File does not exist: ") + Members[i];
       std::string Err;
-      const sys::FileStatus *si = aPath.getFileStatus(false, &Err);
+      const sys::FileStatus *si = 
+        sys::PathWithStatus(aPath).getFileStatus(false, &Err);
       if (!si)
         throw Err;
       if (si->isDir) {
@@ -645,7 +647,8 @@
 
     if (found != remaining.end()) {
       std::string Err;
-      const sys::FileStatus *si = found->getFileStatus(false, &Err);
+      const sys::FileStatus *si = 
+        sys::PathWithStatus(*found).getFileStatus(false, &Err);
       if (!si)
         return true;
       if (si->isDir) {
diff --git a/tools/llvm-db/Commands.cpp b/tools/llvm-db/Commands.cpp
index 5a8aa2f..487d5ec 100644
--- a/tools/llvm-db/Commands.cpp
+++ b/tools/llvm-db/Commands.cpp
@@ -51,7 +51,8 @@
   // If the program has been modified, reload it!
   sys::Path Program(Dbg.getProgramPath());
   std::string Err;
-  const sys::FileStatus *Status = Program.getFileStatus(false, &Err);
+  const sys::FileStatus *Status = 
+    sys::PathWithStatus(Program).getFileStatus(false, &Err);
   if (!Status)
     throw Err;
   if (TheProgramInfo->getProgramTimeStamp() != Status->getTimestamp()) {
diff --git a/tools/llvmc/CompilerDriver.cpp b/tools/llvmc/CompilerDriver.cpp
index 3d91ad9..4092eda 100644
--- a/tools/llvmc/CompilerDriver.cpp
+++ b/tools/llvmc/CompilerDriver.cpp
@@ -195,7 +195,8 @@
 
   void cleanup() {
     if (!isSet(KEEP_TEMPS_FLAG)) {
-      const sys::FileStatus *Status = TempDir.getFileStatus();
+      const sys::FileStatus *Status = 
+        sys::PathWithStatus(TempDir).getFileStatus();
       if (Status && Status->isDir)
         TempDir.eraseFromDisk(/*remove_contents=*/true);
     } else {