This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: [MI] -file-list-exec-source-files
- From: Bob Rossi <bob at brasko dot net>
- To: gdb at sources dot redhat dot com
- Date: Sun, 15 Feb 2004 20:26:53 -0500
- Subject: Re: [MI] -file-list-exec-source-files
- References: <20040213012946.GB4476@white>
What do I have to do to get some feedback on this subject?
On Thu, Feb 12, 2004 at 08:29:46PM -0500, Bob Rossi wrote:
> Hi,
>
> I have been trying to implement -file-list-exec-source-files for some
> time now. So far the command outputs the filename and fullname for each
> symtab and psymtab. The fullname part only get's output if GDB knows
> what it is.
>
> The problem is, I recently discovered that the fullname can only be
> retrieved from the symtab, it can't be retrieved with just a psymtab.
> The reason is because the symtab has a 'dirname' member, which is
> necessary in finding the absolute path to a source file. Obviously I
> can't read in all the symtabs just to get the fullname for each psymtab.
>
> So, I have 2 solutions,
> 1. Modify the psytmab to also have the 'dirname'. Which seems
> difficult. Although I do think this is the best solution. (Not knowing
> to much about psymtabs and symtabs)
>
> 2. Change -file-list-exec-source-file to receive an optional filename,
> which when doing this causes GDB to read in the symtab associated with
> the psymtab. Then the fullname can be retrieved.
>
> I believe option 2 is how the CLI works.
> If you do
> list foo.c:1
> info source
> I am sure this reads in the symtab for foo.c and then it knows how to
> get the fullpath. I don't really like this solution that much, so I
> think it would be better to add the 'dirname' to the psymtab.
>
> Any suggestions?
> If your interested in poking around to see where symtab->dirname gets
> set, look around buildsym.c:975. Does anyone know if there would be an
> easy way into getting dirname set into the psymtab?
>
> Thanks,
> Bob Rossi