aboutsummaryrefslogtreecommitdiff
path: root/clang-move
diff options
context:
space:
mode:
authorAlexander Shaposhnikov <shal1t712@gmail.com>2016-12-12 19:56:37 +0000
committerAlexander Shaposhnikov <shal1t712@gmail.com>2016-12-12 19:56:37 +0000
commit63e25bab443a62a4a18d57b7959aecae3180f38e (patch)
tree082eff9608d502f6a5130609b31de027b4851344 /clang-move
parent0dfe4365327e0613575dc3e6e945481cd24e843f (diff)
[clang-move] Use appendArgumentsAdjuster for adding extra arguments
1. Remove some boilerplate code for appending -fparse-all-comments to the list of arguments. 2. Run clang-format -i against ClangMoveMain.cpp. Test plan: make check-all Differential revision: https://reviews.llvm.org/D27669 git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@289464 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'clang-move')
-rw-r--r--clang-move/tool/ClangMoveMain.cpp42
1 files changed, 17 insertions, 25 deletions
diff --git a/clang-move/tool/ClangMoveMain.cpp b/clang-move/tool/ClangMoveMain.cpp
index d518886f..ad656691 100644
--- a/clang-move/tool/ClangMoveMain.cpp
+++ b/clang-move/tool/ClangMoveMain.cpp
@@ -61,19 +61,19 @@ cl::opt<std::string>
NewCC("new_cc", cl::desc("The relative/absolute file path of new cc."),
cl::cat(ClangMoveCategory));
-cl::opt<bool> OldDependOnNew(
- "old_depend_on_new",
- cl::desc(
- "Whether old header will depend on new header. If true, clang-move will "
- "add #include of new header to old header."),
- cl::init(false), cl::cat(ClangMoveCategory));
-
-cl::opt<bool> NewDependOnOld(
- "new_depend_on_old",
- cl::desc(
- "Whether new header will depend on old header. If true, clang-move will "
- "add #include of old header to new header."),
- cl::init(false), cl::cat(ClangMoveCategory));
+cl::opt<bool>
+ OldDependOnNew("old_depend_on_new",
+ cl::desc("Whether old header will depend on new header. If "
+ "true, clang-move will "
+ "add #include of new header to old header."),
+ cl::init(false), cl::cat(ClangMoveCategory));
+
+cl::opt<bool>
+ NewDependOnOld("new_depend_on_old",
+ cl::desc("Whether new header will depend on old header. If "
+ "true, clang-move will "
+ "add #include of old header to new header."),
+ cl::init(false), cl::cat(ClangMoveCategory));
cl::opt<std::string>
Style("style",
@@ -95,18 +95,7 @@ cl::opt<bool> DumpDecls(
int main(int argc, const char **argv) {
llvm::sys::PrintStackTraceOnErrorSignal(argv[0]);
- // Add "-fparse-all-comments" compile option to make clang parse all comments,
- // otherwise, ordinary comments like "//" and "/*" won't get parsed (This is
- // a bit of hacky).
- std::vector<std::string> ExtraArgs(argv, argv + argc);
- ExtraArgs.insert(ExtraArgs.begin() + 1, "-extra-arg=-fparse-all-comments");
- std::unique_ptr<const char *[]> RawExtraArgs(
- new const char *[ExtraArgs.size()]);
- for (size_t i = 0; i < ExtraArgs.size(); ++i)
- RawExtraArgs[i] = ExtraArgs[i].c_str();
- int Argc = argc + 1;
- tooling::CommonOptionsParser OptionsParser(Argc, RawExtraArgs.get(),
- ClangMoveCategory);
+ tooling::CommonOptionsParser OptionsParser(argc, argv, ClangMoveCategory);
if (OldDependOnNew && NewDependOnOld) {
llvm::errs() << "Provide either --old_depend_on_new or "
@@ -117,6 +106,9 @@ int main(int argc, const char **argv) {
tooling::RefactoringTool Tool(OptionsParser.getCompilations(),
OptionsParser.getSourcePathList());
+ // Add "-fparse-all-comments" compile option to make clang parse all comments.
+ Tool.appendArgumentsAdjuster(tooling::getInsertArgumentAdjuster(
+ "-fparse-all-comments", ArgumentInsertPosition::BEGIN));
move::MoveDefinitionSpec Spec;
Spec.Names = {Names.begin(), Names.end()};
Spec.OldHeader = OldHeader;