summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/lispref/ChangeLog5
-rw-r--r--doc/lispref/loading.texi10
-rw-r--r--src/ChangeLog5
-rw-r--r--src/lread.c4
4 files changed, 24 insertions, 0 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index 5f67371f3a6..e35cf2335ed 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,8 @@
+2010-11-12 Eli Zaretskii <eliz@gnu.org>
+
+ * loading.texi (How Programs Do Loading): Document
+ load-file-name. (Bug#7346)
+
2010-11-10 Glenn Morris <rgm@gnu.org>
* text.texi (Kill Functions, Low-Level Kill Ring): Small fixes.
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi
index bbdd67fc3a5..bb8c34caddf 100644
--- a/doc/lispref/loading.texi
+++ b/doc/lispref/loading.texi
@@ -107,6 +107,10 @@ in @code{load-path}, where @code{nil} stands for the default directory.
@code{load-path}, then all three suffixes in the second directory, and
so on. @xref{Library Search}.
+Whatever the name under which the file is eventually found, and the
+directory where Emacs found it, Emacs sets the value of the variable
+@code{load-file-name} to that file's name.
+
If you get a warning that @file{foo.elc} is older than @file{foo.el}, it
means you should consider recompiling @file{foo.el}. @xref{Byte
Compilation}.
@@ -157,6 +161,12 @@ This variable is non-@code{nil} if Emacs is in the process of loading a
file, and it is @code{nil} otherwise.
@end defvar
+@defvar load-file-name
+When Emacs is in the process of loading a file, this variable's value
+is the name of that file, as Emacs found it during the search
+described earlier in this section.
+@end defvar
+
@defvar load-read-function
@anchor{Definition of load-read-function}
@c do not allow page break at anchor; work around Texinfo deficiency.
diff --git a/src/ChangeLog b/src/ChangeLog
index 7c0dd0ae956..7787f903364 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2010-11-12 Eli Zaretskii <eliz@gnu.org>
+
+ * lread.c (Fload): Mention `load-in-progress' and
+ `load-file-name'. (Bug#7346)
+
2010-11-09 Eli Zaretskii <eliz@gnu.org>
* keyboard.c (kbd_buffer_nr_stored): Define only ifdef subprocesses.
diff --git a/src/lread.c b/src/lread.c
index c96e391a2d3..acadcb2d991 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1007,6 +1007,10 @@ Loading a file records its definitions, and its `provide' and
`require' calls, in an element of `load-history' whose
car is the file name loaded. See `load-history'.
+While the file is in the process of being loaded, the variable
+`load-in-progress' is non-nil and the variable `load-file-name'
+is bound to the file's name.
+
Return t if the file exists and loads successfully. */)
(file, noerror, nomessage, nosuffix, must_suffix)
Lisp_Object file, noerror, nomessage, nosuffix, must_suffix;