Achim Gratz <strom...@nexgo.de> writes: > Bastien writes: >> There is this line at the end of org-loaddefs.el: >> >> ;; no-byte-compile: t >> >> So my understanding is that org-loaddefs.el is never compressed. > > Byte-compiled != compressed.
Yep, typo. But the 'mustsuffix trick is to force loading ".el" (and not ".elc" files, right? My question is: when is it necessary? >> Under which conditions is it compressed? > > When calling gzip on it. Er... I'm not Spinoza, considering things "sub specie aeternitatis". I'm trying to consider real use-cases, with a sense of "real" close to "not so improbable". I don't see why Org should take care of users who are pervert enough to gzip their org-loaddefs.el... but maybe I lack imagination, as usual :) >>> In particular, when there is another org-loaddefs.el later on in the >>> loadpath, it will happily load that file, creating just the very problem >>> we were trying to avoid. >> >> That's why the user needs to add the correct load-path in his >> .emacs.el when using a tarball or a git clone. I made it clear >> in the docs. > > No, it will load the wrong file even if the load-path is correct. Try > it if you don't believe me — gotta run now. emacs -Q M-: (add-to-list 'load-path "~/git/org-mode/lisp") M-: (find-library "org") M-: (buffer-file-name) => "~/git/org-mode/lisp/org.el" emacs -Q M-: (add-to-list 'load-path "~/git/org-mode/lisp" t) M-: (find-library "org") M-: (buffer-file-name) => "/usr/local/share/emacs/24.3.50/lisp/org/org.el" But I know your answer, `find-library' does not give the library from which functions have been autoloaded. -- Bastien