Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Nick Roberts <nickrob@snap.net.nz>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb@sources.redhat.com
Subject: Re: info locals gives error
Date: Sun, 02 Apr 2006 06:59:00 -0000	[thread overview]
Message-ID: <17455.30279.765187.851779@farnswood.snap.net.nz> (raw)
In-Reply-To: <uzmj79gcf.fsf@gnu.org>

 > > /* -*- compile-command: "cc -g -o simple simple.c"; -*- */
 > > 
 > > main(int argc, char **argv) {
 > >   int i;
 > >   i = 1;
 > > }
 > > [...]
 > >   (gdb) b main
 > >   Breakpoint 1 at 0x8048354: file simple.c, line 3.
 > >   (gdb) r
 > >   Starting program: /home/nickrob/simple
 > >   Reading symbols from shared object read from target memory...done.
 > >   Loaded system supplied DSO at 0x80e000
 > >   
 > >   Breakpoint 1, main () at simple.c:3
 > >   3       main(int argc, char **argv) {
 > >   (gdb) info locals
 > >   argc = Cannot access memory at address 0x0
 > 
 > I cannot reproduce this with GDB 6.4 and GCC versions 3.3.5 and 4.0.0
 > on a Debian box.  I also tried GCC 3.4.2 and GDB 6.3 on a Windows box.
 > What I get in all of those cases is some arbitrary garbage, not
 > "cannot access".

With gcc --version
gcc (GCC) 3.2 (Mandrake Linux 9.0 3.2-1mdk)

  (gdb) info args
  argc = 1
  argv = (char **) 0xbffff7a4

With gcc --version
gcc (GCC) 4.1.0 20060304 (Red Hat 4.1.0-3)

  (gdb) info args
  No arguments.


readelf -wi simple (for GCC 3.2) gives (about 1200 lines of output):

 ...
 <2><c6d>: Abbrev Number: 3 (DW_TAG_formal_parameter)
   DW_AT_name        : (indirect string, offset: 0x98e): argc 
     DW_AT_decl_file   : 1      
     DW_AT_decl_line   : 3      
     DW_AT_type        : <c96>  
     DW_AT_location    : 2 byte block: 91 8     (DW_OP_fbreg: 8; )
 <2><c7b>: Abbrev Number: 3 (DW_TAG_formal_parameter)
     DW_AT_name        : (indirect string, offset: 0x993): argv 
     DW_AT_decl_file   : 1      
     DW_AT_decl_line   : 3      
     DW_AT_type        : <c9d>  
     DW_AT_location    : 2 byte block: 91 c     (DW_OP_fbreg: 12; )
 <2><c89>: Abbrev Number: 4 (DW_TAG_variable)
     DW_AT_name        : i      
     DW_AT_decl_file   : 1      
     DW_AT_decl_line   : 4      
     DW_AT_type        : <c96>  
     DW_AT_location    : 2 byte block: 91 7c    (DW_OP_fbreg: -4; )
     ...

readelf -wi simple (for GCC 4.1.0) gives (about 60 lines of output):

 ...
 <2><75>: Abbrev Number: 3 (DW_TAG_formal_parameter)
     DW_AT_name        : argc	
     DW_AT_decl_file   : 1	
     DW_AT_decl_line   : 3	
     DW_AT_type        : <9a>	
 <2><81>: Abbrev Number: 3 (DW_TAG_formal_parameter)
     DW_AT_name        : argv	
     DW_AT_decl_file   : 1	
     DW_AT_decl_line   : 3	
     DW_AT_type        : <a1>	
 <2><8d>: Abbrev Number: 4 (DW_TAG_variable)
     DW_AT_name        : i	
     DW_AT_decl_file   : 1	
     DW_AT_decl_line   : 4	
     DW_AT_type        : <9a>	
     DW_AT_location    : 2 byte block: 91 70 	(DW_OP_fbreg: -16)
     ...

I presume something is up with GCC 4.1.0 (which apparently is a part of a
separate series to 4.0).

Nick


      reply	other threads:[~2006-04-02  6:59 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-31  6:57 Nick Roberts
2006-03-31 13:53 ` Eli Zaretskii
2006-04-02  6:59   ` Nick Roberts [this message]

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=17455.30279.765187.851779@farnswood.snap.net.nz \
    --to=nickrob@snap.net.nz \
    --cc=eliz@gnu.org \
    --cc=gdb@sources.redhat.com \
    /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