Handle break and return better.

This commit is contained in:
Stephen Chung
2020-03-17 17:33:37 +08:00
parent 706e0a0c4c
commit 6ca39a019b
9 changed files with 244 additions and 142 deletions

View File

@@ -31,7 +31,13 @@ fn eprint_error(input: &str, err: EvalAltResult) {
// EOF
let line = lines.len() - 1;
let pos = lines[line - 1].len();
eprint_line(&lines, line, pos, &err.to_string());
let err_text = match err {
EvalAltResult::ErrorRuntime(err, _) if !err.is_empty() => {
format!("Runtime error: {}", err)
}
_ => err.to_string(),
};
eprint_line(&lines, line, pos, &err_text);
}
p if p.is_none() => {
// No position