From unknown Wed Jun 18 23:03:19 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#78394 <78394@debbugs.gnu.org> To: bug#78394 <78394@debbugs.gnu.org> Subject: Status: 31.0.50; Questions about native-comp-speed and type decl Reply-To: bug#78394 <78394@debbugs.gnu.org> Date: Thu, 19 Jun 2025 06:03:19 +0000 retitle 78394 31.0.50; Questions about native-comp-speed and type decl reassign 78394 emacs submitter 78394 "Yue Yi" severity 78394 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Mon May 12 11:55:33 2025 Received: (at submit) by debbugs.gnu.org; 12 May 2025 15:55:33 +0000 Received: from localhost ([127.0.0.1]:54205 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uEVV6-0002uR-Rq for submit@debbugs.gnu.org; Mon, 12 May 2025 11:55:33 -0400 Received: from lists.gnu.org ([2001:470:142::17]:42400) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uEVV2-0002u2-Ac for submit@debbugs.gnu.org; Mon, 12 May 2025 11:55:31 -0400 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 1uEVUu-0003sx-Hm for bug-gnu-emacs@gnu.org; Mon, 12 May 2025 11:55:21 -0400 Received: from out203-205-221-242.mail.qq.com ([203.205.221.242]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uEVUp-0000qZ-Ra for bug-gnu-emacs@gnu.org; Mon, 12 May 2025 11:55:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1747065302; bh=4SC0czf+9AZ82GccRkeZtrAxejxCVpYBB4mNPmq3G78=; h=From:To:Subject:Date; b=xY2a0EapX1MlANz3mwaLj/11cLxqcnnjuhUMd8OiVdzcM1KtGHTKo5nBJAjLNyeal 97R7pKh6twMKlkbAkcev/25tGOlzoOwGlyTJ8+AtXPeo5j+kuKhAzhPik9YiLaFqIh x0DOY3wS7VPD1vc6+KEv05YovUoVUvAgmPnLv0Cw= X-QQ-FEAT: oHWrrGTW1dCi2Uhv/TjzETR5+gOBkNuu X-QQ-SSF: 00000000000000F0000000000000 X-QQ-XMRINFO: M/715EihBoGSf6IYSX1iLFg= X-QQ-XMAILINFO: MzJivL69gE/ycT06uZOwajocyc8eWGs5mqApwDpAYinHpq9lksrmAPfK9A7e/9 uX+MBKeOp7jZOgchoCx2nWs1v0ydAYm1Zzed43H6B3ONbtU8b7glyzjQmrAHoFeefp+wHSGXkPrQo oWUzKB26IKDVSysRaFZ7EDMAXAiEh94WJffWabzzORV53GYYaz5hjxHYc3bIIrWQvU/MDEnyPtVIZ FJku2lK4bv+nhUTzyhmrt7l0HyV1GLIodfVdZnLi18Klgcbu5vJv8FZXDovloMyGi3YW+vRrFPqq3 +kPJEswcFyVLvYw+b24EhboMHfeiBP1MDjx7XyV65tUbPFXc83wrMJ81Q4bV280RaZ3w21EHYD/ZX RdTuUgnmQP4s+81BPfc2DyN/ieb1i4IHkDLwkkL41nlyW2+SmAh+VdyKjZZW69yPe8ZuTy+TcoUsi HO9gCVNwld6hdGqkj1mIMhjFWVoCyRM5UL/+Y/eWqx+NMDH5Eu+agSdr21CoWSYWpAQ4fVdnYlK93 5/icvJGzEEoB/bcRUPSewX2HKsitd54h2gWoFGwhBFb0vQ2864oq8PquAv/ISP6jkH/ocUsrqeUYz 7a1CxCWVhZ9hiybDmpHxcgoYUiFLmr+xEOFBH6A7m0Fb6gz0Q8SLU6QMyEQLgMfHdQJDEdSEiBLFH QIlf7NLC0xq1mWsYc68y5U8Mo29Ucqqiqt9jYoy8JkLYMOlGHpt5vIsDTr0xtc5Lnh7ISqfFBCLhU aPdf4qfiIGJykO06dQgUtVyAEV7iJjZokuLlfEiQXz6+RZ9qbVwFCDCuvO7FLofMsZuImnW7FtFxp 9kYOazqSzBHW+ZChRqgH44gAee6LfDyNdlRVtcTz8Bko29AJ0dv4uY50DKCcOEkihlhN18DKVDCyF CzDgoFmTKHeWPq/aExzBNUNSo1+mQ5WRWeAM6LG/8iY/S82Mx3R3kMTQ3DQ96Qe0fD0krjWbWKFs9 xh2uM/5zjsDVOE65bO5Z9/gal2r4O3GQdPXvXn3xp8E+wSUAvRsRHNkqQK4o9XGG83XKH1p9mvMB1 wllfU X-HAS-ATTACH: no X-QQ-BUSINESS-ORIGIN: 2 X-Originating-IP: 112.94.111.207 X-QQ-STYLE: X-QQ-mid: webmail739t1747065302t3561523 From: "=?gb18030?B?WXVlIFlp?=" To: "=?gb18030?B?YnVnLWdudS1lbWFjcw==?=" Subject: 31.0.50; Questions about native-comp-speed and type decl Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_682219D5_13C997E8_0D93638F" Content-Transfer-Encoding: 8Bit Date: Mon, 12 May 2025 23:55:01 +0800 X-Priority: 3 Message-ID: X-QQ-MIME: TCMime 1.0 by Tencent X-Mailer: QQMail 2.x X-QQ-Mailer: QQMail 2.x Received-SPF: pass client-ip=203.205.221.242; envelope-from=include_yy@qq.com; helo=out203-205-221-242.mail.qq.com X-Spam_score_int: 65 X-Spam_score: 6.5 X-Spam_bar: ++++++ X-Spam_report: (6.5 / 5.0 requ) BAYES_00=-1.9, CHARSET_FARAWAY_HEADER=3.2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FROM_EXCESS_BASE64=0.001, HELO_DYNAMIC_IPADDR=1.951, HTML_MESSAGE=0.001, MIME_CHARSET_FARAWAY=2.45, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RDNS_DYNAMIC=0.982, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: reject X-Spam-Score: 0.9 (/) X-Debbugs-Envelope-To: submit 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: -0.1 (/) This is a multi-part message in MIME format. ------=_NextPart_682219D5_13C997E8_0D93638F Content-Type: text/plain; charset="gb18030" Content-Transfer-Encoding: base64 SGVsbG8gRW1hY3MgbWFpbnRhaW5lcnMsIFdoZW4gbW9kaWZ5aW5nIGFuIG9yZyBIVE1MIGV4 cG9ydCBiYWNrZW5kLCBJIHRlbnRhdGl2ZWx5IGFkZGVkIHR5cGUgYW5ub3RhdGlvbnMgdG8g YSBmdW5jdGlvbiB0byBtYWtlIHRoZSBjb2RlIHJ1biBmYXN0ZXIuIEhvd2V2ZXIsIGR1cmlu ZyB1bml0IHRlc3RpbmcsIGJ5dGUgY29tcGlsYXRpb24gcHJvZHVjZWQgY29ycmVjdCByZXN1 bHRzLCB3aGlsZSBuYXRpdmUgY29tcGlsYXRpb24gZGlkIG5vdC4gU3BlY2lmaWNhbGx5LCB0 aGUgZm9sbG93aW5nIGNsZWFuZWQtdXAgY29kZSBpbGx1c3RyYXRlcyB0aGUgaXNzdWU6IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSZndDs4PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tIChkZWZjb25zdCBteS9wbGlzdCAnKDpodG1sLWNoZWNrYm94LXR5cGUgdW5pY29k ZSkpIChkZWZjb25zdCB0LWNoZWNrYm94LXR5cGVzICAgJygoIHVuaWNvZGUgLiAgICAgICAo KG9uIC4gIoE3pDEiKSAob2ZmIC4gIoE3pDAiKSAgICAgICAgKHRyYW5zIC4gIoE3pDIiKSkp KSkgKGxldCAoKG5hdGl2ZS1jb21wLXNwZWVkIDIpKSAgIChkZWZ1biB0LS1jaGVja2JveCAo Y2hlY2tib3ggaW5mbykgICAgICJGb3JtYXQgQ0hFQ0tCT1ggaW50byBIVE1MLiIgICAgIChk ZWNsYXJlIChmdHlwZSAoZnVuY3Rpb24gKHQgcGxpc3QpIHN0cmluZykpICAgICAoc2lkZS1l ZmZlY3QtZnJlZSB0KSAoaW1wb3J0YW50LXJldHVybi12YWx1ZSB0KSkgICAgIChjZHIgKGFz c3EgY2hlY2tib3ggICAgICAgICAgICAgICAgKGNkciAoYXNzcSAocGxpc3QtZ2V0IGluZm8g Omh0bWwtY2hlY2tib3gtdHlwZSkgICAgICAgICAgICAgICAgICAgICAgICAgICB0LWNoZWNr Ym94LXR5cGVzKSkpKSkgICAoZGVmdW4gdC0tZm9ybWF0LWNoZWNrYm94IChjaGVja2JveCBp bmZvKSAgICAgIkZvcm1hdCBhIENIRUNLQk9YIG9wdGlvbiB0byBzdHJpbmcuIENIRUNLQk9Y IGNhbiBiZSBgb24nLCBgb2ZmJywgYHRyYW5zJywgb3IgYW55dGhpbmcgZWxzZS4gUmV0dXJu cyBhbiBlbXB0eSBzdHJpbmcgaWYgQ0hFQ0tCT1ggaXMgbm90IG9uZSBvZiB0aGUgdGhlc2Ug dGhyZWUuIiAgICAgKGRlY2xhcmUgKGZ0eXBlIChmdW5jdGlvbiAodCBwbGlzdCkgc3RyaW5n KSkgICAgIChzaWRlLWVmZmVjdC1mcmVlIHQpIChpbXBvcnRhbnQtcmV0dXJuLXZhbHVlIHQp KSAgICAgKGxldCAoKGEgKHQtLWNoZWNrYm94IGNoZWNrYm94IGluZm8pKSkgICAgICAgKGNv bmNhdCBhIChhbmQgYSAiICIpKSkpICAgOzsgbmF0aXZlIGNvbXAgICAobmF0aXZlLWNvbXBp bGUgJ3QtLWNoZWNrYm94KSAgIChuYXRpdmUtY29tcGlsZSAndC0tZm9ybWF0LWNoZWNrYm94 KSkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJmd0Ozg8LS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0gQUZBQ0ssIHRoZSBkZWZhdWx0IHZhbHVlIG9mIGBuYXRpdmUtY29tcC1z cGVlZCcgaXMgMi4gSW4gdGhpcyBjYXNlLCB0aGUgYmVoYXZpb3Igb2YgdGhlIGZvbGxvd2lu ZyBjb2RlIGlzIGluY29uc2lzdGVudCB3aXRoIHRoYXQgb2YgdGhlIGJ5dGUtY29tcGlsZWQg b3Igbm9uLWNvbXBpbGVkIGNvZGU6IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSZndDs4 PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIDs7IG5vcm1hbCAodC0tZm9ybWF0LWNo ZWNrYm94IG5pbCBteS9wbGlzdCkgOzs9Jmd0OyAiIiA7OyBieXRlLWNvZGUgKHQtLWZvcm1h dC1jaGVja2JveCBuaWwgbXkvcGxpc3QpIDs7PSZndDsgIiIgOzsgc3BlZWQgMSAodC0tZm9y bWF0LWNoZWNrYm94IG5pbCBteS9wbGlzdCkgOzs9Jmd0OyAiIiA7OyBzcGVlZCAyICh0LS1m b3JtYXQtY2hlY2tib3ggbmlsIG15L3BsaXN0KSA7Oz0mZ3Q7ICIgIiAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0mZ3Q7ODwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBPZiBj b3Vyc2UsIHdlIGNhbiBub3RpY2UgdGhhdCB0aGUgdHlwZSBkZWNsYXJhdGlvbiBmb3IgYHQt LWNoZWNrYm94JyBpcyBwcm9ibGVtYXRpYyAtLS0gaXRzIHJldHVybiB0eXBlIHNob3VsZCBi ZSAob3IgbnVsbCBzdHJpbmcpIGluc3RlYWQgb2Ygc3RyaW5nLiBBZnRlciBjb3JyZWN0aW5n IHRoaXMgbWlzdGFrZSwgdGhlIGZ1bmN0aW9uIHdvcmtzIHByb3Blcmx5IHVuZGVyIHNwZWVk PTIuIEluIEMsIHdlIGdlbmVyYWxseSBhdm9pZCBhZ2dyZXNzaXZlIG9wdGltaXphdGlvbnMg YmVjYXVzZSB0aGV5IGNhbiBsZWFkIHRvIHVucHJlZGljdGFibGUgYmVoYXZpb3IuIFdoYXQg SaGvZCBsaWtlIHRvIGFzayBpcyB3aGV0aGVyIHNpbWlsYXIgc2l0dWF0aW9ucyBjYW4gb2Nj dXIgaW4gRW1hY3MgTGlzcKGvcyBuYXRpdmUgY29tcGlsYXRpb24gYXMgd2VsbCAtLS0gbGlr ZSB0aGUgaXNzdWUgSSBlbmNvdW50ZXJlZCBoZXJlPyBBbm90aGVyIHF1ZXN0aW9uIGlzIGFi b3V0IGBjb21waWxhdGlvbi1zYWZldHknLiBBcyBJIHVuZGVyc3RhbmQgaXQsIHdoZW4gc2V0 IHRvIDEsIGl0IHByZXZlbnRzIEVtYWNzIGZyb20gY3Jhc2hpbmcgZHVlIHRvIGZhdWx0eSBv cHRpbWl6YXRpb25zLiBEb2VzIHRoaXMgbWVhbiB0aGUgdmFyaWFibGUgb25seSBndWFyZHMg YWdhaW5zdCB0aGUgbW9zdCBzZXZlcmUgY2FzZXMsIHJhdGhlciB0aGFuIGVuc3VyaW5nIHRo ZSBjb3JyZWN0bmVzcyBvZiBvcHRpbWl6YXRpb25zIGluIGdlbmVyYWw/IEJlc3QgcmVnYXJk cy4= ------=_NextPart_682219D5_13C997E8_0D93638F Content-Type: text/html; charset="gb18030" Content-Transfer-Encoding: base64 PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNo YXJzZXQ9R0IxODAzMCI+PHByZT5IZWxsbyBFbWFjcyBtYWludGFpbmVycywKCldoZW4gbW9k aWZ5aW5nIGFuIG9yZyBIVE1MIGV4cG9ydCBiYWNrZW5kLCBJIHRlbnRhdGl2ZWx5IGFkZGVk IHR5cGUKYW5ub3RhdGlvbnMgdG8gYSBmdW5jdGlvbiB0byBtYWtlIHRoZSBjb2RlIHJ1biBm YXN0ZXIuIEhvd2V2ZXIsIGR1cmluZwp1bml0IHRlc3RpbmcsIGJ5dGUgY29tcGlsYXRpb24g cHJvZHVjZWQgY29ycmVjdCByZXN1bHRzLCB3aGlsZSBuYXRpdmUKY29tcGlsYXRpb24gZGlk IG5vdC4gU3BlY2lmaWNhbGx5LCB0aGUgZm9sbG93aW5nIGNsZWFuZWQtdXAgY29kZQppbGx1 c3RyYXRlcyB0aGUgaXNzdWU6CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0mZ3Q7OCZs dDstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQooZGVmY29uc3QgbXkvcGxpc3QgJyg6 aHRtbC1jaGVja2JveC10eXBlIHVuaWNvZGUpKQooZGVmY29uc3QgdC1jaGVja2JveC10eXBl cwogICcoKCB1bmljb2RlIC4KICAgICAgKChvbiAuICKBN6QxIikgKG9mZiAuICKBN6QwIikK ICAgICAgICh0cmFucyAuICKBN6QyIikpKSkpCgoobGV0ICgobmF0aXZlLWNvbXAtc3BlZWQg MikpCiAgKGRlZnVuIHQtLWNoZWNrYm94IChjaGVja2JveCBpbmZvKQogICAgIkZvcm1hdCBD SEVDS0JPWCBpbnRvIEhUTUwuIgogICAgKGRlY2xhcmUgKGZ0eXBlIChmdW5jdGlvbiAodCBw bGlzdCkgc3RyaW5nKSkKICAgIChzaWRlLWVmZmVjdC1mcmVlIHQpIChpbXBvcnRhbnQtcmV0 dXJuLXZhbHVlIHQpKQogICAgKGNkciAoYXNzcSBjaGVja2JveAogICAgICAgICAgICAgICAo Y2RyIChhc3NxIChwbGlzdC1nZXQgaW5mbyA6aHRtbC1jaGVja2JveC10eXBlKQogICAgICAg ICAgICAgICAgICAgICAgICAgIHQtY2hlY2tib3gtdHlwZXMpKSkpKQoKICAoZGVmdW4gdC0t Zm9ybWF0LWNoZWNrYm94IChjaGVja2JveCBpbmZvKQogICAgIkZvcm1hdCBhIENIRUNLQk9Y IG9wdGlvbiB0byBzdHJpbmcuCgpDSEVDS0JPWCBjYW4gYmUgYG9uJywgYG9mZicsIGB0cmFu cycsIG9yIGFueXRoaW5nIGVsc2UuClJldHVybnMgYW4gZW1wdHkgc3RyaW5nIGlmIENIRUNL Qk9YIGlzIG5vdCBvbmUgb2YgdGhlIHRoZXNlIHRocmVlLiIKICAgIChkZWNsYXJlIChmdHlw ZSAoZnVuY3Rpb24gKHQgcGxpc3QpIHN0cmluZykpCiAgICAoc2lkZS1lZmZlY3QtZnJlZSB0 KSAoaW1wb3J0YW50LXJldHVybi12YWx1ZSB0KSkKICAgIChsZXQgKChhICh0LS1jaGVja2Jv eCBjaGVja2JveCBpbmZvKSkpCiAgICAgIChjb25jYXQgYSAoYW5kIGEgIiAiKSkpKQogIDs7 IG5hdGl2ZSBjb21wCiAgKG5hdGl2ZS1jb21waWxlICd0LS1jaGVja2JveCkKICAobmF0aXZl LWNvbXBpbGUgJ3QtLWZvcm1hdC1jaGVja2JveCkpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSZndDs4Jmx0Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpBRkFDSywgdGhl IGRlZmF1bHQgdmFsdWUgb2YgYG5hdGl2ZS1jb21wLXNwZWVkJyBpcyAyLiBJbiB0aGlzIGNh c2UsIHRoZQpiZWhhdmlvciBvZiB0aGUgZm9sbG93aW5nIGNvZGUgaXMgaW5jb25zaXN0ZW50 IHdpdGggdGhhdCBvZiB0aGUKYnl0ZS1jb21waWxlZCBvciBub24tY29tcGlsZWQgY29kZToK Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSZndDs4Jmx0Oy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCjs7IG5vcm1hbAoodC0tZm9ybWF0LWNoZWNrYm94IG5pbCBteS9wbGlz dCkgOzs9Jmd0OyAiIgo7OyBieXRlLWNvZGUKKHQtLWZvcm1hdC1jaGVja2JveCBuaWwgbXkv cGxpc3QpIDs7PSZndDsgIiIKOzsgc3BlZWQgMQoodC0tZm9ybWF0LWNoZWNrYm94IG5pbCBt eS9wbGlzdCkgOzs9Jmd0OyAiIgo7OyBzcGVlZCAyCih0LS1mb3JtYXQtY2hlY2tib3ggbmls IG15L3BsaXN0KSA7Oz0mZ3Q7ICIgIgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0mZ3Q7 OCZsdDstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKT2YgY291cnNlLCB3ZSBjYW4g bm90aWNlIHRoYXQgdGhlIHR5cGUgZGVjbGFyYXRpb24gZm9yIGB0LS1jaGVja2JveCcgaXMK cHJvYmxlbWF0aWMgLS0tIGl0cyByZXR1cm4gdHlwZSBzaG91bGQgYmUgKG9yIG51bGwgc3Ry aW5nKSBpbnN0ZWFkIG9mCnN0cmluZy4gQWZ0ZXIgY29ycmVjdGluZyB0aGlzIG1pc3Rha2Us IHRoZSBmdW5jdGlvbiB3b3JrcyBwcm9wZXJseSB1bmRlcgpzcGVlZD0yLgoKSW4gQywgd2Ug Z2VuZXJhbGx5IGF2b2lkIGFnZ3Jlc3NpdmUgb3B0aW1pemF0aW9ucyBiZWNhdXNlIHRoZXkg Y2FuIGxlYWQKdG8gdW5wcmVkaWN0YWJsZSBiZWhhdmlvci4gV2hhdCBJoa9kIGxpa2UgdG8g YXNrIGlzIHdoZXRoZXIgc2ltaWxhcgpzaXR1YXRpb25zIGNhbiBvY2N1ciBpbiBFbWFjcyBM aXNwoa9zIG5hdGl2ZSBjb21waWxhdGlvbiBhcyB3ZWxsIC0tLSBsaWtlCnRoZSBpc3N1ZSBJ IGVuY291bnRlcmVkIGhlcmU/CgpBbm90aGVyIHF1ZXN0aW9uIGlzIGFib3V0IGBjb21waWxh dGlvbi1zYWZldHknLiBBcyBJIHVuZGVyc3RhbmQgaXQsIHdoZW4Kc2V0IHRvIDEsIGl0IHBy ZXZlbnRzIEVtYWNzIGZyb20gY3Jhc2hpbmcgZHVlIHRvIGZhdWx0eQpvcHRpbWl6YXRpb25z LiBEb2VzIHRoaXMgbWVhbiB0aGUgdmFyaWFibGUgb25seSBndWFyZHMgYWdhaW5zdCB0aGUg bW9zdApzZXZlcmUgY2FzZXMsIHJhdGhlciB0aGFuIGVuc3VyaW5nIHRoZSBjb3JyZWN0bmVz cyBvZiBvcHRpbWl6YXRpb25zIGluCmdlbmVyYWw/CgpCZXN0IHJlZ2FyZHMuCjwvcHJlPg== ------=_NextPart_682219D5_13C997E8_0D93638F-- From debbugs-submit-bounces@debbugs.gnu.org Mon May 12 12:16:55 2025 Received: (at 78394) by debbugs.gnu.org; 12 May 2025 16:16:55 +0000 Received: from localhost ([127.0.0.1]:54284 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uEVpn-0003yb-1o for submit@debbugs.gnu.org; Mon, 12 May 2025 12:16:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34420) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uEVpj-0003yJ-Ph for 78394@debbugs.gnu.org; Mon, 12 May 2025 12:16:52 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uEVpc-0003m7-67; Mon, 12 May 2025 12:16:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=5EI2CIFcC9W3Vw7P+/IWnG3X7z4vo6AOZLoStcWV/oo=; b=H3Gwuj+E+weGrfOEljPk N15u+sr4lQDUdz4/YaDxIz/vj+AhfgvVhzJPSpRR7TvFNSZmr/w8egc2B8jS5bc2pjER9LLt1v0tW 9aNhF4tOWSraaKt4d0dMITbrwg4e2h3Ey7xyRJZRatOYNGBvjImxHg5obKEKFdRIDyrCdRRHx1KOl FgXM0zDkgtppDNdAr451GrBF+3EizjQgl/51A5T+MQrnVomEwGAC+v4jKPp54vq9gTiSXzm0KEEmK ZatilsdsvmzRwUHJx0v8YBHQIXzKVH4vSJ6xPUxxvBvMPeOoaCS77Jmw0cdMa/HxogtKPNgKIIYtM OTmgorf6I5BTZQ==; Date: Mon, 12 May 2025 19:16:07 +0300 Message-Id: <867c2l7qk8.fsf@gnu.org> From: Eli Zaretskii To: "Yue Yi" , Andrea Corallo In-Reply-To: (bug-gnu-emacs@gnu.org) Subject: Re: bug#78394: 31.0.50; Questions about native-comp-speed and type decl References: MIME-version: 1.0 Content-type: text/plain; charset=gb18030 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 78394 Cc: 78394@debbugs.gnu.org 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: -3.3 (---) > Date: Mon, 12 May 2025 23:55:01 +0800 > From: "Yue Yi" via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > When modifying an org HTML export backend, I tentatively added type > annotations to a function to make the code run faster. However, during > unit testing, byte compilation produced correct results, while native > compilation did not. Specifically, the following cleaned-up code > illustrates the issue: > > --------------------------->8<----------------------------- > (defconst my/plist '(:html-checkbox-type unicode)) > (defconst t-checkbox-types > '(( unicode . > ((on . "☑") (off . "☐") > (trans . "☒"))))) > > (let ((native-comp-speed 2)) > (defun t--checkbox (checkbox info) > "Format CHECKBOX into HTML." > (declare (ftype (function (t plist) string)) > (side-effect-free t) (important-return-value t)) > (cdr (assq checkbox > (cdr (assq (plist-get info :html-checkbox-type) > t-checkbox-types))))) > > (defun t--format-checkbox (checkbox info) > "Format a CHECKBOX option to string. > > CHECKBOX can be `on', `off', `trans', or anything else. > Returns an empty string if CHECKBOX is not one of the these three." > (declare (ftype (function (t plist) string)) > (side-effect-free t) (important-return-value t)) > (let ((a (t--checkbox checkbox info))) > (concat a (and a " ")))) > ;; native comp > (native-compile 't--checkbox) > (native-compile 't--format-checkbox)) > --------------------------->8<----------------------------- > > AFACK, the default value of `native-comp-speed' is 2. In this case, the > behavior of the following code is inconsistent with that of the > byte-compiled or non-compiled code: > > --------------------------->8<----------------------------- > ;; normal > (t--format-checkbox nil my/plist) ;;=> "" > ;; byte-code > (t--format-checkbox nil my/plist) ;;=> "" > ;; speed 1 > (t--format-checkbox nil my/plist) ;;=> "" > ;; speed 2 > (t--format-checkbox nil my/plist) ;;=> " " > --------------------------->8<----------------------------- > > Of course, we can notice that the type declaration for `t--checkbox' is > problematic --- its return type should be (or null string) instead of > string. After correcting this mistake, the function works properly under > speed=2. > > In C, we generally avoid aggressive optimizations because they can lead > to unpredictable behavior. What I’d like to ask is whether similar > situations can occur in Emacs Lisp’s native compilation as well --- like > the issue I encountered here? > > Another question is about `compilation-safety'. As I understand it, when > set to 1, it prevents Emacs from crashing due to faulty > optimizations. Does this mean the variable only guards against the most > severe cases, rather than ensuring the correctness of optimizations in > general? I hope Andrea (CC'ed) will be able to answer your questions. From debbugs-submit-bounces@debbugs.gnu.org Sat May 31 05:17:24 2025 Received: (at 78394) by debbugs.gnu.org; 31 May 2025 09:17:25 +0000 Received: from localhost ([127.0.0.1]:55537 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uLIL9-0003Tu-RN for submit@debbugs.gnu.org; Sat, 31 May 2025 05:17:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58244) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uLIKO-0003NL-LD for 78394@debbugs.gnu.org; Sat, 31 May 2025 05:16:36 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uLIKI-0001ES-Pk; Sat, 31 May 2025 05:16:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=UqhPU4KWyF4EXYWd6CNfQnoGdui6NRGd2vmZ9TgpK5I=; b=VvCc/CgAn3dNwtrTFHTv OymgwgLkNOUf88GDSpeWy0oeJLC5ire7cNFVuQsjN5na/jPnuIqzNImg7uxU5RI9RNWYLH95BuRvL bzOKV1wgotwgmSMj95zzqp63fZt09cUj2+T0hsJIEkAlfwTREEJUXdKW1zu5fAyuEtbuwdGcP3lHN 7pPsGt+x5wX6I85tFtHcPMMwMxFEXeHdFfE303ZShHWJVzP4BNdb/SOJD4F57zbavOGfJ5R7uG0iB buDoFslKp/96vHy11jnf1+dDwvc2+Ucqw/KFzfsMRRMtZX6lHv0A1hrVUNsjjVqV0n2jOnmJFufFw buVdf23yrdJDog==; Date: Sat, 31 May 2025 12:16:23 +0300 Message-Id: <86o6v9rvh4.fsf@gnu.org> From: Eli Zaretskii To: acorallo@gnu.org In-Reply-To: <867c2l7qk8.fsf@gnu.org> (message from Eli Zaretskii on Mon, 12 May 2025 19:16:07 +0300) Subject: Re: bug#78394: 31.0.50; Questions about native-comp-speed and type decl References: <867c2l7qk8.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=gb18030 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 78394 Cc: 78394@debbugs.gnu.org, include_yy@qq.com 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: -3.3 (---) Ping! Andrea, could you please answer these questions? > Cc: 78394@debbugs.gnu.org > Date: Mon, 12 May 2025 19:16:07 +0300 > From: Eli Zaretskii > > > Date: Mon, 12 May 2025 23:55:01 +0800 > > From: "Yue Yi" via "Bug reports for GNU Emacs, > > the Swiss army knife of text editors" > > > > When modifying an org HTML export backend, I tentatively added type > > annotations to a function to make the code run faster. However, during > > unit testing, byte compilation produced correct results, while native > > compilation did not. Specifically, the following cleaned-up code > > illustrates the issue: > > > > --------------------------->8<----------------------------- > > (defconst my/plist '(:html-checkbox-type unicode)) > > (defconst t-checkbox-types > > '(( unicode . > > ((on . "☑") (off . "☐") > > (trans . "☒"))))) > > > > (let ((native-comp-speed 2)) > > (defun t--checkbox (checkbox info) > > "Format CHECKBOX into HTML." > > (declare (ftype (function (t plist) string)) > > (side-effect-free t) (important-return-value t)) > > (cdr (assq checkbox > > (cdr (assq (plist-get info :html-checkbox-type) > > t-checkbox-types))))) > > > > (defun t--format-checkbox (checkbox info) > > "Format a CHECKBOX option to string. > > > > CHECKBOX can be `on', `off', `trans', or anything else. > > Returns an empty string if CHECKBOX is not one of the these three." > > (declare (ftype (function (t plist) string)) > > (side-effect-free t) (important-return-value t)) > > (let ((a (t--checkbox checkbox info))) > > (concat a (and a " ")))) > > ;; native comp > > (native-compile 't--checkbox) > > (native-compile 't--format-checkbox)) > > --------------------------->8<----------------------------- > > > > AFACK, the default value of `native-comp-speed' is 2. In this case, the > > behavior of the following code is inconsistent with that of the > > byte-compiled or non-compiled code: > > > > --------------------------->8<----------------------------- > > ;; normal > > (t--format-checkbox nil my/plist) ;;=> "" > > ;; byte-code > > (t--format-checkbox nil my/plist) ;;=> "" > > ;; speed 1 > > (t--format-checkbox nil my/plist) ;;=> "" > > ;; speed 2 > > (t--format-checkbox nil my/plist) ;;=> " " > > --------------------------->8<----------------------------- > > > > Of course, we can notice that the type declaration for `t--checkbox' is > > problematic --- its return type should be (or null string) instead of > > string. After correcting this mistake, the function works properly under > > speed=2. > > > > In C, we generally avoid aggressive optimizations because they can lead > > to unpredictable behavior. What I’d like to ask is whether similar > > situations can occur in Emacs Lisp’s native compilation as well --- like > > the issue I encountered here? > > > > Another question is about `compilation-safety'. As I understand it, when > > set to 1, it prevents Emacs from crashing due to faulty > > optimizations. Does this mean the variable only guards against the most > > severe cases, rather than ensuring the correctness of optimizations in > > general? > > I hope Andrea (CC'ed) will be able to answer your questions. > > > >