Дефекты исключений C++

Дефекты, связанные с исключениями C++ и их обработкой, такими как необработанное исключение в noexcept функция или неожиданное исключение, вызванное throw оператор

Эти дефекты связаны с обработкой исключений C++. Дефекты включают:

  • Необработанное исключение, излучаемое из noexcept функция

  • Неожиданное исключение, возникающее при построении объекта аргумента throw оператор

  • catch операторы, улавливающие исключения по значению, а не по ссылке

  • catch операторы, скрывающие последующие catch операторы.

Результаты Polyspace

Exception caught by valuecatch оператор принимает объект по значению
Exception handler hidden by previous handlercatch оператор не достигается из-за более раннего catch оператор для того же исключения
Noexcept function exits with exceptionФункции, заданные как noexcept, noexcept(true) или noexcept(<true condition>) выходы за исключением, что приводит к ненормальному прекращению выполнения программы, что приводит к утечке ресурсов и уязвимости безопасности
Throw argument raises unexpected exceptionВыражение аргумента в throw оператор вызывает неожиданные исключения, приводящие к утечкам ресурсов и уязвимостям безопасности

Темы

Группы дефектов Bug Finder

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