From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20492 invoked by alias); 25 Feb 2004 20:40:47 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 20297 invoked from network); 25 Feb 2004 20:40:43 -0000 Received: from unknown (HELO gabriel.localdomain) (64.142.25.39) by sources.redhat.com with SMTP; 25 Feb 2004 20:40:43 -0000 Received: from p by gabriel.localdomain with local (Exim 3.36 #1 (Debian)) id 1Aw5ju-0003l3-00 for ; Wed, 25 Feb 2004 12:34:42 -0800 Date: Wed, 25 Feb 2004 20:40:00 -0000 To: gdb@sources.redhat.com Subject: Re: gdb with intel fortran compiler Message-ID: <20040225203442.GA13856@pete.localdomain> References: <20040225200653.GA13223@pete.localdomain> <20040225202622.GA22393@nevyn.them.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040225202622.GA22393@nevyn.them.org> User-Agent: Mutt/1.5.5.1+cvs20040105i From: Peter Jay Salzman X-SW-Source: 2004-02/txt/msg00374.txt.bz2 On Wed 25 Feb 04, 3:26 PM, Daniel Jacobowitz said: > On Wed, Feb 25, 2004 at 12:06:53PM -0800, Peter Jay Salzman wrote: > > I can't "list out of the box: > > > > p@satan$ gdb a.out > > (gdb) list > > 1 ../sysdeps/i386/elf/start.S: No such file or directory. > > in ../sysdeps/i386/elf/start.S Hi Dan, > This is typical. It happens for a lot of non-Fortran programs also. > start.S comes from glibc and is linked into every program. Is there a short explanation of what this is and why it shows up? It seems to be surpressed when using the idb (Intel's debugger) which, of course, is less desirable than using my beloved GDB. Can you point me to a document that talks about what this is? If not, no worries. I just like learning new things. :) > > GDB doesn't like this expression in a conditional breakpoint: > > > > (gdb) break 11 if i == 12 > > A parse error in expression, near `= 12'. > > > > but it does like this one: > > > > (gdb) break 11 if i = 12 > > Breakpoint 2 at 0x8049da9: file test.f90, line 11. > > Are you sure it didn't modify the variable? :) yeah: p@satan$ gdb a.out (gdb) break hello_world Breakpoint 1 at 0x8049d55: file test.f90, line 5. (gdb) run Starting program: /home/p/a.out [New Thread 16384 (LWP 20012)] [Switching to Thread 16384 (LWP 20012)] Breakpoint 1, hello_world () at test.f90:5 5 do i=1, 20 Current language: auto; currently fortran (gdb) print i $1 = 0 (gdb) break 12 if i = 20 Breakpoint 2 at 0x8049db6: file test.f90, line 12. (gdb) print i $2 = 0 (gdb) cont Continuing. Breakpoint 2, hello_world () at test.f90:12 12 print *, "element ", i, ": ", array(i) (gdb) print i $3 = 20 GDB definitely sees the "=" as being a test, not assignment. > > Is this a GDB bug? Is there a way to make expressions work the way they > > should work when debugging a F90 executable? > > The only thing you're missing is that GDB does not support F90. No > one's given serious time to the Fortran support in a few years now, > either. So it's assuming that Fortran -> Fortran77, at a guess. Heh, OK. That's too bad. I'm a C programmer, and love C, but I also have a secret love affair with F90 (which I don't want anybody to know about). ;-) Pete -- Make everything as simple as possible, but no simpler. -- Albert Einstein GPG Instructions: http://www.dirac.org/linux/gpg GPG Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D