| ... | ... | @@ -32,7 +32,7 @@ struct Rand { |
| 32 | 32 | var bytes_left = r.get_bytes_aligned(buf, count); |
| 33 | 33 | if (bytes_left > 0) { |
| 34 | 34 | var rand_val_array : [u8; #sizeof(u32)]; |
| 35 | | *(rand_val_array.ptr as &u32) = r.get(); |
| 35 | *(rand_val_array.ptr as &u32) = r.get_u32(); |
| 36 | 36 | while (bytes_left > 0) { |
| 37 | 37 | buf[count - bytes_left] = rand_val_array[#sizeof(u32) - bytes_left]; |
| 38 | 38 | bytes_left -= 1; |
| ... | ... | @@ -55,6 +55,9 @@ struct Rand { |
| 55 | 55 | return start + (rand_val % range); |
| 56 | 56 | } |
| 57 | 57 | } |
| 58 | // TODO detect simple constant in while loop and no breaks and turn it into unreachable |
| 59 | // type. then we can remove this unreachable. |
| 60 | unreachable; |
| 58 | 61 | } |
| 59 | 62 | |
| 60 | 63 | fn generate_numbers(r: &Rand) { |
| ... | ... | @@ -77,7 +80,7 @@ struct Rand { |
| 77 | 80 | var bytes_left = count; |
| 78 | 81 | var buf_ptr = buf; |
| 79 | 82 | while (bytes_left > 4) { |
| 80 | | *(buf_ptr as &u32) = r.get(); |
| 83 | *(buf_ptr as &u32) = r.get_u32(); |
| 81 | 84 | bytes_left -= #sizeof(u32); |
| 82 | 85 | buf_ptr += #sizeof(u32); |
| 83 | 86 | } |