@@ -86,7 +86,7 @@ STATIC uint32_t yasmarang_randbelow(uint32_t n) {
8686#endif
8787
8888STATIC mp_obj_t mod_random_getrandbits (mp_obj_t num_in ) {
89- int n = mp_obj_get_int (num_in );
89+ mp_int_t n = mp_obj_get_int (num_in );
9090 if (n > 32 || n < 0 ) {
9191 mp_raise_ValueError (MP_ERROR_TEXT ("bits must be 32 or less" ));
9292 }
@@ -111,7 +111,7 @@ STATIC mp_obj_t mod_random_seed(size_t n_args, const mp_obj_t *args) {
111111 } else {
112112 seed = mp_obj_get_int_truncated (args [0 ]);
113113 }
114- yasmarang_pad = seed ;
114+ yasmarang_pad = ( uint32_t ) seed ;
115115 yasmarang_n = 69 ;
116116 yasmarang_d = 233 ;
117117 yasmarang_dat = 0 ;
@@ -126,7 +126,7 @@ STATIC mp_obj_t mod_random_randrange(size_t n_args, const mp_obj_t *args) {
126126 if (n_args == 1 ) {
127127 // range(stop)
128128 if (start > 0 ) {
129- return mp_obj_new_int (yasmarang_randbelow (start ));
129+ return mp_obj_new_int (yasmarang_randbelow (( uint32_t ) start ));
130130 } else {
131131 goto error ;
132132 }
@@ -135,7 +135,7 @@ STATIC mp_obj_t mod_random_randrange(size_t n_args, const mp_obj_t *args) {
135135 if (n_args == 2 ) {
136136 // range(start, stop)
137137 if (start < stop ) {
138- return mp_obj_new_int (start + yasmarang_randbelow (stop - start ));
138+ return mp_obj_new_int (start + yasmarang_randbelow (( uint32_t )( stop - start ) ));
139139 } else {
140140 goto error ;
141141 }
@@ -151,7 +151,7 @@ STATIC mp_obj_t mod_random_randrange(size_t n_args, const mp_obj_t *args) {
151151 goto error ;
152152 }
153153 if (n > 0 ) {
154- return mp_obj_new_int (start + step * yasmarang_randbelow (n ));
154+ return mp_obj_new_int (start + step * yasmarang_randbelow (( uint32_t ) n ));
155155 } else {
156156 goto error ;
157157 }
@@ -167,7 +167,7 @@ STATIC mp_obj_t mod_random_randint(mp_obj_t a_in, mp_obj_t b_in) {
167167 mp_int_t a = mp_obj_get_int (a_in );
168168 mp_int_t b = mp_obj_get_int (b_in );
169169 if (a <= b ) {
170- return mp_obj_new_int (a + yasmarang_randbelow (b - a + 1 ));
170+ return mp_obj_new_int (a + yasmarang_randbelow (( uint32_t )( b - a + 1 ) ));
171171 } else {
172172 mp_raise_ValueError (NULL );
173173 }
@@ -177,7 +177,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_2(mod_random_randint_obj, mod_random_randint);
177177STATIC mp_obj_t mod_random_choice (mp_obj_t seq ) {
178178 mp_int_t len = mp_obj_get_int (mp_obj_len (seq ));
179179 if (len > 0 ) {
180- return mp_obj_subscr (seq , mp_obj_new_int (yasmarang_randbelow (len )), MP_OBJ_SENTINEL );
180+ return mp_obj_subscr (seq , mp_obj_new_int (yasmarang_randbelow (( uint32_t ) len )), MP_OBJ_SENTINEL );
181181 } else {
182182 mp_raise_type (& mp_type_IndexError );
183183 }
0 commit comments