From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Richard M. Stallman" Newsgroups: gmane.emacs.devel Subject: Re: mh-e/mh-acros.el advices `require' incorrectly Date: Sat, 14 Jan 2006 11:14:27 -0500 Message-ID: References: <87hd87g62x.fsf-monnier+emacs@gnu.org> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: sea.gmane.org 1137260488 1264 80.91.229.2 (14 Jan 2006 17:41:28 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 14 Jan 2006 17:41:28 +0000 (UTC) Cc: emacs-devel@gnu.org, handa@m17n.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Jan 14 18:41:25 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1ExpP2-0000V1-05 for ged-emacs-devel@m.gmane.org; Sat, 14 Jan 2006 18:41:24 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ExpRD-0003Dd-2n for ged-emacs-devel@m.gmane.org; Sat, 14 Jan 2006 12:43:39 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Exo7t-00076j-5u for emacs-devel@gnu.org; Sat, 14 Jan 2006 11:19:37 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Exo7f-000729-Cu for emacs-devel@gnu.org; Sat, 14 Jan 2006 11:19:31 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Exo7a-0006zo-Je for emacs-devel@gnu.org; Sat, 14 Jan 2006 11:19:19 -0500 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1ExoAl-0005AA-S7 for emacs-devel@gnu.org; Sat, 14 Jan 2006 11:22:35 -0500 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.34) id 1Exo2t-0007ve-Tg; Sat, 14 Jan 2006 11:14:27 -0500 Original-To: Stefan Monnier In-reply-to: <87hd87g62x.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Fri, 13 Jan 2006 16:45:15 -0500) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:49082 Archived-At: --- orig/lisp/emacs-lisp/bytecomp.el +++ mod/lisp/emacs-lisp/bytecomp.el @@ -1640,6 +1640,12 @@ ;; Force logging of the file name for each file compiled. (setq byte-compile-last-logged-file nil) (let ((byte-compile-current-file filename) + ;; Prefer source files over compiled files. This is so that when + ;; several files are changed and recompiled, each new file is + ;; properly recompiled with the new macros in the other new files. + (load-suffixes (sort (copy-sequence load-suffixes) + (lambda (s1 s2) (and (string-match "\\.elc\\b" s2) + (string-match "\\.el\\b" s1))))) (set-auto-coding-for-load t) target-file input-buffer output-buffer byte-compile-dest-file) That creates an inconsistency. If it were a reliable solution to the problem, that could justify the inconsistency. But it isn't reliable, because if the file require'd was already loaded in bytecode outside the compiler, this won't reload it. Thus, if we want a reliable solution, it has to be something else. For the same reason, the advice in mh-e.el is not a good solution (even disregarding that it is a bad thing for parts of Emacs to advise other parts).