URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 113717
[ Назад ]

Исходное сообщение
"Релиз свободного статического анализатора кода fragma-clang ..."

Отправлено opennews , 02-Мрт-18 09:19 
Состоялся (http://frama-c.com/frama-clang.html) релиз fragma-clang 0.0.5, плагина  для Сlang на базе свободной платформы для статического анализа кода Fragma-C (http://frama-c.com/). Несмотря на то, что проект существует около года, он уже является рабочим полнофункциональным анализатором кода, написанного на языках Си и Си++, выявляющим возможные проблемы в файлах .cpp, .c++, .C, .cxx, .cc и .ii (файлы препроцессора). Плагин Fragma-C для Clang поставляется под смешанной лицензией LGPL/BSD.

URL: http://frama-c.com/frama-clang.html
Новость: https://www.opennet.me/opennews/art.shtml?num=48174


Содержание

Сообщения в этом обсуждении
"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 09:19 
"Гори-гори ясно, чтобы не погасло!"

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 09:35 
Гори оно огнём, если там шланг.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Ne01eX , 02-Мрт-18 09:49 
> Гори оно огнём, если там шланг.

Fragma-C отдельный статический анализатор. fragma-clang отдельный плагин для Clang. Мухи отдельно, котлеты отдельно.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 19:08 
Он не fragma, а frama.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Mezozoysky , 02-Мрт-18 12:06 
Пардон за оффтоп. А в чем проблема шланга? 4 года использую, как основной компилятор на работе и дома и за это время не уловил, чем он принципиально хуже гцц. Поясните, плз, если не сложно.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Ю.Т. , 02-Мрт-18 15:05 
Мол, несвободный в сымсле ГПЛ.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Mezozoysky , 02-Мрт-18 15:31 
Странная история. У них годная свободная лицензия - свободная, в том числе, от ограничений копилефта. Не вижу проблемы здесь.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 17:10 
> Не вижу проблемы здесь.

А она есть.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 03-Мрт-18 13:32 
Мы помним чем закончилась BSDшная свобода, кода всякими проприетарными бздами руки выворачивали. А потом пришел GPLный Linux - и наконец стало хорошо. Без произвола полутора корпораций.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 03-Мрт-18 20:20 
мы все помним как GPL-ный линукс умолял дать им лицензию на дрова к ath wifi, OpenBSD дал.
А потом этот самый линукс зажал отдавать правки, вот же жлобы..

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 04-Мрт-18 04:23 
> мы все помним как GPL-ный линукс умолял дать им лицензию на дрова
> к ath wifi, OpenBSD дал.

А что значит умолял? Если BSDшную шапку не удалять, никакие лицензии не нарушаются. А то что линуксоиды пишут свой код под GPL, логично. Это и не дает им превратиться в дамп токсичных корпоративных отходов типа всяких freebsd. Куда отработанный код сливают в абы каком виде а майнтайнит это потом пусть А.С.Пушкин. А OpenBSD это вообще отличный образец - нихрена не работает, сервера оплачивает чуть ли не лично Тео, а проприетарные паразиты растаскивают код себе в норы. Так что потом Тео же и плакается выклянчивая деньги, потому что иначе дескать счета за электричество оплачивать нечем. Наверное именно так и надо взаимодействовать, когда апстрим на котором все держится - пресмыкается. Но знаете, апстриму однажды может надоесть работать работу и пресмыкаться. И тут халява для акул бизнеса может резко и внезапно закончиться.

> А потом этот самый линукс зажал отдавать правки, вот же жлобы..

Если вы хотели коммиты назад, наверное лицензию надо было писать иначе. А так - "лицензия позволяет". Так что если проприерасам можно, то и остальным тоже. Задолбали со своими двойными стандартами, когда перед проприетарщиками ноги раздвигаются, а остальным почему-то фига. Лицензии для всех одинаковые, ниипет. Если хотите чего-то иное, вот и пишите в лицензии именно это. Формализация пожеланий спасает от кучи проблем.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 04-Мрт-18 15:44 
> Если BSDшную шапку не удалять, никакие лицензии не нарушаются.
> А то что линуксоиды пишут свой код под GPL, логично

http://lkml.org/lkml/2007/8/28/157
> The files are available only under GPLv2 since now.

И шапку удалил и лицензию сменил, забыв спросить авторов )

> Если вы хотели коммиты назад, наверное лицензию надо было писать иначе. А
> так - "лицензия позволяет". Так что если проприерасам можно, то и
> остальным тоже. Задолбали со своими двойными стандартами, когда перед проприетарщиками
> ноги раздвигаются, а остальным почему-то фига. Лицензии для всех одинаковые, ниипет.
> Если хотите чего-то иное, вот и пишите в лицензии именно это.
> Формализация пожеланий спасает от кучи проблем.

http://lkml.org/lkml/2007/9/5/131
> I'm the author of the free hardware driver layer for wireless Atheros devices in OpenBSD, also known as "OpenHAL".
> Some time ago, I got repeated requests to change the license of the code to GPL or to dual-license it but I always rejected these requests. I clearly explained my reasons against dual-licensing in the past. It needed some time, but it had seemed to me that the involved people had finally accepted my decision.

