** Пожалуйста, участвуйте в этом опросе, чтобы получить функцию, запланированную мной **
CPPCHECK - это статический инструмент анализа для кода C/C ++. Он обеспечивает уникальный анализ кода для обнаружения ошибок и фокусируется на обнаружении неопределенного поведения и опасных конструкций кодирования. Цель состоит в том, чтобы иметь очень мало ложных срабатываний. CPPCHECK разработан, чтобы иметь возможность анализировать ваш код C/C ++, даже если он имеет нестандартный синтаксис (общий в встроенных проектах).
Создать cppcheck.yml под .github/workflows со следующим содержимым
name : cppcheck-action-test
on : [push]
jobs :
build :
name : cppcheck-test
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here name : cppcheck-action
on : [push]
jobs :
build :
name : cppcheck
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
check_library :
skip_preprocessor :
enable :
exclude_check :
inconclusive :
inline_suppression :
force_language :
force :
max_ctu_depth :
platform :
std :
output_file :
other_options :
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here| Вариант | Ценить | Описание | По умолчанию |
|---|---|---|---|
| check_library | enable , disable | Показать информационные сообщения, когда библиотечные файлы имеют неполную информацию | disable |
| skip_preprocessor | enable , disable | Печать препроцессорного вывода на stdout и не делать дальнейшей обработки | disable |
| давать возможность | all , warning , style , performance , portability , information , unusedFunction , missingInclude | Включить дополнительные проверки. Если вы хотите включить несколько проверок одновременно, разделить их , используя без какого -либо пустого места. Пример: style,warning,performance | all |
| exclude_check | ./path/to/ignore | Дайте файл или путь каталога, чтобы исключить из проверки. Пример: ./no_check.cpp | Нечего игнорировать |
| неубедительный | enable , disable | Разрешить этому CPPCHECK, даже если анализ неубедительный | enable |
| inline_suppression | enable , disable | Включить встроенные подавления. Используйте их, разместив один или несколько комментариев, например: '// cppcheck-suppress warningid' | disable |
| force_language | c , c++ | Заставляет CPPCHECK проверять все файлы как данное язык. Допустимые значения: c , c++ | автоматическое обнаружено |
| сила | enable , disable | Проверка проверки всех конфигураций в файлах | disable |
| max_ctu_depth | number | Максимальная глубина в анализе всей программы. Большее значение будет означать больше ошибок, но также означает, что анализ будет медленнее. Пример: 4 | 2 |
| платформа | unix32 , unix64 , win32A , win32W , win64 , avr8 , elbrus-e1cp , pic8 , pic8-enhanced , pic16 , mips32 , native , unspecified , | Указывает конкретные типы и размеры платформы | unspecified |
| std | c89 , c99 , c11 , c++11 , c++14 , c++17 , c++20 | Установите стандарт C/C ++ | c11 , c++20 |
| output_file | ./path/to/output/file.txt | Дайте имя файла для вывода отчета | ./cppcheck_report.txt |
| other_options | --option1 --option2=value -opt3 | Любые другие параметры, которые вы хотите добавить, разделяйте с пространством, неправильные варианты вызовут сбой. Пример: --bug-hunting --verbose | disable |
Для получения дополнительной информации проверьте документы CPPCHECK
MIT Лицензия
Авторские права (C) 2021 Dipankar Pal
Настоящим дается разрешение, бесплатно, любому лицу, получающему копию этого программного обеспечения и связанные с ними файлы документации («Программное обеспечение»), чтобы иметь дело в программном обеспечении без ограничений, включая, без ограничения, права на использование, копирование, изменение, объединение, публикацию, распределение, сублиценность и/или продавать копии программного обеспечения и разрешения лиц, на которые программное обеспечение подходит для того, чтобы поступить так, чтобы поступить на следующие условия: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: на следующие условия: к следующим условиям: на следующие условия: на следующие условия.
Вышеуказанное уведомление об авторском праве и это уведомление о разрешении должно быть включено во все копии или существенные части программного обеспечения.
Программное обеспечение предоставляется «как есть», без гарантии любого рода, явного или подразумеваемого, включая, помимо прочего, гарантии товарной пригодности, пригодности для определенной цели и несоответствия. Ни в коем случае авторы или владельцы авторских прав не будут нести ответственность за любые претензии, убытки или другую ответственность, будь то в действии контракта, деликт или иным образом, возникающие из или в связи с программным обеспечением или использованием или другими сделками в программном обеспечении.
Значки, сделанные Freepik от www.flaticon.com
Спасибо этим замечательным людям (ключ эмодзи):
Бадер | Стефан Хаген ? |
Этот проект следует за спецификацией всех контролей. Взносы любого вида приветствуются!