diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9eb949bc17..611c900e0e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2012-03-08 Luis Machado + + * ax-gdb.c (gen_fetch): Fail gracefully and use error instead + of internal error for unknown/unsupported types. + 2012-03-08 Jan Kratochvil Fix CU relative vs. absolute DIE offsets. diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c index 37882be0a5..cc057f89a0 100644 --- a/gdb/ax-gdb.c +++ b/gdb/ax-gdb.c @@ -553,12 +553,11 @@ gen_fetch (struct agent_expr *ax, struct type *type) break; default: - /* Either our caller shouldn't have asked us to dereference that - pointer (other code's fault), or we're not implementing - something we should be (this code's fault). In any case, - it's a bug the user shouldn't see. */ - internal_error (__FILE__, __LINE__, - _("gen_fetch: bad type code")); + /* Our caller requested us to dereference a pointer from an unsupported + type. Error out and give callers a chance to handle the failure + gracefully. */ + error (_("gen_fetch: Unsupported type code `%s'."), + TYPE_NAME (type)); } }