Ответ на вопрос автора
>> - Are there any plans to release the "ath5k" code using a modified/"extended" license?
> No.

Смотрите дети внимательно! Двойные стандарты, это теперь вот так!
Главное, не забыть первым упрекнуть в использовании двойных стандартов )



"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 17:09 
Clang производит объектный код, который медленнее и больше чем объектный код, производимый GCC. Особенно для не-х86.

Немного пруфлинков:

https://github.com/android-ndk/ndk/issues/495
https://github.com/android-ndk/ndk/issues/21
https://github.com/android-ndk/ndk/issues/133


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 19:29 
Выглядит не очень убедительно. По одной ссылке просела скорость, а про размер ничего не говорится. По другой вырос размер, но скорость увеличилась. По третьей тоже вырос размер, но гораздо меньше. Логично предположить, что это нормальные флуктуации; у кого-то наверняка с clang стало лучше, но они, естественно, не идут на это жаловаться в багтрекер.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 20:15 
Мой опыт подтверждает, что Clang генерит код хуже, чем GCC. И по скорости, и по размеру. Итого, у меня есть мой опыт и 3 ссылки, а у вас только недоверие к моим ссылкам.

У Мозиллы на Андроиде бинарник на 30% больше с Clang-ом, чем с GCC - это неубедительно? Ну ОК.

Если хотите, чтоб было убедительно - проведите свои тесты, опубликуйте результаты, всем будет полезно.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 21:06 
У нас комплексное приложение, которое требовательно по части производительности и по потреблению памяти (embedded). Так вот, ощутимой разницы между gcc и clang абсолютно никакой нет. Даже при программировании микроконтроллеров никто не задумывается о тестировании разных компиляторов (при реальной разработке), - берут то, что работает.

Не могу представить, чем нужно заниматься, чтобы примерно +/-1% разницы играл роль, при том, что в общей сумме всей частей приложения скорее всего разница будет стремиться к нулю.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 03-Мрт-18 13:41 
> У нас комплексное приложение,

Понятно, с этого надо было начинать - в отличие от конкретных пруфлинков мы не увидим от вас никакой конкретики, зато маркетингового булшита - будет.

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

Странно, почему же я тогда прогнал бенчи на cortex M3 с разными версиями gcc и ключами? Может быть, потому что мне нужен и компактный и быстрый код? И желательно все и сразу? Особенно на микроконтроллере, где камень с дополнительным объемом флеша стоит дороже :)

> Не могу представить, чем нужно заниматься, чтобы примерно +/-1% разницы играл роль,

Какой к черту 1%? В зависимости от флагов, набора команд, и того бреда который компилер выдал разница может быть до 30% по коду и до пары раз по скорости. И это в пределах одного семейства компилеров, в зависимости от того насколько компилятор в неудачном месте ступил.

> при том, что в общей сумме всей частей приложения скорее всего
> разница будет стремиться к нулю.

Гугля вон в своем кодеке давится за 0.03% улучшений а вам, значит, 1% не величина? Ну вот поэтому где гугл, а где вы. Хотя кто б спорил - впарить гамна за много денег любители "комплексных приложений" размахивающие BSDшными свободами любят.

А зажатый сорц вам случайно нужен не для того чтобы клиентура не догадалась как вы их нае...ете феерично? :)


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 03-Мрт-18 20:23 
> А зажатый сорц вам случайно нужен не для того чтобы клиентура не
> догадалась как вы их нае...ете феерично? :)

В этом все больные GPL-мозга. Все им кажется что их ... . это болезнь батенька.
Сходите к психиатру - он вылечит.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 04-Мрт-18 04:28 
Кто и кого вылечит - это мы еще будем посмотреть. GPL изменил мир и не буду скрывать - очень приятно когда проприетарных жлоборасов выносит в пользу открытых решений, которые не заюимают никому ничего и не устраивают внезапные кидки. А сам факт открытости проекта как-то стал гарантировать определенные зрительские симпатии с самого начала. Давая солидные репутационные преимущества относительно жадных м...ков.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 04-Мрт-18 10:39 
>> может быть до 30%

