From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31857 invoked by alias); 28 Mar 2006 23:01:22 -0000 Received: (qmail 31849 invoked by uid 22791); 28 Mar 2006 23:01:21 -0000 X-Spam-Check-By: sourceware.org Received: from eastrmmtao06.cox.net (HELO eastrmmtao06.cox.net) (68.230.240.33) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 28 Mar 2006 23:01:21 +0000 Received: from localhost.localdomain ([68.9.66.48]) by eastrmmtao06.cox.net (InterMail vM.6.01.05.02 201-2131-123-102-20050715) with ESMTP id <20060328230117.POLX9108.eastrmmtao06.cox.net@localhost.localdomain>; Tue, 28 Mar 2006 18:01:17 -0500 Received: from bob by localhost.localdomain with local (Exim 4.52) id 1FONBh-0004RP-Az; Tue, 28 Mar 2006 18:01:21 -0500 Date: Wed, 29 Mar 2006 01:23:00 -0000 From: Bob Rossi To: Nick Roberts Cc: gdb@sources.redhat.com Subject: Re: GDB command "info source" Message-ID: <20060328230121.GG9767@brasko.net> Mail-Followup-To: Nick Roberts , gdb@sources.redhat.com References: <17449.45511.144783.549259@kahikatea.snap.net.nz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <17449.45511.144783.549259@kahikatea.snap.net.nz> User-Agent: Mutt/1.5.9i X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-03/txt/msg00194.txt.bz2 On Wed, Mar 29, 2006 at 09:59:35AM +1200, Nick Roberts wrote: > > Starting GNU gdb 6.4.50.20060325-cvs, I get the following: > > nickrob/24 src/gdb/gdb -q myprog > Using host libthread_db library "/lib/tls/libthread_db.so.1". > > (gdb) help info source > Information about the current source file. > > (gdb) info source > No current source file. > > (gdb) b 10 > Breakpoint 1 at 0x8048498: file myprog.c, line 10. > > So GDB seems to assume myprog.c is current, but doesn't share that information > with the user until now... > > (gdb) info source > Current source file is myprog.c > Compilation directory is /home/nickrob > Source language is c. > Compiled with DWARF 2 debugging format. > Includes preprocessor macro info. > > > In contrast using MI, GDB does yield this information immediately: > > nickrob/25 src/gdb/gdb -q -i=mi myprog > ~"Using host libthread_db library \"/lib/tls/libthread_db.so.1\".\n" > (gdb) > -file-list-exec-source-file > ^done,line="58",file="myprog.c",fullname="/home/nickrob/myprog.c" > (gdb) Yes, that's because of this line mi-cmd-file.c:72 set_default_source_symtab_and_line(); It's a special case for finding the default file. When using annotate 2, I do 'info line' followed by 'info source'. > Shouldn't "info source" do the same? > > About -file-list-exec-source-file the manual says: > > There's no GDB command which directly corresponds to this one. > > but apart from this difference, they seem pretty similar. Also > -file-list-exec-source-files could be likened to "info sources". > > WDYT? They are similar but not the same. So I don't know. Bob Rossi