From: Chandler Carruth Date: Sun, 6 Nov 2011 09:21:54 +0000 (+0000) Subject: Switch some of these interfaces from std::string to StringRef and Twine. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fa13459725b7a8c414ddf3742ffb7eab8314388d;p=clang Switch some of these interfaces from std::string to StringRef and Twine. This will facilitate further use and recombinations of them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143869 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ToolChains.cpp b/lib/Driver/ToolChains.cpp index df01fc9d78..0a8aa7a4a7 100644 --- a/lib/Driver/ToolChains.cpp +++ b/lib/Driver/ToolChains.cpp @@ -1780,9 +1780,8 @@ void Linux::GCCInstallationDetector::ScanLibDirForGCCTriple( } } -static void addPathIfExists(const std::string &Path, - ToolChain::path_list &Paths) { - if (llvm::sys::fs::exists(Path)) Paths.push_back(Path); +static void addPathIfExists(Twine Path, ToolChain::path_list &Paths) { + if (llvm::sys::fs::exists(Path)) Paths.push_back(Path.str()); } /// \brief Get our best guess at the multiarch triple for a target. @@ -1823,8 +1822,8 @@ Linux::Linux(const HostInfo &Host, const llvm::Triple &Triple) // OpenSuse stores the linker with the compiler, add that to the search // path. ToolChain::path_list &PPaths = getProgramPaths(); - PPaths.push_back(GCCInstallation.getParentLibPath() + "/../" + - GCCInstallation.getTriple() + "/bin"); + PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" + + GCCInstallation.getTriple() + "/bin").str()); Linker = GetProgramPath("ld"); diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h index 0ae0e53496..57b14cc8dd 100644 --- a/lib/Driver/ToolChains.h +++ b/lib/Driver/ToolChains.h @@ -396,13 +396,13 @@ class LLVM_LIBRARY_VISIBILITY Linux : public Generic_ELF { bool isValid() const { return IsValid; } /// \brief Get the GCC triple for the detected install. - const std::string &getTriple() const { return GccTriple; } + StringRef getTriple() const { return GccTriple; } /// \brief Get the detected GCC installation path. - const std::string &getInstallPath() const { return GccInstallPath; } + StringRef getInstallPath() const { return GccInstallPath; } /// \brief Get the detected GCC parent lib path. - const std::string &getParentLibPath() const { return GccParentLibPath; } + StringRef getParentLibPath() const { return GccParentLibPath; } private: static void CollectLibDirsAndTriples(llvm::Triple::ArchType HostArch,