exponenta event banner

управляемый

Выполнение анализа Polyspace

Синтаксис

run(proj, product)

Описание

status = run(proj, product) выполняет анализ Prover™ Polyspace ® Bug Finder™ или Polyspace Code с использованием конфигурации, указанной в polyspace.Project объект proj. Результаты анализа также хранятся в proj.

Входные аргументы

развернуть все

Проект Polyspace с конфигурацией и результатами, указанный как polyspace.Project объект.

Тип выполняемого анализа.

Выходные аргументы

развернуть все

Состояние анализа. Если анализ выполнен успешно, статус: false. В противном случае это true.

Анализ может завершиться неудачей по нескольким причинам:

  • Вы предоставляете несуществующие исходные файлы.

  • Ни один из файлов не компилируется. Даже если компилируется один файл, если не задано свойство StopWithCompileError кому true, анализ успешен и возвращает false статус.

Может быть много других причин, по которым анализ не проходит. Если анализ завершается неуспешно, проверьте файл журнала в папке результатов. Просмотреть папку результатов можно с помощью Configuration имущества polyspace.Project объект:

proj = polyspace.Project;
proj.Configuration.ResultsDir
Имя файла журнала Polyspace_R20##n_ProjectName_date-time.log.

Примеры

развернуть все

Выполните анализ Polyspace Bug Finder в демонстрационном файле numerical.c. Настройте следующие параметры:

  • Укажите GCC 4.9 в качестве компилятора.

  • Сохранение результатов в results подпапка текущей рабочей папки.

proj = polyspace.Project

% Configure analysis
proj.Configuration.Sources = {fullfile(polyspaceroot, 'polyspace', ... 
    'examples', 'cxx', 'Bug_Finder_Example', 'sources', 'numerical.c')};
proj.Configuration.TargetCompiler.Compiler = 'gnu4.9';
proj.Configuration.ResultsDir = fullfile(pwd,'results');

% Run analysis
bfStatus = run(proj, 'bugFinder');

% Read results
bfSummary = proj.Results.getSummary('defects');
Представлен в R2017b