From: Pedro Alves Date: Thu, 11 Feb 2010 18:24:57 +0000 (+0000) Subject: * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers. X-Git-Tag: gdb_7_1-2010-02-18-branchpoint~100 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b1028c8e8f281d1072e1fd89d8083cb960598a1a;p=thirdparty%2Fbinutils-gdb.git * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index acd65e83c84..ddf66153dbf 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2010-02-11 Pedro Alves + + * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers. + 2010-02-11 Vladimir Prus * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c index 5776bb0ce6d..eb532384ca6 100644 --- a/gdb/ax-gdb.c +++ b/gdb/ax-gdb.c @@ -1082,6 +1082,8 @@ gen_deref (struct agent_expr *ax, struct axs_value *value) T" to "T", and mark the value as an lvalue in memory. Leave it to the consumer to actually dereference it. */ value->type = check_typedef (TYPE_TARGET_TYPE (value->type)); + if (TYPE_CODE (value->type) == TYPE_CODE_VOID) + error (_("Attempt to dereference a generic pointer.")); value->kind = ((TYPE_CODE (value->type) == TYPE_CODE_FUNC) ? axs_rvalue : axs_lvalue_memory); }