diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/values.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f66137b..08cbb63 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2003-04-17 Elena Zannoni <ezannoni@redhat.com> + + * values.c (value_being_returned): Don't fetch the return + value if the return type is void. + 2003-04-17 Jeff Johnston <jjohnstn@redhat.com> * thread-db.c: Reindented. diff --git a/gdb/values.c b/gdb/values.c index 8b1d013..88c6a61 100644 --- a/gdb/values.c +++ b/gdb/values.c @@ -1240,7 +1240,9 @@ value_being_returned (struct type *valtype, struct regcache *retbuf, val = allocate_value (valtype); CHECK_TYPEDEF (valtype); - EXTRACT_RETURN_VALUE (valtype, retbuf, VALUE_CONTENTS_RAW (val)); + /* If the function returns void, don't bother fetching the return value. */ + if (TYPE_CODE (valtype) != TYPE_CODE_VOID) + EXTRACT_RETURN_VALUE (valtype, retbuf, VALUE_CONTENTS_RAW (val)); return val; } |