1 /* C language support definitions for GDB, the GNU debugger. 2 Copyright 1992 Free Software Foundation, Inc. 3 4 This file is part of GDB. 5 6 This program is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 2 of the License, or 9 (at your option) any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program; if not, write to the Free Software 18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 19 20 #ifdef __STDC__ /* Forward decls for prototypes */ 21 struct value; 22 #endif 23 24 extern int 25 c_parse PARAMS ((void)); /* Defined in c-exp.y */ 26 27 extern void 28 c_error PARAMS ((char *)); /* Defined in c-exp.y */ 29 30 extern void /* Defined in c-typeprint.c */ 31 c_print_type PARAMS ((struct type *, char *, GDB_FILE *, int, int)); 32 33 extern int 34 c_val_print PARAMS ((struct type *, char *, CORE_ADDR, GDB_FILE *, int, int, 35 int, enum val_prettyprint)); 36 37 extern int 38 c_value_print PARAMS ((struct value *, GDB_FILE *, int, enum val_prettyprint)); 39 40 /* These are in c-lang.c: */ 41 42 extern void c_printchar PARAMS ((int, GDB_FILE*)); 43 44 extern void c_printstr PARAMS ((GDB_FILE *, char *, unsigned int, int)); 45 46 extern struct type * c_create_fundamental_type PARAMS ((struct objfile*, int)); 47 48 extern struct type ** CONST_PTR (c_builtin_types[]); 49 50 /* These are in c-typeprint.c: */ 51 52 extern void 53 c_type_print_base PARAMS ((struct type *, GDB_FILE *, int, int)); 54 55 extern void 56 c_type_print_varspec_prefix PARAMS ((struct type *, GDB_FILE *, int, int)); 57 58 extern void 59 cp_type_print_method_args PARAMS ((struct type **, char *, char *, int, 60 GDB_FILE *)); 61 /* These are in cp-valprint.c */ 62 63 extern void 64 cp_type_print_method_args PARAMS ((struct type **, char *, char *, int, 65 GDB_FILE *)); 66 67 extern int vtblprint; /* Controls printing of vtbl's */ 68 69 extern void 70 cp_print_class_member PARAMS ((char *, struct type *, GDB_FILE *, char *)); 71 72 extern void 73 cp_print_class_method PARAMS ((char *, struct type *, GDB_FILE *)); 74 75 extern void 76 cp_print_value_fields PARAMS ((struct type *, char *, CORE_ADDR, 77 GDB_FILE *, int, int, enum val_prettyprint, 78 struct type**, int)); 79 80 extern int 81 cp_is_vtbl_ptr_type PARAMS ((struct type *)); 82 83 extern int 84 cp_is_vtbl_member PARAMS ((struct type *)); 85