diff options
| author | Martin Storsjo <martin@martin.st> | 2018-04-18 17:34:29 +0000 |
|---|---|---|
| committer | Martin Storsjo <martin@martin.st> | 2018-04-18 17:34:29 +0000 |
| commit | 3a83c5c9f7414220e66c6cd293716a7e13fd2c23 (patch) | |
| tree | 3ec35fc67cada00e1f6e9e6da86bff060f3c05c1 | |
| parent | 9de072f8ae8ee9075fb4ec7422b936a76ffa474e (diff) | |
| download | bcm5719-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.cpp | 11 |
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); |

