LINUX.ORG.RU
ФорумTalks

[QtCreator][Боян] Будет использовать CLang


0

3

На данный момент происходит переход QtCreator'a со своего анализатора кода на CLang. Этот анализатор используется для авто-дополнение кода, подсветки, навигации, диагностики кода и прочего.

Ура, товарищи!

http://labs.qt.nokia.com/2011/10/19/qt-creator-and-clang/

★★★

Действительно, Боян.

Bad_ptr ★★★★★
()

вот уж боянище так боянище

XVilka ★★★★★
()
Ответ на: комментарий от note173

им и сейчас компилировать можно, но проблема насколько его пакетов могут разрезать. Т.е. могут сделать анализатор отдельно от компилятора(Догатка)

frozenix ★★★
() автор топика
Ответ на: комментарий от frozenix

Ошибся, идет одним исполняемым файлом.

frozenix ★★★
() автор топика

Лучше бы запилили нетормозящий автокомплит в имакс...

А вообще, нововведение одобряю и надеюсь, что другие последуют их примеру.

Deleted
()
Ответ на: комментарий от frozenix

проблема насколько его пакетов могут разрезать

segmentation fault

Т.е. могут сделать анализатор отдельно от компилятора(Догатка)

нет никакого анализатора, есть парсер :)

shty ★★★★★
()
Ответ на: комментарий от Deleted

Пока шланговый автокомплит в креаторе тормозит таки. Ну и косяки с подсветкой синтаксиса и вытягиванием doxygen меток имеются.

Gorthauer ★★★★★
()
Ответ на: комментарий от Gorthauer

и еще он не распознает по элементный for (C++11) и многое другое, по этому это весьма хорошая новость.

а по поводу скорости почитайте статью по ссылке говорят, что precompiled headers могут ускорить авто-комплит (сам не пробывал)

frozenix ★★★
() автор топика
Ответ на: комментарий от Gorthauer

на форуме мне отвечали что стоит передавать компилятор параметрами при запуске cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang

frozenix ★★★
() автор топика
Ответ на: комментарий от frozenix

там в конце должно быть -DCMAKE_CXX_COMPILER=clang++ в кубунте даже на простых примерах сегфолтится...

frozenix ★★★
() автор топика

Интересно, оно будет тормозит? Проблема внешних парсеров в сложности организации инкрементального парсинга, откуда и тормоза.

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

если используете vim там есть скрип авто-дополнения использующий clang, можете проверить. я, к сожалению сделать этого не могу, убунта(

frozenix ★★★
() автор топика
Ответ на: комментарий от Pavval

Так вроде бы clang проектировали с учетом этой проблемы, но я так понимаю пока ещё в самом креаторе что-то недопилено для нормального юзания. Возможно, кеширование пока ещё не слишком хорошо работает.

Gorthauer ★★★★★
()
Ответ на: комментарий от frozenix

Реализации автодополнений vim и emacs используют /usr/bin/clang со всеми вытекающими тормозами и нужностью полного перепарсивания кода при каждом изменении => оно немного тормозит.

ТруЪшный же способ (согласно документации) - это использование libclang (QtCreator, наверное, так и делает) - работать должно намного быстрее.

Deleted
()
Ответ на: комментарий от Deleted

Есть еще автодополнялка на парсере G++, только она ЕМНИП в виде внешней утилиты и должна быть ничем не лучше по скорости.

Pavval ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.