From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.devel Subject: RE: "Warning: `save-excursion' defeated by `set-buffer'" madness Date: Mon, 15 Feb 2010 09:53:42 -0800 Message-ID: <44EB0E48B6F54339816DDEC847B669AD@us.oracle.com> References: <20100212204057.GG27521@headley> <20100214001755.GA2289@headley> <20100215111948.GB2289@headley> <20100215155054.GC2289@headley> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1266256536 2946 80.91.229.12 (15 Feb 2010 17:55:36 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 15 Feb 2010 17:55:36 +0000 (UTC) Cc: emacs-devel@gnu.org, 'Barry Fishman' To: "=?iso-8859-2?Q?'=A9tep=E1n_Nemec'?=" , "'Stefan Monnier'" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 15 18:55:29 2010 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.69) (envelope-from ) id 1Nh5AP-0000An-9B for ged-emacs-devel@m.gmane.org; Mon, 15 Feb 2010 18:55:29 +0100 Original-Received: from localhost ([127.0.0.1]:39950 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nh5AO-0004e1-Nf for ged-emacs-devel@m.gmane.org; Mon, 15 Feb 2010 12:55:28 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Nh5AJ-0004dP-Hl for emacs-devel@gnu.org; Mon, 15 Feb 2010 12:55:23 -0500 Original-Received: from [140.186.70.92] (port=48546 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nh5AJ-0004cv-0U for emacs-devel@gnu.org; Mon, 15 Feb 2010 12:55:23 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Nh5AI-0006Z1-31 for emacs-devel@gnu.org; Mon, 15 Feb 2010 12:55:22 -0500 Original-Received: from rcsinet12.oracle.com ([148.87.113.124]:39897) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Nh5AH-0006Yl-Sj for emacs-devel@gnu.org; Mon, 15 Feb 2010 12:55:22 -0500 Original-Received: from acsinet15.oracle.com (acsinet15.oracle.com [141.146.126.227]) by rcsinet12.oracle.com (Switch-3.4.2/Switch-3.4.2) with ESMTP id o1FHt9AN001613 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 15 Feb 2010 17:55:12 GMT Original-Received: from acsmt355.oracle.com (acsmt355.oracle.com [141.146.40.155]) by acsinet15.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o1FGLtHc011903; Mon, 15 Feb 2010 17:55:05 GMT Original-Received: from abhmt020.oracle.com by acsmt354.oracle.com with ESMTP id 30409041266256422; Mon, 15 Feb 2010 09:53:42 -0800 Original-Received: from dradamslap1 (/130.35.179.10) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 15 Feb 2010 09:53:42 -0800 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <20100215155054.GC2289@headley> Thread-Index: AcquViCMoI550HH2T/exjoXUj5FaIQACcgeQ X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-Source-IP: acsmt355.oracle.com [141.146.40.155] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090201.4B798A7C.01DD:SCFMA4539814,ss=1,fgs=0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:121132 Archived-At: > So it's BBDB-related again, but really Icicles-initiated in > this case. I didn't suspect Icicles originally, as I had it off when invoking > `ibuffer', but now that I tried not even requiring Icicles in my init file, > the problem goes away. Also, even with Icicles loaded, it only happens > the first time `ibuffer' is invoked; so it's probably related to all > those re-initializations Icicles is doing; I'm cc-ing Drew in case he > was interested (icicles.el is Update #: 22624). Thanks. Feel free to follow up with me off list. Sorry for the inconvenience. Yes, Icicles toggles Icicle mode twice after you load ibuffer, in order to bind `M-s i' in `ibuffer-mode-map' to command `icicle-search-ibuffer-marked' (only when Icicle mode is on). Your backtrace indicates that `choose-completion-string' is advised. Icicles does not advise it (instead, it uses `defalias' to redefine it when in Icicle mode). BBDB advises it, in file `bbdb-com.el'. That explains why the backtrace for byte-compiling function `choose-completion-string' shows `(if bbdb-complete-name-callback-data (save-excursion ... ...))'. In the latest version of Icicles, advice is automatically deactivated (when in Icicle mode) for any of the standard functions that Icicles redefines (see variable `icicle-redefined-functions'). (The advice is re-activated when you quit Icicle mode.) So this problem should not arise in the latest Icicles version. But using BBDB in Icicle mode will no longer use the BBDB advice, which might pose a problem (the advice deletes the completed BBDB name before replacing it). You can modify the value of `icicle-redefined-functions' to allow the BBDB advice (hence to also get back the byte-compiler warning).