mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
fix error autocompiling parts of the compiler; make check works
* libguile/load.c (scm_try_autocompile): Punt if compiled-file-name does not resolve, which would indicate that the file in question is part of the compiler itself. * test-suite/tests/elisp.test: Today I was an evil one -- disable autocompilation for the elisp tests, as they are meant only for the memoizer's eyes. Hopefully Daniel will fix this :-)
This commit is contained in:
parent
6fd367e742
commit
c2521a2124
2 changed files with 17 additions and 1 deletions
|
@ -641,7 +641,19 @@ scm_try_autocompile (SCM source, SCM stale_compiled)
|
|||
}
|
||||
|
||||
comp_mod = scm_c_resolve_module ("system base compile");
|
||||
compiled_file_name = scm_c_module_lookup (comp_mod, "compiled-file-name");
|
||||
compiled_file_name =
|
||||
scm_module_variable (comp_mod,
|
||||
scm_from_locale_symbol ("compiled-file-name"));
|
||||
|
||||
if (scm_is_false (compiled_file_name))
|
||||
{
|
||||
scm_puts (";;; it seems ", scm_current_error_port ());
|
||||
scm_display (source, scm_current_error_port ());
|
||||
scm_puts ("\n;;; is part of the compiler; skipping autocompilation\n",
|
||||
scm_current_error_port ());
|
||||
return SCM_BOOL_F;
|
||||
}
|
||||
|
||||
new_compiled = scm_call_1 (scm_variable_ref (compiled_file_name), source);
|
||||
|
||||
if (scm_is_false (new_compiled))
|
||||
|
|
|
@ -23,6 +23,9 @@
|
|||
(if *old-stack-level*
|
||||
(debug-set! stack (* 2 *old-stack-level*)))
|
||||
|
||||
(define *old-%load-should-autocompile* %load-should-autocompile)
|
||||
(set! %load-should-autocompile #f)
|
||||
|
||||
;;;
|
||||
;;; elisp
|
||||
;;;
|
||||
|
@ -350,6 +353,7 @@
|
|||
|
||||
))
|
||||
|
||||
(set! %load-should-autocompile *old-%load-should-autocompile*)
|
||||
(debug-set! stack *old-stack-level*)
|
||||
|
||||
;;; elisp.test ends here
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue