Do not generate results for (-do-not-generate-results-for)

Укажите файлы, в которых вы не хотите результаты анализа

Описание

Укажите файлы, в которых вы не хотите получать результаты анализа.

По умолчанию результаты не отображаются в файлах заголовков (если они не находятся в той же папке, что и исходные файлы). Можно использовать эту опцию, чтобы подавить результаты из некоторых исходных файлов (или из заголовочных файлов в тех же папках, что и исходные файлы). Если вы используете опцию Generate results for sources and (-generate-results-for) чтобы показать результаты в некоторых папках включения, можно использовать эту опцию для подавления результатов из некоторых подпапок или файлов, включая папки.

Опция применяется только к нарушениям правил кодирования, метрикам кода и неиспользованным глобальным переменным. Вы не можете подавить проверки во время выполнения Code Prover из исходных и заголовочных файлов.

Задать опцию

Пользовательский интерфейс (только для настольных продуктов): В строении проекта опция находится на узле Inputs & Stubbing.

Командная строка и файл опций: Используйте опцию -do-not-generate-results-for. См. «Информация о командной строке».

Зачем использовать эту опцию

Используйте эту опцию, чтобы увидеть результаты в файлах заголовков, которые наиболее актуальны для вас.

Например, по умолчанию результаты генерируются в файлах заголовков, которые находятся в той же папке, что и исходные файлы. Если вы не заинтересованы в рассмотрении результатов в этих заголовках, измените значение по умолчанию этой опции.

Обратите внимание, что в Polyspace as You Code поведение по умолчанию состоит в том, чтобы даже не анализировать заголовки в неисточниковых папках. Можно использовать эту опцию, чтобы расширить возможности анализируемых файлов для всех заголовков или другого подмножества заголовков. Смотрите также Возможности анализа Polyspace as You Кода (Polyspace Bug Finder Access).

Настройки

По умолчанию: include-folders

include-folders

Результаты не генерируются для заголовочных файлов в папках включения (и их подпапках).

Папки с включением являются папками, которые вы добавляете в Include папку вашего Polyspace® проект (или использование с аргументом -I в командной строке).

Если папка include является подпапкой исходной папки, результаты генерируются для файлов, содержащих папку, даже если вы задаете значение опции include-folders. В этой ситуации используйте значение опции custom и явным образом укажите папки включения, которые нужно игнорировать.

all-headers

Результаты генерируются не для всех заголовочных файлов. Заголовочные файлы могут находиться в той же папке, что и исходные файлы, в подпапках исходных файловых папок или в папках включения.

Исходными файлами являются файлы, которые вы добавляете в Source папку вашего проекта Polyspace (или используете с аргументом -sources в командной строке).

Папки include - это папки, которые вы добавляете в Include папку вашего проекта Polyspace (или используете с аргументом -I в командной строке).

custom

Результаты не генерируются для заданных файлов. Если вы вводите имя папки, результаты подавляются из файлов в этой папке (и ее подпапках).

Щелкните, чтобы добавить поле. Введите имя файла или папки.

Совет

  1. Используйте эту опцию в комбинации с соответствующими значениями для опции Generate results for sources and (-generate-results-for).

    Если вы выбираете custom и значения для конфликта двух опций, более конкретное значение определяет отображение результатов. Например, в следующих примерах значение для Generate results for sources and опции является более конкретным.

    Generate results for sources andDo not generate results forКонечный результат

    custom:

    C:\Includes\Custom_Library\

    custom:

    C:\Includes

    Результаты отображаются в файлах заголовков в C:\Includes\Custom_Library\ и его подпапки, но не сгенерированные для других заголовочных файлов в C:\Includes.

    custom:

    C:\Includes\my_header.h

    custom:

    C:\Includes\

    Результаты отображаются в заголовочном файле my_header.h в C:\Includes\ но не сгенерирован для других заголовочных файлов в C:\Includes\ и его подпапки.

    Используя эти две опции вместе, можно подавить результаты из всех файлов в определенной папке, но не поддерживать выбранные файлы в этих папках.

  2. Если вы выбираете all-headers для этой опции результаты подавляются из всех заголовочных файлов независимо от того, что вы задаете для Generate results for sources and опции.

  3. Если дефект или нарушение правил кодирования включают два файла, и вы не генерируете результаты для одного из файлов, дефект или нарушение правил все еще появляется. Например, если вы задаете две переменные с похожими по виду именами в файлах myFile.cpp и myFile.h, вы получаете нарушение MISRA® Правило C++ 2-10-1, даже если вы не генерируете результаты для myFile.h. Правило 2-10-1 MISRA C++ утверждает, что различные идентификаторы должны быть типографски однозначными.

    Следующие результаты могут включать более одного файла:

     MISRA C: Правила 2004

     MISRA C: 2012 Директивы и правила

     Правила MISRA C++

     Правила JSF C++

     Дефекты Polyspace Bug Finder

  4. Если глобальная переменная никогда не используется после объявления, она появляется в результатах Code Prover как неиспользованная глобальная переменная. Однако, если он объявлен в файле, для которого вы не хотите результаты, вы не видите неиспользованную переменную в результатах верификации.

  5. Если результат (нарушение правил кодирования или дефект Bug Finder) находится внутри макроса, Polyspace обычно показывает результат определения макроса вместо вхождений макроса, так что вы просматриваете результат только один раз. Даже если макрос используется в подавленном файле, результат все равно отображается в определении макроса, если определение происходит в неподдерживаемом файле.

Информация о командной строке

Параметр: -do-not-generate-results-for
Значение: all-headers | include-folders | custom = file1[, file2[,...]] | custom = folder1[, folder2[,...]]
Пример (Bug Finder): Polyspace Bug Finder -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom = «C :\usr\include»
Пример (Code Prover): Polyspace Code Prover -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom = «C :\usr\include»
Пример (Bug Finder Server): polyspace-bug-finder-server -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom = «C :\usr\include»
Пример (Код Prover Server): Полипространство -code-prover-server -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom = «C :\usr\include»
Введенный в R2016a