Fixed '0' being lexed as a base literal

This commit is contained in:
PaddiM8 2021-12-30 12:44:48 +01:00
parent cb36f69260
commit f1881ac9b6
2 changed files with 8 additions and 9 deletions

View File

@ -350,9 +350,6 @@ pub(crate) fn eval_fn_call_expr(
return Ok(sum); return Ok(sum);
} }
"integrate" => { "integrate" => {
// Make sure either 3 or 4 arguments were supplied.
if expressions.len() < 3 || expressions.len() > 4 {}
return match expressions.len() { return match expressions.len() {
3 => calculus::integrate_with_unknown_variable( 3 => calculus::integrate_with_unknown_variable(
context, context,

View File

@ -200,12 +200,14 @@ impl<'a> Lexer<'a> {
}; };
// Don't include eg. 0x in the value // Don't include eg. 0x in the value
start += 2; if base != 10 {
end += 1; start += 2;
self.advance(); end += 1;
value.clear(); self.advance();
leading_zero = false; value.clear();
continue; leading_zero = false;
continue;
}
} }
if !c.is_digit(base) && c != '.' && c != '_' && !c.is_whitespace() if !c.is_digit(base) && c != '.' && c != '_' && !c.is_whitespace()