From 9506b39b618e2c0199561243c5d8226e0a9c3525 Mon Sep 17 00:00:00 2001 From: John Davis Date: Fri, 1 Nov 2024 14:56:39 -0700 Subject: [PATCH] [rust] Fix types in find_among skip checks --- compiler/generator_rust.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler/generator_rust.c b/compiler/generator_rust.c index b5ac2225..bdd63285 100644 --- a/compiler/generator_rust.c +++ b/compiler/generator_rust.c @@ -1132,13 +1132,13 @@ static void generate_substring(struct generator * g, struct node * p) { */ } else if (n_cases == 1) { g->I[4] = cases[0]; - writef(g, " || ~S1 as i32 != ~I4 as i32", p); + writef(g, " || ~S1 as u8 != ~I4 as u8", p); } else if (n_cases == 2) { g->I[4] = cases[0]; g->I[5] = cases[1]; - writef(g, " || (~S1 as i32 != ~I4 as i32 && ~S1 as i32 != ~I5 as i32)", p); + writef(g, " || (~S1 as u8 != ~I4 as u8 && ~S1 as u8 != ~I5 as u8)", p); } else { - writef(g, " || ~S1 as i32 >> 5 != ~I2 as i32 || !((~I3 as i32 >> (~S1 as i32 & 0x1f)) & 1) != 0", p); + writef(g, " || ~S1 as u8 >> 5 != ~I2 as u8 || ((~I3 as i32 >> (~S1 as u8 & 0x1f)) & 1) == 0", p); } write_string(g, ") "); if (empty_case != -1) {