I don’t see that in this post. errno is a library (mis)feature. Rust’s
if let Ok(my_number: u8) = &my_number_string.parse() {
assert_eq!(my_number, 42);
}
could, in C, look like this: if(parseInt(my_number_string, &my_number)) {
assert(my_number == 42);
}
That’s fairly similar, and the article doesn’t claim Rust is bad, or that C is bad because it doesn’t support multiple return values or restructuring (which could be used in place of it to make a function returning a struct look as if returns multiple values)(aside: u8 is not the type I would have chosen in that Rust example)