Здесь есть люди, которые знакомы с математикой, статистикой и пределами. Поэтому частные "может быть" здесь вряд ли таковых впечатлят. Сделайте комплексное приложение из хотя бы 5 процессов (в каждом из которых ещё и потоки работают), придумайте, как замерять его производительность (выполнение конечной задачи), тогда и хвалитесь своими парой процентов.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Ne01eX , 02-Мрт-18 09:41 
Не погаснет, я думаю. :-) В отличии от проприетарных продуктов, здесь есть полная возможность для развития (как плагина для Сlang, так и Fragma-С) силами сообщества. :-)

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено sadasd , 02-Мрт-18 16:33 
Силами сообщества можно развивать что-то небольшое, а такие крупные вещи как компилятор только сообществом не разовьешь. Вот и получается, что корпорасты забирают то что делает сообщество, а свое держат при себе. В том-же GCC вечно патчи то от Intel, то еще от кого появляются.
Тот-же illumos сильно силами сообщества развивается?

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено x0r , 02-Мрт-18 10:14 
Классная штука, но похоже задолбаешься собирать

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Ne01eX , 02-Мрт-18 11:03 
А под какой дистрибутив надо?

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено x0r , 02-Мрт-18 11:21 
centos 6

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Вареник , 02-Мрт-18 10:15 
Успехов проекту!

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 10:25 
Как оно в сравнении со scan-build?

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Ne01eX , 02-Мрт-18 10:40 
Да вроде не делал никто таких сравнений. Ниша свободна, можете попробовать fragma-clang и отписаться по результатам.  Будьте первопроходцем. :-)

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 13:06 
Не, не буду. Вспомнил, что пробовал его безо всяких шлангов. Чтобы был толк, надо добавлять в код ACSL-аннотации, иначе вывалит кучу фолсов. То есть годится только при написании новых проектов с нуля, если готов заморочиться.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 11:24 
PVS-Studioкапец?

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено leap42 , 02-Мрт-18 12:46 
ещё с момента появления

cppcheck -q -x c --enable=all --suppress=missingIncludeSystem .

прост у cppcheck отдел маркетинга послабее


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Анонис , 02-Мрт-18 13:03 
нету такой опции -x

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено leap42 , 02-Мрт-18 15:52 
--language=<language>, -x <language>
                         Forces cppcheck to check all files as the given

cppcheck-1.80-1.fc26.x86_64


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 13:08 
> прост у cppcheck отдел маркетинга послабее

cppcheck — искючительно примитивный инструмент. Какие-то элементарные ошибки он вылавливает, конечно, но это совершенно не та весовая категория. Вот scan-build вполне может с пивасом потягаться.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 13:21 
cppcheck умеет согласно Wikipedia (https://ru.wikipedia.org/wiki/Cppcheck)
Проверяет выход за пределы.
Обнаруживает утечки памяти.
Обнаруживает возможное разыменовывание NULL-указателей.
Обнаруживает неинициализированные переменные.
Обнаруживает неправильное использование STL.
Проверяет обработку исключительных ситуаций на безопасность.
Находит устаревшие и неиспользуемые функции.
Предупреждает о неиспользуемом или бесполезном коде.
Находит подозрительные участки кода, которые могут содержать в себе ошибки.

+ можно писать модули расширения га ЛЮБЫЕ проверки


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 13:38 
> согласно Wikipedia

То есть на практике ты его применять не пробовал.


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 13:52 
Прямо сейчас использую. Мои новичковые ошибки ловит.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 14:06 
Новичковые ловит, да. В хелловорлдах. Когда доходит до хитрой разветвлённой логики — ловит уже хуже.
Я не к тому, что cppcheck не надо использовать. Польза от него есть. Но надо и понимать его ограниченность.

"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 02-Мрт-18 21:14 
> Новичковые ловит, да. В хелловорлдах. Когда доходит до хитрой разветвлённой логики —
> ловит уже хуже.
> Я не к тому, что cppcheck не надо использовать. Польза от него
> есть. Но надо и понимать его ограниченность.

Используем на практике. Каждый коммит автоматом проходит проверку. Не проходит, - нет коммита. Находит простые утечки памяти, а с появлением новых версии находит всё более интересные вещи. Например, как-то выяснилось, что не было гарддов у заголовочных определённых файлов, правда из сообщения об ошибке это было очень сложно понять. Особенно незаменимая вещь, когда в команду приходит новенький.

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


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Andrey_Karpov , 02-Мрт-18 22:15 
https://habrahabr.ru/company/pvs-studio/blog/346128/

Удачи с Cppcheck... :)


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Andrey_Karpov , 02-Мрт-18 22:19 
> PVS-Studioкапец?

Ой. Я такие вопросы уже много лет слушу... :) Не бойтесь, мы очень быстро разиваем анализатор. Вот сейчас в процессе символьные вычисления, поддержка Java, учимся искать уязвимости ( https://www.viva64.com/ru/w/v1010/ ).


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Андрей , 03-Мрт-18 03:02 
> PVS-Studioкапец?

Не люблю я подобных фраз. А вот если бы как у frama удалось бы стать open & free software с возможностью коммерческой поддержки - тогда бы точно цены не было!


"Релиз свободного статического анализатора кода fragma-clang ..."
Отправлено Аноним , 03-Мрт-18 13:45 
> Не люблю я подобных фраз. А вот если бы как у frama
> удалось бы стать open & free software с возможностью коммерческой поддержки
> - тогда бы точно цены не было!

Они отстали лет на цать. Кейл они блин поддержали и IAR :). Самые кривые да еще и платные компилеры. Вообще не понимаю зачем ими пользоваться когда gcc есть. Он бесплатный и код генерит очень даже.