diff --git a/alib2common/src/abstraction/CastRegistry.cpp b/alib2common/src/abstraction/CastRegistry.cpp
index 9fabc80935987295d2f9d994ddde2937fd70a256..a862a01ec269907554a5927c736d1ecc7cee6e12 100644
--- a/alib2common/src/abstraction/CastRegistry.cpp
+++ b/alib2common/src/abstraction/CastRegistry.cpp
@@ -27,7 +27,7 @@ std::shared_ptr < abstraction::OperationAbstraction > CastRegistry::getAbstracti
 }
 
 bool CastRegistry::isNoOp ( const std::string & target, const std::string & param ) {
-	return ext::erase_template_info ( param ) == ext::erase_template_info ( target );
+	return ext::is_same_type ( ext::erase_template_info ( target ), ext::erase_template_info ( param ) );
 }
 
 bool CastRegistry::castAvailable ( const std::string & target, const std::string & param ) {