[cfe-dev] Problem with a change on newFrontendActionFactory

Richard Smith richard at metafoo.co.uk
Thu May 1 13:12:24 PDT 2014


On Thu, May 1, 2014 at 12:55 PM, Etienne Ollivier <eollivier at bsu.edu> wrote:

> Hello,
> I updated my clang repository recently and I an error appeared that was not
> there before:
>
> error: no viable conversion from 'std::unique_ptr<FrontendActionFactory>'
> to
>       'clang::tooling::ToolAction *'
>         return Tool.run(newFrontendActionFactory<MyPluginASTAction>());
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> It is because newFrontendActionFactory has been changed to work with
> std::unique_ptr. So if I change my code to
>    return Tool.run(&(*newFrontendActionFactory<MyPluginASTAction>()));
>

You can use .get() rather than the slightly non-obvious &*.


> it works. The only little problem is that it can be confusing for users
> since is not the way it is written in the documentation, like on this
> pages:
> http://clang.llvm.org/docs/LibTooling.html
> http://clang.llvm.org/docs/LibASTMatchersTutorial.html


Thanks, I've updated the documentation.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140501/506546ad/attachment.html>


More information about the cfe-dev mailing list