X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fobjc-lang.h;h=b2247433dd1379e4c1bf45bcd8460262ba80206b;hb=refs%2Fheads%2Fconcurrent-displaced-stepping-2020-04-01;hp=87e315b5c0663c79deede3ec2956dac60dcc47aa;hpb=437666f82f14bcf68b112b9882c134bde8cb98cf;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/objc-lang.h b/gdb/objc-lang.h index 87e315b5c0..b2247433dd 100644 --- a/gdb/objc-lang.h +++ b/gdb/objc-lang.h @@ -1,12 +1,12 @@ /* Objective-C language support definitions for GDB, the GNU debugger. - Copyright 1992 Free Software Foundation, Inc. + Copyright (C) 1992-2020 Free Software Foundation, Inc. Contributed by Apple Computer, Inc. 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 + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -15,43 +15,39 @@ 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. */ + along with this program. If not, see . */ -#ifdef __STDC__ /* Forward decls for prototypes. */ -struct value; -#endif - -extern int objc_parse (void); /* Defined in c-exp.y */ +#if !defined(OBJC_LANG_H) +#define OBJC_LANG_H -extern void objc_error (char *); /* Defined in c-exp.y */ +struct stoken; -extern int c_val_print (struct type *, char *, int, - CORE_ADDR, struct ui_file *, int, - int, int, enum val_prettyprint); +struct value; +struct block; +struct parser_state; -extern int c_value_print (struct value *, struct ui_file *, - int, enum val_prettyprint); +extern CORE_ADDR lookup_objc_class (struct gdbarch *gdbarch, + const char *classname); +extern CORE_ADDR lookup_child_selector (struct gdbarch *gdbarch, + const char *methodname); -extern CORE_ADDR lookup_objc_class (char *classname); -extern int lookup_child_selector (char *methodname); +extern char *objc_demangle (const char *mangled, int options); -char *objc_demangle (const char *mangled); +extern int find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc); -int find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc); +extern const char *find_imps (const char *method, + std::vector *symbol_names); -char *parse_selector (char *method, char **selector); +extern struct value *value_nsstring (struct gdbarch *gdbarch, + char *ptr, int len); -char *parse_method (char *method, char *type, - char **class, char **category, - char **selector); +/* for parsing Objective C */ +extern void start_msglist (void); +extern void add_msglist (struct stoken *str, int addcolon); +extern int end_msglist (struct parser_state *); -void find_methods (struct symtab *symtab, char type, - const char *class, const char *category, - const char *selector, struct symbol **syms, - unsigned int *nsym, unsigned int *ndebug); +struct symbol *lookup_struct_typedef (const char *name, + const struct block *block, + int noerr); -char *find_imps (struct symtab *symtab, struct block *block, - char *method, struct symbol **syms, - unsigned int *nsym, unsigned int *ndebug); +#endif