[C++-sig] Regression in Boost.Python v1.33

Niall Douglas s_sourceforge at nedprod.com
Fri Oct 14 19:13:25 CEST 2005


On 14 Oct 2005 at 11:08, David Abrahams wrote:

> > The easiest solution is a specialisation for const volatile void, 
> > exampled by the attached registered.hpp.
> 
> Please post a unified diff, so I can easily see what change you're
> proposing.

Attached.

Cheers,
Niall




-------------- next part --------------
--- registered.hpp	2005-05-18 02:34:36.000000000 +0100
+++ registered_.hpp	2005-10-01 00:54:37.000000000 +0100
@@ -78,14 +78,23 @@
   
   template <class T>
   registration const& 
-  registry_lookup(T&(*)())
+  registry_lookup()
   {
       detail::register_shared_ptr1((T*)0);
       return registry::lookup(type_id<T&>());
   }
 
+  template <>
+  registration const& 
+  registry_lookup<const volatile void>()
+  {
+      detail::register_shared_ptr1((void*)0);
+      return registry::lookup(type_id<void>());
+  }
+
   template <class T>
-  registration const& registered_base<T>::converters = detail::registry_lookup((T(*)())0);
+	  registration const& registered_base<T>::converters = detail::registry_lookup<typename remove_reference<T>::type>();
+
 }
 
 }}} // namespace boost::python::converter


More information about the Cplusplus-sig mailing list