[tooling] In CompileCommand, Expose the 'file' that was associated with the command.

llvm-svn: 247468
diff --git a/clang/lib/Tooling/JSONCompilationDatabase.cpp b/clang/lib/Tooling/JSONCompilationDatabase.cpp
index 3ac6f69..dd4d7a8 100644
--- a/clang/lib/Tooling/JSONCompilationDatabase.cpp
+++ b/clang/lib/Tooling/JSONCompilationDatabase.cpp
@@ -232,8 +232,11 @@
     std::vector<CompileCommand> &Commands) const {
   for (int I = 0, E = CommandsRef.size(); I != E; ++I) {
     SmallString<8> DirectoryStorage;
-    Commands.emplace_back(CommandsRef[I].first->getValue(DirectoryStorage),
-                          nodeToCommandLine(CommandsRef[I].second));
+    SmallString<32> FilenameStorage;
+    Commands.emplace_back(
+      std::get<0>(CommandsRef[I])->getValue(DirectoryStorage),
+      std::get<1>(CommandsRef[I])->getValue(FilenameStorage),
+      nodeToCommandLine(std::get<2>(CommandsRef[I])));
   }
 }
 
@@ -335,7 +338,7 @@
       llvm::sys::path::native(FileName, NativeFilePath);
     }
     IndexByFile[NativeFilePath].push_back(
-        CompileCommandRef(Directory, *Command));
+        CompileCommandRef(Directory, File, *Command));
     MatchTrie.insert(NativeFilePath);
   }
   return true;