From 09c1821dd56f73075280a241502d3e074d0f6cd3 Mon Sep 17 00:00:00 2001
From: Wolfgang Merkt <w.merkt@gmail.com>
Date: Sun, 26 May 2024 05:57:35 +0100
Subject: [PATCH] unittest: Explicitly extract shared_ptr to avoid ambiguity

between shared_ptr& and shared_ptr
---
 unittest/bind_virtual_factory.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/unittest/bind_virtual_factory.cpp b/unittest/bind_virtual_factory.cpp
index f3861cae..373c9782 100644
--- a/unittest/bind_virtual_factory.cpp
+++ b/unittest/bind_virtual_factory.cpp
@@ -72,7 +72,10 @@ struct VirtualClassWrapper : MyVirtualClass, bp::wrapper<MyVirtualClass> {
   }
 
   shared_ptr<MyVirtualData> createData() const override {
-    if (bp::override fo = this->get_override("createData")) return fo();
+    if (bp::override fo = this->get_override("createData")) {
+      bp::object result = fo();
+      return bp::extract<shared_ptr<MyVirtualData>>(result);
+    }
     return default_createData();
   }
 
-- 
GitLab