X-Loop: help-debbugs@HIDDEN Subject: bug#55137: Different result when interpreted and when evaluating byte-compiled code Resent-From: Paul Pogonyshev <pogonyshev@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 26 Apr 2022 22:18:01 +0000 Resent-Message-ID: <handler.55137.B.165101142110340 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 55137 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 55137 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.165101142110340 (code B ref -1); Tue, 26 Apr 2022 22:18:01 +0000 Received: (at submit) by debbugs.gnu.org; 26 Apr 2022 22:17:01 +0000 Received: from localhost ([127.0.0.1]:40700 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1njTUT-0002gY-02 for submit <at> debbugs.gnu.org; Tue, 26 Apr 2022 18:17:01 -0400 Received: from lists.gnu.org ([209.51.188.17]:33074) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <pogonyshev@HIDDEN>) id 1njTUP-0002gP-T0 for submit <at> debbugs.gnu.org; Tue, 26 Apr 2022 18:17:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36394) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <pogonyshev@HIDDEN>) id 1njTUP-0006s1-MZ for bug-gnu-emacs@HIDDEN; Tue, 26 Apr 2022 18:16:57 -0400 Received: from mail-ed1-x529.google.com ([2a00:1450:4864:20::529]:36381) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <pogonyshev@HIDDEN>) id 1njTUN-0001BS-Uo for bug-gnu-emacs@HIDDEN; Tue, 26 Apr 2022 18:16:57 -0400 Received: by mail-ed1-x529.google.com with SMTP id a1so18388716edt.3 for <bug-gnu-emacs@HIDDEN>; Tue, 26 Apr 2022 15:16:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=o7F/mO8l0vxecJpCZTRnKkKQSCsskjPCRp6AIfbJpuI=; b=qXdp2vQh9WbIZzSkYyiPycP+nausWmoZU0Ku8cEtuFjQViLZHYGuhr6rTWDh5KqT85 641CrXO1gK1dRB1fhajCqtvxMXkhUPqD6k+nLllZcVhUzFAiuTZWOJBRO21FuHcr/jRf YgkWPVoA5AqOPQTOcTEsIH2nOqgDkwKwth82dh7Uz37oyNT0LcPTo66XJzJ/cHK8+avn VmQrkz4bwmwxLR+nk6Ww9itctqsn/5cdbm2Qgg++53bO2d1RmNnWQ71yBwzTqZln9Sjs 8Z0jJd5jU17qT2ymVrG7bBfFg2ZOkuwSQXfpQbRQJzRCQhdPbbG75u85qrUtwrXVS24B DOlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=o7F/mO8l0vxecJpCZTRnKkKQSCsskjPCRp6AIfbJpuI=; b=ZXoBkT2zxPYldTLS1U7qTtZryd/I6AFjTkVqpxAnEEhA2QbOmT8Ks49jhkks4ROcLc EUePFWKey5I1pEnMER06uZn/sLlDvZ1MyfxZ+12XUlS7AfwAkeRL0jq7Ox8g7zQs2NPX TChqYwiTPXcRj/Aw3npXJL6wQDFQM2Tb7KcH51+sn3QPq/n03BOr40uKF86pzuOoFZ75 bfQJAsv9qTJ3ZpYGJobsDCzMxQbpkciqZXcf46kggO1/jkEX4Omkl5K/5/EJOT4kSqwQ /aBQjZ1wcy8hguZWVZZnWVprphodqmIK7prue6hHNpY0YbQSlVhvRBtF+INsr7sjMYyZ fSYg== X-Gm-Message-State: AOAM533PJiehLbRz6HWYafJV+tIGbLtfY8gjgpr8weipvuv4BRc11wwZ +Gx+UMqImklQey6TpM1igEw/Ugux0jzQT6aLWRL/8QxKzIjF X-Google-Smtp-Source: ABdhPJwyN3k0L9PJakeYdQCNaPfVTwmwpQhtWZrdgUpn3jlx+zjiQMWMmkF/mHmU5J9uAsByTsjOvi6hpnsI5XmFIGY= X-Received: by 2002:a05:6402:330b:b0:425:eded:7cfe with SMTP id e11-20020a056402330b00b00425eded7cfemr11713143eda.357.1651011413651; Tue, 26 Apr 2022 15:16:53 -0700 (PDT) MIME-Version: 1.0 From: Paul Pogonyshev <pogonyshev@HIDDEN> Date: Wed, 27 Apr 2022 00:16:42 +0200 Message-ID: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> Content-Type: multipart/alternative; boundary="000000000000d4b4ca05dd960c7f" Received-SPF: pass client-ip=2a00:1450:4864:20::529; envelope-from=pogonyshev@HIDDEN; helo=mail-ed1-x529.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) --000000000000d4b4ca05dd960c7f Content-Type: text/plain; charset="UTF-8" I'm not absolutely sure if it is a bug or a "feature", but it is extremely confusing. To reproduce: store this as file `test.el': (defvar special-variable nil) (defmacro is-special-as-macro () (special-variable-p 'special-variable)) (defun is-special-as-function () (is-special-as-macro)) (print (is-special-as-function)) (print (eval '(is-special-as-macro))) Now, from command line: $ rm -f test.elc; emacs --batch -l test.el This loads the file as interpreted Elisp and prints `t' two times, i.e. always recognizes the variable as special. Next, byte-compile the file before loading: $ rm -f test.elc; emacs --batch --eval "(byte-compile-file \"test.el\")"; emacs --batch -l test.elc This prints `nil' and `t', i.e. variable is now considered non-special by `is-special-as-function'. From investigating `.elc' file, it is apparent that this is encoded into it as a macroexpanded constant. Note that `is-special-as-macro' still works fine, the problem appears only when it gets macroexpanded during byte-compilation. So, apparently `defvar' form is sort of "skipped without paying attention" during byte-compilation. If I put it into an `eval-and-compile' form, then macroexpansion does produce expected result. I noticed this with code using `iter2' library. When `iter2-defun' generator functions get macroexpanded during compilation, built-in `special-variable-p' is called, because for generator functions this is important to distinguish between local and dynamic variables. The example above is derived from debugging real failure. Standard `generator' package is also affected. Here is example code: ;;; -*- lexical-binding: t -*- (require 'generator) (defvar special-variable nil) (defun get-special-variable () special-variable) (iter-defun buggy () (let ((special-variable t)) (iter-yield (get-special-variable)))) (print (iter-next (buggy))) As before, save as `test.el' and execute the same two commands. Produced output is different depending on whether the file has been byte-compiled or not. Is `eval-and-compile' the proper workaround? Can things be made less confusing by noticing declared special variables during byte-compilation? Paul --000000000000d4b4ca05dd960c7f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">I'm not absolutely sure if it is a bug or a "feat= ure", but it is<br>extremely confusing.<br><br>To reproduce: store thi= s as file `test.el':<br><br>=C2=A0 =C2=A0 (defvar special-variable nil)= <br><br>=C2=A0 =C2=A0 (defmacro is-special-as-macro ()<br>=C2=A0 =C2=A0 =C2= =A0 (special-variable-p 'special-variable))<br><br>=C2=A0 =C2=A0 (defun= is-special-as-function ()<br>=C2=A0 =C2=A0 =C2=A0 (is-special-as-macro))<b= r><br>=C2=A0 =C2=A0 (print (is-special-as-function))<br>=C2=A0 =C2=A0 (prin= t (eval '(is-special-as-macro)))<br><br>Now, from command line:<br><br>= =C2=A0 =C2=A0 $ rm -f test.elc; emacs --batch -l test.el<br><br>This loads = the file as interpreted Elisp and prints `t' two times,<br>i.e. always = recognizes the variable as special.<br><br>Next, byte-compile the file befo= re loading:<br><br>=C2=A0 =C2=A0 $ rm -f test.elc; emacs --batch --eval &qu= ot;(byte-compile-file \"test.el\")"; emacs --batch -l test.e= lc<br><br>This prints `nil' and `t', i.e. variable is now considere= d non-special<br>by `is-special-as-function'.=C2=A0 From investigating = `.elc' file, it is<br>apparent that this is encoded into it as a macroe= xpanded constant.<br>Note that `is-special-as-macro' still works fine, = the problem appears<br>only when it gets macroexpanded during byte-compilat= ion.<br><br>So, apparently `defvar' form is sort of "skipped witho= ut paying<br>attention" during byte-compilation.=C2=A0 If I put it int= o an<br>`eval-and-compile' form, then macroexpansion does produce expec= ted<br>result.<br><br>I noticed this with code using `iter2' library.= =C2=A0 When `iter2-defun'<br>generator functions get macroexpanded duri= ng compilation, built-in<br>`special-variable-p' is called, because for= generator functions this<br>is important to distinguish between local and = dynamic variables.=C2=A0 The<br>example above is derived from debugging rea= l failure.<br><br><div>Standard `generator' package is also affected.= =C2=A0 Here is example code:<br><br>=C2=A0 =C2=A0 ;;; -*- lexical-binding: = t -*-<br><br>=C2=A0 =C2=A0 (require 'generator)<br><br>=C2=A0 =C2=A0 (d= efvar special-variable nil)<br><br>=C2=A0 =C2=A0 (defun get-special-variabl= e ()<br>=C2=A0 =C2=A0 =C2=A0 special-variable)<br><br>=C2=A0 =C2=A0 (iter-d= efun buggy ()<br>=C2=A0 =C2=A0 =C2=A0 (let ((special-variable t))<br>=C2=A0= =C2=A0 =C2=A0 =C2=A0 (iter-yield (get-special-variable))))<br><br>=C2=A0 = =C2=A0 (print (iter-next (buggy)))<br><br>As before, save as `test.el' = and execute the same two commands.<br>Produced output is different dependin= g on whether the file has been<br>byte-compiled or not.<br><br>Is `eval-and= -compile' the proper workaround?=C2=A0 Can things be made less<br>confu= sing by noticing declared special variables during<br>byte-compilation?<br>= <br>Paul<br></div></div> --000000000000d4b4ca05dd960c7f--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Paul Pogonyshev <pogonyshev@HIDDEN> Subject: bug#55137: Acknowledgement (Different result when interpreted and when evaluating byte-compiled code) Message-ID: <handler.55137.B.165101142110340.ack <at> debbugs.gnu.org> References: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> X-Gnu-PR-Message: ack 55137 X-Gnu-PR-Package: emacs Reply-To: 55137 <at> debbugs.gnu.org Date: Tue, 26 Apr 2022 22:18:01 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 55137 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 55137: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D55137 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#55137: Different result when interpreted and when evaluating byte-compiled code Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Wed, 27 Apr 2022 02:28:02 +0000 Resent-Message-ID: <handler.55137.B55137.16510264651951 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 55137 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Paul Pogonyshev <pogonyshev@HIDDEN> Cc: 55137 <at> debbugs.gnu.org Received: via spool by 55137-submit <at> debbugs.gnu.org id=B55137.16510264651951 (code B ref 55137); Wed, 27 Apr 2022 02:28:02 +0000 Received: (at 55137) by debbugs.gnu.org; 27 Apr 2022 02:27:45 +0000 Received: from localhost ([127.0.0.1]:40842 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1njXP7-0000VP-KZ for submit <at> debbugs.gnu.org; Tue, 26 Apr 2022 22:27:45 -0400 Received: from eggs.gnu.org ([209.51.188.92]:37392) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1njXP5-0000VA-C4 for 55137 <at> debbugs.gnu.org; Tue, 26 Apr 2022 22:27:45 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45506) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1njXP0-0005qR-2a; Tue, 26 Apr 2022 22:27:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=exzYm/sr8Od7+6gLZmPMIBE8YIiH94UtBd10MOlpDvM=; b=POOFclLC1huL 2spp6FG7fXz10VeKGyJdqzOdqZc6fTX7+DIYn9sfT9aCoevzo7QrtfTIs8c6+VrULnhmPkPL4Q1II 4ZP2QMKYSn51QjJh/xGSbSguN2uMsRNztv3l70A8YX+w3sj3HD5/YQiE+JNTK4DI5IdvdvOGWCxGR CYEbotcrpe5A6MpQVLkFTTiqaGItZrELdW6F9Evx7LOapDBEhFos1WSemqSpVs0Qe4+iSDtAFvnds sMS51OnBbLX0mCwo+7qgtr2dNhXLBN8q3Ygwru4t7bWwtgQT6QSstWgTurBxhUkhfrzPRwvJK2yJo MRna3T6mxdlS8qDvHuB/4g==; Received: from [87.69.77.57] (port=1064 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1njXOz-0005ME-Hf; Tue, 26 Apr 2022 22:27:37 -0400 Date: Wed, 27 Apr 2022 05:27:25 +0300 Message-Id: <83k0bbl0qa.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-Reply-To: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> (message from Paul Pogonyshev on Wed, 27 Apr 2022 00:16:42 +0200) References: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Paul Pogonyshev <pogonyshev@HIDDEN> > Date: Wed, 27 Apr 2022 00:16:42 +0200 > > I'm not absolutely sure if it is a bug or a "feature", but it is > extremely confusing. Thanks, but please tell in what version of Emacs is this, and preferably show the information about your build that's collected by "M-x report-emacs-bug".
X-Loop: help-debbugs@HIDDEN Subject: bug#55137: Different result when interpreted and when evaluating byte-compiled code Resent-From: Paul Pogonyshev <pogonyshev@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Wed, 27 Apr 2022 09:20:02 +0000 Resent-Message-ID: <handler.55137.B55137.165105117610576 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 55137 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 55137 <at> debbugs.gnu.org Received: via spool by 55137-submit <at> debbugs.gnu.org id=B55137.165105117610576 (code B ref 55137); Wed, 27 Apr 2022 09:20:02 +0000 Received: (at 55137) by debbugs.gnu.org; 27 Apr 2022 09:19:36 +0000 Received: from localhost ([127.0.0.1]:41257 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1njdpf-0002kW-R4 for submit <at> debbugs.gnu.org; Wed, 27 Apr 2022 05:19:36 -0400 Received: from mail-ed1-f42.google.com ([209.85.208.42]:37855) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <pogonyshev@HIDDEN>) id 1njdpe-0002kH-GU for 55137 <at> debbugs.gnu.org; Wed, 27 Apr 2022 05:19:35 -0400 Received: by mail-ed1-f42.google.com with SMTP id k27so1204833edk.4 for <55137 <at> debbugs.gnu.org>; Wed, 27 Apr 2022 02:19:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/Zp1m2IGpnpM2+kyYegAYOiX/dfo7pwn6zA56d4xMww=; b=CDg7kev2i/X2T19rjD2APQhIewFIayLVfgPs91+1mHuggARgyR9k7fY89N55GqPwUe u3Xj9EsHYmoMqIp29dx3KIC1H0+YOBfdt96HMpb+r2xnZTkcTJUgDt+EKy5K+ZLsEBQ1 T6Ru1nlBKWXdmonCp49eetEltZbpBn0z4DokjefwLFd0N6O9Hsm9d7tBAJge1Z2O5Sc9 mOrfJRXlhFTEveh8fc62JWrGPRikbbU6Dtqc3PEY/VWwYfzqT5NX0/aa/d6hAge42A/z 4VvZYgWD+0ROmWRbpXNtMv0LBtqIu3b6YPxi8FzSYnHOPh2+cz2p6H3s9R8787lUIL4D eeYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/Zp1m2IGpnpM2+kyYegAYOiX/dfo7pwn6zA56d4xMww=; b=Sp4WKGfiJQS4F0PhDnxa8oRXRpjkXPRzD1qu7vSJhRhfowoaWErGORypzx1zvw/ARX 64PFuXLJuF84nuC2OYPjws0Tb0afKc4s18zfxYnNglXZxJMmInuettg8+LUN/6NuNepR f02eO8YNn6iphARcSqAYpxGMP9bAia0B4WrLnBs2z/QRvGouYwoaKciF9TaIx4dEOqt2 +4wcoVHa6BxQB6xQtL4NcSMOQVSWiUOYEa4bkPMrCKz7kNA/uL2m2T5vAGWR+elFOve+ 7SkgPc222zuI0vkheWmBTEIrgW75dwJpCrHrOWcZxhSERO57Kdas8tAKOEHgA5K/z05Y So0g== X-Gm-Message-State: AOAM530r27GEmtBTNuFPeptD64OnKreo4kVrtKxeafMcOnqgQ8XQjzid k7i7k4by9rzke91z9uE+YyRdOzH+cUAssNrKkA== X-Google-Smtp-Source: ABdhPJyAVR9MjDsnxjerjvsaEjWoYh4GLaa228L98KfZI9HmGCXUuNF53s/2VJKqpV1XE5W2pZ0hzO/YmGvmQ4yKSiA= X-Received: by 2002:a05:6402:5191:b0:423:fa7f:f4c2 with SMTP id q17-20020a056402519100b00423fa7ff4c2mr29658993edd.9.1651051168462; Wed, 27 Apr 2022 02:19:28 -0700 (PDT) MIME-Version: 1.0 References: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> <83k0bbl0qa.fsf@HIDDEN> In-Reply-To: <83k0bbl0qa.fsf@HIDDEN> From: Paul Pogonyshev <pogonyshev@HIDDEN> Date: Wed, 27 Apr 2022 11:19:17 +0200 Message-ID: <CAG7BpaoK6oBtRLmDtjeLTybRfB=G4xHa3zdK5VDnRYPb8+vc=Q@HIDDEN> Content-Type: multipart/alternative; boundary="00000000000066fb2405dd9f4e2b" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --00000000000066fb2405dd9f4e2b Content-Type: text/plain; charset="UTF-8" Originally reproduced with 27.2. I now upgraded to 28.1. Pretty sure it is the same with master. In GNU Emacs 28.1.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 2.24.33, cairo version 1.16.0) of 2022-04-27 built on gonzo Repository revision: b511f5c05ced05fc7d1e403002bc5ba782879cba Repository branch: emacs-28 Windowing system distributor 'The X.Org Foundation', version 11.0.12014000 System Description: Debian GNU/Linux bookworm/sid Configured using: 'configure --with-x-toolkit=gtk2' Configured features: CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK2 ZLIB Important settings: value of $LC_MONETARY: de_AT.UTF-8 value of $LC_NUMERIC: ru_RU.UTF-8 value of $LC_TIME: de_DE.UTF-8 value of $LANG: en_CA.UTF-8 locale-coding-system: utf-8-unix On Wed, 27 Apr 2022 at 04:27, Eli Zaretskii <eliz@HIDDEN> wrote: > > From: Paul Pogonyshev <pogonyshev@HIDDEN> > > Date: Wed, 27 Apr 2022 00:16:42 +0200 > > > > I'm not absolutely sure if it is a bug or a "feature", but it is > > extremely confusing. > > Thanks, but please tell in what version of Emacs is this, and > preferably show the information about your build that's collected by > "M-x report-emacs-bug". > --00000000000066fb2405dd9f4e2b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>Originally reproduced with 27.2. I now upgraded to 28= .1. Pretty sure it is the same with master.</div><div><br></div>In GNU Emac= s 28.1.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 2.24.33, cairo versio= n 1.16.0)<br>=C2=A0of 2022-04-27 built on gonzo<br>Repository revision: b51= 1f5c05ced05fc7d1e403002bc5ba782879cba<br>Repository branch: emacs-28<br>Win= dowing system distributor 'The X.Org Foundation', version 11.0.1201= 4000<br>System Description: Debian GNU/Linux bookworm/sid<br><br>Configured= using:<br>=C2=A0'configure --with-x-toolkit=3Dgtk2'<br><br>Configu= red features:<br>CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ= JPEG<br>LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG SECCOMP SOUN= D<br>THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK2 ZLIB<br><br>Imp= ortant settings:<br>=C2=A0 value of $LC_MONETARY: de_AT.UTF-8<br>=C2=A0 val= ue of $LC_NUMERIC: ru_RU.UTF-8<br>=C2=A0 value of $LC_TIME: de_DE.UTF-8<br>= =C2=A0 value of $LANG: en_CA.UTF-8<br>=C2=A0 locale-coding-system: utf-8-un= ix<br></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_= attr">On Wed, 27 Apr 2022 at 04:27, Eli Zaretskii <<a href=3D"mailto:eli= z@HIDDEN">eliz@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gmail_= quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,= 204);padding-left:1ex">> From: Paul Pogonyshev <<a href=3D"mailto:pog= onyshev@HIDDEN" target=3D"_blank">pogonyshev@HIDDEN</a>><br> > Date: Wed, 27 Apr 2022 00:16:42 +0200<br> > <br> > I'm not absolutely sure if it is a bug or a "feature", b= ut it is<br> > extremely confusing.<br> <br> Thanks, but please tell in what version of Emacs is this, and<br> preferably show the information about your build that's collected by<br= > "M-x report-emacs-bug".<br> </blockquote></div> --00000000000066fb2405dd9f4e2b--
X-Loop: help-debbugs@HIDDEN Subject: bug#55137: Different result when interpreted and when evaluating byte-compiled code Resent-From: Phil Sainty <psainty@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Wed, 27 Apr 2022 11:21:02 +0000 Resent-Message-ID: <handler.55137.B55137.165105844822780 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 55137 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Paul Pogonyshev <pogonyshev@HIDDEN> Cc: 55137 <at> debbugs.gnu.org Received: via spool by 55137-submit <at> debbugs.gnu.org id=B55137.165105844822780 (code B ref 55137); Wed, 27 Apr 2022 11:21:02 +0000 Received: (at 55137) by debbugs.gnu.org; 27 Apr 2022 11:20:48 +0000 Received: from localhost ([127.0.0.1]:41344 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1njfiy-0005vM-Ek for submit <at> debbugs.gnu.org; Wed, 27 Apr 2022 07:20:48 -0400 Received: from smtp-3.orcon.net.nz ([60.234.4.44]:53007) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <psainty@HIDDEN>) id 1njfiv-0005vB-2p for 55137 <at> debbugs.gnu.org; Wed, 27 Apr 2022 07:20:46 -0400 Received: from [10.253.37.70] (port=35617 helo=webmail.orcon.net.nz) by smtp-3.orcon.net.nz with esmtpa (Exim 4.90_1) (envelope-from <psainty@HIDDEN>) id 1njfir-0000Xh-TZ; Wed, 27 Apr 2022 23:20:42 +1200 Received: from ip-139-180-65-103.kinect.net.nz ([139.180.65.103]) via [10.253.37.253] by webmail.orcon.net.nz with HTTP (HTTP/1.1 POST); Wed, 27 Apr 2022 23:20:41 +1200 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Wed, 27 Apr 2022 23:20:41 +1200 From: Phil Sainty <psainty@HIDDEN> In-Reply-To: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> References: <CAG7BpaqmWCYjdqDwQYZubgkYQdJH39wuh123+3G1P5oVhb5fJg@HIDDEN> Message-ID: <8ddae25aa2488d550ca63e396015002e@HIDDEN> X-Sender: psainty@HIDDEN User-Agent: Orcon Webmail X-GeoIP: -- X-Spam_score: -2.9 X-Spam_score_int: -28 X-Spam_bar: -- X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) On 2022-04-27 10:16, Paul Pogonyshev wrote: > (defmacro is-special-as-macro () > (special-variable-p 'special-variable)) This macro does not expand to code which calls `special-variable-p'. Rather it calls `special-variable-p' at expansion time, and expands to the return value of that call (nil or t). If you byte-compile your code without loading it, then your would-be `special-variable' doesn't exist, and hence your macro was expanding to nil rather than t. Try this: (defmacro is-special-as-macro () '(special-variable-p 'special-variable)) -Phil
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.