4848import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .PY_SSIZE_T_PTR ;
4949import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .Pointer ;
5050import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .PyObject ;
51+ import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .PyObjectTransfer ;
5152import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .PyTypeObject ;
5253import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .Py_ssize_t ;
5354import static com .oracle .graal .python .builtins .objects .cext .capi .transitions .ArgDescriptor .SIZE_T ;
@@ -127,9 +128,9 @@ public enum NativeCAPISymbol implements NativeCExtSymbol {
127128 FUN_PY_TRUFFLE_INITIALIZE_STORAGE_ITEM ("PyTruffle_InitializeStorageItem" , ArgDescriptor .Void , Pointer , Int , PyObject ),
128129 FUN_PY_OBJECT_GET_DICT_PTR ("_PyObject_GetDictPtr" , Pointer , PyObject ),
129130 FUN_PY_OBJECT_GENERIC_SET_DICT ("PyObject_GenericSetDict" , Int , PyObject , PyObject , Pointer ),
130- FUN_PY_OBJECT_NEW ("PyTruffle_Object_New" , PyObject , PyTypeObject ),
131+ FUN_PY_OBJECT_NEW ("PyTruffle_Object_New" , PyObjectTransfer , PyTypeObject ),
131132 FUN_PY_TYPE_READY ("PyType_Ready" , Int , PyTypeObject ),
132- FUN_PY_TYPE_GENERIC_ALLOC ("PyType_GenericAlloc" , PyObject , PyTypeObject , Py_ssize_t ),
133+ FUN_PY_TYPE_GENERIC_ALLOC ("PyType_GenericAlloc" , PyObjectTransfer , PyTypeObject , Py_ssize_t ),
133134 FUN_PY_OBJECT_GC_DEL ("PyObject_GC_Del" , Void , Pointer ),
134135 FUN_GET_BUFFER_R ("get_buffer_r" , Int , PyObject , Pointer ),
135136 FUN_GET_BUFFER_RW ("get_buffer_rw" , Int , PyObject , Pointer ),
@@ -143,22 +144,22 @@ public enum NativeCAPISymbol implements NativeCExtSymbol {
143144 FUN_BULK_DEALLOC ("PyTruffle_bulk_DEALLOC" , Py_ssize_t , Pointer , INT64_T ),
144145 FUN_SHUTDOWN_BULK_DEALLOC ("PyTruffle_shutdown_bulk_DEALLOC" , Py_ssize_t , Pointer , INT64_T ),
145146 FUN_TRUFFLE_ADD_SUBOFFSET ("truffle_add_suboffset" , Pointer , Pointer , Py_ssize_t , Py_ssize_t ),
146- FUN_PY_TRUFFLE_MEMORYVIEW_FROM_OBJECT ("PyTruffle_MemoryViewFromObject" , PyObject , PyObject , Int ),
147+ FUN_PY_TRUFFLE_MEMORYVIEW_FROM_OBJECT ("PyTruffle_MemoryViewFromObject" , PyObjectTransfer , PyObject , Int ),
147148 FUN_PY_TRUFFLE_RELEASE_BUFFER ("PyTruffle_ReleaseBuffer" , ArgDescriptor .Void , Pointer ),
148149 FUN_PY_SEQUENCE_CHECK ("PySequence_Check" , Int , PyObject ),
149150 FUN_PY_SEQUENCE_SIZE ("PySequence_Size" , Py_ssize_t , PyObject ),
150- FUN_PY_SEQUENCE_GET_ITEM ("PySequence_GetItem" , PyObject , PyObject , Py_ssize_t ),
151+ FUN_PY_SEQUENCE_GET_ITEM ("PySequence_GetItem" , PyObjectTransfer , PyObject , Py_ssize_t ),
151152 FUN_PY_SEQUENCE_SET_ITEM ("PySequence_SetItem" , Int , PyObject , Py_ssize_t , PyObject ),
152153 FUN_PY_SEQUENCE_DEL_ITEM ("PySequence_DelItem" , Int , PyObject , Py_ssize_t ),
153- FUN_TUPLE_SUBTYPE_NEW ("tuple_subtype_new" , PyObject , PyTypeObject , PyObject ),
154- FUN_BYTES_SUBTYPE_NEW ("bytes_subtype_new" , PyObject , PyTypeObject , Pointer , Py_ssize_t ),
155- FUN_FLOAT_SUBTYPE_NEW ("float_subtype_new" , PyObject , PyTypeObject , ArgDescriptor .Double ),
156- FUN_COMPLEX_SUBTYPE_FROM_DOUBLES ("complex_subtype_from_doubles" , PyObject , PyTypeObject , ArgDescriptor .Double , ArgDescriptor .Double ),
157- FUN_EXCEPTION_SUBTYPE_NEW ("exception_subtype_new" , PyObject , PyTypeObject , PyObject ),
154+ FUN_TUPLE_SUBTYPE_NEW ("tuple_subtype_new" , PyObjectTransfer , PyTypeObject , PyObject ),
155+ FUN_BYTES_SUBTYPE_NEW ("bytes_subtype_new" , PyObjectTransfer , PyTypeObject , Pointer , Py_ssize_t ),
156+ FUN_FLOAT_SUBTYPE_NEW ("float_subtype_new" , PyObjectTransfer , PyTypeObject , ArgDescriptor .Double ),
157+ FUN_COMPLEX_SUBTYPE_FROM_DOUBLES ("complex_subtype_from_doubles" , PyObjectTransfer , PyTypeObject , ArgDescriptor .Double , ArgDescriptor .Double ),
158+ FUN_EXCEPTION_SUBTYPE_NEW ("exception_subtype_new" , PyObjectTransfer , PyTypeObject , PyObject ),
158159 FUN_SUBCLASS_CHECK ("truffle_subclass_check" , Int , PyObject ),
159160 FUN_BASETYPE_CHECK ("truffle_BASETYPE_check" , Int , PyObject ),
160161 FUN_MEMCPY_BYTES ("truffle_memcpy_bytes" , ArgDescriptor .Void , Pointer , SIZE_T , Pointer , SIZE_T , SIZE_T ),
161- FUN_UNICODE_SUBTYPE_NEW ("unicode_subtype_new" , PyObject , PyTypeObject , PyObject ),
162+ FUN_UNICODE_SUBTYPE_NEW ("unicode_subtype_new" , PyObjectTransfer , PyTypeObject , PyObject ),
162163 FUN_CHECK_BASESIZE_FOR_GETSTATE ("tuffle_check_basesize_for_getstate" , Int , PyTypeObject , Int ),
163164 FUN_MMAP_INIT_BUFFERPROTOCOL ("mmap_init_bufferprotocol" , ArgDescriptor .Void , PyTypeObject ),
164165 FUN_TRUFFLE_CHECK_TYPE_READY ("truffle_check_type_ready" , ArgDescriptor .Void , PyTypeObject ),
0 commit comments