MISRA C++:2008 Rule 15-5-3

Функция terminate () не должна вызываться неявно

Описание

Определение правила

Функция terminate () не должна вызываться неявно.

Реализация Polyspace

Шашка помечает эти ситуации, когда функцию terminate () можно вызвать неявно:

  • Исключение исчезает. Это также нарушает MISRA C++:2008 Rule 15-3-2. Для образца:

    • Прежде чем исключение будет захвачено, оно исчезнет через другую функцию, которая выдает неоткрытое исключение. Для образца оператор catch или обработчик исключений вызывает конструктор копирования, который выдает неоткрытое исключение.

    • Выдаваемое выражение без операнда повторно выдает неоткрытое исключение.

  • Деструктор классов выдает исключение. Это также нарушает MISRA C++:2008 Rule 15-5-1.

Поиск и устранение проблем

Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».

Проверяйте информацию

Группа: Обработка исключений
Категория: Требуемая
Введенный в R2018a