exponenta event banner

Функции для вызова (-main-generator-calls)

Укажите функции, которые должны быть созданы main для вызова после функций инициализации

Описание

Этот параметр влияет только на анализ программы проверки кода.

Эта опция недоступна для кода, сгенерированного в моделях MATLAB ® или Simulink ®.

Укажите функции, которые должны быть созданы main позвонить. main вызывает эти функции после функций, заданных с помощью опции Initialization functions (-functions-called-before-main).

Задать опцию

Пользовательский интерфейс (только для настольных ПК): в конфигурации проекта этот параметр находится в узле Проверка проверочного кода (Code Prover Verification). Другие параметры, которые также необходимо включить, см. в разделе Зависимости.

файл командной строки и параметров: Использовать параметр -main-generator-calls. См. раздел Сведения о командной строке.

Зачем использовать этот параметр

При проверке модуля или библиотеки средство проверки кода генерирует main функция, если она не существует. Если main существует, анализ использует существующий main.

Используйте эту опцию вместе с опцией Initialization functions (-functions-called-before-main) чтобы указать, какие функции были созданы main должен позвонить. Если функция не вызвана прямо или косвенно из main, программное обеспечение не анализирует функцию.

Настройки

По умолчанию: unused

none

Произведенный main не вызывает никакой функции.

unused

Произведенный main вызывает только те функции, которые не вызываются в исходном коде. Он не вызывает встроенные функции.

all

Произведенный main вызывает все функции, кроме встроенных.

custom

Произведенный main вызывает указанные функции.

Введите имена функций или выберите их из списка.

  • Щелкните для добавления поля и введите имя функции.

  • Щелкните, чтобы перечислить функции в коде. Выберите функции из списка.

Если для определения функции из определенного пространства имен используется оператор разрешения области, введите полное имя, например, myClass::myMethod(int). Если функция не имеет параметра, используйте пустую скобку, например: myClass::myMethod().

Зависимости

Эта опция доступна только при выборе Verify module or library (-main-generator).

Совет

  • Выбрать unused при использовании функции «Проверка проверки кода» > «Независимая проверка файлов».

  • При необходимости создания main для вызова встроенной функции выберите custom и укажите имя функции.

  • Чтобы проверить многозадачное приложение без основного, выберите none.

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

  • Чтобы указать экземпляры шаблонов в качестве аргументов, выполните анализ один раз с аргументом option all. Найдите имя шаблона в журнале анализа и используйте имя шаблона, как оно отображается в журнале анализа для аргумента опции.

    Например, чтобы указать этот экземпляр функции шаблона в качестве аргумента опции:

    template <class T>
    T GetMax (T a, T b) {
      T result;
      result = (a>b)? a : b;
      return (result);
    } 
    template int GetMax<int>(int, int); // explicit instantiation
    
    Выполнение анализа с опцией -main-generator-calls all. Поиск getMax в журнале анализа. Отображается формат функции:
    T1 getMax<int>(T1, T1)
    Чтобы вызвать только этот экземпляр шаблона, удалите пространство между аргументами и используйте параметр:
    -main-generator-calls custom="T1 getMax<int>(T1,T1)"

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

Параметр: -main-generator-calls
Значение: none | unused | all | custom=function1[,function2[,...]]
По умолчанию: unused
Пример (проверка кода): polyspace-code-prover -sources file_name -main-generator -main-generator-calls all
Пример (сервер проверки кода): polyspace-code-prover-server -sources file_name -main-generator -main-generator-calls all