diff --git a/libguile/load.c b/libguile/load.c index 7b8136af8..3747dd9ad 100644 --- a/libguile/load.c +++ b/libguile/load.c @@ -1,5 +1,5 @@ /* Copyright (C) 1995, 1996, 1998, 1999, 2000, 2001, 2004, 2006, 2008, - * 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc. + * 2009, 2010, 2011, 2012, 2013, 2014, 2017 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -1195,13 +1195,16 @@ SCM_DEFINE (scm_primitive_load_path, "primitive-load-path", 0, 0, 1, *scm_loc_load_extensions, SCM_BOOL_F, &stat_source); - compiled_thunk = load_thunk_from_path (filename, full_filename, &stat_source, - &found_stale_compiled_file); + if (scm_is_false (*scm_loc_fresh_auto_compile)) + compiled_thunk = load_thunk_from_path (filename, full_filename, + &stat_source, + &found_stale_compiled_file); + else + compiled_thunk = SCM_BOOL_F; if (scm_is_false (compiled_thunk) && scm_is_true (full_filename) && scm_is_true (*scm_loc_compile_fallback_path) - && scm_is_false (*scm_loc_fresh_auto_compile) && scm_is_pair (*scm_loc_load_compiled_extensions) && scm_is_string (scm_car (*scm_loc_load_compiled_extensions))) { diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm index 7127d73f7..612040aa4 100644 --- a/module/ice-9/boot-9.scm +++ b/module/ice-9/boot-9.scm @@ -3812,7 +3812,10 @@ when none is available, reading FILE-NAME with READER." scmstat go-file-name)))))) - (let ((compiled (and scmstat (or (pre-compiled) (fallback))))) + (let ((compiled (and scmstat + (or (and (not %fresh-auto-compile) + (pre-compiled)) + (fallback))))) (if compiled (begin (if %load-hook