diff options
Diffstat (limited to 'gdb/c-lang.h')
-rw-r--r-- | gdb/c-lang.h | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/gdb/c-lang.h b/gdb/c-lang.h new file mode 100644 index 00000000000..28486fd73b3 --- /dev/null +++ b/gdb/c-lang.h @@ -0,0 +1,87 @@ +/* C language support definitions for GDB, the GNU debugger. + Copyright 1992, 1996 Free Software Foundation, Inc. + +This file is part of GDB. + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + + +#if !defined (C_LANG_H) +#define C_LANG_H 1 + +#include "value.h" + + +extern int +c_parse PARAMS ((void)); /* Defined in c-exp.y */ + +extern void +c_error PARAMS ((char *)); /* Defined in c-exp.y */ + +extern void /* Defined in c-typeprint.c */ +c_print_type PARAMS ((struct type *, char *, GDB_FILE *, int, int)); + +extern int +c_val_print PARAMS ((struct type *, char *, int, CORE_ADDR, GDB_FILE *, int, int, + int, enum val_prettyprint)); + +extern int +c_value_print PARAMS ((struct value *, GDB_FILE *, int, enum val_prettyprint)); + +/* These are in c-lang.c: */ + +extern void c_printchar PARAMS ((int, GDB_FILE*)); + +extern void c_printstr PARAMS ((GDB_FILE *stream, char *string, + unsigned int length, int width, + int force_ellipses)); + +extern struct type * c_create_fundamental_type PARAMS ((struct objfile*, int)); + +extern struct type ** CONST_PTR (c_builtin_types[]); + +/* These are in c-typeprint.c: */ + +extern void +c_type_print_base PARAMS ((struct type *, GDB_FILE *, int, int)); + +extern void +c_type_print_varspec_prefix PARAMS ((struct type *, GDB_FILE *, int, int)); + +/* These are in cp-valprint.c */ + +extern int vtblprint; /* Controls printing of vtbl's */ + +extern int static_field_print; + +extern void +cp_print_class_member PARAMS ((char *, struct type *, GDB_FILE *, char *)); + +extern void +cp_print_class_method PARAMS ((char *, struct type *, GDB_FILE *)); + +extern void +cp_print_value_fields PARAMS ((struct type *, struct type *, char *, int, CORE_ADDR, + GDB_FILE *, int, int, enum val_prettyprint, + struct type**, int)); + +extern int +cp_is_vtbl_ptr_type PARAMS ((struct type *)); + +extern int +cp_is_vtbl_member PARAMS ((struct type *)); + + +#endif /* !defined (C_LANG_H) */ |