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#60441: [PATCH] Fontification of function declarators with reference return types is incorrect in c++-ts-mode Date: Sat, 31 Dec 2022 01:51:02 +0100 Message-ID: References: Reply-To: Daniel =?UTF-8?Q?Mart=C3=ADn?= Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25720"; mail-complaints-to="usenet@ciao.gmane.io" To: 60441@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 31 01:52:21 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 1pBQ6n-0006X3-71 for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 31 Dec 2022 01:52:21 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pBQ6Z-0001EN-FY; Fri, 30 Dec 2022 19:52:07 -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 1pBQ6V-0001E7-K2 for bug-gnu-emacs@gnu.org; Fri, 30 Dec 2022 19:52: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 1pBQ6U-0005Si-Rn for bug-gnu-emacs@gnu.org; Fri, 30 Dec 2022 19:52:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pBQ6U-0000Pa-A4 for bug-gnu-emacs@gnu.org; Fri, 30 Dec 2022 19:52: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: Sat, 31 Dec 2022 00:52:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 60441 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.16724478771523 (code B ref -1); Sat, 31 Dec 2022 00:52:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 31 Dec 2022 00:51:17 +0000 Original-Received: from localhost ([127.0.0.1]:36293 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pBQ5l-0000OV-9Q for submit@debbugs.gnu.org; Fri, 30 Dec 2022 19:51:17 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:53816) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pBQ5j-0000OM-2o for submit@debbugs.gnu.org; Fri, 30 Dec 2022 19:51:15 -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 1pBQ5i-00015z-QU for bug-gnu-emacs@gnu.org; Fri, 30 Dec 2022 19:51:14 -0500 Original-Received: from sonic306-21.consmr.mail.ir2.yahoo.com ([77.238.176.207]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pBQ5g-00059Q-RH for bug-gnu-emacs@gnu.org; Fri, 30 Dec 2022 19:51:14 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.es; s=s2048; t=1672447866; bh=9XMfM5H+FpqpLVTBkBmKXppGzcpVi8p6KBI7kKLTxKY=; h=From:To:Subject:Date:References:From:Subject:Reply-To; b=sNX8WMNJE2D4uGGe4LmTI7qUkTIwDZ0hRKS+sdPHROVYevL0YFnyoeKR2n4NJntYLnNazj97SBAJp7sMBEG9ykuo6htEC8xbBFr9RKZqvDtHX0ZhwNHN1GBznZvewHyWQkLgxt6OEktprQ0L2qzahqdvKbWmcKFCiYA76gv8KsqzuKNJJ4/BbZpl6gBB/oxV7aeRPxb809nofaP3WxuyUjE0rYraPNBcyRzzc4jIc5Hq/iOhvEGMQFW1lOpfWZr5aKMT743B/nmeLnQOzWYFKvMSsKxnBNK3OwftSwm3HOvKZseShpZYfS05eF4gGM/hCJkElN0Wqag8nwZ9+Q2Yow== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1672447866; bh=iKBgLENIbST0qZGS9xZmeEAT0fH6Kqz6POvPE8ap10G=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=DdECgtMmncA6wKQ8XkxV7XZpdoZ0faBQ8LUFU1FIKXJl9qylBXKe8eKNGzK5GKS4wmcfdT6yJQMEnr25hte2ern+JTJidXHymt8Aj0OIbK0VPnrEBCY8U16GWVUhKJjD1CEoTcJ0VBvQaS8vCK3sdV5hGBD0Z5ZLZ3IA8WmkJM5tWW+Kml1ZMf/7tK0ftx7WQ/7PpY45Gz0tQzM8nEQDp/gIeGpVF5Pi74jYYHL817BE99pON6C0PLcCed0i9ebsG2kbA05cFD5IL1KfxA8PryzgN99TQUKcQh8uSKqDw4SdRwyS1zsa9zH0PXeKV2gzitFYaHA8NcuVIbGvgx18QQ== X-YMail-OSG: rZp7T30VM1mHEH.2yVNjo0GWZ3.5Fmcu.WTPrN4ixkVE6V_pNgjWq7hh_7u3H2. nlEwO.CWuNP.s8koD_WuKp.qqXq2LEC45MNAgfbqmgq7sfldbAHdPOPRCka9PLyzCTf6fff3BP.t DHDdMlER0RPFG9_Z0X5OypSqTLbvqKbxnBcUzvRyNYwnO1SVkzDrGkD6f5GUjERxpj7zbtdQACwi DG8w92lV14D8Uto5XTcftHZnGj8961iMUIaJrTPboGLB2UAQLKJfRcsdy6OaxLl8O16CdRDXEyOK wO3Ip1xzT6WBxclF6sbHgKt5.2EsQvr.ddfSN0quY_ZluTnDBpUBr_ya.TJZfVOkC8djlg1BR8xQ yl1NmoaRPHyL4lhzRISLD1gR1HsUncPk.Mn_sjrET2V_Oa.k5K0ab.VQWlUXj.btbCiQvnTjCAys 6scU7W3Kl_n_uwWTQGTBERd1S.SsbGhI_iVqKO9sCD81bAwODuFfYDNSJxMmVc5nBS8ER1ZKv59d BatOGjp6zbNOPHRmBT8kw.kpI8NzObW.mTDENloKOye.O7DMn66kay2hMFhlvW85B6n8q1tkea7b aR0rVJALBBTF4IMfZon.K2OxZTEGSaQJOoDhxkbFMlUglaitUPi0wvRW5YQlyLKWW6xHKFhSfuVg b62Rw_HS4lMbWp8L6MKALIhJCiznN5xC93.AaZ3OGMMHeTzwtdvyHM57AXGjEgxHwE_QqJRQFDVk xwSkGJE7vEln9.g9LgcsD7rlniA.E3yC2_GINY_98FcFlZ5.FQBpjQqzyz_Et1q2zxRJc57t7Ijl VaKnrFo5JfVWRYKOHvBx70QlPS76epjsXQqQatWfok X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic306.consmr.mail.ir2.yahoo.com with HTTP; Sat, 31 Dec 2022 00:51:06 +0000 Original-Received: by hermes--production-ir2-5795fc58c8-g4k29 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 5cb3f743c7fd9e307154a84f6a660d52; Sat, 31 Dec 2022 00:51:03 +0000 (UTC) X-Mailer: WebService/1.1.20982 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.yahoo Received-SPF: pass client-ip=77.238.176.207; envelope-from=mardani29@yahoo.es; helo=sonic306-21.consmr.mail.ir2.yahoo.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:252157 Archived-At: --=-=-= Content-Type: text/plain Given the following valid C++ code: class Foo { public: Bar& getBar(); }; c++-ts-mode does not fontify getBar with the font-lock-function-name-face face. I've attached a fix to treat reference declarators in c-ts-mode--declarator-identifier similarly to pointer_declarators. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Fix-fontification-of-C-functions-with-reference-retu.patch >From 19182746e53ca66dc94aea4a7cd91f67cc7e0aaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=ADn?= Date: Sat, 31 Dec 2022 01:45:27 +0100 Subject: [PATCH] Fix fontification of C++ functions with reference return types * lisp/progmodes/c-ts-mode.el (c-ts-fontify-error): Treat reference_declarator nodes the same as pointer_declarator nodes when calculating the identifier to fontify. --- lisp/progmodes/c-ts-mode.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/progmodes/c-ts-mode.el b/lisp/progmodes/c-ts-mode.el index 82a13e9762..3cb671f4c5 100644 --- a/lisp/progmodes/c-ts-mode.el +++ b/lisp/progmodes/c-ts-mode.el @@ -425,7 +425,7 @@ c-ts-mode--declarator-identifier ;; Recurse. ((or "attributed_declarator" "parenthesized_declarator") (c-ts-mode--declarator-identifier (treesit-node-child node 0 t))) - ("pointer_declarator" + ((or "pointer_declarator" "reference_declarator") (c-ts-mode--declarator-identifier (treesit-node-child node -1))) ((or "function_declarator" "array_declarator" "init_declarator") (c-ts-mode--declarator-identifier -- 2.34.1 --=-=-=--