I found strange behavior of the file name extension function in windows during the installation of the last cedet using el-get. The problem is related to the generation of startups.
In autoload.el, the latest emacs 24.1.50 contains the following function:
(defun autoload-generated-file ()
(expand-file-name generated-autoload-file
;; File-local settings of generated-autoload-file should
;; be interpreted relative to the file location,
;; of course.
(if (not (local-variable-p 'generated-autoload-file))
(expand-file-name "lisp" source-directory))))
In my case, the generated-autoload file is:
"/home/ngulyamov/.emacs.d/el-get/cedet/lisp/cedet/srecode/loaddefs.el"
since I have an $ HOME $ environment variable pointing to C: / home / ngulyamov. In this case, the function returns above:
"d:/home/ngulyamov/.emacs.d/el-get/cedet/lisp/cedet/srecode/loaddefs.el"
because of the source directory contains:
"d:/devel/emacs/emacs-bzr/trunk_jenkins/".
As you can see, this changes the drive letter from C: to D :. At the same time, in emacs 23.3, this function returns a semi-correct value, since the source directory contains the value:
"c:/Users/Sean/Downloads/emacs-23.3/".
According to the function description, the file name of the file:
<i> (expand-file-name NAME and optional DEFAULT-DIRECTORY)
NAME .
DEFAULT-DIRECTORY - , , NAME
( ); DEFAULT-DIRECTORY ,
`default-directory '.
Windows .
:
1. Windows?
2. source ?
- ? autoload.el?
.