From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.bugs Subject: bug#65017: 29.1; Byte compiler interaction with cl-lib function objects, removes symbol-function Date: Mon, 14 Aug 2023 17:10:17 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7535"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= , 65017@debbugs.gnu.org, Eric Marsden To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Aug 14 19:11:26 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qVb6E-0001l7-1X for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 14 Aug 2023 19:11:26 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qVb5s-0003K1-Ld; Mon, 14 Aug 2023 13:11:04 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qVb5q-0003JZ-FK for bug-gnu-emacs@gnu.org; Mon, 14 Aug 2023 13:11:02 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qVb5q-0001R8-8Y for bug-gnu-emacs@gnu.org; Mon, 14 Aug 2023 13:11:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qVb5q-0005VD-3A for bug-gnu-emacs@gnu.org; Mon, 14 Aug 2023 13:11:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Alan Mackenzie Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Aug 2023 17:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65017 X-GNU-PR-Package: emacs Original-Received: via spool by 65017-submit@debbugs.gnu.org id=B65017.169203303921095 (code B ref 65017); Mon, 14 Aug 2023 17:11:02 +0000 Original-Received: (at 65017) by debbugs.gnu.org; 14 Aug 2023 17:10:39 +0000 Original-Received: from localhost ([127.0.0.1]:34339 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qVb5N-0005U5-AK for submit@debbugs.gnu.org; Mon, 14 Aug 2023 13:10:38 -0400 Original-Received: from mx3.muc.de ([193.149.48.5]:29272) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qVb5G-0005Ti-8L for 65017@debbugs.gnu.org; Mon, 14 Aug 2023 13:10:32 -0400 Original-Received: (qmail 72490 invoked by uid 3782); 14 Aug 2023 19:10:19 +0200 Original-Received: from acm.muc.de (pd953a69e.dip0.t-ipconnect.de [217.83.166.158]) (using STARTTLS) by colin.muc.de (tmda-ofmipd) with ESMTP; Mon, 14 Aug 2023 19:10:19 +0200 Original-Received: (qmail 29030 invoked by uid 1000); 14 Aug 2023 17:10:17 -0000 Content-Disposition: inline In-Reply-To: X-Submission-Agent: TMDA/1.3.x (Ph3nix) X-Primary-Address: acm@muc.de X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:267439 Archived-At: Hello, Stefan. On Sun, Aug 13, 2023 at 12:12:02 -0400, Stefan Monnier wrote: > > Thanks, that's useful information. But it doesn't address my questions > > in the slightest. > I'm sorry. I guess I still haven't figured what it is that I assume as > known but which you don't actually know. I didn't, and don't know the answers to the questions I asked. > > Would you please answer these specific questions, now, to help me > > understand this difficult mechanism. Thanks! > [ I assume you're talking about the questions below. ] I was actually talking about those strings of characters which I had terminated with the '?' character. All you've done with them is to snip them from your reply. I'm not going to ask you a fourth time. You clearly don't want to answer these questions, for some reason. Maybe I'll get around to working out for myself how this code works, maybe I won't. But if it's up to me to fix the broken commenting/doc strings associated with cl--labels-convert, it's not looking like it'll get done any time soon. Thnks for the answers that you did give me, below. > >> >> It's not a function but a special operator, which is thus handled in > >> >> a hard-coded way by `macroexp--expand-all`. > >> > Is it the case that this hard-coded handling for function is prevented > >> > by the macro "expansion" of (function F)? > >> Yes, we first expand the macros and then try to handle the result > >> which should be one of the hard-coded cases (or is otherwise assumed to > >> be a function call). > > Are you talking about the code in macroexp--expand-all, here? > Yes. > > By "macros", do you mean cl-flet and cl-labels here (as opposed to > > function)? > I'm talking about any call to an identifier that is "currently" defined > as a macro. This can be either because the `symbol-function` holds > something of the form `(macro . )` or because > `macroexpand-all-environment` has an entry for that identifier. > > What do you mean by "hard-coded cases"? > The face that `macroexp--expand-all` handles the `function` identifier > as follows: > (pcase form > [...] > (`(,(or 'function 'quote) . ,_) form) > [...] > -- Stefan -- Alan Mackenzie (Nuremberg, Germany).