From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 38808 invoked by alias); 12 Sep 2019 17:47:57 -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 38797 invoked by uid 89); 12 Sep 2019 17:47:57 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: =?ISO-8859-1?Q?No, score=-16.5 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 spammy=HTo:U*tromey, version=c2, testcase.c, HX-Received:7088?= X-HELO: pb-smtp2.pobox.com Received: from pb-smtp2.pobox.com (HELO pb-smtp2.pobox.com) (64.147.108.71) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 12 Sep 2019 17:47:55 +0000 Received: from pb-smtp2.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 90A7A24C30 for ; Thu, 12 Sep 2019 13:47:53 -0400 (EDT) (envelope-from jonah@kichwacoders.com) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=mime-version :references:in-reply-to:from:date:message-id:subject:to:cc :content-type; s=sasl; bh=oUbLbzjmREQ+IB8lQIzFxDFE0dc=; b=hZqIw1 O/b5Vi9FMw1W1L6REayxVkCpH34JpJspH97o+X032RvZQaIHHOnhQjxBnsRYZI4X K+2L2LbI3FYnh77EtUccccm6sgGa+2ZuC6PaboofyqWg8hsZEjlfUgdpntAcrgNr ygahx8XEyN2H0fmPRQRDO0pizn1iM64ODbAjA= Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 883AE24C2F for ; Thu, 12 Sep 2019 13:47:53 -0400 (EDT) (envelope-from jonah@kichwacoders.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=kichwacoders.com; h=mime-version:references:in-reply-to:from:date:message-id:subject:to:cc:content-type; s=mesmtp; bh=F1C2v4s3ykfEwjxeCaso+/0JSfG7SxWV6+bs1jnl0Zs=; b=aR9Kflv9YDrNFCYfkq15+qAedu+K08fq2B8hcOHx3XN5EJPP5NjY/CkB4zwYJlg5Lbe2xXVLO3A1rMcXGC9FMPwX/2PbVdHEkc4F6B7hgix4BBiD+kaKeIgQq/2A5LeOalWyl3bZ5AUk83Osrjy1ZrlovLxf4/sev/o65JQlK4k= Received: from mail-qt1-f182.google.com (unknown [209.85.160.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id 0EFF824C2E for ; Thu, 12 Sep 2019 13:47:53 -0400 (EDT) (envelope-from jonah@kichwacoders.com) Received: by mail-qt1-f182.google.com with SMTP id l22so30571866qtp.10 for ; Thu, 12 Sep 2019 10:47:53 -0700 (PDT) MIME-Version: 1.0 References: <20190530170315.9938-1-tromey@adacore.com> <87zhmkme75.fsf@tromey.com> In-Reply-To: From: Jonah Graham Date: Thu, 12 Sep 2019 17:47:00 -0000 Message-ID: Subject: Re: [RFC] Only compute realpath when basenames_may_differ is set To: Tom Tromey Cc: gdb-patches@sourceware.org X-Pobox-Relay-ID: 71F51218-D585-11E9-BF46-D1361DBA3BAF-18936988!pb-smtp2.pobox.com Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-09/txt/msg00222.txt.bz2 bump. On Mon, 19 Aug 2019 at 15:25, Jonah Graham wrote: > > On Fri, 14 Jun 2019 at 10:31, Tom Tromey wrote: > >> I'm checking this in now. >> >> Tom >> > > Hi Tom, > > This causes an error with Eclipse CDT's default use case. In CDT the > compile lines are basically "gcc -g -c -o file.o ../file.c" with the pwd > being a directory under the source: > > root/ > file.c > Debug/ > Makefile > file.o > program.elf > > I have modified the fullname.exp test with a testcase that shows the > failure, see the patch below. Here is also a short trace of a session > showing the problem: > > /tmp $ mkdir test && cd test > /tmp/test $ echo 'int main() {}' > testcase.c > /tmp/test $ mkdir build && cd build > /tmp/test/build $ gcc -g ../testcase.c -o testcase > /tmp/test/build $ gdb -q testcase > Reading symbols from testcase...done. > (gdb) b /tmp/test/testcase.c:1 > Breakpoint 1 at 0x603: file ../testcase.c, line 1. > (gdb) quit > /tmp/test/build $ /scratch/gdb/binutils-gdb/gdb/gdb -q testcase > Reading symbols from testcase... > (gdb) b /tmp/test/testcase.c:1 > No source file named /tmp/test/testcase.c. > Make breakpoint pending on future shared library load? (y or [n]) n > (gdb) quit > /tmp/test/build $ gdb --version | head -1 > GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git > /tmp/test/build $ /scratch/gdb/binutils-gdb/gdb/gdb --version | head -1 > GNU gdb (GDB) 8.3.50.20190819-git > > Thanks, > Jonah > > --- > gdb/testsuite/gdb.base/fullname.exp | 30 +++++++++++++++++++++++++++++ > 1 file changed, 30 insertions(+) > > diff --git a/gdb/testsuite/gdb.base/fullname.exp > b/gdb/testsuite/gdb.base/fullname.exp > index 07d6245d15..e306400b2b 100644 > --- a/gdb/testsuite/gdb.base/fullname.exp > +++ b/gdb/testsuite/gdb.base/fullname.exp > @@ -96,6 +96,36 @@ if { [gdb_breakpoint [standard_output_file > tmp-${srcfile}]:${line} {no-message}] > fail $msg > } > > +# Build the test executable using a relative path with /../ . > +file mkdir [standard_output_file ""]/build > +with_cwd [standard_output_file ""]/build { > + if { [gdb_compile ../tmp-${srcfile} \ > + "${binfile}" executable {debug}] != "" } { > + return -1 > + } > + > + gdb_exit > + gdb_start > + gdb_load ${binfile} > + > + set msg "set breakpoint by full path before loading symbols - built > relative with .." > + if { [gdb_breakpoint [standard_output_file tmp-${srcfile}]:${line} > {no-message}] != 0 } { > + pass $msg > + } else { > + fail $msg > + } > + > + gdb_test "break main" \ > + "Breakpoint.*at.*line.*" "set breakpoint at main - built relative > with .." > + > + set msg "set breakpoint by full path after loading symbols - built > relative with .." > + if { [gdb_breakpoint [standard_output_file tmp-${srcfile}]:${line} > {no-message}] != 0 } { > + pass $msg > + } else { > + fail $msg > + } > +} > + > # Build the test executable using relative paths not relative to the > directory > # we'll run GDB from. > > -- > 2.22.0 >