diff options
Diffstat (limited to 'tests/CaffeCifar10AcrossChannels-Armnn')
-rw-r--r-- | tests/CaffeCifar10AcrossChannels-Armnn/CaffeCifar10AcrossChannels-Armnn.cpp | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/tests/CaffeCifar10AcrossChannels-Armnn/CaffeCifar10AcrossChannels-Armnn.cpp b/tests/CaffeCifar10AcrossChannels-Armnn/CaffeCifar10AcrossChannels-Armnn.cpp index 9994bb5431..fbd3312f04 100644 --- a/tests/CaffeCifar10AcrossChannels-Armnn/CaffeCifar10AcrossChannels-Armnn.cpp +++ b/tests/CaffeCifar10AcrossChannels-Armnn/CaffeCifar10AcrossChannels-Armnn.cpp @@ -8,8 +8,22 @@ int main(int argc, char* argv[]) { - return armnn::test::ClassifierInferenceTestMain<Cifar10Database, armnnCaffeParser::ICaffeParser>( - argc, argv, "cifar10_full_iter_60000.caffemodel", true, "data", "prob", - { 0, 1, 2, 4, 7 }, - [](const char* dataDir) { return Cifar10Database(dataDir); }); + int retVal = EXIT_FAILURE; + try + { + // Coverity fix: ClassifierInferenceTestMain() may throw uncaught exceptions. + retVal = armnn::test::ClassifierInferenceTestMain<Cifar10Database, armnnCaffeParser::ICaffeParser>( + argc, argv, "cifar10_full_iter_60000.caffemodel", true, "data", "prob", + { 0, 1, 2, 4, 7 }, + [](const char* dataDir) { return Cifar10Database(dataDir); }); + } + catch (const std::exception& e) + { + // Coverity fix: BOOST_LOG_TRIVIAL (typically used to report errors) may throw an + // exception of type std::length_error. + // Using stderr instead in this context as there is no point in nesting try-catch blocks here. + std::cerr << "WARNING: CaffeCifar10AcrossChannels-Armnn: An error has occurred when running " + "the classifier inference tests: " << e.what() << std::endl; + } + return retVal; } |