@@ -384,14 +384,32 @@ pub struct PyUFuncObject {
384384 pub core_offsets : * mut c_int ,
385385 pub core_signature : * mut c_char ,
386386 pub type_resolver : PyUFunc_TypeResolutionFunc ,
387+
388+ #[ cfg( not( Numpy_2_0 ) ) ]
389+ pub legacy_inner_loop_selector : PyUFunc_LegacyInnerLoopSelectionFunc ,
390+ #[ cfg( all( Numpy_2_0 , not( Numpy_2_2 ) ) ) ]
391+ pub reserved2 : * mut c_void ,
392+ #[ cfg( Numpy_2_2 ) ]
387393 pub dict : * mut PyObject ,
388394
389- #[ cfg( all( Py_3_8 , not( Py_LIMITED_API ) ) ) ]
395+ #[ cfg( not( Numpy_1_21 ) ) ]
396+ pub reserved2 : * mut c_void ,
397+ #[ cfg( all( Numpy_1_21 , not( Numpy_1_22 ) , Py_3_8 ) ) ]
398+ pub vectorcall : Option < vectorcallfunc > ,
399+ #[ cfg( all( Numpy_1_21 , not( Numpy_1_22 ) , not( Py_3_8 ) ) ) ]
400+ pub reserved2 : * mut c_void ,
401+ #[ cfg( all( Numpy_1_22 , Py_3_8 , not( Py_LIMITED_API ) ) ) ]
390402 pub vectorcall : Option < vectorcallfunc > ,
391- #[ cfg( not( all( Py_3_8 , not( Py_LIMITED_API ) ) ) ) ]
403+ #[ cfg( all ( Numpy_1_22 , not( all( Py_3_8 , not( Py_LIMITED_API ) ) ) ) ) ]
392404 pub vectorcall : * mut c_void ,
393405
406+ #[ cfg( not( Numpy_1_22 ) ) ]
407+ pub masked_inner_loop_selector : PyUFunc_MaskedInnerLoopSelectionFunc ,
408+ #[ cfg( all( Numpy_1_22 , not( Numpy_2_0 ) ) ) ]
409+ pub _always_null_previously_masked_innerloop_selector : * mut c_void ,
410+ #[ cfg( Numpy_2_0 ) ]
394411 pub reserved3 : * mut c_void ,
412+
395413 pub op_flags : * mut npy_uint32 ,
396414 pub iter_flags : npy_uint32 ,
397415
@@ -432,6 +450,8 @@ pub type PyUFunc_TypeResolutionFunc = Option<
432450 * mut * mut PyArray_Descr ,
433451 ) -> c_int ,
434452> ;
453+
454+ #[ cfg( not( Numpy_2_0 ) ) ]
435455pub type PyUFunc_LegacyInnerLoopSelectionFunc = Option <
436456 unsafe extern "C" fn (
437457 * mut PyUFuncObject ,
@@ -441,6 +461,8 @@ pub type PyUFunc_LegacyInnerLoopSelectionFunc = Option<
441461 * mut c_int ,
442462 ) -> c_int ,
443463> ;
464+
465+ #[ cfg( not( Numpy_1_22 ) ) ]
444466pub type PyUFunc_MaskedInnerLoopSelectionFunc = Option <
445467 unsafe extern "C" fn (
446468 * mut PyUFuncObject ,
0 commit comments