Линтеры, форматтеры, анализаторы кода
От: _NN_ www.nemerleweb.com
Дата: 11.03.19 10:14
Оценка:
Поделитесь как вы поддерживаете единый стиль кода лишённого глупых ошибок и опечаток ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
Re: Линтеры, форматтеры, анализаторы кода
От: koenjihyakkei Россия  
Дата: 11.03.19 10:16
Оценка:
Здравствуйте, _NN_, Вы писали:

_NN>Поделитесь как вы поддерживаете единый стиль кода лишённого глупых ошибок и опечаток ?


uncrustify + clang-tidy
Re: Линтеры, форматтеры, анализаторы кода
От: Skorodum Россия  
Дата: 11.03.19 11:08
Оценка: +1
Здравствуйте, _NN_, Вы писали:

_NN>Поделитесь как вы поддерживаете единый стиль кода лишённого глупых ошибок и опечаток ?

.clang-format

Можно тут поиграться.
Re: Линтеры, форматтеры, анализаторы кода
От: Zhendos  
Дата: 12.03.19 15:54
Оценка: 1 (1)
Здравствуйте, _NN_, Вы писали:

_NN>Поделитесь как вы поддерживаете единый стиль кода лишённого глупых ошибок и опечаток ?


clang-format, clang-static-analyzer, clazy (специфичный для Qt,
но один из самых полезных, если используется Qt конечно)
Re[2]: Линтеры, форматтеры, анализаторы кода
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.04.19 02:09
Оценка:
Здравствуйте, koenjihyakkei, Вы писали:

K>uncrustify + clang-tidy


А clang-tidy на какой платформе? Я тут довольно тщетно пытаюсь его на Windows заставить работать
Re[3]: Линтеры, форматтеры, анализаторы кода
От: koenjihyakkei Россия  
Дата: 14.04.19 07:51
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>А clang-tidy на какой платформе? Я тут довольно тщетно пытаюсь его на Windows заставить работать


Linux(RHEL). Про виндовз не знаю, сто лет под нее не писал. Но cmake, начиная, по-моему, с 3 версии, из коробки поддерживает clang-tidy.
Re[4]: Линтеры, форматтеры, анализаторы кода
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 14.04.19 08:09
Оценка:
Здравствуйте, koenjihyakkei, Вы писали:

K>Linux(RHEL). Про виндовз не знаю, сто лет под нее не писал. Но cmake, начиная, по-моему, с 3 версии, из коробки поддерживает clang-tidy.


Поддерживает, на UNIX-ах. На Windows выходит вот такая штука, которую я уже второй день победить не могу:

10: error: 'bla-bla-bla' file not found [clang-diagnostic-error]


Есть ощущение, что "из коробки" в случае с Windows не достаточно. На всякий случай, как выглядит "из коробки", может я упускаю что-то:

set_property(
    TARGET ${PROJECT}
    PROPERTY CXX_CLANG_TIDY ${clang_tidy}
)
Re[5]: Линтеры, форматтеры, анализаторы кода
От: koenjihyakkei Россия  
Дата: 14.04.19 08:49
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Поддерживает, на UNIX-ах. На Windows выходит вот такая штука, которую я уже второй день победить не могу:


KP>
KP>10: error: 'bla-bla-bla' file not found [clang-diagnostic-error]
KP>


KP>Есть ощущение, что "из коробки" в случае с Windows не достаточно. На всякий случай, как выглядит "из коробки", может я упускаю что-то:


KP>
KP>set_property(
KP>    TARGET ${PROJECT}
KP>    PROPERTY CXX_CLANG_TIDY ${clang_tidy}
KP>)
KP>


Посмотрел, у нас до сих пор запуск происходит через run-clang-tidy.py, то есть не через сам cmake.
У вас, такое ощущение, что cmake не все инклюд директории передает клангу, и он не видит какой-то файл. Попробуйте явно передать директории через -extra-arg='-I<dir>'
Re[6]: Линтеры, форматтеры, анализаторы кода
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 15.04.19 01:06
Оценка:
Здравствуйте, koenjihyakkei, Вы писали:

K>У вас, такое ощущение, что cmake не все инклюд директории передает клангу, и он не видит какой-то файл. Попробуйте явно передать директории через -extra-arg='-I<dir>'


Команда CMake PROPERTY CXX_CLANG_TIDY как раз это и делает. Я уже и с compile.json безуспешно попытался экспериментировать. Есть ощущение что на Windows это просто никогда и не работало
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.