Переглянути джерело

preven slime from exiting on repl error

master
FelixBrendel 6 роки тому
джерело
коміт
7559646ada
1 змінених файлів з 12 додано та 4 видалено
  1. +12
    -4
      src/eval.cpp

+ 12
- 4
src/eval.cpp Переглянути файл

@@ -584,13 +584,21 @@ namespace Slime {
Lisp_Object* parsed, * evaluated;
while (true) {
delete_error();
if (Globals::error) {
log_error();
delete_error();
}
fputs("> ", stdout);
line = read_expression();
try_void parsed = Parser::parse_single_expression(line);
parsed = Parser::parse_single_expression(line);
if (Globals::error) {
continue;
}
free(line);
try_void evaluated = eval_expr(parsed);
// try_void evaluated = eval_expr(parsed);
evaluated = eval_expr(parsed);
if (Globals::error) {
continue;
}
if (evaluated && evaluated != Memory::nil) {
print(evaluated);
}


Завантаження…
Відмінити
Зберегти