From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Richard Copley Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Jun 2012 17:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 11780@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.13406453382843 (code B ref -1); Mon, 25 Jun 2012 17:29:02 +0000 Received: (at submit) by debbugs.gnu.org; 25 Jun 2012 17:28:58 +0000 Received: from localhost ([127.0.0.1]:57523 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjD5t-0000jn-8K for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:28:57 -0400 Received: from eggs.gnu.org ([208.118.235.92]:55204) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjD5r-0000jg-8e for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:28:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjD21-00029X-Mr for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:24:58 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:46485) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD21-00029Q-Gy for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:24:57 -0400 Received: from eggs.gnu.org ([208.118.235.92]:51770) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD1z-0005QD-Qz for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjD1y-00029A-1Y for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:55 -0400 Received: from mail-pz0-f41.google.com ([209.85.210.41]:48565) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD1x-00028w-P8 for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:53 -0400 Received: by dakp5 with SMTP id p5so6127171dak.0 for ; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=jcjI/pa/tsppirZ4vMqe+sULPxl2NPdCXdH40tROCmQ=; b=eJSfXcw5dYgWL3Yw2UgYmEMYLIjA9EhTzvzXxsaJWP/09E3NzabOFYR4smR4MRmnyW otKlrO57zQxPSUwICwXtOZI+tv8Rsjpo+fZevyoEQJ91NYEm3B2brABBuja+Qw5Me+fS PAT9qndzW2RBLEn75T/09cC3ED42fQs6lHKwLeTgSGRP4KHpTQVlsZmtRDcarurOCMZ+ z5us+Ukt5/i0sicz6KpC+DyhuCfG/oBSC9EXzJDRUcadu/j0jsTNY5Ys/qpo1GECt6si Pbs3OvKI49PIiQedJfebX2d7iZRBVN0stwN7DcCEgFdsAN9CqYcTEQyRMolG14ILn2im wtzA== MIME-Version: 1.0 Received: by 10.68.116.203 with SMTP id jy11mr42326259pbb.129.1340645090477; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) Received: by 10.142.209.19 with HTTP; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) Date: Mon, 25 Jun 2012 18:24:50 +0100 Message-ID: From: Richard Copley Content-Type: text/plain; charset=ISO-8859-1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) Assuming RCS is installed and on the path, `vc-annotate' fails (for files under RCS). Recipe: SET RCSINIT=-x,v SET TZ=Europe/London runemacs -Q Visit a file under RCS version control and invoke `vc-annotate'. Result: error "Symbol's function definition is void: sw" (at vc-rcs.el, line 1309). In GNU Emacs 24.1.50.1 (i386-mingw-nt5.1.2600) of 2012-06-25 on 57172UHB Bzr revision: 108731 eggert@cs.ucla.edu-20120625075445-j1o6zbn9ln77b7tk Windowing system distributor `Microsoft Corp.', version 5.1.2600 Configured using: `configure --with-gcc (4.6) --enable-checking --cflags -fno-omit-frame-pointer -L c:/gnuwin32/lib -I c:/gnuwin32/include' Recent input: C-x C-f c : \ t e m p \ x . t x t C-x v g M-x r e p o r t - e m a c s - b u g Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Note: file is write protected Annotating... vc-rcs-annotate-command: Symbol's function definition is void: sw From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Eli Zaretskii Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Jun 2012 18:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Richard Copley Cc: 11780@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134065034810065 (code B ref 11780); Mon, 25 Jun 2012 18:53:01 +0000 Received: (at 11780) by debbugs.gnu.org; 25 Jun 2012 18:52:28 +0000 Received: from localhost ([127.0.0.1]:57567 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjEOi-0002cI-5j for submit@debbugs.gnu.org; Mon, 25 Jun 2012 14:52:28 -0400 Received: from mtaout20.012.net.il ([80.179.55.166]:49944) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjEOe-0002c7-Vw for 11780@debbugs.gnu.org; Mon, 25 Jun 2012 14:52:27 -0400 Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0M6600C00S4FI300@a-mtaout20.012.net.il> for 11780@debbugs.gnu.org; Mon, 25 Jun 2012 21:48:26 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.210.75]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0M6600C62S8Q8I60@a-mtaout20.012.net.il>; Mon, 25 Jun 2012 21:48:26 +0300 (IDT) Date: Mon, 25 Jun 2012 21:48:35 +0300 From: Eli Zaretskii In-reply-to: X-012-Sender: halo1@inter.net.il Message-id: <83k3yv9qik.fsf@gnu.org> References: X-Spam-Score: -1.2 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) > Date: Mon, 25 Jun 2012 18:24:50 +0100 > From: Richard Copley > > Assuming RCS is installed and on the path, `vc-annotate' fails (for > files under RCS). > > Recipe: > SET RCSINIT=-x,v > SET TZ=Europe/London > runemacs -Q I get the error even without setting RCSINIT and TZ. > Visit a file under RCS version control and invoke `vc-annotate'. > Result: error "Symbol's function definition is void: sw" (at > vc-rcs.el, line 1309). And here's the Lisp backtrace: > Debugger entered--Lisp error: (void-function sw) > vc-rcs-parse() > vc-rcs-annotate-command("d:/foo/bar/baz.c" # "0.93") > apply(vc-rcs-annotate-command ("d:/foo/bar/baz.c" # "0.93")) > vc-call-backend(RCS annotate-command "d:/foo/bar/baz.c" # "0.93") > vc-annotate("d:/foo/bar/baz.c" "0.93" fullscale) > call-interactively(vc-annotate nil nil) Emacs 24.1 doesn't have this problem. From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Richard Copley Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 25 Jun 2012 19:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134065122211389 (code B ref 11780); Mon, 25 Jun 2012 19:08:01 +0000 Received: (at 11780) by debbugs.gnu.org; 25 Jun 2012 19:07:02 +0000 Received: from localhost ([127.0.0.1]:57621 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjEcn-0002xU-NO for submit@debbugs.gnu.org; Mon, 25 Jun 2012 15:07:01 -0400 Received: from mail-pz0-f44.google.com ([209.85.210.44]:33556) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjEcl-0002xD-Pu for 11780@debbugs.gnu.org; Mon, 25 Jun 2012 15:07:00 -0400 Received: by dacx6 with SMTP id x6so5429359dac.3 for <11780@debbugs.gnu.org>; Mon, 25 Jun 2012 12:03:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=RphG1Qf//DoeI1ZiH/c9/DPa80MmmhXULRwJb3IDnTc=; b=ONIC1Tng9vNhH/JGWGXK76xuZSfIQsKfs42o0mJSRuoM0yAe8OiMUv1mOGeqSlnfzo vKjSeFCh5cKB0Q6ECBd3VyORpGISI1Jeblq8h0XO/KbJlCuv+O2b5foBHpRK7b2PGsZw fX99No+sIcVLk0F1kMGFB4K8nwlDyJ26j6iQCp09l1sDGuzC/gGjCv8sHJKOiLrHtvGb JNg3u8Ak5n5fjQNXpq8bllw5J6t9xEmeKCqJvsIyEt59OzhVncyxnq3G7KjcPtvq5FC0 4g/y/RwznIc5wLTFo7fd0CJEE/5joO9jLJNTtz/UIk2w/gEW590drmGyDUh29LW0eNMr R4Yw== MIME-Version: 1.0 Received: by 10.68.194.169 with SMTP id hx9mr43778034pbc.8.1340650982403; Mon, 25 Jun 2012 12:03:02 -0700 (PDT) Received: by 10.142.209.19 with HTTP; Mon, 25 Jun 2012 12:03:02 -0700 (PDT) In-Reply-To: <83k3yv9qik.fsf@gnu.org> References: <83k3yv9qik.fsf@gnu.org> Date: Mon, 25 Jun 2012 20:03:02 +0100 Message-ID: From: Richard Copley Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Score: -2.6 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) On 25 June 2012 19:48, Eli Zaretskii wrote: > I get the error even without setting RCSINIT and TZ. They are indeed not relevant, I shouldn't have implied otherwise. (All our RCS master files are made with those settings so for me, RCS "doesn't work" without them.) > And here's the Lisp backtrace: That's the one, thanks. > Emacs 24.1 doesn't have this problem. I'm having fun following the trunk, though of course it's less stable now after the release. In particular I gather that Stefan has replaced the `flet' machinery. From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 26 Jun 2012 22:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: Richard Copley , 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.13407507604924 (code B ref 11780); Tue, 26 Jun 2012 22:46:01 +0000 Received: (at 11780) by debbugs.gnu.org; 26 Jun 2012 22:46:00 +0000 Received: from localhost ([127.0.0.1]:59178 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjeWF-0001HM-UL for submit@debbugs.gnu.org; Tue, 26 Jun 2012 18:46:00 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:48791) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjeWC-0001HE-Cw for 11780@debbugs.gnu.org; Tue, 26 Jun 2012 18:45:57 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1SjeSF-0004on-76; Tue, 26 Jun 2012 18:41:51 -0400 From: Glenn Morris References: <83k3yv9qik.fsf@gnu.org> X-Spook: Project Monarch MP5K-SD Vickie Weaver Cocaine high X-Ran: td@Pf"=5*7V`]+cOnFN^+n1(rG$l'ZbC?a`#!3tKY4z>xk#.x//E#@r`_*u]@KZdH.%f,~ X-Hue: magenta X-Attribution: GM Date: Tue, 26 Jun 2012 18:41:51 -0400 In-Reply-To: (Richard Copley's message of "Mon, 25 Jun 2012 20:03:02 +0100") Message-ID: User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -6.9 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) Here's what the expansion of (flet ((sw () (skip-chars-forward " \t\n"))) (sw)) looks like in 24.1: (let* ((--cl-letf-bound-- (fboundp 'sw)) (--cl-letf-save-- (and --cl-letf-bound-- (symbol-function 'sw)))) (unwind-protect (progn (fset 'sw (function* (lambda nil (block sw (skip-chars-forward " \n"))))) (sw)) (if --cl-letf-bound-- (fset 'sw --cl-letf-save--) (fmakunbound 'sw)))) whereas in the current trunk it looks like this: (let* ((x (cl-function (lambda nil (cl-block sw (skip-chars-forward " \n"))))) (x (symbol-function 'sw))) (unwind-protect (progn (fset 'sw x) (sw)) (fset 'sw x))) So there's a couple of things wrong with the new version: `x' used twice as a local variable. (symbol-function 'sw) not guarded by an (fboundp 'sw) check. The latter is the immediate source of the error AFAICS. From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Jun 2012 01:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Glenn Morris Cc: Richard Copley , 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134075880919509 (code B ref 11780); Wed, 27 Jun 2012 01:01:02 +0000 Received: (at 11780) by debbugs.gnu.org; 27 Jun 2012 01:00:09 +0000 Received: from localhost ([127.0.0.1]:59264 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sjgc4-00054b-Pe for submit@debbugs.gnu.org; Tue, 26 Jun 2012 21:00:09 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:45990) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sjgc3-00054V-EC for 11780@debbugs.gnu.org; Tue, 26 Jun 2012 21:00:07 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09sr+Nd/2dsb2JhbABEsEiDSYEIghUBAQQBViMFCwsOJhIUGA0kiBwFugmQRAOjM4FYgwU X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="192166662" Received: from 108-175-227-93.dsl.teksavvy.com (HELO pastel.home) ([108.175.227.93]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 26 Jun 2012 20:56:02 -0400 Received: by pastel.home (Postfix, from userid 20848) id 6218A59042; Tue, 26 Jun 2012 20:56:01 -0400 (EDT) From: Stefan Monnier Message-ID: References: <83k3yv9qik.fsf@gnu.org> Date: Tue, 26 Jun 2012 20:56:01 -0400 In-Reply-To: (Glenn Morris's message of "Tue, 26 Jun 2012 18:41:51 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -1.9 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) > So there's a couple of things wrong with the new version: > `x' used twice as a local variable. That's an illusion: these are two different uninterned symbols (of the same name). > (symbol-function 'sw) not guarded by an (fboundp 'sw) check. Indeed. > The latter is the immediate source of the error AFAICS. Does the patch below fix things? Stefan === modified file 'lisp/vc/vc-rcs.el' --- lisp/vc/vc-rcs.el 2012-06-06 01:28:08 +0000 +++ lisp/vc/vc-rcs.el 2012-06-27 00:52:54 +0000 @@ -679,7 +679,7 @@ ;; Apply reverse-chronological edits on the trunk, computing and ;; accumulating forward-chronological edits after some point, for ;; later. - (flet ((r/d/a () (vector pre + (cl-flet ((r/d/a () (vector pre (cdr (assq 'date meta)) (cdr (assq 'author meta))))) (while (when (setq pre cur cur (cdr (assq 'next meta))) From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Jun 2012 01:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: Richard Copley , 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134075985820963 (code B ref 11780); Wed, 27 Jun 2012 01:18:02 +0000 Received: (at 11780) by debbugs.gnu.org; 27 Jun 2012 01:17:38 +0000 Received: from localhost ([127.0.0.1]:59273 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sjgsz-0005S2-C0 for submit@debbugs.gnu.org; Tue, 26 Jun 2012 21:17:37 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:51038) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sjgsx-0005Rv-Ko for 11780@debbugs.gnu.org; Tue, 26 Jun 2012 21:17:36 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1Sjgp0-0001ms-2X; Tue, 26 Jun 2012 21:13:30 -0400 From: Glenn Morris References: <83k3yv9qik.fsf@gnu.org> X-Spook: Mafia SDI government data haven Aldergrove ASDIC X-Ran: aHtx_Q/CS0_5N>?g'9q@Mf8+Eq^#0Q7PH;zmL&_OK*I7M(##Aeve*({mxQ%zQ7Z}U99pi, X-Hue: blue X-Attribution: GM Date: Tue, 26 Jun 2012 21:13:29 -0400 In-Reply-To: (Stefan Monnier's message of "Tue, 26 Jun 2012 20:56:01 -0400") Message-ID: User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -6.9 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) Stefan Monnier wrote: > Does the patch below fix things? Well no, because there are multiple `flet's in the file and that's not the one giving the immediate error. Even if I replace every flet with cl-flet, it still fails. (void-function tok+val) in vc-rcs-parse when trying to define k-semi. Test case: (cl-flet ((f1 (a) (+ a 1)) (f2 (b) (+ (f1 b) 2))) (f2 1)) > --- lisp/vc/vc-rcs.el 2012-06-06 01:28:08 +0000 > +++ lisp/vc/vc-rcs.el 2012-06-27 00:52:54 +0000 > @@ -679,7 +679,7 @@ > ;; Apply reverse-chronological edits on the trunk, computing and > ;; accumulating forward-chronological edits after some point, for > ;; later. > - (flet ((r/d/a () (vector pre > + (cl-flet ((r/d/a () (vector pre > (cdr (assq 'date meta)) > (cdr (assq 'author meta))))) > (while (when (setq pre cur cur (cdr (assq 'next meta))) From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Jun 2012 14:31:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Glenn Morris Cc: Richard Copley , 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134080742531408 (code B ref 11780); Wed, 27 Jun 2012 14:31:01 +0000 Received: (at 11780) by debbugs.gnu.org; 27 Jun 2012 14:30:25 +0000 Received: from localhost ([127.0.0.1]:60441 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjtGC-0008AW-Q0 for submit@debbugs.gnu.org; Wed, 27 Jun 2012 10:30:25 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:57363) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjtGB-0008AN-5N for 11780@debbugs.gnu.org; Wed, 27 Jun 2012 10:30:23 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09sr+Nd/2dsb2JhbABEsEiDSYEIghUBAQQBViMQCw4mEhQYDSSIHAW6CZBEA6MzgViDBYE6Gg X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="192191151" Received: from 108-175-227-93.dsl.teksavvy.com (HELO pastel.home) ([108.175.227.93]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 27 Jun 2012 10:26:15 -0400 Received: by pastel.home (Postfix, from userid 20848) id 4DC03592B0; Wed, 27 Jun 2012 10:26:15 -0400 (EDT) From: Stefan Monnier Message-ID: References: <83k3yv9qik.fsf@gnu.org> Date: Wed, 27 Jun 2012 10:26:15 -0400 In-Reply-To: (Glenn Morris's message of "Tue, 26 Jun 2012 21:13:29 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -1.9 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) >> Does the patch below fix things? > Well no, because there are multiple `flet's in the file and that's not > the one giving the immediate error. Duh, right. I have a patch to make flet behave as before, but that behavior is a real horror, so I'd really prefer to move away from it: cl-flet implements the Common-Lisp semantics, which is a lot saner. Does the patch below fix things, this time? Stefan === modified file 'lisp/emacs-lisp/cl-macs.el' --- lisp/emacs-lisp/cl-macs.el 2012-06-23 04:24:06 +0000 +++ lisp/emacs-lisp/cl-macs.el 2012-06-27 12:58:16 +0000 @@ -1570,7 +1570,6 @@ (setq cl--labels-convert-cache (cons f res)) res)))))) -;;; This should really have some way to shadow 'byte-compile properties, etc. ;;;###autoload (defmacro cl-flet (bindings &rest body) "Make temporary function definitions. @@ -1596,6 +1595,18 @@ (cons (cons 'function #'cl--labels-convert) newenv))))))) ;;;###autoload +(defmacro cl-flet* (bindings &rest body) + "Make temporary function definitions. +Like `cl-flet' but the definitions can refer to previous ones. + +\(fn ((FUNC ARGLIST BODY...) ...) FORM...)" + (declare (indent 1) (debug ((&rest (cl-defun)) cl-declarations body))) + (cond + ((null bindings) (macroexp-progn body)) + ((null (cdr bindings)) `(cl-flet ,bindings ,@body)) + (t `(cl-flet (,(pop bindings)) (cl-flet* ,bindings ,@body))))) + +;;;###autoload (defmacro cl-labels (bindings &rest body) "Make temporary function bindings. The bindings can be recursive. Assumes the use of `lexical-binding'. === modified file 'lisp/vc/vc-rcs.el' --- lisp/vc/vc-rcs.el 2012-06-06 01:28:08 +0000 +++ lisp/vc/vc-rcs.el 2012-06-27 13:06:53 +0000 @@ -679,7 +679,7 @@ ;; Apply reverse-chronological edits on the trunk, computing and ;; accumulating forward-chronological edits after some point, for ;; later. - (flet ((r/d/a () (vector pre + (cl-flet ((r/d/a () (vector pre (cdr (assq 'date meta)) (cdr (assq 'author meta))))) (while (when (setq pre cur cur (cdr (assq 'next meta))) @@ -769,7 +769,7 @@ ht) (setq maxw (max w maxw)))) (let ((padding (make-string maxw 32))) - (flet ((pad (w) (substring-no-properties padding w)) + (cl-flet ((pad (w) (substring-no-properties padding w)) (render (rda &rest ls) (propertize (apply 'concat @@ -1306,7 +1306,8 @@ ;; to "de-@@-format" the printed representation as the first step ;; to translating it into some value. See internal func `gather'. @-holes) - (flet ((sw () (skip-chars-forward " \t\n")) ; i.e., `[:space:]' + (cl-flet* + ((sw () (skip-chars-forward " \t\n")) ; i.e., `[:space:]' (at (tag) (save-excursion (eq tag (read buffer)))) (to-eol () (buffer-substring-no-properties (point) (progn (forward-line 1) @@ -1331,7 +1332,7 @@ (cons tok (if proc (funcall proc) (buffer-substring-no-properties b e)))) - (k-semi (name &optional proc) (tok+val 'to-semi name proc)) + (k-semi (name &optional proc) (tok+val #'to-semi name proc)) (gather () (let ((pairs `(,e ,@@-holes ,b)) acc) (while pairs @@ -1340,15 +1341,15 @@ acc) (setq pairs (cddr pairs))) (apply 'concat acc))) - (k-one@ (name &optional later) (tok+val 'to-one@ name + (k-one@ (name &optional later) (tok+val #'to-one@ name (if later (lambda () t) - 'gather)))) + #'gather)))) (save-excursion (goto-char (point-min)) ;; headers (setq context 'headers) - (flet ((hpush (name &optional proc) + (cl-flet ((hpush (name &optional proc) (push (k-semi name proc) headers))) (hpush 'head) (when (at 'branch) @@ -1391,7 +1392,7 @@ (when (< (car ls) 100) (setcar ls (+ 1900 (car ls)))) (apply 'encode-time (nreverse ls))))) - ,@(mapcar 'k-semi '(author state)) + ,@(mapcar #'k-semi '(author state)) ,(k-semi 'branches (lambda () (split-string @@ -1421,7 +1422,8 @@ ;; only the former since it behaves identically to the ;; latter in the absence of "@@".) sub) - (flet ((incg (beg end) (let ((b beg) (e end) @-holes) + (cl-flet ((incg (beg end) + (let ((b beg) (e end) @-holes) (while (and asc (< (car asc) e)) (push (pop asc) @-holes)) ;; Self-deprecate when work is done. @@ -1429,7 +1431,7 @@ ;; Thanks B.Mandelbrot, for complex sum. ;; O beauteous math! --the Unvexed Bum (unless asc - (setq sub 'buffer-substring-no-properties)) + (setq sub #'buffer-substring-no-properties)) (gather)))) (while (and (sw) (not (eobp)) @@ -1449,8 +1451,8 @@ (setcdr (cadr rev) (gather)) (if @-holes (setq asc (nreverse @-holes) - sub 'incg) - (setq sub 'buffer-substring-no-properties)) + sub #'incg) + (setq sub #'buffer-substring-no-properties)) (goto-char b) (setq acc nil) (while (< (point) e) From unknown Sat Jun 21 10:43:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Jun 2012 23:20:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11780 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Monnier Cc: Richard Copley , 11780@debbugs.gnu.org Received: via spool by 11780-submit@debbugs.gnu.org id=B11780.134083915122869 (code B ref 11780); Wed, 27 Jun 2012 23:20:02 +0000 Received: (at 11780) by debbugs.gnu.org; 27 Jun 2012 23:19:11 +0000 Received: from localhost ([127.0.0.1]:33080 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sk1Vv-0005wn-AG for submit@debbugs.gnu.org; Wed, 27 Jun 2012 19:19:11 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:57630) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sk1Vs-0005wg-Iy for 11780@debbugs.gnu.org; Wed, 27 Jun 2012 19:19:09 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1Sk1Rp-0002zE-7H; Wed, 27 Jun 2012 19:14:57 -0400 From: Glenn Morris References: <83k3yv9qik.fsf@gnu.org> X-Spook: MIT-LL insurgency M-14 Legion of Doom quiche PET Khaddafi X-Ran: 8H85FDL?=1ZV>Zcw{M'.N~xT<<Ue.q(<.VBCdbOEug3[lnN807 X-Hue: green X-Attribution: GM Date: Wed, 27 Jun 2012 19:14:57 -0400 In-Reply-To: (Stefan Monnier's message of "Wed, 27 Jun 2012 10:26:15 -0400") Message-ID: User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -6.9 (------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) Stefan Monnier wrote: > Does the patch below fix things, this time? Works for me, thanks. From unknown Sat Jun 21 10:43:29 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.428 (Entity 5.428) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Richard Copley Subject: bug#11780: closed (Re: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?)) Message-ID: References: X-Gnu-PR-Message: they-closed 11780 X-Gnu-PR-Package: emacs Reply-To: 11780@debbugs.gnu.org Date: Thu, 28 Jun 2012 00:36:01 +0000 Content-Type: multipart/mixed; boundary="----------=_1340843761-29552-1" This is a multi-part message in MIME format... ------------=_1340843761-29552-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' proble= m?) which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 11780@debbugs.gnu.org. --=20 11780: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D11780 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1340843761-29552-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 11780-done) by debbugs.gnu.org; 28 Jun 2012 00:35:51 +0000 Received: from localhost ([127.0.0.1]:33139 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sk2i7-0007gJ-MD for submit@debbugs.gnu.org; Wed, 27 Jun 2012 20:35:51 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:58578) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sk2i6-0007gB-Qi for 11780-done@debbugs.gnu.org; Wed, 27 Jun 2012 20:35:51 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai0FAG6Zu09soXbe/2dsb2JhbABEsEiDSYEIghUBAQQBViMQCw4mEhQYDSSIHAW6CZBEA6MzgViDBQ X-IronPort-AV: E=Sophos;i="4.75,637,1330923600"; d="scan'208";a="192240684" Received: from 108-161-118-222.dsl.teksavvy.com (HELO pastel.home) ([108.161.118.222]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 27 Jun 2012 20:31:40 -0400 Received: by pastel.home (Postfix, from userid 20848) id 67017592B0; Wed, 27 Jun 2012 20:31:40 -0400 (EDT) From: Stefan Monnier To: Glenn Morris Subject: Re: bug#11780: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) Message-ID: References: <83k3yv9qik.fsf@gnu.org> Date: Wed, 27 Jun 2012 20:31:40 -0400 In-Reply-To: (Glenn Morris's message of "Wed, 27 Jun 2012 19:14:57 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 11780-done Cc: Richard Copley , 11780-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) >> Does the patch below fix things, this time? > Works for me, thanks. Thanks, Stefan ------------=_1340843761-29552-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 25 Jun 2012 17:28:58 +0000 Received: from localhost ([127.0.0.1]:57523 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjD5t-0000jn-8K for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:28:57 -0400 Received: from eggs.gnu.org ([208.118.235.92]:55204) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjD5r-0000jg-8e for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:28:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjD21-00029X-Mr for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:24:58 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:46485) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD21-00029Q-Gy for submit@debbugs.gnu.org; Mon, 25 Jun 2012 13:24:57 -0400 Received: from eggs.gnu.org ([208.118.235.92]:51770) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD1z-0005QD-Qz for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SjD1y-00029A-1Y for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:55 -0400 Received: from mail-pz0-f41.google.com ([209.85.210.41]:48565) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SjD1x-00028w-P8 for bug-gnu-emacs@gnu.org; Mon, 25 Jun 2012 13:24:53 -0400 Received: by dakp5 with SMTP id p5so6127171dak.0 for ; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=jcjI/pa/tsppirZ4vMqe+sULPxl2NPdCXdH40tROCmQ=; b=eJSfXcw5dYgWL3Yw2UgYmEMYLIjA9EhTzvzXxsaJWP/09E3NzabOFYR4smR4MRmnyW otKlrO57zQxPSUwICwXtOZI+tv8Rsjpo+fZevyoEQJ91NYEm3B2brABBuja+Qw5Me+fS PAT9qndzW2RBLEn75T/09cC3ED42fQs6lHKwLeTgSGRP4KHpTQVlsZmtRDcarurOCMZ+ z5us+Ukt5/i0sicz6KpC+DyhuCfG/oBSC9EXzJDRUcadu/j0jsTNY5Ys/qpo1GECt6si Pbs3OvKI49PIiQedJfebX2d7iZRBVN0stwN7DcCEgFdsAN9CqYcTEQyRMolG14ILn2im wtzA== MIME-Version: 1.0 Received: by 10.68.116.203 with SMTP id jy11mr42326259pbb.129.1340645090477; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) Received: by 10.142.209.19 with HTTP; Mon, 25 Jun 2012 10:24:50 -0700 (PDT) Date: Mon, 25 Jun 2012 18:24:50 +0100 Message-ID: Subject: 24.1.50; vc-annotate fails for files in RCS. ("cl.el" `flet' problem?) From: Richard Copley To: bug-gnu-emacs@gnu.org Content-Type: text/plain; charset=ISO-8859-1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) Assuming RCS is installed and on the path, `vc-annotate' fails (for files under RCS). Recipe: SET RCSINIT=-x,v SET TZ=Europe/London runemacs -Q Visit a file under RCS version control and invoke `vc-annotate'. Result: error "Symbol's function definition is void: sw" (at vc-rcs.el, line 1309). In GNU Emacs 24.1.50.1 (i386-mingw-nt5.1.2600) of 2012-06-25 on 57172UHB Bzr revision: 108731 eggert@cs.ucla.edu-20120625075445-j1o6zbn9ln77b7tk Windowing system distributor `Microsoft Corp.', version 5.1.2600 Configured using: `configure --with-gcc (4.6) --enable-checking --cflags -fno-omit-frame-pointer -L c:/gnuwin32/lib -I c:/gnuwin32/include' Recent input: C-x C-f c : \ t e m p \ x . t x t C-x v g M-x r e p o r t - e m a c s - b u g Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Note: file is write protected Annotating... vc-rcs-annotate-command: Symbol's function definition is void: sw ------------=_1340843761-29552-1--