Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Vladimir Prus <ghost@cs.msu.su>
Cc: gdb@sources.redhat.com
Subject: Re: Filename with "./" in breakpoint command
Date: Mon, 05 Dec 2005 18:39:00 -0000	[thread overview]
Message-ID: <uk6ej9ymu.fsf@gnu.org> (raw)
In-Reply-To: <200512050953.01350.ghost@cs.msu.su> (message from Vladimir Prus 	on Mon, 5 Dec 2005 09:53:00 +0300)

> From: Vladimir Prus <ghost@cs.msu.su>
> Date: Mon, 5 Dec 2005 09:53:00 +0300
> Cc: gdb@sources.redhat.com
> 
> On Saturday 03 December 2005 17:17, Eli Zaretskii wrote:
> > > From: Vladimir Prus <ghost@cs.msu.su>
> > > Date: Sat, 03 Dec 2005 15:55:10 +0300
> > >
> > >         $ ~/build/gdb-cvs/gdb/gdb tracepoints
> > >         GNU gdb 6.4.50.20051121-cvs
> > >         (gdb) b ./tracepoints.cpp:12
> > >         No source file named ./tracepoints.cpp.
> > >         Breakpoint 1 (./tracepoints.cpp:12) pending.
> > >         (gdb) b tracepoints.cpp:12
> > >         Breakpoint 2 at 0x80483c4: file tracepoints.cpp, line 12.
> > >         (gdb) quit
> > >         $ ls tracepoints.cpp
> > >         tracepoints.cpp
> > >
> > > It looks like leading "./" in file name confuses gdb. This "./" thing is
> > > send by KDevelop in some cases.
> >
> > What are the actual source file names recorded in the debug info?
> > Please show us that, and we will be able to reason whether this is a
> > feature, a bug, or a missing feature.
> 
> Here's the DWARF2 entry for the file in question:
> 
> <0><213>: Abbrev Number: 1 (DW_TAG_compile_unit)
>      DW_AT_stmt_list   : 316
>      DW_AT_high_pc     : 0x80483dd
>      DW_AT_low_pc      : 0x8048394
>      DW_AT_name        : tracepoints.cpp
>      
> DW_AT_comp_dir    : /home/ghost/Work/Module/kdevelop3.4/languages/cpp/debugger/tests/tracepoints
>      DW_AT_producer    : GNU C++ 3.3.5 (Debian 1:3.3.5-13)
>      DW_AT_language    : 4      (C++)

Thanks.

Looking at symtab.c:lookup_symtab, I see that we simply don't try to
look for anything but the exact match when given a relative file name
such as "./tracepoints.cpp".

I'm not sure this is a bug; the idea of asking the user to chdir into
the right directory and then use "./foo" to distinguish between
several namesake files doesn't sound like a very user-friendly design,
not really a big improvement over asking them to specify a full
absolute file name of the source (in which case it does work for you,
does it?).

Perhaps we should modify the lookup_symtab to not return immediately
after finding the first matching tail (near line 174 in symtab.c), but
instead see if there's more than one match, and if so, ask the user
which one she wants.  What do you think?


  reply	other threads:[~2005-12-05 18:39 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-03 12:58 Vladimir Prus
2005-12-03 14:17 ` Eli Zaretskii
2005-12-03 14:22   ` Bob Rossi
2005-12-03 14:55     ` Eli Zaretskii
2005-12-03 15:01       ` Bob Rossi
2005-12-05  6:53   ` Vladimir Prus
2005-12-05 18:39     ` Eli Zaretskii [this message]
2005-12-05 18:56       ` Daniel Jacobowitz
2005-12-06  4:27         ` Eli Zaretskii
2005-12-06  4:55           ` Daniel Jacobowitz
2005-12-06 11:56             ` Bob Rossi
2005-12-06 14:01               ` Joel Brobecker
2005-12-06 14:26                 ` Andrew STUBBS
2005-12-06 20:13               ` Eli Zaretskii
2005-12-06 20:11             ` Eli Zaretskii
2005-12-06 20:17               ` Daniel Jacobowitz
2005-12-06 21:02                 ` Eli Zaretskii
2005-12-06 21:09                   ` Daniel Jacobowitz
2005-12-06 22:32                     ` Eli Zaretskii
2005-12-07  7:49                     ` Vladimir Prus
2005-12-07 14:51                       ` Daniel Jacobowitz
2005-12-07 16:46                         ` Vladimir Prus
2005-12-08 20:53                           ` Paul Gilliam
2005-12-03 14:19 ` Bob Rossi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=uk6ej9ymu.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=gdb@sources.redhat.com \
    --cc=ghost@cs.msu.su \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox