<div dir="ltr">On a side note:<br>For API stability, I think recent changes are pretty wild as things move towards more and more C++11 features. Usually we find it not that much work to keep up with the C++ APIs.<div>ABI stability is of course a different problem - if you want to use the platform libs instead of just building your own version of clang's libs into your product, I do believe exporting stuff through libclang is pretty much the only sensible option.</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Jun 1, 2015 at 12:13 PM Manuel Klimek <<a href="mailto:klimek@google.com">klimek@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote">On Sat, May 30, 2015 at 2:54 PM Milian Wolff <<a href="mailto:mail@milianw.de" target="_blank">mail@milianw.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello all,<br>
<br>
for KDevelop, we have a GSOC student this summer doing a R&D project on how we<br>
could leverage libTooling and friends to create refactoring tools for C++<br>
code. I'm pretty sure that this is the correct way in the long run, but I have<br>
some trouble with the lack of API and ABI stability in the C++ libraries of<br>
LLVM, most notably libTooling here.<br>
<br>
I was thinking about a separate process that works only against a very<br>
specific LLVM version. Thus, if distributors update LLVM, and the stuff does<br>
not compile anymore, we only loose the refactoring but not the whole language<br>
support (based on clang-c).<br>
With this approach though, the cached parse data cannot be shared between<br>
language support and refactoring...<br>
<br>
How do other IDEs handle this situation? Is there maybe an external<br>
libTooling-c shim or similar that we could leverage?<br></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>I think you're the first IDE wanting to do that (so I'm super super excited and want to help you where I can :D)</div><div><br></div><div>The original plan was to basically get refactorings into libclang once they're working well enough. To my knowledge we don't have such refactorings yet - is the SOC project about building refactorings, too? :)</div><div><br></div><div>For tools like clang-format or clang-tidy we have integrations that use the command line interfaces.</div></div></div><div dir="ltr"><div class="gmail_quote"><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Bye<br>
--<br>
Milian Wolff<br>
<a href="mailto:mail@milianw.de" target="_blank">mail@milianw.de</a><br>
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__milianw.de&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=CnzuN65ENJ1H9py9XLiRvC_UQz6u3oG6GUNn7_wosSM&m=7pbE1DO2YthOJA3meJBe3U18iKK4UNEA7ot-FqkNzBI&s=EeG0omEKyP1Xw8sDNkHPxKX9V6VHDe2ZtDIj4pjAZV4&e=" target="_blank">http://milianw.de</a><br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</blockquote></div></div></blockquote></div>