diff options
-rw-r--r-- | lld/lib/Config/Version.cpp | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/lld/lib/Config/Version.cpp b/lld/lib/Config/Version.cpp index 2f06d20899d..60687b9d894 100644 --- a/lld/lib/Config/Version.cpp +++ b/lld/lib/Config/Version.cpp @@ -35,22 +35,15 @@ StringRef getLLDRevision() { } std::string getLLDRepositoryVersion() { - std::string buf; - llvm::raw_string_ostream OS(buf); - std::string Path = getLLDRepositoryPath(); - std::string Revision = getLLDRevision(); - if (!Path.empty() || !Revision.empty()) { - OS << '('; - if (!Path.empty()) - OS << Path; - if (!Revision.empty()) { - if (!Path.empty()) - OS << ' '; - OS << Revision; - } - OS << ')'; - } - return OS.str(); + std::string S = getLLDRepositoryPath(); + std::string T = getLLDRevision(); + if (S.empty() && T.empty()) + return ""; + if (!S.empty() && !T.empty()) + return "(" + S + " " + T + ")"; + if (!S.empty()) + return "(" + S + ")"; + return "(" + T + ")"; } StringRef getLLDVersion() { |