I found this line in the lexer prevents 0e+10 to be parsed as a float, whereas 00e+10 is allowed anyway. Is this a bug or an intended behavior?
This is a code I tested on Rust Playground:
fn main() {
// OK
println!("{}", 0);
// OK
println!("{}", 00e+10);
// Parse Error
println!("{}", 0e+10);
}
It seems natural that both of them are banned or both of them are allowed.