1
Fork 0
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:
Andy Wingo 2009-06-03 23:59:58 +02:00
parent 6fd367e742
commit c2521a2124
2 changed files with 17 additions and 1 deletions

View file

@ -641,7 +641,19 @@ scm_try_autocompile (SCM source, SCM stale_compiled)
} }
comp_mod = scm_c_resolve_module ("system base compile"); 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); new_compiled = scm_call_1 (scm_variable_ref (compiled_file_name), source);
if (scm_is_false (new_compiled)) if (scm_is_false (new_compiled))

View file

@ -23,6 +23,9 @@
(if *old-stack-level* (if *old-stack-level*
(debug-set! stack (* 2 *old-stack-level*))) (debug-set! stack (* 2 *old-stack-level*)))
(define *old-%load-should-autocompile* %load-should-autocompile)
(set! %load-should-autocompile #f)
;;; ;;;
;;; elisp ;;; elisp
;;; ;;;
@ -350,6 +353,7 @@
)) ))
(set! %load-should-autocompile *old-%load-should-autocompile*)
(debug-set! stack *old-stack-level*) (debug-set! stack *old-stack-level*)
;;; elisp.test ends here ;;; elisp.test ends here