diff options
author | Serge Pavlov <sepavloff@gmail.com> | 2017-08-29 05:22:26 +0000 |
---|---|---|
committer | Serge Pavlov <sepavloff@gmail.com> | 2017-08-29 05:22:26 +0000 |
commit | 918910d6e53db4b620ae1167dc59e83f3031750e (patch) | |
tree | 3032d01f1921543d80710c794778c3a45e8d8dd2 /lib/Tooling/Tooling.cpp | |
parent | e4f522b72db73d13283c35e18992f96cd082b596 (diff) | |
download | clang-918910d6e53db4b620ae1167dc59e83f3031750e.tar.gz |
Use class to pass information about executable name
Information about clang executable name components, such as target and
driver mode, was passes in std::pair. With this change it is passed in
a special structure. It improves readability and makes access to this
information more convenient.
NFC.
Differential Revision: https://reviews.llvm.org/D36057
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@311981 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Tooling/Tooling.cpp')
-rw-r--r-- | lib/Tooling/Tooling.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/Tooling/Tooling.cpp b/lib/Tooling/Tooling.cpp index 662f02dca2..df9d7df694 100644 --- a/lib/Tooling/Tooling.cpp +++ b/lib/Tooling/Tooling.cpp @@ -190,11 +190,12 @@ void addTargetAndModeForProgramName(std::vector<std::string> &CommandLine, } auto TargetMode = clang::driver::ToolChain::getTargetAndModeFromProgramName(InvokedAs); - if (!AlreadyHasMode && !TargetMode.second.empty()) { - CommandLine.insert(++CommandLine.begin(), TargetMode.second); + if (!AlreadyHasMode && TargetMode.DriverMode) { + CommandLine.insert(++CommandLine.begin(), TargetMode.DriverMode); } - if (!AlreadyHasTarget && !TargetMode.first.empty()) { - CommandLine.insert(++CommandLine.begin(), {"-target", TargetMode.first}); + if (!AlreadyHasTarget && TargetMode.TargetIsValid) { + CommandLine.insert(++CommandLine.begin(), {"-target", + TargetMode.TargetPrefix}); } } } |