Статический анализ покрытия для программ на Си
Я новичок в инструменте статического анализа и пытаюсь создать простой инструмент проверки. Когда я выбрасываю OUTPUT_ERROR, я также получаю некоторые подробности с такими тегами, как "cond_true" и т. Д. Есть ли способ, которым я могу заглушить их и распечатать только ту ошибку, которую хочу увидеть.
Благодарю.
2 ответа
Этот вопрос касается написания средства проверки с использованием Extend SDK. Существует два типа средств проверки расширения: чувствительные к потоку и нечувствительные к потоку. Документация по расширению объясняет, как выбрать тип средства проверки. Чувствительные к потоку шашки испускаютcond_true
события, потому что они показывают конкретный путь потока управления, на котором была обнаружена проблема; их нельзя подавить. Нечувствительные к потоку шашки их не испускают, так что, возможно, вы захотите их использовать.
Сначала вы должны использовать cov-build для создания промежуточных файлов. С помощью этой команды вам нужно указать make (makefile). После этого он создаст файл emit, о котором вы упоминали в команде cov-build.
Затем вы должны использовать cov-analysis для создания отчета об анализе. Если найдены какие-либо ошибки, значит, они вернутся на терминал.
Чтобы показать, что ошибки в html-файле, вы должны использовать cov-format-errors. Эта команда создаст каталог ошибок. В этом каталоге вы можете найти html-статистический отчет для вашего проанализированного кода.
Примеры команд:
(если программа находится в той же папке (bin), она создаст файл emit в текущем каталоге (bin / emit)).
cov-build --dir. gcc hi.c
(если вы хотите собрать для одного файла.c)
ИЛИ ЖЕ
cov-build --dir. делать
(для использования команды make Вы должны создать make-файл.(vi make-файл в bin, напишите свой собственный скрипт о компиляции программ, которые будут собираться с помощью cov-build))
cov-analysis - dir.
cov-format-errors --dir.