@@ -95,11 +95,13 @@ mp_obj_t mp_obj_new_gen_wrap(mp_obj_t fun, bool is_coroutine) {
95
95
STATIC void gen_instance_print (const mp_print_t * print , mp_obj_t self_in , mp_print_kind_t kind ) {
96
96
(void )kind ;
97
97
mp_obj_gen_instance_t * self = MP_OBJ_TO_PTR (self_in );
98
+ #if MICROPY_PY_ASYNC_AWAIT
98
99
if (self -> coroutine_generator ) {
99
100
mp_printf (print , "<coroutine object '%q' at %p>" , mp_obj_fun_get_name (MP_OBJ_FROM_PTR (self -> code_state .fun_bc )), self );
100
- } else {
101
- mp_printf (print , "<generator object '%q' at %p>" , mp_obj_fun_get_name (MP_OBJ_FROM_PTR (self -> code_state .fun_bc )), self );
101
+ return ;
102
102
}
103
+ #endif
104
+ mp_printf (print , "<generator object '%q' at %p>" , mp_obj_fun_get_name (MP_OBJ_FROM_PTR (self -> code_state .fun_bc )), self );
103
105
}
104
106
105
107
mp_vm_return_kind_t mp_obj_gen_resume (mp_obj_t self_in , mp_obj_t send_value , mp_obj_t throw_value , mp_obj_t * ret_val ) {
@@ -202,10 +204,13 @@ STATIC mp_obj_t gen_resume_and_raise(mp_obj_t self_in, mp_obj_t send_value, mp_o
202
204
}
203
205
204
206
STATIC mp_obj_t gen_instance_iternext (mp_obj_t self_in ) {
207
+ #if MICROPY_PY_ASYNC_AWAIT
208
+ // This translate is literally too much for m0 boards
205
209
mp_obj_gen_instance_t * self = MP_OBJ_TO_PTR (self_in );
206
210
if (self -> coroutine_generator ) {
207
211
mp_raise_TypeError (translate ("'coroutine' object is not an iterator" ));
208
212
}
213
+ #endif
209
214
return gen_resume_and_raise (self_in , mp_const_none , MP_OBJ_NULL );
210
215
}
211
216
0 commit comments