[Qt-creator] QtCreator C++ code parser and clang integration status

Peter Kümmel syntheticpp at gmx.net
Tue Jan 31 22:57:58 CET 2012

On 31.01.2012 18:34, André Pönitz wrote:
> On Tuesday 31 January 2012 17:39:28 ext Peter Kuemmel wrote:
>>> Hello.
>>> When I tried to use QtCreator in my current development projects based
>>> on C++11 features I was faced with some issues in qtc internal C++
>>> parser. One of such issues (code completion support for auto
>>> variables) I recently fixed and pushed into master qtc branch. I could
>>> try to fix others, but I think what it will be waste of time if clang
>>> frontend will be integrated into qtc in the near future. May be my
>>> help in this integration could be more useful. So, my question is:
>>> which help is needed? Should I try to fix current version of C++
>>> parser or it will better if I focus on clang wrapper?
>> ATM they don't know which route they will go. Maybe they will drop
>> clang because it is much slower then the old parser, maybe they
>> switch to clang. In any case, your risk to waste your time.
>> I personally prefer clang (maybe only optionally), but I stopped
>> testing it because of the 'maybe'.
> The actual route will be chosen by the people that do the work.
> If you don't contribute to either route - even at the risk that someone
> on the "other" route is faster or better - your impact on the final
> outcome might be limited... ;-)

I didn't know there is a contest :)

> [Apart from that I currently think that the solution in the end will be
> some kind of a hybrid, so the risk to waste time is very low]

Anyway, it would really help to become more clear about the roadmap.
Couldn't we/you make any decision what will happen in concrete?

An idea I have is:
Because clang is so(too) slow when it is used to parse the complete
code when a project is opened, we use it only for special files.

Only opened files will be parsed by clang, only then the context
and code navigation should be "perfect"?


More information about the Qt-creator mailing list