IVGCVSW-6428 Remove asserts
* Changed asserts to check for errors and return appropriate values or
throw exceptions
* Changed unit tests to use Doctest's long macro names as the short
macro names clashed with Android's Logging macros
* Removed unused #includes
* Clarified ambiguous #includes
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ice92a37590df727fd581d3be5ff2716665f26a13
diff --git a/ModelToINetworkConverter.cpp b/ModelToINetworkConverter.cpp
index 4665ef1..2dc302e 100644
--- a/ModelToINetworkConverter.cpp
+++ b/ModelToINetworkConverter.cpp
@@ -1,5 +1,5 @@
//
-// Copyright © 2017 Arm Ltd. All rights reserved.
+// Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
@@ -35,7 +35,6 @@
{
m_ConversionResult = ConversionResult::UnsupportedFeature;
ALOGE("%s: Unexpected exception: %s", __func__, e.what());
- assert(false);
}
}
@@ -194,7 +193,12 @@
const std::string layerName = "Output_" + std::to_string(i);
armnn::IConnectableLayer* layer = m_Data.m_Network->AddOutputLayer(i, layerName.c_str());
- assert(m_Data.m_OutputSlotForOperand[outputIndex]);
+ if (!m_Data.m_OutputSlotForOperand[outputIndex])
+ {
+ Fail("%s: OutputSlot %i does not exist", __func__, outputIndex);
+ m_ConversionResult = ConversionResult::UnsupportedFeature;
+ break;
+ }
m_Data.m_OutputSlotForOperand[outputIndex]->Connect(layer->GetInputSlot(0));
}
}
@@ -210,7 +214,10 @@
bool ModelToINetworkConverter<HalPolicy>::IsOperationSupported(uint32_t operationIndex) const
{
std::map<uint32_t, bool>::const_iterator it = m_OperationSupported.find(operationIndex);
- assert(it != m_OperationSupported.end());
+ if (it == m_OperationSupported.end())
+ {
+ return Fail("%s: Unrecognised Operation Index: %i", __func__, operationIndex);
+ }
return it->second;
}