From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.bugs Subject: bug#65344: 28.2; Unable to Edebug cl-flet form which uses argument destructuring Date: Fri, 18 Aug 2023 01:07:44 +0200 Message-ID: <871qg1tghr.fsf@web.de> References: <040fe8aa-7a15-762c-e710-eb85f997d329@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10314"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: brandon.irizarry@gmail.com, Eli Zaretskii , 65344@debbugs.gnu.org To: Gerd =?UTF-8?Q?M=C3=B6llmann?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Aug 18 01:08:28 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 1qWm6O-0002Ti-3L for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 18 Aug 2023 01:08:28 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qWm5z-00018P-LW; Thu, 17 Aug 2023 19:08:03 -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 1qWm5y-000188-7Q for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 19:08: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 1qWm5x-0005rq-Vq for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 19:08:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qWm5y-0002UX-0N for bug-gnu-emacs@gnu.org; Thu, 17 Aug 2023 19:08:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Michael Heerdegen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Aug 2023 23:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65344 X-GNU-PR-Package: emacs Original-Received: via spool by 65344-submit@debbugs.gnu.org id=B65344.16923136779567 (code B ref 65344); Thu, 17 Aug 2023 23:08:01 +0000 Original-Received: (at 65344) by debbugs.gnu.org; 17 Aug 2023 23:07:57 +0000 Original-Received: from localhost ([127.0.0.1]:45729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWm5t-0002UE-0e for submit@debbugs.gnu.org; Thu, 17 Aug 2023 19:07:57 -0400 Original-Received: from mout.web.de ([212.227.17.11]:36609) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qWm5p-0002Ty-Bu for 65344@debbugs.gnu.org; Thu, 17 Aug 2023 19:07:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=s29768273; t=1692313666; x=1692918466; i=michael_heerdegen@web.de; bh=a5hYUz9V//Sg9kTIcMWryjtJJf1xACaoyPvqv0M15fE=; h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date; b=QDQDhcXiT77mYL4ZiF3lTId01UzHFioD1ndPogf2XYLjZ3xSY//Ul6S5z0A0MDzAYfsuYtH +n4uaYTYk1F/pyM19+63sguHL4Q3l/YVSPA8MXYVNNlgblT1/wmMhihegiT5Bq+dZUhAytUeM xG/KvRcGHFGvuaNTklEQ//06XuCYORZXvBiAxqGK8+TIiG1FIikhaES3Rn7PCHXXO/f0Z3TWF 3mhrhFkkg1CoJc11yF7WPQ/KRY9zFtLJ3BT44vgWvsjXcbz3vNvmdbl+esp29IjOscEOq1NFy jpGjuHkQ9Mp3DbTKyzr0s3vNJe8PKv676k4G5+CECkd2fWwIepYg== X-UI-Sender-Class: 814a7b36-bfc1-4dae-8640-3722d8ec6cd6 Original-Received: from drachen.dragon ([92.75.138.214]) by smtp.web.de (mrweb105 [213.165.67.124]) with ESMTPSA (Nemesis) id 1MfKxV-1pqZr847hr-00gQZc; Fri, 18 Aug 2023 01:07:46 +0200 In-Reply-To: <040fe8aa-7a15-762c-e710-eb85f997d329@gmail.com> ("Gerd =?UTF-8?Q?M=C3=B6llmann?="'s message of "Thu, 17 Aug 2023 20:23:40 +0200") X-Provags-ID: V03:K1:FdzlrcSINqagJiTn2SUx0SP6Ax3oSyhlGC0phlDhKwJZybDq5qG h6YIo629RfRO4N1fhNKfyLMWh6+lgBm+3YrfwXYuBnME9xd1JzOoP29/LS2qzN+7OMM/Kfh YEchTc0wtP7DziVsjzvY2RKIuGlsyHirMgXXiXvvv6crLkuyPKwfJqC/aUkh+NwvKMggUVj T6IT6Rbemt4R9ejRcursg== UI-OutboundReport: notjunk:1;M01:P0:RcdNyYM75bA=;N1a4iyYhHgzS+EzbmP6o7RauJ8B 2LYdHb2E46/KFmoGyLmJhrqnHA0JUy4O85lbcq4vi9LdEVYwib9M/wYjkZ+h6OmHlq11SQ65U weBuTzTlH8u5Z4ldHBvEgbTUyI36rnzXofXpsv30xs8nB0lSrTs3zCwgXtrkondrTfUJlu2qr kClKzvyy5MvqMP1B52qXxJ1AAyCjdrcixoK1Kdl7nWrMV5GQW8b9ZfsDibMjwuNbPqjuWCKl8 8SZ3UlqBCABvGyZnFTW+qYh+zHJIsmE9qUrvWgmshpd4MUG8ispz0hEoaAVeaZnmaM8lkT/Ck PUwcrRPvJaMv7eLq6GBAvk+Cpnfp/+5myJji49oZXntjUGXIc7WI87UKySEikig8qBuWq43Vq 6HcQmW2UwK14YmyDi6SStt1114kJqMpkTzCD6qwuVIUVL0qLn+RGyagDmz8MtnjF43db5CcO+ Q5Mb6LT2eKVkkjNMsBDKmmRIz7129SUJBz3id1JW0p0N6a7NezJ7CtllQMbMBNJaBN/WGmTuS wf46uwJ9RjInbxjqw+UMHcwWW+5E1fUNpb645CNNqWCcCd4h4PdzQgqSZj2SUZah21BmRowS5 wpRXpITwsF/oWQocknxHYxLpvRaR+IuSFCLyqN9T7ruKWYWiDPUk8MZsBR6VwQ0FG+I31hpcj L0DFbFGok1Kk3I83DCnrLzgz9JAmCbJT29xxkOJZh6PppdVF9FDask6elNFfogL7RUTgXUx6v tSN3VgcsH8t/b6a/qwj97+890oQ+kElH922kbVVmYFGwERAy3qt9koesxqsX1MxZNFdn94RU 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:267698 Archived-At: Gerd M=C3=B6llmann writes: > Not remembering much about Edebug, but cl-defun seems to work with > Edebug. So... :-) Yes, this problem does not concern `cl-defun'. This is the Edebug spec of `cl-flet': #+begin_src emacs-lisp ((&rest [&or (symbolp form) (&define [&name symbolp "@cl-flet@"] [&name [] gensym] ;Make it unique! cl-lambda-list cl-declarations-or-string [&optional ("interactive" interactive)] def-body)]) cl-declarations body) #+end_src Instrumenting a binding first tries (symbolp form): This is the syntax where you can specify an expression to evaluate whose result is then fbound. Although we obviously have three elements to match in the recipe case, Edebug tries nonetheless, and FORM raises an error because it can't match ((min max)). It should just cause backtracking, but the implementation disables backtracking by purpose. When you replace (symbolp form) with (symbolp sexp) the problem is gone. But that only silences the problem: this also disables the instrumentation of a form in that position. I'm too dumb to fix this correctly. We could transpose the two &or branches in the spec, this works but it is also only a way to avoid the problem. Michael.