1 /* Perform an inferior function call, for GDB, the GNU debugger. 2 3 Copyright (C) 2003-2013 Free Software Foundation, Inc. 4 5 This file is part of GDB. 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; either version 3 of the License, or 10 (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19 20 #ifndef INFCALL_H 21 #define INFCALL_H 22 23 struct value; 24 struct type; 25 26 extern CORE_ADDR find_function_addr (struct value *function, 27 struct type **retval_type); 28 29 /* Perform a function call in the inferior. 30 31 ARGS is a vector of values of arguments (NARGS of them). FUNCTION 32 is a value, the function to be called. Returns a value 33 representing what the function returned. May fail to return, if a 34 breakpoint or signal is hit during the execution of the function. 35 36 ARGS is modified to contain coerced values. */ 37 38 extern struct value *call_function_by_hand (struct value *function, int nargs, 39 struct value **args); 40 41 #endif 42