From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nick Roberts Newsgroups: gmane.emacs.devel Subject: Re: Incompatible change without "warning" Date: Fri, 22 Apr 2005 11:14:38 +1200 Message-ID: <17000.13278.865098.49756@farnswood.snap.net.nz> References: <16997.28602.876638.54728@farnswood.snap.net.nz> <16998.58339.710430.454702@farnswood.snap.net.nz> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1114125451 16987 80.91.229.2 (21 Apr 2005 23:17:31 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 21 Apr 2005 23:17:31 +0000 (UTC) Cc: emacs-devel@gnu.org, monnier@iro.umontreal.ca, ich@frank-schmitt.net Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Apr 22 01:17:30 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DOkvA-0004jZ-Ue for ged-emacs-devel@m.gmane.org; Fri, 22 Apr 2005 01:17:21 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DOkzy-0003b4-QD for ged-emacs-devel@m.gmane.org; Thu, 21 Apr 2005 19:22:18 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DOkzA-0003Ey-7x for emacs-devel@gnu.org; Thu, 21 Apr 2005 19:21:28 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DOkz9-0003E9-BT for emacs-devel@gnu.org; Thu, 21 Apr 2005 19:21:27 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DOkz9-00033H-6x for emacs-devel@gnu.org; Thu, 21 Apr 2005 19:21:27 -0400 Original-Received: from [202.37.101.8] (helo=viper.snap.net.nz) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DOkwM-0000dH-Ao; Thu, 21 Apr 2005 19:18:34 -0400 Original-Received: from farnswood.snap.net.nz (p109-tnt1.snap.net.nz [202.124.110.109]) by viper.snap.net.nz (Postfix) with ESMTP id 332C44AE198; Fri, 22 Apr 2005 11:15:56 +1200 (NZST) Original-Received: by farnswood.snap.net.nz (Postfix, from userid 501) id 83EBD62A99; Fri, 22 Apr 2005 00:14:39 +0100 (BST) Original-To: rms@gnu.org In-Reply-To: X-Mailer: VM 7.19 under Emacs 22.0.50.19 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:36258 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:36258 Richard Stallman writes: > Before you install this, please write the changes for etc/NEWS and the > Lisp manual to install at the same time. For completeness, I guess there should be one for functions too. Indeed, there seem to be more uses of make-obsolete than make-obsolete-variable (possibly bacause defvaralias is newer than defalias). I see XEmacs has define-obsolete-function-alias so we could do: (defmacro define-obsolete-function-alias (function aliased &optional docstring when) "blurb" `(progn (defalias ,function ,aliased ,docstring) (make-obsolete ,function ,aliased ,when))) Or we could combine the two e.g (defmacro define-obsolete-alias (new aliased &optional docstring when) "blurb" `(if (fboundp ,aliased) (progn (defalias ,new ,aliased ,docstring) (make-obsolete ,new ,aliased ,when)) (progn (defvaralias ,new ,aliased ,docstring) (make-obsolete-variable ,new ,aliased ,when)))) It would have to be done a bit differently though, to deal with case of a symbol having both a value and a function definition. Nick