diff options
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Driver/Multilib.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/clang/lib/Driver/Multilib.cpp b/clang/lib/Driver/Multilib.cpp index 6d68517e83f..746d01bfb24 100644 --- a/clang/lib/Driver/Multilib.cpp +++ b/clang/lib/Driver/Multilib.cpp @@ -31,16 +31,14 @@ using namespace clang; using namespace llvm::opt; static void normalizePathSegment(std::string &Segment) { - StringRef SRS(Segment); - if (SRS.empty() || SRS == "/." || SRS == "/" || SRS == ".") { - SRS = ""; + if (Segment.empty() || Segment == "/." || Segment == "/" || Segment == ".") { + Segment = ""; } else { - if (SRS.back() == '/') - SRS = SRS.drop_back(); - if (SRS.front() != '/') - SRS = ("/" + SRS).str(); + if (StringRef(Segment).back() == '/') + Segment.erase(Segment.begin() + Segment.size() - 1); + if (StringRef(Segment).front() != '/') + Segment = "/" + Segment; } - Segment = SRS; } Multilib::Multilib(StringRef GCCSuffix, StringRef OSSuffix, |