Я использую catch2 в качестве основы для модульного тестирования. Один тест должен проверить, приводит ли вызов функции к возникновению исключения, поэтому я в основном пишу
REQUIRE_THROWS (class.throwingFun (arg1, arg2));
Что происходит: функция выдает и тест завершается неудачей. Глядя на стек вызовов, я вижу, что cra sh происходит из-за исключения, сгенерированного в вызове моей функции-члена throwing. Что может go ошибиться здесь, чтобы выброшенное исключение не было перехвачено REQUIRE_THROWS, а завершило весь тест?
Редактировать: Поскольку это сложный проект с закрытым исходным кодом, я не могу составить минимальный и воспроизводимый пример этого вопроса. Однако, возможно, кто-то столкнулся с подобной ошибкой и мог бы предположить, что может вызвать такое поведение.