From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Knut Anders Hatlen Newsgroups: gmane.emacs.bugs Subject: bug#60397: 29.0.60; c++-ts-mode could report better defun names Date: Sun, 08 Jan 2023 08:05:30 +0100 Message-ID: <87ilhhzeth.fsf@gmail.com> References: 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="18497"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: 60397@debbugs.gnu.org To: Yuan Fu Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jan 08 08:06:34 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 1pEPlJ-0004bc-Uc for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 08 Jan 2023 08:06:33 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pEPkx-0005s8-4t; Sun, 08 Jan 2023 02:06:11 -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 1pEPkv-0005nY-6e for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2023 02:06:09 -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 1pEPko-0005p4-HL for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2023 02:06:08 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pEPko-0006YM-Cs for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2023 02:06:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Knut Anders Hatlen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 08 Jan 2023 07:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60397 X-GNU-PR-Package: emacs Original-Received: via spool by 60397-submit@debbugs.gnu.org id=B60397.167316154125128 (code B ref 60397); Sun, 08 Jan 2023 07:06:02 +0000 Original-Received: (at 60397) by debbugs.gnu.org; 8 Jan 2023 07:05:41 +0000 Original-Received: from localhost ([127.0.0.1]:59742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pEPkS-0006XE-PQ for submit@debbugs.gnu.org; Sun, 08 Jan 2023 02:05:41 -0500 Original-Received: from mail-lf1-f48.google.com ([209.85.167.48]:45043) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pEPkQ-0006Wi-4q for 60397@debbugs.gnu.org; Sun, 08 Jan 2023 02:05:38 -0500 Original-Received: by mail-lf1-f48.google.com with SMTP id m6so8253387lfj.11 for <60397@debbugs.gnu.org>; Sat, 07 Jan 2023 23:05:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6IaB8AsKASTdXPYeJz3Dgl7qVHkGaWVuWII+hGRNRrc=; b=GNV8wMGCTlDIiTEaNQPfAGxP9cbiSY8adCOCDnKJNFGBfPyVcmOn0lY9UO40DXD2Pj 7JtUcB4xzOYqi9mGYe+tc716Wu4L5326h8+iVS9xOMjxZqQ/mrbnxhptJslJBwyppIGw NKll/Udby1z5Abos9mbMMcpis7kBrG9rTcWg9v0qjGgIgVP2Cyy8SuKyTpvN34MW6dbH X3VK0FlIYKaU5d+YasnK2ypTAMu9P/RqTy+QIu3RBnsVwrI3DkJYXXiX2Lk8bZPi99TU ZawiGf9q/WhToN7YhXvUCYqwjXOEYcsaFVfmBMMsUO/wXF41Pgb1SlMz28LIqfu50Fi0 kWlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=6IaB8AsKASTdXPYeJz3Dgl7qVHkGaWVuWII+hGRNRrc=; b=SNoGh2V5vc3jqAAGjnqw68dW++UgaxHrwgPqS5e3nk3Pdk08LVeaukWtMaSW8lPZyK 9nN4jERFIXEZBERHwjbVGmnPieQnSwnoW9cDDcJ+zMbpeP/ueBhGFgSMxIhjTkPQHWl+ BdUzK8/den0BT1ByZtqKSnCY/vmbs1zxr4hhHehW6nT9zdHZOZbY+PBJolvyp3Z8kq1Y NFzefvjL9CYwCWlgjF0VFjqifAjqxlBdAeb9lqCHbdHoiyMqQUsd8RtU3XIjlWfS+ocm +VxwMF0oKzvJeI0FOAODlh4OiQpdsqbmI1oo/4KpNZ2rha0e3EekZYtx3hWk7g9sU9bZ aHTQ== X-Gm-Message-State: AFqh2koLaxlypMLP1/c/U34Lt9NoQNVdO7f7eA2+7UTC2II6ra2sx+cm RaGh1OD517Tzrj3q87cLNr19lqYWyw== X-Google-Smtp-Source: AMrXdXuHTunBdbBxs44x4oKRlmH8UDFb0XgMUk+ocjIyx8enOAkESJCXrpO6dGYAvns6oUZpbk95xQ== X-Received: by 2002:ac2:4e8b:0:b0:4bb:dedf:f38b with SMTP id o11-20020ac24e8b000000b004bbdedff38bmr14888201lfr.34.1673161531818; Sat, 07 Jan 2023 23:05:31 -0800 (PST) Original-Received: from dell ([2a02:2121:6c3:44bd:8c6:f8dd:8e65:1136]) by smtp.gmail.com with ESMTPSA id m9-20020ac24ac9000000b004cafe65883dsm929739lfp.122.2023.01.07.23.05.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 07 Jan 2023 23:05:31 -0800 (PST) In-Reply-To: (Yuan Fu's message of "Sat, 7 Jan 2023 16:06:18 -0800") 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:252874 Archived-At: Yuan Fu writes: > Knut Anders Hatlen writes: > >> The defun names reported by c++-ts-mode could still need a couple of >> improvements: >> >> 1) In a buffer with c++-ts-mode and which-function-mode enabled, and >> this content: >> >> struct S { >> int f1(int x) { >> return x + 1; >> } >> int g1(int x); >> }; >> >> int S::g1(int x) { >> return x + 1; >> } >> >> Inside the inline f1 function definition, which-function-mode shows >> "S.f1". But inside the out-of-line g1 function definition, it shows >> "n/a" instead of "S.g1". (Not limited to structs. Classes have the same >> problem.) > > Now the second function is displayed as S::g1. Looks good now. Classes seem to be handled fine too. >> 2) Namespaces are not handled. Given this content: >> >> namespace n { >> int f1(int x) { >> return x + 1; >> } >> } >> >> namespace { >> int f2(int x) { >> return x + 1; >> } >> } >> >> Inside the f1 and f2 function bodies, which-function-mode shows "f1" and >> "f2", respectively. It would be better if it showed "n.f1" for the >> former, and perhaps something like "(anonymous).f2" for the latter. > > Now the first function is shown as n.f1, the second is shown as f2. > Making it (anonymous).f2 isn=E2=80=99t necessarily better than f2 IMO, and > requires some non-trivial change to the current code, so I didn=E2=80=99t= do it. Fair enough. Thanks! --=20 Knut Anders