Issue 20410: Argument Clinic: add 'self' return converter (original) (raw)
It would be nice to have a 'self' return converter for simple functions like winreg.HKEYType.enter (which is implemented as "Py_XINCREF(self); return self;"). With the typedef and type_object specifications now required for the class directive, 'self' is passed to that function as a PyHKEYObject *, but impl is expected to return a PyObject *.
In this particular instance, I can solve the problem (which is a compiler warning) with a custom self_return_converter that casts _return_value to PyObject *. I think a generic solution would be better in the long run and useful in more places, though.