Fix something (abd break something else)
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
;;; Directory Local Variables -*- no-byte-compile: t -*-
|
;;; Directory Local Variables -*- no-byte-compile: t -*-
|
||||||
;;; For more information see (info "(emacs) Directory Variables")
|
;;; For more information see (info "(emacs) Directory Variables")
|
||||||
|
|
||||||
((nil . ((my/project-run-command . "build/simple-lisp")
|
((nil . ((compile-command . "make -kC build/")
|
||||||
(compile-command . "make -C build"))))
|
(my/project-run-command . "build/simple-lisp"))))
|
||||||
|
|||||||
@@ -975,7 +975,7 @@ STATIC_DEFUN(set_for_return, "set-for-return", (LispVal * entry, LispVal *dest),
|
|||||||
|
|
||||||
static inline void setup_return_handler(LispVal *tag, LispVal *dest) {
|
static inline void setup_return_handler(LispVal *tag, LispVal *dest) {
|
||||||
LispVal *err_var = INTERN_STATIC("e", system_package);
|
LispVal *err_var = INTERN_STATIC("e", system_package);
|
||||||
LispVal *quoted_dest = const_list(false, 2, Qquote, dest);
|
LispVal *quoted_dest = const_list(true, 2, Qquote, dest);
|
||||||
LispVal *handler =
|
LispVal *handler =
|
||||||
const_list(true, 4, err_var, Qset_for_return, err_var, quoted_dest);
|
const_list(true, 4, err_var, Qset_for_return, err_var, quoted_dest);
|
||||||
refcount_unref(quoted_dest);
|
refcount_unref(quoted_dest);
|
||||||
@@ -3019,7 +3019,7 @@ static void rehash_to(LispHashtable *self, size_t new_size) {
|
|||||||
lisp_malloc0(sizeof(struct HashtableEntry) * new_size);
|
lisp_malloc0(sizeof(struct HashtableEntry) * new_size);
|
||||||
struct HashtableDataArray data_arr = {.size = new_size,
|
struct HashtableDataArray data_arr = {.size = new_size,
|
||||||
.entries = new_data};
|
.entries = new_data};
|
||||||
void *cl_handler;
|
void *cl_handler = NULL; // silence warning
|
||||||
if (the_stack) {
|
if (the_stack) {
|
||||||
cl_handler = register_cleanup(&free_hash_table_data_array, &data_arr);
|
cl_handler = register_cleanup(&free_hash_table_data_array, &data_arr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ STATIC_DEFUN(toplevel_error_handler, "toplevel-error-handler",
|
|||||||
LispVal *stream = make_lisp_integer(fileno(stderr));
|
LispVal *stream = make_lisp_integer(fileno(stderr));
|
||||||
if (!NILP(detail)) {
|
if (!NILP(detail)) {
|
||||||
fprintf(stderr, "Details: ");
|
fprintf(stderr, "Details: ");
|
||||||
Fprintln(detail, Qt, stream);
|
refcount_unref(Fprintln(detail, Qt, stream));
|
||||||
}
|
}
|
||||||
fprintf(stderr, "\nBacktrace (toplevel comes last):\n");
|
fprintf(stderr, "\nBacktrace (toplevel comes last):\n");
|
||||||
FOREACH(frame, backtrace) {
|
FOREACH(frame, backtrace) {
|
||||||
@@ -44,13 +44,14 @@ STATIC_DEFUN(toplevel_error_handler, "toplevel-error-handler",
|
|||||||
LispVal *name = NILP(fobj->name) ? LISPVAL(fobj) : fobj->name;
|
LispVal *name = NILP(fobj->name) ? LISPVAL(fobj) : fobj->name;
|
||||||
LispVal *to_print = Fpair(name, TAIL(frame));
|
LispVal *to_print = Fpair(name, TAIL(frame));
|
||||||
fprintf(stderr, " ");
|
fprintf(stderr, " ");
|
||||||
Fprint(to_print, Qt, stream);
|
refcount_unref(Fprint(to_print, Qt, stream));
|
||||||
refcount_unref(to_print);
|
refcount_unref(to_print);
|
||||||
if (!fobj->is_builtin && fobj->is_macro) {
|
if (!fobj->is_builtin && fobj->is_macro) {
|
||||||
fprintf(stderr, " ;; macro");
|
fprintf(stderr, " ;; macro");
|
||||||
}
|
}
|
||||||
fputc('\n', stderr);
|
fputc('\n', stderr);
|
||||||
}
|
}
|
||||||
|
refcount_unref(stream);
|
||||||
exit_status = 1;
|
exit_status = 1;
|
||||||
return Qnil;
|
return Qnil;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user