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