Index: gdb/infcall.c |
diff --git a/gdb/infcall.c b/gdb/infcall.c |
index 1b2c3d6eb4c63e1e17bbaccc87500bc30dd20499..212997f064a34e57fcf3984d5de08e7ce4e1e2ec 100644 |
--- a/gdb/infcall.c |
+++ b/gdb/infcall.c |
@@ -1,6 +1,6 @@ |
/* Perform an inferior function call, for GDB, the GNU debugger. |
- Copyright (C) 1986-2012 Free Software Foundation, Inc. |
+ Copyright (C) 1986-2013 Free Software Foundation, Inc. |
This file is part of GDB. |
@@ -30,7 +30,7 @@ |
#include "objfiles.h" |
#include "gdbcmd.h" |
#include "command.h" |
-#include "gdb_string.h" |
+#include <string.h> |
#include "infcall.h" |
#include "dummy-frame.h" |
#include "ada-lang.h" |
@@ -213,7 +213,6 @@ value_arg_coerce (struct gdbarch *gdbarch, struct value *arg, |
case TYPE_CODE_SET: |
case TYPE_CODE_RANGE: |
case TYPE_CODE_STRING: |
- case TYPE_CODE_BITSTRING: |
case TYPE_CODE_ERROR: |
case TYPE_CODE_MEMBERPTR: |
case TYPE_CODE_METHODPTR: |
@@ -356,10 +355,10 @@ get_function_name (CORE_ADDR funaddr, char *buf, int buf_size) |
{ |
/* Try the minimal symbols. */ |
- struct minimal_symbol *msymbol = lookup_minimal_symbol_by_pc (funaddr); |
+ struct bound_minimal_symbol msymbol = lookup_minimal_symbol_by_pc (funaddr); |
- if (msymbol) |
- return SYMBOL_PRINT_NAME (msymbol); |
+ if (msymbol.minsym) |
+ return SYMBOL_PRINT_NAME (msymbol.minsym); |
} |
{ |
@@ -709,13 +708,11 @@ call_function_by_hand (struct value *function, int nargs, struct value **args) |
if (struct_return || hidden_first_param_p) |
{ |
- int len = TYPE_LENGTH (values_type); |
- |
if (gdbarch_inner_than (gdbarch, 1, 2)) |
{ |
/* Stack grows downward. Align STRUCT_ADDR and SP after |
making space for the return value. */ |
- sp -= len; |
+ sp -= TYPE_LENGTH (values_type); |
if (gdbarch_frame_align_p (gdbarch)) |
sp = gdbarch_frame_align (gdbarch, sp); |
struct_addr = sp; |
@@ -727,7 +724,7 @@ call_function_by_hand (struct value *function, int nargs, struct value **args) |
if (gdbarch_frame_align_p (gdbarch)) |
sp = gdbarch_frame_align (gdbarch, sp); |
struct_addr = sp; |
- sp += len; |
+ sp += TYPE_LENGTH (values_type); |
if (gdbarch_frame_align_p (gdbarch)) |
sp = gdbarch_frame_align (gdbarch, sp); |
} |