From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#64442: 29.0.92; treesit-beginning-of-defun fails in DEFUN functions in C Date: Thu, 10 Aug 2023 12:18:52 +0300 Message-ID: <83y1iji7b7.fsf@gnu.org> References: <83a5wcncj8.fsf@gnu.org> <83pm57lxbo.fsf@gnu.org> <835y6wgr77.fsf@gnu.org> <93E5B9EA-D349-4316-B314-D6994329C261@gmail.com> <83r0oplvro.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19790"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 64442@debbugs.gnu.org To: casouri@gmail.com Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Aug 10 11:19:13 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 1qU1p3-0004vN-9N for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 10 Aug 2023 11:19:13 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qU1ou-0005FW-AY; Thu, 10 Aug 2023 05:19: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 1qU1os-0005Ey-LW for bug-gnu-emacs@gnu.org; Thu, 10 Aug 2023 05:19: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 1qU1os-0000TP-BH for bug-gnu-emacs@gnu.org; Thu, 10 Aug 2023 05:19:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qU1os-0006Gu-6p for bug-gnu-emacs@gnu.org; Thu, 10 Aug 2023 05:19:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 10 Aug 2023 09:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64442 X-GNU-PR-Package: emacs Original-Received: via spool by 64442-submit@debbugs.gnu.org id=B64442.169165911324069 (code B ref 64442); Thu, 10 Aug 2023 09:19:02 +0000 Original-Received: (at 64442) by debbugs.gnu.org; 10 Aug 2023 09:18:33 +0000 Original-Received: from localhost ([127.0.0.1]:41388 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qU1oP-0006G9-CF for submit@debbugs.gnu.org; Thu, 10 Aug 2023 05:18:33 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36378) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qU1oN-0006Fv-Dt for 64442@debbugs.gnu.org; Thu, 10 Aug 2023 05:18:32 -0400 Original-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 1qU1oI-0000Qx-6D; Thu, 10 Aug 2023 05:18: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=AUTJK0Chnv5hmz6zotyOdjk8H2F8C+rkJnQMQgTUJtc=; b=dHqT7Kmo8+yq0xVaXNI2 7BQkn40Wb4WA3ZSkhPTFzv5yOAfXpXeAZb+8rDtxDCv+VwamJp2AFBkKO2AGVob/rrl5h4/gy7ISK R8si0Wxr6c6R+d06oSWSR+ZS7VDEPMpweJkrJIkyqZrBKfmMUQVBqpGZ1RIwXrAJxB/nWi0rgS5k8 U80UZW7MLyyIKR24J2ac40haeOt7pwFxt0GEjduRAAL63tkcXLi0Enh4ViHDj5iZAC44IiD/BCR4E SotJQ2O5RV8lotHi9H+0IV6tSMQIuPuhDIAk8o6203hMu5X0v+dr7+dg9X4ohvUjWfDVLusm/czWw CywkFjhNZ3/c0A==; In-Reply-To: <83r0oplvro.fsf@gnu.org> (message from Eli Zaretskii on Sun, 30 Jul 2023 10:10:35 +0300) 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:267113 Archived-At: > Cc: 64442@debbugs.gnu.org > Date: Sun, 30 Jul 2023 10:10:35 +0300 > From: Eli Zaretskii > > > From: Yuan Fu > > Date: Tue, 11 Jul 2023 19:10:01 -0700 > > Cc: 64442@debbugs.gnu.org > > > > > > > > > On Jul 6, 2023, at 11:40 PM, Eli Zaretskii wrote: > > > > > >> From: Yuan Fu > > >> Date: Thu, 6 Jul 2023 23:15:00 -0700 > > >> Cc: 64442@debbugs.gnu.org > > >> > > >>> On Jul 4, 2023, at 4:39 AM, Eli Zaretskii wrote: > > >>> > > >>> Why cannot we look for a top-level expression_statement node which is > > >>> a call_expression whose function identifier is "DEFUN" and whose > > >>> position is between the place where C-M-a was invoked and the place > > >>> where it does find a defun? > > >> > > >> It’s gonna be ugly, but I can take a jab at it this weekend. I’m thinking of a wrapper function that tries to detect DEFUN before falling back to the ordinary tree-sitter defun movement function. > > > > > > Thanks. let's see how ugly it is before deciding whether it's worth it. > > > > > >>> DEFUN's cannot be nested, so we don't need to consider that. > > >> > > >> Yeah, in general C sources don’t have nested defuns, only C++ ones do. > > > > > > No, I meant the use of DEFUN macros in Emacs cannot be nested. > > > > Just an update. I didn’t forget about this, but it’s more harder than I thought and I’m still working on it :-( > > Any progress with this? It would be good to have a solution in Emacs > 29.2, if possible. Ping!