From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25845 invoked by alias); 16 Nov 2011 14:54:28 -0000 Received: (qmail 25830 invoked by uid 22791); 16 Nov 2011 14:54:27 -0000 X-SWARE-Spam-Status: No, hits=-7.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 16 Nov 2011 14:54:15 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id pAGEsEKg001120 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 16 Nov 2011 09:54:14 -0500 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id pAGEsDJ4010339; Wed, 16 Nov 2011 09:54:14 -0500 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id pAGEsCGb021737; Wed, 16 Nov 2011 09:54:12 -0500 From: Tom Tromey To: Doug Evans Cc: Jan Kratochvil , gdb-patches@sourceware.org Subject: Re: RFA: implement ambiguous linespec proposal References: <20111028221459.GA28467@host1.jankratochvil.net> <20111104074543.GA13839@host1.jankratochvil.net> Date: Wed, 16 Nov 2011 14:54:00 -0000 In-Reply-To: (Doug Evans's message of "Tue, 15 Nov 2011 21:22:30 -0800") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.90 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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 X-SW-Source: 2011-11/txt/msg00427.txt.bz2 >>>>> "Doug" == Doug Evans writes: Doug> Another question while we're cleaning up linespecs, if I may. Doug> The docs have this: Doug> @item '@var{filename}'::@var{funcaddr} Doug> Like @var{funcaddr} above, but also specifies the name of the source Doug> file explicitly. This is useful if the name of the function does not Doug> specify the function unambiguously, e.g., if there are several Doug> functions with identical names in different source files. Doug> Is the double colon, ::, a typo? I've only ever seen filename Doug> delimited with a single colon. This form is only valid for expressions, that is, if you type break *'file.c'::function This is a syntax extension that gdb provides. See the 'block' production in c-exp.y. Doug> I'm hoping we can trivially decide that a file name is present by Doug> seeing a single colon. In general I agree, but there are some corner cases to consider. There's the easy(-ish) corner case of DOS file names: break c:/file.c:function There's also an Objective C case where a trailing ":" is part of the function name. I forget the exact syntax, maybe it can only appear in brackets: break +[method:] Anyway, like I said in the previous thread, in my view, gdb should require quoting for all unusual file names. We should try to be compatible, but we don't have to try too awfully hard, since a lot of things never worked anyway. Tom