changeset 111608:2f23047ca654

Fix bug #7346: document load-file-name. src/lread.c (Fload): Mention `load-in-progress' and `load-file-name'. doc/lispref/loading.texi (How Programs Do Loading): Document `load-file-name'.
author Eli Zaretskii <eliz@gnu.org>
date Fri, 12 Nov 2010 18:35:35 +0200
parents 71ea229e4709
children ae8718af3ea5
files doc/lispref/ChangeLog doc/lispref/loading.texi src/ChangeLog src/lread.c
diffstat 4 files changed, 24 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/doc/lispref/ChangeLog	Fri Nov 12 10:37:27 2010 +0200
+++ b/doc/lispref/ChangeLog	Fri Nov 12 18:35:35 2010 +0200
@@ -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.
--- a/doc/lispref/loading.texi	Fri Nov 12 10:37:27 2010 +0200
+++ b/doc/lispref/loading.texi	Fri Nov 12 18:35:35 2010 +0200
@@ -107,6 +107,10 @@
 @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 @@
 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.
--- a/src/ChangeLog	Fri Nov 12 10:37:27 2010 +0200
+++ b/src/ChangeLog	Fri Nov 12 18:35:35 2010 +0200
@@ -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.
--- a/src/lread.c	Fri Nov 12 10:37:27 2010 +0200
+++ b/src/lread.c	Fri Nov 12 18:35:35 2010 +0200
@@ -1007,6 +1007,10 @@
 `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;