diff options
author | Daniel Jacobowitz <drow@false.org> | 2006-09-10 15:44:36 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2006-09-10 15:44:36 +0000 |
commit | 4c8508101163caf4d851d20d96dca2d77635b382 (patch) | |
tree | f21fc9b4f0f7ff2ec3e937f3dc4265df9ee704d1 | |
parent | a4697170c74a4b15f7f77910207d7ae4ccd6d39f (diff) | |
download | binutils-4c8508101163caf4d851d20d96dca2d77635b382.zip binutils-4c8508101163caf4d851d20d96dca2d77635b382.tar.gz binutils-4c8508101163caf4d851d20d96dca2d77635b382.tar.bz2 |
* infcall.c (call_function_by_hand): Check for function pointer
types.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/infcall.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ec35909..a652321 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2006-09-10 Daniel Jacobowitz <dan@codesourcery.com> + + * infcall.c (call_function_by_hand): Check for function pointer + types. + 2006-09-10 Andreas Schwab <schwab@suse.de> * m68k-tdep.c (m68k_analyze_register_saves): Fix decoding of diff --git a/gdb/infcall.c b/gdb/infcall.c index 3a1ad6a..9f12896 100644 --- a/gdb/infcall.c +++ b/gdb/infcall.c @@ -336,6 +336,9 @@ call_function_by_hand (struct value *function, int nargs, struct value **args) struct cleanup *caller_regcache_cleanup; struct frame_id dummy_id; + if (TYPE_CODE (ftype) == TYPE_CODE_PTR) + ftype = check_typedef (TYPE_TARGET_TYPE (ftype)); + if (!target_has_execution) noprocess (); |