From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Reiner Steib Newsgroups: gmane.emacs.devel Subject: Re: declare-function in files from Gnus (hashcash.el, imap.el) Date: Tue, 04 Dec 2007 00:12:07 +0100 Message-ID: References: <200712011634.lB1GYCkr018222@oogie-boogie.ics.uci.edu> <87mysuwdcx.fsf@neutrino.caeruleus.net> <87ac27w4lz.fsf@neutrino.caeruleus.net> <87u00eufga.fsf@neutrino.caeruleus.net> <200712022237.lB2MbNC8016800@oogie-boogie.ics.uci.edu> Reply-To: Reiner Steib NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1196723598 4762 80.91.229.12 (3 Dec 2007 23:13:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 3 Dec 2007 23:13:18 +0000 (UTC) Cc: Ralf Angeli , rms@gnu.org, emacs-devel@gnu.org To: Dan Nicolaescu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Dec 04 00:13:27 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IzKTd-0000nn-KE for ged-emacs-devel@m.gmane.org; Tue, 04 Dec 2007 00:13:25 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IzKTM-0001Wk-Vh for ged-emacs-devel@m.gmane.org; Mon, 03 Dec 2007 18:13:08 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IzKTI-0001VD-NU for emacs-devel@gnu.org; Mon, 03 Dec 2007 18:13:04 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IzKTG-0001TD-Oi for emacs-devel@gnu.org; Mon, 03 Dec 2007 18:13:04 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IzKTG-0001T6-HD for emacs-devel@gnu.org; Mon, 03 Dec 2007 18:13:02 -0500 Original-Received: from mail.uni-ulm.de ([134.60.1.11]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IzKTB-0000Ww-EP; Mon, 03 Dec 2007 18:12:57 -0500 Original-Received: from bridgekeeper.physik.uni-ulm.de (bridgekeeper.physik.uni-ulm.de [134.60.41.37]) by mail.uni-ulm.de (8.14.1/8.14.1) with ESMTP id lB3NClq1017949; Tue, 4 Dec 2007 00:12:50 +0100 (MET) Original-Received: from localhost (bridgekeeper.physik.uni-ulm.de [134.60.41.37]) by bridgekeeper.physik.uni-ulm.de (Postfix) with ESMTP id 9B49812DCB; Tue, 4 Dec 2007 00:12:47 +0100 (CET) X-Face: #vK]N[`vqjuod*|)'[iD7/"3AB-ApT%fmN"LWAg@oS7OesGv~)n[OBTLM#I="J'Y^-7I I/ps7o_'IK@#-Rs{::DZ@O8yS|fexe,XslY[:dNWOb~>?mC-&i_c)say:"\IpA.5U.b]'NY; Pks{lb h.+#6%DpZuaK3dcHB`Av3zc:r!C%~s0&m, tWj]&}, qg.+0ww2gK%f!:GK|wMl.I!(voY*1"^li8"~B BNG)9LvPi?^DMR-GVDnZqhu*3Hi, +g=wFhI)BL6&u{EOVEHjVEVq~d?_}lMntWAc3(6?kftjc>_f>! g0wM(qPM$d5]^TT_Qyi&L?LGVG)SHN;Gk/,pkY9,~ Mail-Followup-To: Dan Nicolaescu , Ralf Angeli , rms@gnu.org, emacs-devel@gnu.org In-Reply-To: <200712022237.lB2MbNC8016800@oogie-boogie.ics.uci.edu> (Dan Nicolaescu's message of "Sun, 02 Dec 2007 14:37:23 -0800") User-Agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1.50 (gnu/linux) X-DCC-Misty-Metrics: poseidon 1170; Body=4 Fuz1=4 Fuz2=4 X-Virus-Scanned: by amavisd-new X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. 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:84621 Archived-At: On Sun, Dec 02 2007, Dan Nicolaescu wrote: > Such files can just add a 1 line compatibility code: > > (unless (fboundp 'declare-function) (defmacro declare-function (&rest r))) I think this is not a good idea... ,----[ (info "(elisp)Coding Conventions") ] | * If a package needs to define an alias or a new function for | compatibility with some other version of Emacs, name it with the | package prefix, not with the raw name with which it occurs in the | other version. Here is an example from Gnus, which provides many | examples of such compatibility issues. | | (defalias 'gnus-point-at-bol | (if (fboundp 'point-at-bol) | 'point-at-bol | 'line-beginning-position)) `---- [In Gnus, we had some bug report from XEmacs users that was very hard to find because some XEmacs package defined an un-prefixed Emacs function so that the test (fboundp ...) returned t although the functionality was not as expected.] Bye, Reiner. -- ,,, (o o) ---ooO-(_)-Ooo--- | PGP key available | http://rsteib.home.pages.de/