Compare commits

...

2 Commits

Author SHA1 Message Date
b1ek 1d50dd259b
change 1 to 0 2023-08-22 23:12:04 +10:00
b1ek 2cbe2dc197
remove pointer errors from lint as they are not always correct 2023-08-22 22:58:55 +10:00
1 changed files with 1 additions and 16 deletions

View File

@ -9,7 +9,6 @@ pub fn lint_code(code: &&str) -> Result<(), Vec<String>> {
let mut loop_stack: Vec<usize> = vec![];
let mut pos = 0 as usize;
let mut pointer = 0;
let chars = code.chars().collect::<Vec<char>>();
let size = code.len();
@ -24,20 +23,6 @@ pub fn lint_code(code: &&str) -> Result<(), Vec<String>> {
let char = chars[pos];
pos += 1;
if char == '<' {
if pointer == 0 {
errors.push(format!("ERR: Reducing pointer to less than 0 is not allowed ({})", pos));
continue
}
pointer -= 1;
}
if char == '>' {
if pointer == 29999 {
errors.push(format!("ERR: Increasing pointer to more than 29999 is not allowed ({})", pos));
continue
}
pointer += 1;
}
if char == '[' {
loop_stack.push(pos);
continue
@ -90,7 +75,7 @@ pub fn eval_mem(bf_str: &&str, mem: &mut [u8], pointer: &mut usize) -> Result<()
}
if char == '<' {
if *pointer == 0 {
return Err(format!("Attempt to reduce pointer to less than 1 ({})", pos));
return Err(format!("Attempt to reduce pointer to less than 0 ({})", pos));
}
*pointer -= 1;
continue