@@ -79,6 +79,8 @@ get_array_state(PyObject *module)
7979#define  get_array_state_by_class (cls ) \
8080    (get_array_state(PyType_GetModule(cls)))
8181
82+ #define  arrayobject_CAST (op )        ((arrayobject *)(op))
83+ 
8284enum  machine_format_code  {
8385    UNKNOWN_FORMAT  =  -1 ,
8486    /* UNKNOWN_FORMAT is used to indicate that the machine format for an 
@@ -712,22 +714,25 @@ ins1(arrayobject *self, Py_ssize_t where, PyObject *v)
712714/* Methods */ 
713715
714716static  int 
715- array_tp_traverse (arrayobject  * op , visitproc  visit , void  * arg )
717+ array_tp_traverse (PyObject  * op , visitproc  visit , void  * arg )
716718{
717719    Py_VISIT (Py_TYPE (op ));
718720    return  0 ;
719721}
720722
721723static  void 
722- array_dealloc (arrayobject  * op )
724+ array_dealloc (PyObject  * op )
723725{
724726    PyTypeObject  * tp  =  Py_TYPE (op );
725727    PyObject_GC_UnTrack (op );
726728
727-     if  (op -> weakreflist  !=  NULL )
728-         PyObject_ClearWeakRefs ((PyObject  * ) op );
729-     if  (op -> ob_item  !=  NULL )
730-         PyMem_Free (op -> ob_item );
729+     arrayobject  * self  =  arrayobject_CAST (op );
730+     if  (self -> weakreflist  !=  NULL ) {
731+         PyObject_ClearWeakRefs (op );
732+     }
733+     if  (self -> ob_item  !=  NULL ) {
734+         PyMem_Free (self -> ob_item );
735+     }
731736    tp -> tp_free (op );
732737    Py_DECREF (tp );
733738}
@@ -843,19 +848,19 @@ array_richcompare(PyObject *v, PyObject *w, int op)
843848}
844849
845850static  Py_ssize_t 
846- array_length (arrayobject   * a )
851+ array_length (PyObject   * op )
847852{
848-     return  Py_SIZE (a );
853+     return  Py_SIZE (op );
849854}
850855
851856static  PyObject  * 
852- array_item (arrayobject   * a , Py_ssize_t  i )
857+ array_item (PyObject   * op , Py_ssize_t  i )
853858{
854-     if  (i  <  0  ||  i  >= Py_SIZE (a )) {
859+     if  (i  <  0  ||  i  >= Py_SIZE (op )) {
855860        PyErr_SetString (PyExc_IndexError , "array index out of range" );
856861        return  NULL ;
857862    }
858-     return  getarrayitem (( PyObject   * ) a , i );
863+     return  getarrayitem (op , i );
859864}
860865
861866static  PyObject  * 
@@ -930,8 +935,9 @@ array_array___deepcopy__(arrayobject *self, PyObject *unused)
930935}
931936
932937static  PyObject  * 
933- array_concat (arrayobject   * a , PyObject  * bb )
938+ array_concat (PyObject   * op , PyObject  * bb )
934939{
940+     arrayobject  * a  =  arrayobject_CAST (op );
935941    array_state  * state  =  find_array_state_by_type (Py_TYPE (a ));
936942    Py_ssize_t  size ;
937943    arrayobject  * np ;
@@ -966,8 +972,9 @@ array_concat(arrayobject *a, PyObject *bb)
966972}
967973
968974static  PyObject  * 
969- array_repeat (arrayobject   * a , Py_ssize_t  n )
975+ array_repeat (PyObject   * op , Py_ssize_t  n )
970976{
977+     arrayobject  * a  =  arrayobject_CAST (op );
971978    array_state  * state  =  find_array_state_by_type (Py_TYPE (a ));
972979
973980    if  (n  <  0 )
@@ -1026,8 +1033,9 @@ array_del_slice(arrayobject *a, Py_ssize_t ilow, Py_ssize_t ihigh)
10261033}
10271034
10281035static  int 
1029- array_ass_item (arrayobject   * a , Py_ssize_t  i , PyObject  * v )
1036+ array_ass_item (PyObject   * op , Py_ssize_t  i , PyObject  * v )
10301037{
1038+     arrayobject  * a  =  arrayobject_CAST (op );
10311039    if  (i  <  0  ||  i  >= Py_SIZE (a )) {
10321040        PyErr_SetString (PyExc_IndexError ,
10331041                         "array assignment index out of range" );
@@ -1045,7 +1053,7 @@ setarrayitem(PyObject *a, Py_ssize_t i, PyObject *v)
10451053    array_state  * state  =  find_array_state_by_type (Py_TYPE (a ));
10461054    assert (array_Check (a , state ));
10471055#endif 
1048-     return  array_ass_item (( arrayobject   * ) a , i , v );
1056+     return  array_ass_item (a , i , v );
10491057}
10501058
10511059static  int 
@@ -1105,8 +1113,9 @@ array_do_extend(array_state *state, arrayobject *self, PyObject *bb)
11051113}
11061114
11071115static  PyObject  * 
1108- array_inplace_concat (arrayobject   * self , PyObject  * bb )
1116+ array_inplace_concat (PyObject   * op , PyObject  * bb )
11091117{
1118+     arrayobject  * self  =  arrayobject_CAST (op );
11101119    array_state  * state  =  find_array_state_by_type (Py_TYPE (self ));
11111120
11121121    if  (!array_Check (bb , state )) {
@@ -1121,8 +1130,9 @@ array_inplace_concat(arrayobject *self, PyObject *bb)
11211130}
11221131
11231132static  PyObject  * 
1124- array_inplace_repeat (arrayobject   * self , Py_ssize_t  n )
1133+ array_inplace_repeat (PyObject   * op , Py_ssize_t  n )
11251134{
1135+     arrayobject  * self  =  arrayobject_CAST (op );
11261136    const  Py_ssize_t  array_size  =  Py_SIZE (self );
11271137
11281138    if  (array_size  >  0  &&  n  !=  1  ) {
@@ -1236,13 +1246,13 @@ array_array_index_impl(arrayobject *self, PyObject *v, Py_ssize_t start,
12361246}
12371247
12381248static  int 
1239- array_contains (arrayobject  * self , PyObject  * v )
1249+ array_contains (PyObject  * self , PyObject  * v )
12401250{
12411251    Py_ssize_t  i ;
12421252    int  cmp ;
12431253
12441254    for  (i  =  0 , cmp  =  0  ; cmp  ==  0  &&  i  <  Py_SIZE (self ); i ++ ) {
1245-         PyObject  * selfi  =  getarrayitem (( PyObject   * ) self , i );
1255+         PyObject  * selfi  =  getarrayitem (self , i );
12461256        if  (selfi  ==  NULL )
12471257            return  -1 ;
12481258        cmp  =  PyObject_RichCompareBool (selfi , v , Py_EQ );
@@ -2349,22 +2359,24 @@ array_array___reduce_ex___impl(arrayobject *self, PyTypeObject *cls,
23492359}
23502360
23512361static  PyObject  * 
2352- array_get_typecode (arrayobject   * a , void  * closure )
2362+ array_get_typecode (PyObject   * op , void  * Py_UNUSED ( closure ) )
23532363{
2364+     arrayobject  * a  =  arrayobject_CAST (op );
23542365    char  typecode  =  a -> ob_descr -> typecode ;
23552366    return  PyUnicode_FromOrdinal (typecode );
23562367}
23572368
23582369static  PyObject  * 
2359- array_get_itemsize (arrayobject   * a , void  * closure )
2370+ array_get_itemsize (PyObject   * op , void  * Py_UNUSED ( closure ) )
23602371{
2372+     arrayobject  * a  =  arrayobject_CAST (op );
23612373    return  PyLong_FromLong ((long )a -> ob_descr -> itemsize );
23622374}
23632375
23642376static  PyGetSetDef  array_getsets  [] =  {
2365-     {"typecode" , ( getter )  array_get_typecode , NULL ,
2377+     {"typecode" , array_get_typecode , NULL ,
23662378     "the typecode character used to create the array" },
2367-     {"itemsize" , ( getter )  array_get_itemsize , NULL ,
2379+     {"itemsize" , array_get_itemsize , NULL ,
23682380     "the size, in bytes, of one array item" },
23692381    {NULL }
23702382};
@@ -2398,11 +2410,12 @@ static PyMethodDef array_methods[] = {
23982410};
23992411
24002412static  PyObject  * 
2401- array_repr (arrayobject   * a )
2413+ array_repr (PyObject   * op )
24022414{
24032415    char  typecode ;
24042416    PyObject  * s , * v  =  NULL ;
24052417    Py_ssize_t  len ;
2418+     arrayobject  * a  =  arrayobject_CAST (op );
24062419
24072420    len  =  Py_SIZE (a );
24082421    typecode  =  a -> ob_descr -> typecode ;
@@ -2425,8 +2438,9 @@ array_repr(arrayobject *a)
24252438}
24262439
24272440static  PyObject * 
2428- array_subscr (arrayobject *   self , PyObject *   item )
2441+ array_subscr (PyObject   * op , PyObject   * item )
24292442{
2443+     arrayobject  * self  =  arrayobject_CAST (op );
24302444    array_state  * state  =  find_array_state_by_type (Py_TYPE (self ));
24312445
24322446    if  (PyIndex_Check (item )) {
@@ -2436,7 +2450,7 @@ array_subscr(arrayobject* self, PyObject* item)
24362450        }
24372451        if  (i  <  0 )
24382452            i  +=  Py_SIZE (self );
2439-         return  array_item (self , i );
2453+         return  array_item (op , i );
24402454    }
24412455    else  if  (PySlice_Check (item )) {
24422456        Py_ssize_t  start , stop , step , slicelength , i ;
@@ -2488,9 +2502,10 @@ array_subscr(arrayobject* self, PyObject* item)
24882502}
24892503
24902504static  int 
2491- array_ass_subscr (arrayobject *   self , PyObject *   item , PyObject *   value )
2505+ array_ass_subscr (PyObject   * op , PyObject   * item , PyObject   * value )
24922506{
24932507    Py_ssize_t  start , stop , step , slicelength , needed ;
2508+     arrayobject  * self  =  arrayobject_CAST (op );
24942509    array_state *  state  =  find_array_state_by_type (Py_TYPE (self ));
24952510    arrayobject *  other ;
24962511    int  itemsize ;
@@ -2542,7 +2557,7 @@ array_ass_subscr(arrayobject* self, PyObject* item, PyObject* value)
25422557            value  =  array_slice (other , 0 , needed );
25432558            if  (value  ==  NULL )
25442559                return  -1 ;
2545-             ret  =  array_ass_subscr (self , item , value );
2560+             ret  =  array_ass_subscr (op , item , value );
25462561            Py_DECREF (value );
25472562            return  ret ;
25482563        }
@@ -2649,14 +2664,15 @@ static const void *emptybuf = "";
26492664
26502665
26512666static  int 
2652- array_buffer_getbuf (arrayobject   * self , Py_buffer  * view , int  flags )
2667+ array_buffer_getbuf (PyObject   * op , Py_buffer  * view , int  flags )
26532668{
26542669    if  (view  ==  NULL ) {
26552670        PyErr_SetString (PyExc_BufferError ,
26562671            "array_buffer_getbuf: view==NULL argument is obsolete" );
26572672        return  -1 ;
26582673    }
26592674
2675+     arrayobject  * self  =  arrayobject_CAST (op );
26602676    view -> buf  =  (void  * )self -> ob_item ;
26612677    view -> obj  =  Py_NewRef (self );
26622678    if  (view -> buf  ==  NULL )
@@ -2689,8 +2705,9 @@ array_buffer_getbuf(arrayobject *self, Py_buffer *view, int flags)
26892705}
26902706
26912707static  void 
2692- array_buffer_relbuf (arrayobject   * self , Py_buffer  * view )
2708+ array_buffer_relbuf (PyObject   * op , Py_buffer  * Py_UNUSED ( view ) )
26932709{
2710+     arrayobject  * self  =  arrayobject_CAST (op );
26942711    self -> ob_exports -- ;
26952712}
26962713
@@ -2925,7 +2942,7 @@ typecode -- the typecode character used to create the array\n\
29252942itemsize -- the length in bytes of one array item\n\ 
29262943" );
29272944
2928- static  PyObject  * array_iter (arrayobject   * ao );
2945+ static  PyObject  * array_iter (PyObject   * op );
29292946
29302947static  struct  PyMemberDef  array_members [] =  {
29312948    {"__weaklistoffset__" , Py_T_PYSSIZET , offsetof(arrayobject , weakreflist ), Py_READONLY },
@@ -2985,8 +3002,9 @@ class array.arrayiterator "arrayiterobject *" "find_array_state_by_type(type)->A
29853002/*[clinic end generated code: output=da39a3ee5e6b4b0d input=fb46d5ef98dd95ff]*/ 
29863003
29873004static  PyObject  * 
2988- array_iter (arrayobject   * ao )
3005+ array_iter (PyObject   * op )
29893006{
3007+     arrayobject  * ao  =  arrayobject_CAST (op );
29903008    array_state  * state  =  find_array_state_by_type (Py_TYPE (ao ));
29913009    arrayiterobject  * it ;
29923010
0 commit comments