This is the mail archive of the
gdb-prs@sourceware.org
mailing list for the GDB project.
Re: gdb/2237: "set" command refuses to set a register
- From: Daniel Jacobowitz <drow at false dot org>
- To: nobody at sources dot redhat dot com
- Cc: gdb-prs at sources dot redhat dot com,
- Date: 5 Mar 2007 13:08:03 -0000
- Subject: Re: gdb/2237: "set" command refuses to set a register
- Reply-to: Daniel Jacobowitz <drow at false dot org>
The following reply was made to PR gdb/2237; it has been noted by GNATS.
From: Daniel Jacobowitz <drow@false.org>
To: Stephen Ma <stephenma@telus.net>
Cc: gdb-gnats@sources.redhat.com
Subject: Re: gdb/2237: "set" command refuses to set a register
Date: Mon, 5 Mar 2007 08:03:47 -0500
On Sat, Mar 03, 2007 at 06:36:23PM -0000, Stephen Ma wrote:
> Sometimes the "set" command refuses to set a machine register, complaining that "Value being assigned to is no longer active". This refusal presumably has something to do with inactive register variables in C -- but my program is pure assembler.
No, this has nothing to do with C register variables. It's a known
bug in GDB: we use the same representation for "no stack frame is
active" as for "a confusing frame we can not backtrace past is
active".
You can find some discussion of it in the mailing list archives for
gdb-patches; unfortunately no one has fixed it yet. If you use a
larger test program, where you are in a function called from _start
when you try to set registers, GDB should work better. Thanks for the
report.
--
Daniel Jacobowitz
CodeSourcery