Комментарии 27
По поводу «это все же С++ код а не С».
Могу ошибаться, но когда в 4.9 кажется? gcc стал использовать С++ в своих исходниках, в рассылке обсуждалось полиси для этого — что в основном будут использовать С++ для применения шаблонов для сокращения повторов кода и кодогенерации. Использовать все возможности языка вроде как не планировалось. Кто сейчас активно участвует в контрибьюте в проект, меня поправит. так что там даже не «С с классами» а какая-то странная разновидность «C with benefits».
Могу ошибаться, но когда в 4.9 кажется? gcc стал использовать С++ в своих исходниках, в рассылке обсуждалось полиси для этого — что в основном будут использовать С++ для применения шаблонов для сокращения повторов кода и кодогенерации. Использовать все возможности языка вроде как не планировалось. Кто сейчас активно участвует в контрибьюте в проект, меня поправит. так что там даже не «С с классами» а какая-то странная разновидность «C with benefits».
+2
Самое интересное — это багрепорт в GNU и реакция разработчиков GCC на найденные ошибки.
+1
Я бы снизил ожидания насчёт реакции, а то разрабы не очень эмоциональный народ)
Возможная реакция
+9
Кстати, оказывается даже proof есть!
Вот баг в GCC, отписанный коллегой в 2017. Баг подтверждён: gcc.gnu.org/bugzilla/show_bug.cgi?id=80051 И по ныне присутствует в коде. Вот и вся реакция. :)
Вот баг в GCC, отписанный коллегой в 2017. Баг подтверждён: gcc.gnu.org/bugzilla/show_bug.cgi?id=80051 И по ныне присутствует в коде. Вот и вся реакция. :)
0
Какая-то у вас гну на КПДВ анорексичная.
Намекаете что в опен-сорсе денег нет?
На логотипе GNU она вполне себе упитанная.
www.gnu.org
Намекаете что в опен-сорсе денег нет?
На логотипе GNU она вполне себе упитанная.
www.gnu.org
+2
Ну давайте теперь CPython)
+4
Я бы не стал подходить так критично, вы сами заметили, что разработчики «своего» продукта сами хорошо его знают. И это хорошо.
Но так же давно перестал читать мантры про макросы, goto и т.д. Это нормально, а тем более когда знаешь что ты делаешь. И это часто встречается в исходных кодах и известных крупных компаний.
Но так же давно перестал читать мантры про макросы, goto и т.д. Это нормально, а тем более когда знаешь что ты делаешь. И это часто встречается в исходных кодах и известных крупных компаний.
-3
В чём состоит проблема со статическим анализом макросов? Они же раскрываются по простым правилам.
0
Проблема в том, что с точки зрения анализатора, раскрытый код не имеет смысла/аномален. Например, всегда истинные/ложные условия, неиспользуемые переменные и т.д.
0
По опыту, в PVS сравнительно больше проверок для выявление copy-paste ошибок.
Тем не менее, сам я пользуюсь Coverity Scan по ряду веских причин:
- доступен для OpenSource бесплатно и без танцев с бубном;
- есть workflow для сгенерированных предупреждений с хранением состояния в БД, тут стоит пояснить:
- "fix submited" позволяет автоматически закрывать issue при их реальном исправлении.
- предупреждения помеченные единожды как "false-positive" или "intentional" не будут больше мозолить глаза (но останутся в "облаке" и их можно пересмотреть).
- игнорируемые предупреждения не будут всплывать в других проектах использующих этот (даже для git-subtree и амальгамированного кода).
- анализ и результаты в облаке с web-интерфейсом, что идеально для opensource.
0
На всякий случай прокомментирую, чтобы была ясность и одинаковая трактовка вопросов.
Некоторый танец с бубном есть для закрытых проектов (добавление комментариев в код). Но так Coverity Scan для закрытых проектов вообще ничего не предоставляет.
доступен для OpenSource бесплатно и без танцев с бубном;Мне кажется, «танцев с бубном» это преувеличение. Достаточно запросить ключ и можно пользоваться: "Бесплатный PVS-Studio для тех, кто развивает открытые проекты".
Некоторый танец с бубном есть для закрытых проектов (добавление комментариев в код). Но так Coverity Scan для закрытых проектов вообще ничего не предоставляет.
есть workflow для сгенерированных предупреждений с хранением состояния в БД, тут стоит пояснить:Похожее есть и в PVS-Studio. Можно использовать базу разметки предупреждений.
+1
НЛО прилетело и опубликовало эту надпись здесь
Если есть возможность проверьте пожалуйста мой проект.
github.com/SharMisha/MSH
github.com/SharMisha/MSH
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Проверка компилятора GCC 10 с помощью PVS-Studio