Re: [PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Eric Liu via cfe-commits
r316661 should fix these (hopefully!). On Thu, Oct 26, 2017 at 3:03 PM Eric Liu wrote: > Sorry about that! I'm fixing these now... > > > On Thu, Oct 26, 2017 at 2:50 PM Bjorn Pettersson via Phabricator < > revi...@reviews.llvm.org> wrote: > >> bjope added a comment. >> >> I get errors when compi

Re: [PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Eric Liu via cfe-commits
Sorry about that! I'm fixing these now... On Thu, Oct 26, 2017 at 2:50 PM Bjorn Pettersson via Phabricator < revi...@reviews.llvm.org> wrote: > bjope added a comment. > > I get errors when compiling due to this commit: > > FAILED: > tools/clang/lib/Tooling/CMakeFiles/clangTooling.dir/Standalone

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Bjorn Pettersson via Phabricator via cfe-commits
bjope added a comment. I get errors when compiling due to this commit: FAILED: tools/clang/lib/Tooling/CMakeFiles/clangTooling.dir/StandaloneExecution.cpp.o /repo/app/clang/3.6/bin/clang++ -march=corei7 -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MA

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Phil Camp via Phabricator via cfe-commits
FlameTop added a comment. Hello, I'm afraid this commit is failing on Windows. http://lab.llvm.org:8011/console?builder=llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast&builder=llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast FAIL: Clang-Unit :: Tooling/./ToolingTests.exe/StandaloneToolTest.SimpleAct

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Eric Liu via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL316653: [Tooling] A new framework for executing clang frontend actions. (authored by ioeric). Repository: rL LLVM https://reviews.llvm.org/D34272 Files: cfe/trunk/include/clang/Tooling/CommonOptions

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Manuel Klimek via Phabricator via cfe-commits
klimek accepted this revision. klimek added a comment. This revision is now accepted and ready to land. lg https://reviews.llvm.org/D34272 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-com

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 120370. ioeric marked 2 inline comments as done. ioeric added a comment. - Addressed review comments o Removed argument adjusting interfaces from ExecutionContext o Switched positions of Action and Adjuster parameters in the `execute` interfaces https://rev

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-26 Thread Eric Liu via Phabricator via cfe-commits
ioeric added inline comments. Comment at: include/clang/Tooling/Execution.h:76 + + void appendArgumentsAdjuster(ArgumentsAdjuster Adjuster); + klimek wrote: > I think the argument adjuster adjustment shouldn't be part of this interface, > as the argument adjust

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-25 Thread Manuel Klimek via Phabricator via cfe-commits
klimek added inline comments. Comment at: include/clang/Tooling/Execution.h:76 + + void appendArgumentsAdjuster(ArgumentsAdjuster Adjuster); + I think the argument adjuster adjustment shouldn't be part of this interface, as the argument adjusters cannot be chan

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-25 Thread Eric Liu via Phabricator via cfe-commits
ioeric added inline comments. Comment at: include/clang/Tooling/Execution.h:51-53 + virtual std::vector> AllKVResults() = 0; + virtual void forEachResult( + llvm::function_ref Callback) = 0; ioeric wrote: > klimek wrote: > > Why do we need to get the resul

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-25 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 120254. ioeric added a comment. - Minor comment update. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/StandaloneExecution.h include/clang/Tooling/ToolExecuto

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-25 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 120250. ioeric added a comment. - Only expose result reporting interface from ExecutionContext so that callbacks don't have access to results. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execu

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-25 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 120232. ioeric added a comment. - Get rid of the unused 'createExecutorByName' interface. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/StandaloneExecution.h

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-24 Thread Eric Liu via Phabricator via cfe-commits
ioeric marked an inline comment as done. ioeric added a comment. PTAL I experimented with our internal tools (incl. mapreduce-based execution) and modified the interfaces a bit: o Get rid of `ExecutionConfig` class; pass actions into executors directly. o Moved `ArgumentAdjuster`s that are commo

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-24 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 120068. ioeric added a comment. - Experimented and refined the interfaces. o Get rid of `ExecutionConfig` class; pass actions into executors directly. o Add ArgumentAdjuster to ExecutionContext. o Make command-line based executor selection more explicit by r

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-19 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119580. ioeric added a comment. - Remove unused variable. - Narrow supported actions to FrontendActionFactory from ToolAction. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-18 Thread Alex Lorenz via Phabricator via cfe-commits
arphaman added inline comments. Comment at: include/clang/Tooling/StandaloneExecution.h:1 +//===--- Execution.h - Standalone clang action execution. -*- C++ ---*-===// +// StandaloneExecution.h? https://reviews.llvm.org/D34272 __

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-18 Thread Eric Liu via Phabricator via cfe-commits
ioeric added inline comments. Comment at: include/clang/Tooling/CommonOptionsParser.h:90 /// - /// This constructor exits program in case of error. + /// If \p ExitOnError is set (default), This constructor exits program in case + /// of error; otherwise, this sets the err

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-18 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119449. ioeric marked 7 inline comments as done. ioeric added a comment. - Address review comments. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/StandaloneExe

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-18 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119447. ioeric added a comment. - Add a factory method for creating CommonOptionsParser. - Minor cleanup in CommonOptionsParser. - Revert CommonOptionsParser changes. - Merge branch 'option' into arcpatch-D34272 https://reviews.llvm.org/D34272 Files: inclu

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Manuel Klimek via Phabricator via cfe-commits
klimek added inline comments. Comment at: include/clang/Tooling/CommonOptionsParser.h:90 /// - /// This constructor exits program in case of error. + /// If \p ExitOnError is set (default), This constructor exits program in case + /// of error; otherwise, this sets the err

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119337. ioeric added a comment. - Minor cleanup in tests. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/StandaloneExecution.h include/clang/Tooling/ToolExecu

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Eric Liu via Phabricator via cfe-commits
ioeric added a comment. Thanks for the review! Comment at: include/clang/Tooling/CommonOptionsParser.h:116 + bool HasError; + std::string ErrorMessage; std::unique_ptr Compilations; arphaman wrote: > Would it be better to have an `llvm::Error' instead of t

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119331. ioeric marked an inline comment as done. ioeric added a comment. - Addressed review comments. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/StandaloneE

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119325. ioeric marked 2 inline comments as done. ioeric added a comment. - Move StandaloneToolExecutor into a separate header; added ExecutionTest.cpp. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooli

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-17 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119314. ioeric added a comment. - Fix broken unit tests when they are run in threads in the same process. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/ToolExe

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-16 Thread Alex Lorenz via Phabricator via cfe-commits
arphaman added inline comments. Comment at: include/clang/Tooling/CommonOptionsParser.h:116 + bool HasError; + std::string ErrorMessage; std::unique_ptr Compilations; Would it be better to have an `llvm::Error' instead of the two fields? C

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-16 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119150. ioeric added a comment. - Add a ExecutionContext class. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/ToolExecutorPluginRegistry.h include/clang/Tool

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-16 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119122. ioeric marked 5 inline comments as done. ioeric added a comment. - Address review comments. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/ToolExecutorP

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-16 Thread Eric Liu via Phabricator via cfe-commits
ioeric added a comment. Thanks for the review! Comment at: include/clang/Tooling/CommonOptionsParser.h:109 + + const std::string &getErrorMessage() const { return ErrorMessage; } + hokein wrote: > return `llvm::StringRef`? I'm not a big fan of `StringRef` as a

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-16 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 119117. ioeric added a comment. - clang-format code. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/ToolExecutorPluginRegistry.h include/clang/Tooling/Tooling

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-13 Thread Eric Liu via Phabricator via cfe-commits
ioeric updated this revision to Diff 118898. ioeric added a comment. - Minor cleanups. https://reviews.llvm.org/D34272 Files: include/clang/Tooling/CommonOptionsParser.h include/clang/Tooling/Execution.h include/clang/Tooling/ToolExecutorPluginRegistry.h include/clang/Tooling/Tooling.h

[PATCH] D34272: [Tooling] A new framework for executing clang frontend actions.

2017-10-13 Thread Haojian Wu via Phabricator via cfe-commits
hokein added a comment. This is a good start, a few comments. Also I'd suggest running clang-format on this patch -- I saw a few places violate the code style. Comment at: include/clang/Tooling/CommonOptionsParser.h:90 /// - /// This constructor exits program in case of er