summaryrefslogtreecommitdiff
path: root/gdb/objc-lang.h
diff options
context:
space:
mode:
authorMichael Snyder <msnyder@specifix.com>2002-09-18 23:29:20 +0000
committerMichael Snyder <msnyder@specifix.com>2002-09-18 23:29:20 +0000
commit483c27c1b42856a2cba96c0ac8746941529f711d (patch)
treeae49e2bc37a30a821108f28ad84da018885a3534 /gdb/objc-lang.h
parentaf5802ba91585f3c77c120fffdde0a746be5a5ea (diff)
downloadgdb-483c27c1b42856a2cba96c0ac8746941529f711d.tar.gz
2002-09-18 Michael Snyder <msnyder@redhat.com>
* objc-lang.c: New file, support for Objective-C. Preliminary check-in, not yet integrated into gdb. * objc-lang.h: New file. * objc-exp.y: New file.
Diffstat (limited to 'gdb/objc-lang.h')
-rw-r--r--gdb/objc-lang.h61
1 files changed, 61 insertions, 0 deletions
diff --git a/gdb/objc-lang.h b/gdb/objc-lang.h
new file mode 100644
index 00000000000..7141e50edd1
--- /dev/null
+++ b/gdb/objc-lang.h
@@ -0,0 +1,61 @@
+/* Objective C language support definitions for GDB, the GNU debugger.
+ Copyright 1992 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. */
+
+#ifdef __STDC__ /* Forward decls for prototypes */
+struct value;
+#endif
+
+extern int
+objc_parse PARAMS ((void)); /* Defined in c-exp.y */
+
+extern void
+objc_error PARAMS ((char *)); /* Defined in c-exp.y */
+
+extern void /* Defined in c-typeprint.c */
+c_print_type PARAMS ((struct type *, char *, struct ui_file *, int, int));
+
+extern int
+c_val_print PARAMS ((struct type *, char *, int, CORE_ADDR, struct ui_file *, int, int,
+ int, enum val_prettyprint));
+
+extern int
+c_value_print PARAMS ((struct value *, struct ui_file *, int,
+ enum val_prettyprint));
+
+extern CORE_ADDR lookup_objc_class PARAMS ((char *classname));
+extern int lookup_child_selector PARAMS ((char *methodname));
+
+char *objc_demangle PARAMS ((const char *mangled));
+
+int find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc);
+
+char *parse_selector
+PARAMS ((char *method, char **selector));
+
+char *parse_method
+PARAMS ((char *method, char *type, char **class, char **category, char **selector));
+
+void find_methods
+PARAMS ((struct symtab *symtab,
+ char type, const char *class, const char *category, const char *selector,
+ struct symbol **syms, unsigned int *nsym, unsigned int *ndebug));
+
+char *find_imps
+PARAMS ((struct symtab *symtab, struct block *block,
+ char *method, struct symbol **syms, unsigned int *nsym, unsigned int *ndebug));