From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Daniel =?UTF-8?Q?Mart=C3=ADn?= via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#59677: 30.0.50; Error when calling (treesit-end-of-defun) Date: Tue, 29 Nov 2022 13:27:43 +0100 Message-ID: References: <87lenuko4o.fsf@kraus.my> Reply-To: Daniel =?UTF-8?Q?Mart=C3=ADn?= Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5204"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (darwin) Cc: 59677@debbugs.gnu.org To: Daniel Kraus Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Nov 29 13:32:59 2022 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 1ozznH-0001BA-A2 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 29 Nov 2022 13:32:59 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ozziX-0002cP-2r; Tue, 29 Nov 2022 07:28:05 -0500 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 1ozziV-0002cA-9a for bug-gnu-emacs@gnu.org; Tue, 29 Nov 2022 07:28:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ozziU-0000cS-W6 for bug-gnu-emacs@gnu.org; Tue, 29 Nov 2022 07:28:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ozziU-000853-DR for bug-gnu-emacs@gnu.org; Tue, 29 Nov 2022 07:28:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Daniel =?UTF-8?Q?Mart=C3=ADn?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 29 Nov 2022 12:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 59677 X-GNU-PR-Package: emacs Original-Received: via spool by 59677-submit@debbugs.gnu.org id=B59677.166972487731054 (code B ref 59677); Tue, 29 Nov 2022 12:28:02 +0000 Original-Received: (at 59677) by debbugs.gnu.org; 29 Nov 2022 12:27:57 +0000 Original-Received: from localhost ([127.0.0.1]:54394 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ozziP-00084o-CD for submit@debbugs.gnu.org; Tue, 29 Nov 2022 07:27:57 -0500 Original-Received: from sonic309-24.consmr.mail.ir2.yahoo.com ([77.238.179.82]:33332) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ozziL-00084i-80 for 59677@debbugs.gnu.org; Tue, 29 Nov 2022 07:27:55 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.es; s=s2048; t=1669724866; bh=eUokJpZOZNKAMsH5PS/PBv0K8FSQvM7O4QlTAzZOb/o=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From:Subject:Reply-To; b=eaHfx8zJLa5ePI2a5dqaURXX51dJClOkgAKpuiq2oNFD83WnNBT6zLLbYk/1qxj2aDZcPRA8X8AWgs11N2U8v8om5efJRr6yrjn2aiqPIxyPQhoaXMDSHL4FaIEhd9VPVu3Dq6dT+qv+IWs+vYTSQalLinxsdajy/8VF87us3TkaxXbNwBc1DF0oyxKgUid05lLPS8S3+Bp07NQGV1TGg5EUPTgGIhQGVaLRuSZmE6xVTiEfMul/Hl3pW6O1i3JqMwlRTk7XnqXZbZWBK0ynpLQT75t+94ic6g7if2W5Oi5HaBpB5+4QhFNFwLA92mY66iFDcep3F7eYK8rYyuSy1g== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1669724866; bh=hmEcvkXcUGFjuprqTeg/g+L1FOOPAdjjvgpD5yX+WsV=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=APFhbSs62Xcu04NAVyZlu6X0KWXHiZwYotshKDeawqvcOt2GDhNeZXspY7Dpy4mAiMsVlUbsqjw2W0Br8iNQJhC+X4nV0ZSQlbhA6716H5noyIqRBets7+75yIm2OQQtvjXIfspVgwUTAHZePIK7UJ3KTBfdZh1Xw7ZCEbS5sPqXdbDf/0KOrwLa+9XvO+NR3ojfT9Z2N+BkIdnFkPGs1mfjTnxHywRA8xxebzh4lPQ0NcHyNABy2uF3z8ZMslx1tKgNeeLmDH4WAxPTLdRMcOZAiHFIy4j+G79AqlBheZ0m5cKB03bheBVuISSF4jBH9f8TvmiNQgjN0hMNfYNQKg== X-YMail-OSG: 06rSRxUVM1nCg.u3ITVj0OCp5KhtgxBs8b5F10G60DfxjHi4XAEzZOq2WU1gYOL HoDI0H.AJe7xuthH9.78Gk9DyQo_kufhJLqLMJ0sz8BfQ.avJdy3f2TF3IJqQmSo_UJ9hyTLuxII MSm2agTWjoead1FwHkyCR_E3QQFPludKGK6zW8u6A4Podwf17TTioFyf913m9N.lSpIaYCKtCdLJ irthIwjjAD__DBH9A6XJpK8b2S5JM9EGPVUuluZtdTYk31pxnHCLVvbu.RBj45_o3hVrnx3rkup1 kGEXO9bakQB7sAljYyVs61Sbk2bL4.rx02AzsRDsBSvNgsgQQo3RKO3FYyKkeRkpPfBGDFWap7eM h7oZq7a8dHI56k7cYsSi2WT61HoLpe_caMkTip052ftEQfptRAAY1NHNjqujbdKKqXSGLUvviRG9 ANiKcYzO1oVCJ0WnZ6PDyW39N27Wt_nmc8p3BNE2TCo6xtaDGVZYFg_QSENeU8NAJOELav5L_nWT IJDwSUUVaH8.dCz661xNeGTqR1PXPHm686LYwgYJ.qUHScXCnbJJBKFDU7DaHXFAOhbKV3QMHsfA Hl_EPTbto1khDoUQzOxVV6UtUJG7FXKjO426fSZfTeyVPosX.buLDSFPDKXpDTbMqmaICLXsOGIE vpEbVee4oFnI.rJgdvaeGDe0kThTllXn1RmlKlP2aamUyDbPnv.30o04dlRoJDma9Vn4TmQ.vvU3 95HxrPVXWHwv7K0S95Ghs0tOX.RhOc6p39uFTaXI0ZbQ051xzU.Vy1hpB.Es4Qpuk7cdKwITuv3i urvMU9wg80c8nTivsfbmNuWWrH6Tk_IyHY64JD5Su. X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.ir2.yahoo.com with HTTP; Tue, 29 Nov 2022 12:27:46 +0000 Original-Received: by hermes--production-ir2-74cf6dc4df-b9vjn (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 4dbf57704de3d8c79336b512cf67313f; Tue, 29 Nov 2022 12:27:44 +0000 (UTC) In-Reply-To: <87lenuko4o.fsf@kraus.my> (Daniel Kraus's message of "Tue, 29 Nov 2022 12:08:49 +0100") X-Mailer: WebService/1.1.20886 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo 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:249385 Archived-At: Daniel Kraus writes: > Hi, > > I tried the latest -ts-modes and ran into a problem with the > symbol-overlay ( https://github.com/wolray/symbol-overlay ) > package. > > The problem is that `(end-of-defun)` calls `(treesit-end-of-defun)` > when in a ...-ts-mode and this function seems to raise an error when > point is not inside a function. > > Steps to reproduce: > - emacs -Q > - find-file "foo.py" > - Then if you run `M-: (end-of-defun)` it works as expected. > - After switching to `M-x python-ts-mode`, > the same command raises an error. The error is signaled by the goto-char call in treesit-end-of-defun. Protecting it from possible nil node positions fixes the issue for me (there is a similar check in treesit-beginning-of-defun): diff --git a/lisp/treesit.el b/lisp/treesit.el index 8f092f475d..45a4d3c764 100644 --- a/lisp/treesit.el +++ b/lisp/treesit.el @@ -1614,7 +1614,9 @@ treesit-end-of-defun (let* ((node (treesit-search-forward (treesit-node-at (point)) treesit-defun-type-regexp t t)) (top (treesit--defun-maybe-top-level node))) - (goto-char (treesit-node-end top)))) + (when top + (goto-char (treesit-node-end top)) + t))) ;;; Activating tree-sitter