summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Pfeifer <daniel@pfeifer-mail.de>2016-04-27 22:48:15 (GMT)
committerBrad King <brad.king@kitware.com>2016-04-28 13:42:31 (GMT)
commit304ab71db0fa68ff5cfe5e63adac6ade76ef6f31 (patch)
tree4a3eec60c535737958522b23b6b4b13c4a6f8670
parent5b4f771fd7eb02f4bb5248194796d191347e492b (diff)
downloadCMake-304ab71db0fa68ff5cfe5e63adac6ade76ef6f31.zip
CMake-304ab71db0fa68ff5cfe5e63adac6ade76ef6f31.tar.gz
CMake-304ab71db0fa68ff5cfe5e63adac6ade76ef6f31.tar.bz2
Clang-Tidy: Give entire compiler command line to clant-tidy tool
The tool expects the entire compiler command, including `cc`. It will automatically skip that and extract the options it needs.
-rw-r--r--Source/cmcmd.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 0b9518c..19f3886 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -382,12 +382,14 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
if (!tidy.empty())
{
// Construct the clang-tidy command line by taking what was given
- // and adding all the arguments we give to the compiler.
+ // and adding our compiler command line. The clang-tidy tool will
+ // automatically skip over the compiler itself and extract the
+ // options.
std::vector<std::string> tidy_cmd;
cmSystemTools::ExpandListArgument(tidy, tidy_cmd, true);
tidy_cmd.push_back(sourceFile);
tidy_cmd.push_back("--");
- tidy_cmd.insert(tidy_cmd.end(), orig_cmd.begin()+1, orig_cmd.end());
+ tidy_cmd.insert(tidy_cmd.end(), orig_cmd.begin(), orig_cmd.end());
// Run the tidy command line. Capture its stdout and hide its stderr.
std::string stdOut;