@@ -183,9 +183,10 @@ call_trace_func(_PyLegacyEventHandler *self, PyObject *arg)
183
183
184
184
static PyObject *
185
185
sys_trace_exception_func (
186
- _PyLegacyEventHandler * self , PyObject * const * args ,
186
+ PyObject * callable , PyObject * const * args ,
187
187
size_t nargsf , PyObject * kwnames
188
188
) {
189
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
189
190
assert (kwnames == NULL );
190
191
assert (PyVectorcall_NARGS (nargsf ) == 3 );
191
192
PyObject * exc = args [2 ];
@@ -207,39 +208,43 @@ sys_trace_exception_func(
207
208
208
209
static PyObject *
209
210
sys_trace_start (
210
- _PyLegacyEventHandler * self , PyObject * const * args ,
211
+ PyObject * callable , PyObject * const * args ,
211
212
size_t nargsf , PyObject * kwnames
212
213
) {
214
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
213
215
assert (kwnames == NULL );
214
216
assert (PyVectorcall_NARGS (nargsf ) == 2 );
215
217
return call_trace_func (self , Py_None );
216
218
}
217
219
218
220
static PyObject *
219
221
sys_trace_throw (
220
- _PyLegacyEventHandler * self , PyObject * const * args ,
222
+ PyObject * callable , PyObject * const * args ,
221
223
size_t nargsf , PyObject * kwnames
222
224
) {
225
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
223
226
assert (kwnames == NULL );
224
227
assert (PyVectorcall_NARGS (nargsf ) == 3 );
225
228
return call_trace_func (self , Py_None );
226
229
}
227
230
228
231
static PyObject *
229
232
sys_trace_unwind (
230
- _PyLegacyEventHandler * self , PyObject * const * args ,
233
+ PyObject * callable , PyObject * const * args ,
231
234
size_t nargsf , PyObject * kwnames
232
235
) {
236
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
233
237
assert (kwnames == NULL );
234
238
assert (PyVectorcall_NARGS (nargsf ) == 3 );
235
239
return call_trace_func (self , NULL );
236
240
}
237
241
238
242
static PyObject *
239
243
sys_trace_return (
240
- _PyLegacyEventHandler * self , PyObject * const * args ,
244
+ PyObject * callable , PyObject * const * args ,
241
245
size_t nargsf , PyObject * kwnames
242
246
) {
247
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
243
248
assert (!PyErr_Occurred ());
244
249
assert (kwnames == NULL );
245
250
assert (PyVectorcall_NARGS (nargsf ) == 3 );
@@ -251,19 +256,21 @@ sys_trace_return(
251
256
252
257
static PyObject *
253
258
sys_trace_yield (
254
- _PyLegacyEventHandler * self , PyObject * const * args ,
259
+ PyObject * callable , PyObject * const * args ,
255
260
size_t nargsf , PyObject * kwnames
256
261
) {
262
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
257
263
assert (kwnames == NULL );
258
264
assert (PyVectorcall_NARGS (nargsf ) == 3 );
259
265
return call_trace_func (self , args [2 ]);
260
266
}
261
267
262
268
static PyObject *
263
269
sys_trace_instruction_func (
264
- _PyLegacyEventHandler * self , PyObject * const * args ,
270
+ PyObject * callable , PyObject * const * args ,
265
271
size_t nargsf , PyObject * kwnames
266
272
) {
273
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
267
274
assert (kwnames == NULL );
268
275
assert (PyVectorcall_NARGS (nargsf ) == 2 );
269
276
PyFrameObject * frame = PyEval_GetFrame ();
@@ -313,9 +320,10 @@ trace_line(
313
320
314
321
static PyObject *
315
322
sys_trace_line_func (
316
- _PyLegacyEventHandler * self , PyObject * const * args ,
323
+ PyObject * callable , PyObject * const * args ,
317
324
size_t nargsf , PyObject * kwnames
318
325
) {
326
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
319
327
assert (kwnames == NULL );
320
328
PyThreadState * tstate = _PyThreadState_GET ();
321
329
if (tstate -> c_tracefunc == NULL ) {
@@ -339,9 +347,10 @@ sys_trace_line_func(
339
347
* Handle that case here */
340
348
static PyObject *
341
349
sys_trace_jump_func (
342
- _PyLegacyEventHandler * self , PyObject * const * args ,
350
+ PyObject * callable , PyObject * const * args ,
343
351
size_t nargsf , PyObject * kwnames
344
352
) {
353
+ _PyLegacyEventHandler * self = (_PyLegacyEventHandler * )callable ;
345
354
assert (kwnames == NULL );
346
355
PyThreadState * tstate = _PyThreadState_GET ();
347
356
if (tstate -> c_tracefunc == NULL ) {
@@ -513,48 +522,50 @@ setup_tracing(PyThreadState *tstate, Py_tracefunc func, PyObject *arg, PyObject
513
522
if (!tstate -> interp -> sys_trace_initialized ) {
514
523
tstate -> interp -> sys_trace_initialized = true;
515
524
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
516
- (vectorcallfunc )sys_trace_start , PyTrace_CALL ,
517
- PY_MONITORING_EVENT_PY_START , PY_MONITORING_EVENT_PY_RESUME )) {
525
+ sys_trace_start , PyTrace_CALL ,
526
+ PY_MONITORING_EVENT_PY_START ,
527
+ PY_MONITORING_EVENT_PY_RESUME )) {
518
528
return -1 ;
519
529
}
520
530
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
521
- ( vectorcallfunc ) sys_trace_throw , PyTrace_CALL ,
522
- PY_MONITORING_EVENT_PY_THROW , -1 )) {
531
+ sys_trace_throw , PyTrace_CALL ,
532
+ PY_MONITORING_EVENT_PY_THROW , -1 )) {
523
533
return -1 ;
524
534
}
525
535
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
526
- ( vectorcallfunc ) sys_trace_return , PyTrace_RETURN ,
527
- PY_MONITORING_EVENT_PY_RETURN , -1 )) {
536
+ sys_trace_return , PyTrace_RETURN ,
537
+ PY_MONITORING_EVENT_PY_RETURN , -1 )) {
528
538
return -1 ;
529
539
}
530
540
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
531
- ( vectorcallfunc ) sys_trace_yield , PyTrace_RETURN ,
532
- PY_MONITORING_EVENT_PY_YIELD , -1 )) {
541
+ sys_trace_yield , PyTrace_RETURN ,
542
+ PY_MONITORING_EVENT_PY_YIELD , -1 )) {
533
543
return -1 ;
534
544
}
535
545
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
536
- (vectorcallfunc )sys_trace_exception_func , PyTrace_EXCEPTION ,
537
- PY_MONITORING_EVENT_RAISE , PY_MONITORING_EVENT_STOP_ITERATION )) {
546
+ sys_trace_exception_func , PyTrace_EXCEPTION ,
547
+ PY_MONITORING_EVENT_RAISE ,
548
+ PY_MONITORING_EVENT_STOP_ITERATION )) {
538
549
return -1 ;
539
550
}
540
551
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
541
- ( vectorcallfunc ) sys_trace_line_func , PyTrace_LINE ,
542
- PY_MONITORING_EVENT_LINE , -1 )) {
552
+ sys_trace_line_func , PyTrace_LINE ,
553
+ PY_MONITORING_EVENT_LINE , -1 )) {
543
554
return -1 ;
544
555
}
545
556
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
546
- ( vectorcallfunc ) sys_trace_unwind , PyTrace_RETURN ,
547
- PY_MONITORING_EVENT_PY_UNWIND , -1 )) {
557
+ sys_trace_unwind , PyTrace_RETURN ,
558
+ PY_MONITORING_EVENT_PY_UNWIND , -1 )) {
548
559
return -1 ;
549
560
}
550
561
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
551
- ( vectorcallfunc ) sys_trace_jump_func , PyTrace_LINE ,
552
- PY_MONITORING_EVENT_JUMP , -1 )) {
562
+ sys_trace_jump_func , PyTrace_LINE ,
563
+ PY_MONITORING_EVENT_JUMP , -1 )) {
553
564
return -1 ;
554
565
}
555
566
if (set_callbacks (PY_MONITORING_SYS_TRACE_ID ,
556
- ( vectorcallfunc ) sys_trace_instruction_func , PyTrace_OPCODE ,
557
- PY_MONITORING_EVENT_INSTRUCTION , -1 )) {
567
+ sys_trace_instruction_func , PyTrace_OPCODE ,
568
+ PY_MONITORING_EVENT_INSTRUCTION , -1 )) {
558
569
return -1 ;
559
570
}
560
571
}
0 commit comments