summaryrefslogtreecommitdiff
path: root/src/fns.c
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2017-05-09 19:47:16 -0400
committerGlenn Morris <rgm@gnu.org>2017-05-09 19:47:16 -0400
commit58326f0f117b229b690023d3851a00d876a7aca6 (patch)
treea603c4d3e263ed9d5919fe06c22b5ad05ccdb676 /src/fns.c
parentdb30296baed2d9c3c80eb89f6fae256e81ee2fbc (diff)
downloademacs-58326f0f117b229b690023d3851a00d876a7aca6.tar.gz
emacs-58326f0f117b229b690023d3851a00d876a7aca6.tar.bz2
emacs-58326f0f117b229b690023d3851a00d876a7aca6.zip
More informative error when required feature missing
* src/fns.c (Frequire): Include file name in missing feature error. * doc/lispref/loading.texi (Named Features): Don't quote actual error.
Diffstat (limited to 'src/fns.c')
-rw-r--r--src/fns.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/fns.c b/src/fns.c
index 10d35b6112a..0332ab5dad0 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -2797,8 +2797,17 @@ suppressed. */)
tem = Fmemq (feature, Vfeatures);
if (NILP (tem))
- error ("Required feature `%s' was not provided",
- SDATA (SYMBOL_NAME (feature)));
+ {
+ unsigned char *tem2 = SDATA (SYMBOL_NAME (feature));
+ Lisp_Object tem3 = Fcar (Fcar (Vload_history));
+
+ if (NILP (tem3))
+ error ("Required feature `%s' was not provided", tem2);
+ else
+ /* Cf autoload-do-load. */
+ error ("Loading file %s failed to provide feature `%s'",
+ SDATA (tem3), tem2);
+ }
/* Once loading finishes, don't undo it. */
Vautoload_queue = Qt;