@@ -181,22 +181,26 @@ extern PyObject* _Py_MakeCoro(PyFunctionObject *func);
181181
182182/* Handle signals, pending calls, GIL drop request
183183 and asynchronous exception */
184- extern int _Py_HandlePending (PyThreadState * tstate );
184+ PyAPI_FUNC ( int ) _Py_HandlePending (PyThreadState * tstate );
185185
186186extern PyObject * _PyEval_GetFrameLocals (void );
187187
188- extern const binaryfunc _PyEval_BinaryOps [];
189- int _PyEval_CheckExceptStarTypeValid (PyThreadState * tstate , PyObject * right );
190- int _PyEval_CheckExceptTypeValid (PyThreadState * tstate , PyObject * right );
191- int _PyEval_ExceptionGroupMatch (PyObject * exc_value , PyObject * match_type , PyObject * * match , PyObject * * rest );
192- void _PyEval_FormatAwaitableError (PyThreadState * tstate , PyTypeObject * type , int oparg );
193- void _PyEval_FormatExcCheckArg (PyThreadState * tstate , PyObject * exc , const char * format_str , PyObject * obj );
194- void _PyEval_FormatExcUnbound (PyThreadState * tstate , PyCodeObject * co , int oparg );
195- void _PyEval_FormatKwargsError (PyThreadState * tstate , PyObject * func , PyObject * kwargs );
196- PyObject * _PyEval_MatchClass (PyThreadState * tstate , PyObject * subject , PyObject * type , Py_ssize_t nargs , PyObject * kwargs );
197- PyObject * _PyEval_MatchKeys (PyThreadState * tstate , PyObject * map , PyObject * keys );
198- int _PyEval_UnpackIterable (PyThreadState * tstate , PyObject * v , int argcnt , int argcntafter , PyObject * * sp );
199- void _PyEval_FrameClearAndPop (PyThreadState * tstate , _PyInterpreterFrame * frame );
188+ typedef PyObject * (* conversion_func )(PyObject * );
189+
190+ PyAPI_DATA (const binaryfunc ) _PyEval_BinaryOps [];
191+ PyAPI_DATA (const conversion_func ) _PyEval_ConversionFuncs [];
192+
193+ PyAPI_FUNC (int ) _PyEval_CheckExceptStarTypeValid (PyThreadState * tstate , PyObject * right );
194+ PyAPI_FUNC (int ) _PyEval_CheckExceptTypeValid (PyThreadState * tstate , PyObject * right );
195+ PyAPI_FUNC (int ) _PyEval_ExceptionGroupMatch (PyObject * exc_value , PyObject * match_type , PyObject * * match , PyObject * * rest );
196+ PyAPI_FUNC (void ) _PyEval_FormatAwaitableError (PyThreadState * tstate , PyTypeObject * type , int oparg );
197+ PyAPI_FUNC (void ) _PyEval_FormatExcCheckArg (PyThreadState * tstate , PyObject * exc , const char * format_str , PyObject * obj );
198+ PyAPI_FUNC (void ) _PyEval_FormatExcUnbound (PyThreadState * tstate , PyCodeObject * co , int oparg );
199+ PyAPI_FUNC (void ) _PyEval_FormatKwargsError (PyThreadState * tstate , PyObject * func , PyObject * kwargs );
200+ PyAPI_FUNC (PyObject * )_PyEval_MatchClass (PyThreadState * tstate , PyObject * subject , PyObject * type , Py_ssize_t nargs , PyObject * kwargs );
201+ PyAPI_FUNC (PyObject * )_PyEval_MatchKeys (PyThreadState * tstate , PyObject * map , PyObject * keys );
202+ PyAPI_FUNC (int ) _PyEval_UnpackIterable (PyThreadState * tstate , PyObject * v , int argcnt , int argcntafter , PyObject * * sp );
203+ PyAPI_FUNC (void ) _PyEval_FrameClearAndPop (PyThreadState * tstate , _PyInterpreterFrame * frame );
200204
201205
202206/* Bits that can be set in PyThreadState.eval_breaker */
0 commit comments