exponenta event banner

Не создавать результаты для (-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

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

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

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

all-headers

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

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

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

custom

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

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

Совет

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

    При выборе custom и значения для двух вариантов конфликтуют, более конкретное значение определяет отображение результатов. Например, в следующих примерах значение опции Генерировать результаты для источников и является более конкретным.

    Создание результатов для источников иНе создавать результаты дляОкончательный результат

    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 для этой опции результаты подавляются во всех файлах заголовков независимо от того, что указано для опции Генерировать результаты для источников и.

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

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

     Правила MISRA C: 2004

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

     Правила MISRA C++

     Правила JSF C++

      Дефекты поиска ошибок Polyspace

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

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

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

Параметр: -do-not-generate-results-for
Значение: all-headers | include-folders | custom=file1[,file2[,...]] | custom=folder1[,folder2[,...]]
Пример (поиск ошибок): polyspace-bug-finder -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom="C:\usr\include"
Пример (проверка кода): polyspace-code-prover -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom="C:\usr\include"
Пример (сервер поиска ошибок): polyspace-bug-finder-server -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom="C:\usr\include"
Пример (сервер проверки кода): polyspace-code-prover-server -lang c -sources file_name -misra2 required-rules -do-not-generate-results-for custom="C:\usr\include"
Представлен в R2016a