From 4c8508101163caf4d851d20d96dca2d77635b382 Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Sun, 10 Sep 2006 15:44:36 +0000 Subject: [PATCH] * infcall.c (call_function_by_hand): Check for function pointer types. --- gdb/ChangeLog | 5 +++++ gdb/infcall.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ec35909c4eb..a65232186dc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2006-09-10 Daniel Jacobowitz + + * infcall.c (call_function_by_hand): Check for function pointer + types. + 2006-09-10 Andreas Schwab * m68k-tdep.c (m68k_analyze_register_saves): Fix decoding of diff --git a/gdb/infcall.c b/gdb/infcall.c index 3a1ad6aba7e..9f12896102c 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 (); -- 2.30.2