From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31079 invoked by alias); 22 May 2013 21:42:37 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 31070 invoked by uid 89); 22 May 2013 21:42:37 -0000 X-Spam-SWARE-Status: No, score=-3.3 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,RCVD_IN_HOSTKARMA_YE autolearn=ham version=3.3.1 Received: from caibbdcaaaaf.dreamhost.com (HELO homiemail-a51.g.dreamhost.com) (208.113.200.5) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 22 May 2013 21:42:35 +0000 Received: from homiemail-a51.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a51.g.dreamhost.com (Postfix) with ESMTP id 9DD682E805C; Wed, 22 May 2013 14:42:34 -0700 (PDT) Received: from redwood.eagercon.com (c-50-148-128-197.hsd1.ca.comcast.net [50.148.128.197]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: eager@eagerm.com) by homiemail-a51.g.dreamhost.com (Postfix) with ESMTPSA id 7F3C82E8057; Wed, 22 May 2013 14:42:34 -0700 (PDT) Message-ID: <519D3BCA.8090401@eagerm.com> Date: Wed, 22 May 2013 21:42:00 -0000 From: Michael Eager User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130402 Thunderbird/17.0.5 MIME-Version: 1.0 To: Eli Zaretskii CC: gdb-patches@sourceware.org, tromey@redhat.com Subject: Re: [PATCH] Revised display-linkage-name References: <519D086A.50105@eagerm.com> <838v36u84e.fsf@gnu.org> In-Reply-To: <838v36u84e.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2013-05/txt/msg00861.txt.bz2 On 05/22/2013 12:28 PM, Eli Zaretskii wrote: >> Date: Wed, 22 May 2013 11:03:22 -0700 >> From: Michael Eager >> CC: Tom Tromey >> >> Changes: >> Add NEWS and docs. >> Add linkage name to "info break" listing. >> Add MI annotations. >> Add command to set/show display length limit, remove define. >> Add test case. > > Thanks. > >> +set|show display-linkage-name-len >> + >> + Set the maximum number of characters to display in the linkage name, >> + if display-linkage-name is on. The default is 20. > > Do we really need this? Why not display the whole name always? With C++, and especially with templates, the linker name can become very long. > >> +@kindex set display-linkage-name @code{on}|@code{off} > > Please remove the on|off part from the index entry. Just the command > is enough. OK. > >> +@cindex list linker symbol names > > Is "linker symbol name" how users would expect this to be called? I > wouldn't. Index entries should use phrases that readers might have in > mind when they are looking for the stuff described in this section. > > I think the correct terminology is "linkage name". The only reference I find using Google to "linkage name" is in DWARF. I don't consider this to be common or widely used terminology. I personally would look for "symbol name", which unfortunately has multiple meanings. I'm happy to use "linkage name", but I don't think that this is a phrase readers might have in mind, unless they had just been reading the DWARF spec. > >> +The default is @code{off}, which means that @value{GDBN} will only >> +display the function name used in the source. When @code{on}, @value{GDBN} >> +will also display the symbol name used by the linker within brackets if it is >> +different from the name in the source. This can be useful with compilers >> +which may prepend characters to a source name, for example, an underscore. >> + >> +This is different from "set print asm-demangle on" which only displays >> +the linkage name for C++ symbols and does not display the source name. > > Isn't it confusing to have 2 subtly different settings that actually > achieve almost the same? How about a single setting, perhaps a > tristate, instead of 2 separate booleans? I don't think it is confusing. The two options are significantly different, both in implementation and definition. Asm-demangle is only mentioned as contrast in information provided. The functionality provided by display-linkage-name is not related to C++. There is no demangling being performed. Trying to combine two unrelated options into one would make a hash of the coding for both. > >> +@kindex set display-linkage-name-len >> +@kindex show display-linkage-name-len >> +@cindex list linker symbol names > ^^^^^^^^^^^^^^^^^^^^^^^^ > Copy/paste error? You already have an identical index entry a few > lines above. Oops. > >> +@item set display-linkage-name-len @var{len} >> +@itemx show display-linkage-name-len @var{len} >> +Set the maximum number of characters of linkage name to display. The >> +@code{show} command displays the current setting. The default is @code{20}. > > I think we don't need this setting. After all, we show source-level > function names in their full glory, right? Source level names are limited in size. Linker names may be thousands of characters long. -- Michael Eager eager@eagercon.com 1960 Park Blvd., Palo Alto, CA 94306 650-325-8077