summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Storsjo <martin@martin.st>2018-04-18 17:34:29 +0000
committerMartin Storsjo <martin@martin.st>2018-04-18 17:34:29 +0000
commit3a83c5c9f7414220e66c6cd293716a7e13fd2c23 (patch)
tree3ec35fc67cada00e1f6e9e6da86bff060f3c05c1
parent9de072f8ae8ee9075fb4ec7422b936a76ffa474e (diff)
downloadbcm5719-llvm-3a83c5c9f7414220e66c6cd293716a7e13fd2c23.tar.gz
bcm5719-llvm-3a83c5c9f7414220e66c6cd293716a7e13fd2c23.zip
[MinGW] Try to fix asan testing after r330244
Twines shouldn't be stored as they can refer to temporaries. llvm-svn: 330277
-rw-r--r--clang/lib/Driver/ToolChains/MinGW.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/clang/lib/Driver/ToolChains/MinGW.cpp b/clang/lib/Driver/ToolChains/MinGW.cpp
index 312acde3bc1..206f52e82d0 100644
--- a/clang/lib/Driver/ToolChains/MinGW.cpp
+++ b/clang/lib/Driver/ToolChains/MinGW.cpp
@@ -308,14 +308,13 @@ llvm::ErrorOr<std::string> toolchains::MinGW::findClangRelativeSysroot() {
Subdirs.emplace_back(getTriple().str());
Subdirs.emplace_back(getTriple().getArchName());
Subdirs[1] += "-w64-mingw32";
- Twine ClangRoot =
- llvm::sys::path::parent_path(getDriver().getInstalledDir()) +
- llvm::sys::path::get_separator();
+ StringRef ClangRoot =
+ llvm::sys::path::parent_path(getDriver().getInstalledDir());
+ StringRef Sep = llvm::sys::path::get_separator();
for (StringRef CandidateSubdir : Subdirs) {
- Twine Subdir = ClangRoot + CandidateSubdir;
- if (llvm::sys::fs::is_directory(Subdir)) {
+ if (llvm::sys::fs::is_directory(ClangRoot + Sep + CandidateSubdir)) {
Arch = CandidateSubdir;
- return Subdir.str();
+ return (ClangRoot + Sep + CandidateSubdir).str();
}
}
return make_error_code(std::errc::no_such_file_or_directory);
OpenPOWER on IntegriCloud