diff --git a/ConversionUtils.hpp b/ConversionUtils.hpp
index b9c4d41..5837d3d 100644
--- a/ConversionUtils.hpp
+++ b/ConversionUtils.hpp
@@ -3065,17 +3065,19 @@
     desc.m_TransposeWeightMatrix = true;
     desc.m_BiasEnabled           = true;
 
-    if (!VerifyFullyConnectedShapes(reshapedInfo.GetShape(),
-                                    weights.GetInfo().GetShape(),
-                                    outputInfo.GetShape(),
-                                    desc.m_TransposeWeightMatrix))
-    {
-        return Fail("%s: Expected outputShape does not match actual outputShape", __func__);
-    }
-
     bool isSupported = false;
     auto validateFunc = [&](const armnn::TensorInfo& outputInfo, bool& isSupported)
     {
+        if (!VerifyFullyConnectedShapes(reshapedInfo.GetShape(),
+                                        weights.GetInfo().GetShape(),
+                                        outputInfo.GetShape(),
+                                        desc.m_TransposeWeightMatrix))
+        {
+            isSupported = false;
+            Fail("%s: Expected outputShape does not match actual outputShape", __func__);
+            return;
+        }
+
         FORWARD_LAYER_SUPPORT_FUNC(__func__,
                                IsFullyConnectedSupported,
                                data.m_Backends,
