r336910 - [Tooling] Get working directory properly without assuming real file system.
Eric Liu via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 12 07:54:25 PDT 2018
Author: ioeric
Date: Thu Jul 12 07:54:25 2018
New Revision: 336910
URL: http://llvm.org/viewvc/llvm-project?rev=336910&view=rev
Log:
[Tooling] Get working directory properly without assuming real file system.
Modified:
cfe/trunk/lib/Tooling/Tooling.cpp
Modified: cfe/trunk/lib/Tooling/Tooling.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Tooling/Tooling.cpp?rev=336910&r1=336909&r2=336910&view=diff
==============================================================================
--- cfe/trunk/lib/Tooling/Tooling.cpp (original)
+++ cfe/trunk/lib/Tooling/Tooling.cpp Thu Jul 12 07:54:25 2018
@@ -411,10 +411,14 @@ int ClangTool::run(ToolAction *Action) {
// This just needs to be some symbol in the binary.
static int StaticSymbol;
- llvm::SmallString<128> InitialDirectory;
- if (std::error_code EC = llvm::sys::fs::current_path(InitialDirectory))
+ std::string InitialDirectory;
+ if (llvm::ErrorOr<std::string> CWD =
+ OverlayFileSystem->getCurrentWorkingDirectory()) {
+ InitialDirectory = std::move(*CWD);
+ } else {
llvm::report_fatal_error("Cannot detect current path: " +
- Twine(EC.message()));
+ Twine(CWD.getError().message()));
+ }
// First insert all absolute paths into the in-memory VFS. These are global
// for all compile commands.
More information about the cfe-commits
mailing list