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. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits