| 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);
|
| }
|
|
|