From unknown Sat Aug 16 16:10:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14496: cc-bytecomp-obsolete-fun doesn't work Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 29 May 2013 01:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 14496 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: 14496@debbugs.gnu.org X-Debbugs-Original-To: submit@debbugs.gnu.org Received: via spool by submit@debbugs.gnu.org id=B.136979266328789 (code B ref -1); Wed, 29 May 2013 01:58:01 +0000 Received: (at submit) by debbugs.gnu.org; 29 May 2013 01:57:43 +0000 Received: from localhost ([127.0.0.1]:38420 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhVe3-0007UH-Ae for submit@debbugs.gnu.org; Tue, 28 May 2013 21:57:43 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:46199 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhVe0-0007U9-JV for submit@debbugs.gnu.org; Tue, 28 May 2013 21:57:41 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1UhVcg-0004XA-OU; Tue, 28 May 2013 21:56:18 -0400 From: Glenn Morris X-Spook: SAFE Noriega supercomputer BCCI Albright spies USCODE X-Ran: W%,yp*;09u`p{q6ErS/>q~[$^\Lx[23^!&`0k_>=]=HS"t<;gLczkw?)/([[Aq'xM7$amy X-Hue: blue X-Attribution: GM Date: Tue, 28 May 2013 21:56:18 -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: -5.3 (-----) 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: -8.0 (--------) Package: emacs,cc-mode Version: 24.1 cc-bytecomp-obsolete-fun hasn't worked for 2+ years (Emacs 24.1 onwards), since it calls cc-bytecomp-ignore-obsolete, which uses byte-compile-obsolete, which was removed 2011-04-01. Since no-one has complained (and a web-search shows zero apparent users of cc-bytecomp-obsolete-fun), please can it just be removed. IMO most of the rest of cc-bytecomp should also be removed. cc-bytecomp-defun is replaced by the standard `declare-function', which works since Emacs 23.1 (and is defined in 22.2 onwards as a compat stub). cc-bytecomp-defvar is replaced by `(defvar foo)' with no init value. From unknown Sat Aug 16 16:10:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14496: cc-bytecomp-obsolete-fun doesn't work Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 29 May 2013 06:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14496 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: 14496@debbugs.gnu.org Received: via spool by 14496-submit@debbugs.gnu.org id=B14496.13698090443387 (code B ref 14496); Wed, 29 May 2013 06:31:02 +0000 Received: (at 14496) by debbugs.gnu.org; 29 May 2013 06:30:44 +0000 Received: from localhost ([127.0.0.1]:38717 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhZuC-0000sV-IY for submit@debbugs.gnu.org; Wed, 29 May 2013 02:30:42 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:51553 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhZu9-0000sK-5v for 14496@debbugs.gnu.org; Wed, 29 May 2013 02:30:38 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1UhZsn-0005q2-7G; Wed, 29 May 2013 02:29:13 -0400 From: Glenn Morris References: X-Spook: ASDIC satellite imagery Lexis-Nexis class struggle X-Ran: D-h@gE0tQ~RX{gvVweLs2u4t>*Ru|iH1##|b0PE*;Tt<)fErnulz3Ar<]z;E>t%,]`[H)G X-Hue: black X-Attribution: GM Date: Wed, 29 May 2013 02:29:13 -0400 In-Reply-To: (Glenn Morris's message of "Tue, 28 May 2013 21:56:18 -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.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: -8.0 (--------) Glenn Morris wrote: > cc-bytecomp-defun is replaced by the standard `declare-function', which > works since Emacs 23.1 (and is defined in 22.2 onwards as a compat stub). > > cc-bytecomp-defvar is replaced by `(defvar foo)' with no init value. PS I'd be happy to make those changes if they are acceptable. From unknown Sat Aug 16 16:10:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14496: cc-bytecomp-obsolete-fun doesn't work Resent-From: Stefan Monnier Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Wed, 29 May 2013 13:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14496 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: Glenn Morris Cc: 14496@debbugs.gnu.org Received: via spool by 14496-submit@debbugs.gnu.org id=B14496.136983336230840 (code B ref 14496); Wed, 29 May 2013 13:17:02 +0000 Received: (at 14496) by debbugs.gnu.org; 29 May 2013 13:16:02 +0000 Received: from localhost ([127.0.0.1]:39398 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhgEU-00081H-2Q for submit@debbugs.gnu.org; Wed, 29 May 2013 09:16:02 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.182]:1949) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UhgES-00080q-LR for 14496@debbugs.gnu.org; Wed, 29 May 2013 09:16:01 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av4EABK/CFFMCpOt/2dsb2JhbABEvw4Xc4IeAQEEAVYjEAsOJhIUGA0kLodwBsEtkQoDpHqBXoMT X-IPAS-Result: Av4EABK/CFFMCpOt/2dsb2JhbABEvw4Xc4IeAQEEAVYjEAsOJhIUGA0kLodwBsEtkQoDpHqBXoMT X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="15066540" Received: from 76-10-147-173.dsl.teksavvy.com (HELO pastel.home) ([76.10.147.173]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 29 May 2013 09:14:25 -0400 Received: by pastel.home (Postfix, from userid 20848) id 2B62562E19; Wed, 29 May 2013 09:14:27 -0400 (EDT) From: Stefan Monnier Message-ID: References: Date: Wed, 29 May 2013 09:14:27 -0400 In-Reply-To: (Glenn Morris's message of "Wed, 29 May 2013 02:29:13 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.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 (-) >> cc-bytecomp-defun is replaced by the standard `declare-function', which >> works since Emacs 23.1 (and is defined in 22.2 onwards as a compat stub). >> cc-bytecomp-defvar is replaced by `(defvar foo)' with no init value. > PS I'd be happy to make those changes if they are acceptable. I use the appended code for cc-bytecomp.el (plus the standard boilerplate at beginning/end, of course ;-). Note that with that code, I get some extra warnings. The reason is that cc-mode (especially via cc-lang) is initialized in a tortured way, which calls the byte-compiler explicitly. IIRC some of the problem is that if you compile a code like (defvar foo) (eval-when-compile (byte-compile '(lambda (x) (+ x foo)))) the compiler will warn you about an unknown `foo': the defvar does add `foo' to byte-compile-bound-variables, but byte-compile begins by re-binding byte-compile-bound-variables to nil. IIUC cc-bytecomp-defvar tries to address this problem with a major-ugly-hack. I think a lot of the rest is trying to solve similar things. A better solution would be to rethink the way cc-lang works so that cc-mode doesn't need to call byte-compile explicitly. Stefan (defmacro cc-require (cc-part) `(require ,cc-part)) (defmacro cc-provide (feature) `(provide ,feature)) (defmacro cc-load (cc-part) `(load ,cc-part nil t nil)) (defmacro cc-require-when-compile (cc-part) `(require ,cc-part)) (defmacro cc-external-require (feature) `(require ,feature)) (defmacro cc-bytecomp-defvar (var) `(defvar ,var)) (defmacro cc-bytecomp-defun (fun) `(declare-function ,fun unspecified)) (defmacro cc-bytecomp-obsolete-var (symbol) ()) (defmacro cc-bytecomp-obsolete-fun (symbol) ()) (defmacro cc-bytecomp-boundp (symbol) `(boundp ,symbol)) (defmacro cc-bytecomp-fboundp (symbol) `(fboundp ,symbol)) From unknown Sat Aug 16 16:10:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14496: cc-bytecomp-obsolete-fun doesn't work Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 31 May 2013 17:41:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14496 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: 14496@debbugs.gnu.org Received: via spool by 14496-submit@debbugs.gnu.org id=B14496.13700220573946 (code B ref 14496); Fri, 31 May 2013 17:41:02 +0000 Received: (at 14496) by debbugs.gnu.org; 31 May 2013 17:40:57 +0000 Received: from localhost ([127.0.0.1]:44897 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UiTJx-00011W-6T for submit@debbugs.gnu.org; Fri, 31 May 2013 13:40:57 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:43803 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UiTJu-00011N-Ql for 14496@debbugs.gnu.org; Fri, 31 May 2013 13:40:55 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1UiTIL-0007Ab-Oy; Fri, 31 May 2013 13:39:17 -0400 From: Glenn Morris References: X-Spook: INS spy Bosnia CIDA BCCI EuroFed Echelon ASIO X-Ran: t[Xphl+LU>qQJrucj0K6i7c[z2Na=%P!)_1hvncrELhkb;XOK6$W}VqBO,{>grs"Q{6Q{u X-Hue: black X-Attribution: GM Date: Fri, 31 May 2013 13:39:17 -0400 In-Reply-To: (Glenn Morris's message of "Wed, 29 May 2013 02:29:13 -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.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: -8.0 (--------) PPS, In Emacs, cc-bytecomp-defun seems unecessary since Emacs 21.1. It mainly seems to be used for things like: ;; Silence the compiler. (cc-bytecomp-defun set-keymap-parents) ; XEmacs (if (cc-bytecomp-fboundp 'set-keymap-parents) (set-keymap-parents map c-mode-base-map)) to silence a compilation warning about set-keymap-parents not being known. Since 21.1, the Emacs byte-compiler is smart enough to do that anyway for function calls behind fboundp tests. From unknown Sat Aug 16 16:10:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#14496: cc-bytecomp-obsolete-fun doesn't work Resent-From: Glenn Morris Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Fri, 31 May 2013 17:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 14496 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: To: 14496@debbugs.gnu.org Received: via spool by 14496-submit@debbugs.gnu.org id=B14496.13700225134937 (code B ref 14496); Fri, 31 May 2013 17:49:02 +0000 Received: (at 14496) by debbugs.gnu.org; 31 May 2013 17:48:33 +0000 Received: from localhost ([127.0.0.1]:44906 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UiTRI-0001HZ-8I for submit@debbugs.gnu.org; Fri, 31 May 2013 13:48:32 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:43931 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1UiTRF-0001HR-Tq for 14496@debbugs.gnu.org; Fri, 31 May 2013 13:48:31 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1UiTPg-00082J-CU; Fri, 31 May 2013 13:46:52 -0400 From: Glenn Morris References: X-Spook: Legion of Doom Mafia sniper encryption halcon Indigo X-Ran: ,aNQZ-CE*)QcBc(.I\tTl8/L4%UV'pvBm:.3P+)w,#dYszH.=x6EVF({;sYkv9&Vmm[jbq X-Hue: white X-Attribution: GM Date: Fri, 31 May 2013 13:46:52 -0400 In-Reply-To: (Glenn Morris's message of "Fri, 31 May 2013 13:39:17 -0400") Message-ID: <7y5avnisz.fsf@fencepost.gnu.org> 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: -5.3 (-----) 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.7 (------) Glenn Morris wrote: > Since 21.1, the Emacs byte-compiler is smart enough to do that anyway Correction, 22.1. Anyway, "since a long time ago". From debbugs-submit-bounces@debbugs.gnu.org Sun Dec 03 22:14:53 2017 Received: (at control) by debbugs.gnu.org; 4 Dec 2017 03:14:53 +0000 Received: from localhost ([127.0.0.1]:44113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eLhDZ-0003Mk-GI for submit@debbugs.gnu.org; Sun, 03 Dec 2017 22:14:53 -0500 Received: from eggs.gnu.org ([208.118.235.92]:45217) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eLhDY-0003MY-4g for control@debbugs.gnu.org; Sun, 03 Dec 2017 22:14:52 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eLhDS-0001KP-3z for control@debbugs.gnu.org; Sun, 03 Dec 2017 22:14:46 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:46848) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eLhDS-0001KL-0d for control@debbugs.gnu.org; Sun, 03 Dec 2017 22:14:46 -0500 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1eLhDR-0000UB-MS for control@debbugs.gnu.org; Sun, 03 Dec 2017 22:14:45 -0500 Subject: control message for bug 14496 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Sun, 03 Dec 2017 22:14:45 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) # 5175053 close 14496 25.1