Описание тега static-analysis

"Статический анализ" относится к программным инструментам (или их использованию) для анализа кода приложения на предмет произвольных свойств, таких как ошибки (неинициализированные переменные, возможная атака с использованием SQL-инъекций, является ли этот код мертвым, может ли аргумент иметь значение null,...) или структура (каков граф вызовов для этого кода? есть ли повторяющийся код? какая информация передается между компонентами?).
5 ответов

Как заставить использование аннотации @Override?

Существует ли инструмент статического анализа, который может принудительно применять аннотацию @Override, который можно запускать вне среды IDE? CheckStyle имеет проверку MissingOverride, но он применяется только к методам, которые используют тег Ji…
6 ответов

Как я могу проверить соединение сигнала / слота во время компиляции?

Проверка звонков в слоте Qt connect во время выполнения - это проблема для меня. Я должен иметь возможность запустить статическую проверку операторов подключения. Существует ли такой инструмент?
03 янв '12 в 09:39
1 ответ

Подавить никогда не используемые предупреждения для автоматически связанных обработчиков событий в Cppcheck

Я использую Cppcheck 1.70 для проверки проектов C++-Builder. Я получаю много предупреждений о стиле, как это [source\DbgRecMain.cpp:452]: (style) The function 'FormResize' is never used. Эти функции являются обработчиками событий, которые используют…
15 сен '15 в 11:14
1 ответ

Какие инструменты анализа программ для Delphi поддерживают системы непрерывной интеграции?

Какие инструменты статического или динамического анализа программ для Delphi обеспечивают интеграцию с программным обеспечением непрерывной интеграции (CI)? Например, эти (с открытым исходным кодом и коммерческие) CI системы: Хадсон / Дженкинс Атлас…
1 ответ

Работа с точными / неточными значениями DomainValues ​​в абстрактной интерпретации является OPAL

В моем OPAL-анализе я создаю доменные значения следующим образом: domain.TypedValue(org.opalj.ai.parameterToValueIndex( caller.isStatic, caller.descriptor, index), typeApproximation.upperTypeBound) В моих объектах typeApproximation у меня есть инфор…
24 июн '16 в 09:06
3 ответа

Существуют ли метрики кода, которые будут охватывать переменную область видимости?

Пытаясь получить представление о том, насколько сложно поддерживать какой-либо устаревший код C++ и C#, а также о том, есть ли риск появления в нем ошибок, было высказано предположение, что было бы полезно измерить, насколько широко или узко определ…
15 янв '13 в 10:19
0 ответов

Анкова с помощью переменной, выбранной из цикла (R)

У меня есть 1000 зависимых переменных (у) для использования в Ancova. Независимые переменные (x) одинаковы во всех моделях. Yvar1, Yvar2, …, Yvar1000, x1, x2 1 2 5 11 16 2 3 6 18 23 Мне нужен код R, который заменяет example$Y.to.use значения для каж…
14 июн '14 в 19:50
1 ответ

Haskell `hlint`, как я могу добавить подсказку для неправильного отступа, конечных пробелов и т. Д.?

Я пытался использовать hlint пакет, но он не дает никаких предупреждений или конфигурации для: замыкающие пробелы последняя пустая строка пробелы между аргументами ограничить отступ табуляции избыточные линии и другой материал опций lint, который от…
29 авг '18 в 19:41
2 ответа

Инструментарий кодов C/C++ с использованием LLVM

Я только что прочитал о проекте LLVM и о том, что его можно использовать для статического анализа кодов C/C++ с использованием анализатора Clang, входящего в LLVM. Я хотел знать, возможно ли извлечь все обращения к памяти (переменные, локальные и гл…
23 сен '11 в 08:58
2 ответа

Статический анализ и символическое исполнение в реализации

Чем отличается реализация статического анализа от символьного исполнения?
2 ответа

Как обнаружить бреши API в C++

Как я могу обнаружить несовместимые изменения API в C++? (не ABI, а изменения API) Где совместимые изменения - это вещи, которые не могут нарушить компиляцию кода с использованием API, например: параметры добавлены в метод с аргументом по умолчанию …
05 окт '15 в 20:39
0 ответов

Найти избыточные вызовы функций в дереве вызовов?

У меня есть функция, которую я считаю, вызывается несколько раз в одном и том же пути кода - как c() в приведенном здесь примере. Есть ли способ статически найти то, что пути кода вызывают c()и посмотреть, не приведет ли какой-либо из этих путей к и…
21 май '14 в 18:07
0 ответов

nDepend - сборка {имя сборки} не синхронизирована с соответствующими данными покрытия

При импорте файла данных покрытия VSTS в проект NDepend появляется сообщение об ошибке "Сборка {имя сборки} не синхронизирована с соответствующими данными покрытия"., В этом проекте анализируются 3 сборки, и данные покрытия для 3 сборок группируются…
19 сен '11 в 19:42
2 ответа

Анализ аппликативных функторов

Я пытался узнать о статическом анализе аппликативных функторов. Многие источники говорят, что преимуществом их использования по сравнению с монадами является склонность к статическому анализу. Однако единственный пример, который я могу найти для вып…
15 дек '13 в 02:54
3 ответа

Какие-либо инструменты статического анализа, которые помогают обнаруживать проблемы с процессором?

Наша команда много лет управляла кодовой базой на встроенном процессоре с прямым порядком байтов (10+). Как правило, мы не удосужились рассмотреть вопросы порядка байтов во время этой разработки и обслуживания этого встроенного кода. Вскоре мы перем…
06 авг '10 в 18:56
0 ответов

Используйте clang-tidy для исходных файлов CUDA

Существует несколько инструментов статического анализа, разработанных для C/C++, но они не особенно полезны для тестирования источников CUDA. Поскольку clang версии 6 способен компилировать CUDA, я хотел проверить, какие у меня варианты с использова…
18 ноя '17 в 01:25
0 ответов

Существуют ли какие-либо средства проверки синтаксических правил с открытым исходным кодом для языка Си?

Я обнаружил Frama-c, но он был в основном сосредоточен на семантической, а не на синтаксической проверке правил. Так есть ли какой-нибудь инструмент проверки синтаксиса с открытым исходным кодом, который может выполнять проверку синтаксиса, а также …
03 июн '15 в 08:41
2 ответа

Как указать CodeAnalysisRules в MSBuild через командную строку

Я хочу иметь возможность указать Code AnalysisRules в командной строке MSBuild (для анализа кода / FXCOP). В файле проекта будет что-то вроде этого: <CodeAnalysisRules>-Microsoft.Globalization#CA1301;-Microsoft.Globalization#CA1302</CodeAna…
1 ответ

Можно ли иметь методы класса шаблона, использующие AliasSeq в d/dlang?

Я хотел бы скомпилировать что-то вроде следующего: import std.meta: AliasSeq; import std.stdio: writeln; class Bag { template fill(alias types) { void fill() { writeln("Do stuff"); } } } void main(){ auto bag = new Bag(); alias stuff = AliasSeq!(int…
04 дек '15 в 01:02
1 ответ

Как найти все поля для чтения / записи с помощью Clang?

Учитывая исходный код C++, я хочу найти поля класса, которые каждая функция пишет и читает. Каков наилучший способ сделать это с помощью внешнего интерфейса Clang? (Я не прошу подробного объяснения всех шагов; однако отправная точка для эффективного…