@@ -104,7 +104,7 @@ STATIC mp_obj_t namedtuple_make_new(const mp_obj_type_t *type_in, size_t n_args,
104
104
#elif MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
105
105
mp_raise_msg_varg (& mp_type_TypeError ,
106
106
MP_ERROR_TEXT ("%q() takes %d positional arguments but %d were given" ),
107
- type -> base . name , num_fields , n_args + n_kw );
107
+ (( mp_obj_type_t * ) & type -> base ) -> name , num_fields , n_args + n_kw );
108
108
#endif
109
109
}
110
110
@@ -153,17 +153,18 @@ mp_obj_namedtuple_type_t *mp_obj_new_namedtuple_base(size_t n_fields, mp_obj_t *
153
153
154
154
STATIC mp_obj_t mp_obj_new_namedtuple_type (qstr name , size_t n_fields , mp_obj_t * fields ) {
155
155
mp_obj_namedtuple_type_t * o = mp_obj_new_namedtuple_base (n_fields , fields );
156
- o -> base .base .type = & mp_type_type ;
157
- o -> base .flags = MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE ; // can match tuple
158
- o -> base .name = name ;
159
- o -> base .make_new = namedtuple_make_new ;
160
- MP_OBJ_TYPE_SET_SLOT (& o -> base , print , namedtuple_print , 0 );
161
- MP_OBJ_TYPE_SET_SLOT (& o -> base , unary_op , mp_obj_tuple_unary_op , 1 );
162
- MP_OBJ_TYPE_SET_SLOT (& o -> base , binary_op , mp_obj_tuple_binary_op , 2 );
163
- MP_OBJ_TYPE_SET_SLOT (& o -> base , attr , namedtuple_attr , 3 );
164
- MP_OBJ_TYPE_SET_SLOT (& o -> base , subscr , mp_obj_tuple_subscr , 4 );
165
- MP_OBJ_TYPE_SET_SLOT (& o -> base , getiter , mp_obj_tuple_getiter , 5 );
166
- MP_OBJ_TYPE_SET_SLOT (& o -> base , parent , & mp_type_tuple , 6 );
156
+ mp_obj_type_t * type = (mp_obj_type_t * )& o -> base ;
157
+ type -> base .type = & mp_type_type ;
158
+ type -> flags = MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE ; // can match tuple
159
+ type -> name = name ;
160
+ type -> make_new = namedtuple_make_new ;
161
+ MP_OBJ_TYPE_SET_SLOT (type , print , namedtuple_print , 0 );
162
+ MP_OBJ_TYPE_SET_SLOT (type , unary_op , mp_obj_tuple_unary_op , 1 );
163
+ MP_OBJ_TYPE_SET_SLOT (type , binary_op , mp_obj_tuple_binary_op , 2 );
164
+ MP_OBJ_TYPE_SET_SLOT (type , attr , namedtuple_attr , 3 );
165
+ MP_OBJ_TYPE_SET_SLOT (type , subscr , mp_obj_tuple_subscr , 4 );
166
+ MP_OBJ_TYPE_SET_SLOT (type , getiter , mp_obj_tuple_getiter , 5 );
167
+ MP_OBJ_TYPE_SET_SLOT (type , parent , & mp_type_tuple , 6 );
167
168
return MP_OBJ_FROM_PTR (o );
168
169
}
169
170
0 commit comments