7
7
8
8
typedef double va_double ;
9
9
10
- static PyObject * va_build_value (const char * , va_list , int );
10
+ static PyObject * va_build_value (const char * , va_list );
11
11
12
12
13
13
int
@@ -82,21 +82,21 @@ countformat(const char *format, char endchar)
82
82
/* Generic function to create a value -- the inverse of getargs() */
83
83
/* After an original idea and first implementation by Steven Miale */
84
84
85
- static PyObject * do_mktuple (const char * * , va_list * , char , Py_ssize_t , int );
86
- static int do_mkstack (PyObject * * , const char * * , va_list * , char , Py_ssize_t , int );
87
- static PyObject * do_mklist (const char * * , va_list * , char , Py_ssize_t , int );
88
- static PyObject * do_mkdict (const char * * , va_list * , char , Py_ssize_t , int );
89
- static PyObject * do_mkvalue (const char * * , va_list * , int );
85
+ static PyObject * do_mktuple (const char * * , va_list * , char , Py_ssize_t );
86
+ static int do_mkstack (PyObject * * , const char * * , va_list * , char , Py_ssize_t );
87
+ static PyObject * do_mklist (const char * * , va_list * , char , Py_ssize_t );
88
+ static PyObject * do_mkdict (const char * * , va_list * , char , Py_ssize_t );
89
+ static PyObject * do_mkvalue (const char * * , va_list * );
90
90
91
91
92
92
static void
93
- do_ignore (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n , int flags )
93
+ do_ignore (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n )
94
94
{
95
95
assert (PyErr_Occurred ());
96
96
PyObject * v = PyTuple_New (n );
97
97
for (Py_ssize_t i = 0 ; i < n ; i ++ ) {
98
98
PyObject * exc = PyErr_GetRaisedException ();
99
- PyObject * w = do_mkvalue (p_format , p_va , flags );
99
+ PyObject * w = do_mkvalue (p_format , p_va );
100
100
PyErr_SetRaisedException (exc );
101
101
if (w != NULL ) {
102
102
if (v != NULL ) {
@@ -119,7 +119,7 @@ do_ignore(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
119
119
}
120
120
121
121
static PyObject *
122
- do_mkdict (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n , int flags )
122
+ do_mkdict (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n )
123
123
{
124
124
PyObject * d ;
125
125
Py_ssize_t i ;
@@ -128,27 +128,27 @@ do_mkdict(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
128
128
if (n % 2 ) {
129
129
PyErr_SetString (PyExc_SystemError ,
130
130
"Bad dict format" );
131
- do_ignore (p_format , p_va , endchar , n , flags );
131
+ do_ignore (p_format , p_va , endchar , n );
132
132
return NULL ;
133
133
}
134
134
/* Note that we can't bail immediately on error as this will leak
135
135
refcounts on any 'N' arguments. */
136
136
if ((d = PyDict_New ()) == NULL ) {
137
- do_ignore (p_format , p_va , endchar , n , flags );
137
+ do_ignore (p_format , p_va , endchar , n );
138
138
return NULL ;
139
139
}
140
140
for (i = 0 ; i < n ; i += 2 ) {
141
141
PyObject * k , * v ;
142
142
143
- k = do_mkvalue (p_format , p_va , flags );
143
+ k = do_mkvalue (p_format , p_va );
144
144
if (k == NULL ) {
145
- do_ignore (p_format , p_va , endchar , n - i - 1 , flags );
145
+ do_ignore (p_format , p_va , endchar , n - i - 1 );
146
146
Py_DECREF (d );
147
147
return NULL ;
148
148
}
149
- v = do_mkvalue (p_format , p_va , flags );
149
+ v = do_mkvalue (p_format , p_va );
150
150
if (v == NULL || PyDict_SetItem (d , k , v ) < 0 ) {
151
- do_ignore (p_format , p_va , endchar , n - i - 2 , flags );
151
+ do_ignore (p_format , p_va , endchar , n - i - 2 );
152
152
Py_DECREF (k );
153
153
Py_XDECREF (v );
154
154
Py_DECREF (d );
@@ -169,7 +169,7 @@ do_mkdict(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
169
169
}
170
170
171
171
static PyObject *
172
- do_mklist (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n , int flags )
172
+ do_mklist (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n )
173
173
{
174
174
PyObject * v ;
175
175
Py_ssize_t i ;
@@ -179,13 +179,13 @@ do_mklist(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
179
179
refcounts on any 'N' arguments. */
180
180
v = PyList_New (n );
181
181
if (v == NULL ) {
182
- do_ignore (p_format , p_va , endchar , n , flags );
182
+ do_ignore (p_format , p_va , endchar , n );
183
183
return NULL ;
184
184
}
185
185
for (i = 0 ; i < n ; i ++ ) {
186
- PyObject * w = do_mkvalue (p_format , p_va , flags );
186
+ PyObject * w = do_mkvalue (p_format , p_va );
187
187
if (w == NULL ) {
188
- do_ignore (p_format , p_va , endchar , n - i - 1 , flags );
188
+ do_ignore (p_format , p_va , endchar , n - i - 1 );
189
189
Py_DECREF (v );
190
190
return NULL ;
191
191
}
@@ -204,7 +204,7 @@ do_mklist(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
204
204
205
205
static int
206
206
do_mkstack (PyObject * * stack , const char * * p_format , va_list * p_va ,
207
- char endchar , Py_ssize_t n , int flags )
207
+ char endchar , Py_ssize_t n )
208
208
{
209
209
Py_ssize_t i ;
210
210
@@ -214,9 +214,9 @@ do_mkstack(PyObject **stack, const char **p_format, va_list *p_va,
214
214
/* Note that we can't bail immediately on error as this will leak
215
215
refcounts on any 'N' arguments. */
216
216
for (i = 0 ; i < n ; i ++ ) {
217
- PyObject * w = do_mkvalue (p_format , p_va , flags );
217
+ PyObject * w = do_mkvalue (p_format , p_va );
218
218
if (w == NULL ) {
219
- do_ignore (p_format , p_va , endchar , n - i - 1 , flags );
219
+ do_ignore (p_format , p_va , endchar , n - i - 1 );
220
220
goto error ;
221
221
}
222
222
stack [i ] = w ;
@@ -240,7 +240,7 @@ do_mkstack(PyObject **stack, const char **p_format, va_list *p_va,
240
240
}
241
241
242
242
static PyObject *
243
- do_mktuple (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n , int flags )
243
+ do_mktuple (const char * * p_format , va_list * p_va , char endchar , Py_ssize_t n )
244
244
{
245
245
PyObject * v ;
246
246
Py_ssize_t i ;
@@ -249,13 +249,13 @@ do_mktuple(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
249
249
/* Note that we can't bail immediately on error as this will leak
250
250
refcounts on any 'N' arguments. */
251
251
if ((v = PyTuple_New (n )) == NULL ) {
252
- do_ignore (p_format , p_va , endchar , n , flags );
252
+ do_ignore (p_format , p_va , endchar , n );
253
253
return NULL ;
254
254
}
255
255
for (i = 0 ; i < n ; i ++ ) {
256
- PyObject * w = do_mkvalue (p_format , p_va , flags );
256
+ PyObject * w = do_mkvalue (p_format , p_va );
257
257
if (w == NULL ) {
258
- do_ignore (p_format , p_va , endchar , n - i - 1 , flags );
258
+ do_ignore (p_format , p_va , endchar , n - i - 1 );
259
259
Py_DECREF (v );
260
260
return NULL ;
261
261
}
@@ -273,21 +273,21 @@ do_mktuple(const char **p_format, va_list *p_va, char endchar, Py_ssize_t n, int
273
273
}
274
274
275
275
static PyObject *
276
- do_mkvalue (const char * * p_format , va_list * p_va , int flags )
276
+ do_mkvalue (const char * * p_format , va_list * p_va )
277
277
{
278
278
for (;;) {
279
279
switch (* (* p_format )++ ) {
280
280
case '(' :
281
281
return do_mktuple (p_format , p_va , ')' ,
282
- countformat (* p_format , ')' ), flags );
282
+ countformat (* p_format , ')' ));
283
283
284
284
case '[' :
285
285
return do_mklist (p_format , p_va , ']' ,
286
- countformat (* p_format , ']' ), flags );
286
+ countformat (* p_format , ']' ));
287
287
288
288
case '{' :
289
289
return do_mkdict (p_format , p_va , '}' ,
290
- countformat (* p_format , '}' ), flags );
290
+ countformat (* p_format , '}' ));
291
291
292
292
case 'b' :
293
293
case 'B' :
@@ -481,7 +481,7 @@ Py_BuildValue(const char *format, ...)
481
481
va_list va ;
482
482
PyObject * retval ;
483
483
va_start (va , format );
484
- retval = va_build_value (format , va , 0 );
484
+ retval = va_build_value (format , va );
485
485
va_end (va );
486
486
return retval ;
487
487
}
@@ -492,25 +492,25 @@ _Py_BuildValue_SizeT(const char *format, ...)
492
492
va_list va ;
493
493
PyObject * retval ;
494
494
va_start (va , format );
495
- retval = va_build_value (format , va , 0 );
495
+ retval = va_build_value (format , va );
496
496
va_end (va );
497
497
return retval ;
498
498
}
499
499
500
500
PyObject *
501
501
Py_VaBuildValue (const char * format , va_list va )
502
502
{
503
- return va_build_value (format , va , 0 );
503
+ return va_build_value (format , va );
504
504
}
505
505
506
506
PyAPI_FUNC (PyObject * ) /* abi only */
507
507
_Py_VaBuildValue_SizeT (const char * format , va_list va )
508
508
{
509
- return va_build_value (format , va , 0 );
509
+ return va_build_value (format , va );
510
510
}
511
511
512
512
static PyObject *
513
- va_build_value (const char * format , va_list va , int flags )
513
+ va_build_value (const char * format , va_list va )
514
514
{
515
515
const char * f = format ;
516
516
Py_ssize_t n = countformat (f , '\0' );
@@ -524,9 +524,9 @@ va_build_value(const char *format, va_list va, int flags)
524
524
}
525
525
va_copy (lva , va );
526
526
if (n == 1 ) {
527
- retval = do_mkvalue (& f , & lva , flags );
527
+ retval = do_mkvalue (& f , & lva );
528
528
} else {
529
- retval = do_mktuple (& f , & lva , '\0' , n , flags );
529
+ retval = do_mktuple (& f , & lva , '\0' , n );
530
530
}
531
531
va_end (lva );
532
532
return retval ;
@@ -566,7 +566,7 @@ _Py_VaBuildStack(PyObject **small_stack, Py_ssize_t small_stack_len,
566
566
567
567
va_copy (lva , va );
568
568
f = format ;
569
- res = do_mkstack (stack , & f , & lva , '\0' , n , 0 );
569
+ res = do_mkstack (stack , & f , & lva , '\0' , n );
570
570
va_end (lva );
571
571
572
572
if (res < 0 ) {
0 commit comments