summaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2008-02-05 15:54:34 +0000
committerJim Blandy <jimb@codesourcery.com>2008-02-05 15:54:34 +0000
commitbba1a8a8654042cb21541ce2dc71a95ac08ea72b (patch)
tree042d915f592a4c21a433fe5b71fec13e906fe85d /gdb
parent0d8782345ef891a3cb7d0f317117241c8a4e59f3 (diff)
downloadgdb-bba1a8a8654042cb21541ce2dc71a95ac08ea72b.tar.gz
* ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
pseudoregister, not an internal error.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/ax-gdb.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8e06da09032..8c16a08d7ce 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2008-02-05 Jim Blandy <jimb@red-bean.com>
+
+ * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
+ pseudoregister, not an internal error.
+
2008-02-04 Vladimir Prus <vladimir@codesourcery.com>
* varobj.c (c_value_of_variable): Use xstrdup.
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index b527663fe01..571c3e7c8e4 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -1607,6 +1607,10 @@ gen_expr (union exp_element **pc, struct agent_expr *ax,
if (reg == -1)
internal_error (__FILE__, __LINE__,
_("Register $%s not available"), name);
+ if (reg >= gdbarch_num_regs (current_gdbarch))
+ error (_("'%s' is a pseudo-register; "
+ "GDB cannot yet trace pseudoregister contents."),
+ name);
value->kind = axs_lvalue_register;
value->u.reg = reg;
value->type = register_type (current_gdbarch, reg);