From 7b3d1e31dbd043ae1ab04fdde70838d7031a2dc6 Mon Sep 17 00:00:00 2001
From: Yohann Bearzi <yohann.bearzi@kitware.com>
Date: Fri, 27 Jan 2023 16:00:40 -0500
Subject: [PATCH] vtkThreadedCallbackQueue: adding missing Signature
 specialization

---
 Parallel/Core/vtkThreadedCallbackQueue.txx | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/Parallel/Core/vtkThreadedCallbackQueue.txx b/Parallel/Core/vtkThreadedCallbackQueue.txx
index 1daa755408c..21187394c47 100644
--- a/Parallel/Core/vtkThreadedCallbackQueue.txx
+++ b/Parallel/Core/vtkThreadedCallbackQueue.txx
@@ -326,6 +326,16 @@ struct vtkThreadedCallbackQueue::Signature<ReturnT (*)(ArgsT...)>
   static constexpr std::size_t ArgsSize = sizeof...(ArgsT);
 };
 
+//=============================================================================
+// For function pointers
+template <class ReturnT, class... ArgsT>
+struct vtkThreadedCallbackQueue::Signature<ReturnT (&)(ArgsT...)>
+{
+  using ArgsTuple = std::tuple<ArgsT...>;
+  using InvokeResult = ReturnT;
+  static constexpr std::size_t ArgsSize = sizeof...(ArgsT);
+};
+
 //=============================================================================
 // For functors
 template <class FT>
-- 
GitLab