diff --git a/inference-engine/src/cldnn_engine/cldnn_program.cpp b/inference-engine/src/cldnn_engine/cldnn_program.cpp index 19abf81843c..58299007b7c 100644 --- a/inference-engine/src/cldnn_engine/cldnn_program.cpp +++ b/inference-engine/src/cldnn_engine/cldnn_program.cpp @@ -4910,6 +4910,12 @@ void Program::AddOutputPrimitive(cldnn::topology& topology, std::string outputNa // Find correct output ID. Start with name stored in IR. std::string outputID = outLayerName; + // This can happen when an output has invalid connections with previous layer and + // it's not handled by CreateSingleLayerPrimitive method + if (primitiveIDs.find(outLayerName) == primitiveIDs.end()) { + THROW_IE_EXCEPTION << "Can't find output with name " << outLayerName; + } + std::string finalID = primitiveIDs.at(outLayerName); while (outputID != finalID) {