From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31564 invoked by alias); 19 Feb 2003 19:02:51 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 31539 invoked from network); 19 Feb 2003 19:02:50 -0000 Received: from unknown (HELO mx1.redhat.com) (172.16.49.200) by 172.16.49.205 with SMTP; 19 Feb 2003 19:02:50 -0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.11.6/8.11.6) with ESMTP id h1JJ2oK00846 for ; Wed, 19 Feb 2003 14:02:50 -0500 Received: from pobox.corp.redhat.com (pobox.corp.redhat.com [172.16.52.156]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id h1JJ2oa30869 for ; Wed, 19 Feb 2003 14:02:50 -0500 Received: from localhost.redhat.com (romulus-int.sfbay.redhat.com [172.16.27.46]) by pobox.corp.redhat.com (8.11.6/8.11.6) with ESMTP id h1JJ2mO30370 for ; Wed, 19 Feb 2003 14:02:49 -0500 Received: by localhost.redhat.com (Postfix, from userid 469) id 99ECAFF79; Wed, 19 Feb 2003 14:06:55 -0500 (EST) From: Elena Zannoni MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <15955.54735.457114.404621@localhost.redhat.com> Date: Wed, 19 Feb 2003 19:02:00 -0000 To: Adam Fedor Cc: GDB Patches Subject: Re: [RFA] Compile objc-lang.c, objc-exp.tab.c [1/5] In-Reply-To: <3E16093D.3070907@doc.com> References: <3E16093D.3070907@doc.com> X-SW-Source: 2003-02/txt/msg00432.txt.bz2 Adam Fedor writes: > Now that I'm almost done, I finally understand the patch lingo (Thanks > Michael)! This is a repost of the first of five final patches for ObjC > suppport: > > http://sources.redhat.com/ml/gdb-patches/2003-01/msg00049.html > > The other two that I also need approval for are: > > http://sources.redhat.com/ml/gdb-patches/2003-01/msg00050.html > http://sources.redhat.com/ml/gdb-patches/2003-01/msg00080.html > > and two more (symtab.c, and linespec.c) will be coming soon. > > --- > > A new year brings a final push to get Objective-C support in gdb. This > patch enables compilation and linking of the Objective-C files. I need > this now since the remaining patches require so many of the Objective-C > functions that it would be pointless to submit them otherwise. > > 2003-01-02 Adam Fedor > > * Makefile.in (COMMON_OBS): Add objc-lang.o > (YYOBJ): Add objc-exp.tab.o > (maint.o, utils.o): Add $(objc_lang_h) > * maint.c (maintenance_demangle): Uncomment language_objc case. > * utils.c (fprintf_symbol_filtered): Likewise. > * parser-defs.h (start_msglist, add_msglist, end_msglist): Declare > Objective-C parsing functions (from objc-lang.c). I think this is just 'obvious' in a sense given the code has been already approved, and it is just dormant. However, do we have testcases already? I think we should have a gdb.objc subdirectory. (sorry, i don't remember if you posted them). I would feel uncomfortable enabling objc w/o having tests, even very simple ones, it could bitrot fast. elena > > Index: Makefile.in > =================================================================== > RCS file: /cvs/src/src/gdb/Makefile.in,v > retrieving revision 1.302 > diff -u -p -r1.302 Makefile.in > --- Makefile.in 2 Jan 2003 20:29:15 -0000 1.302 > +++ Makefile.in 3 Jan 2003 03:06:24 -0000 > @@ -820,7 +820,7 @@ COMMON_OBS = version.o blockframe.o brea > exec.o bcache.o objfiles.o minsyms.o maint.o demangle.o \ > dbxread.o coffread.o elfread.o \ > dwarfread.o dwarf2read.o mipsread.o stabsread.o corefile.o \ > - c-lang.o f-lang.o \ > + c-lang.o objc-lang.o f-lang.o \ > ui-out.o cli-out.o \ > varobj.o wrapper.o \ > jv-lang.o jv-valprint.o jv-typeprint.o \ > @@ -847,6 +847,7 @@ YYFILES = c-exp.tab.c \ > jv-exp.tab.c \ > f-exp.tab.c m2-exp.tab.c p-exp.tab.c > YYOBJ = c-exp.tab.o \ > + objc-exp.tab.o \ > jv-exp.tab.o \ > f-exp.tab.o m2-exp.tab.o p-exp.tab.o > > @@ -1878,7 +1879,8 @@ main.o: main.c $(defs_h) $(top_h) $(targ > $(event_loop_h) $(ui_out_h) $(main_h) > maint.o: maint.c $(defs_h) $(command_h) $(gdbcmd_h) $(symtab_h) \ > $(gdbtypes_h) $(demangle_h) $(gdbcore_h) $(expression_h) \ > - $(language_h) $(symfile_h) $(objfiles_h) $(value_h) $(cli_decode_h) > + $(language_h) $(symfile_h) $(objfiles_h) $(value_h) $(cli_decode_h) \ > + $(objc_lang_h) > mcore-rom.o: mcore-rom.c $(defs_h) $(gdbcore_h) $(target_h) $(monitor_h) \ > $(gdb_string_h) $(regcache_h) $(serial_h) > mcore-tdep.o: mcore-tdep.c $(defs_h) $(frame_h) $(symtab_h) $(value_h) \ > @@ -2240,7 +2242,8 @@ ui-out.o: ui-out.c $(defs_h) $(gdb_strin > utils.o: utils.c $(config_h) $(defs_h) $(gdb_assert_h) $(gdb_string_h) \ > $(event_top_h) $(gdbcmd_h) $(serial_h) $(bfd_h) $(target_h) \ > $(demangle_h) $(expression_h) $(language_h) $(annotate_h) \ > - $(filenames_h) $(inferior_h) $(mmalloc_h) $(charset_h) $(readline_h) > + $(filenames_h) $(inferior_h) $(mmalloc_h) $(charset_h) $(readline_h) \ > + $(objc_lang_h) > uw-thread.o: uw-thread.c $(defs_h) $(gdbthread_h) $(target_h) $(inferior_h) \ > $(regcache_h) $(gregset_h) > v850-tdep.o: v850-tdep.c $(defs_h) $(frame_h) $(inferior_h) $(target_h) \ > Index: maint.c > =================================================================== > RCS file: /cvs/src/src/gdb/maint.c,v > retrieving revision 1.30 > diff -u -p -r1.30 maint.c > --- maint.c 24 Dec 2002 03:57:58 -0000 1.30 > +++ maint.c 3 Jan 2003 03:06:25 -0000 > @@ -35,6 +35,7 @@ > #include "symfile.h" > #include "objfiles.h" > #include "value.h" > +#include "objc-lang.h" > > #include "cli/cli-decode.h" > > @@ -154,9 +155,8 @@ maintenance_demangle (char *args, int fr > switch (current_language->la_language) > { > case language_objc: > - /* Commented out until ObjC handling is enabled. */ > - /* demangled = objc_demangle (args); */ > - /* break; */ > + demangled = objc_demangle (args); > + break; > case language_cplus: > default: > demangled = cplus_demangle (args, DMGL_ANSI | DMGL_PARAMS); > Index: parser-defs.h > =================================================================== > RCS file: /cvs/src/src/gdb/parser-defs.h,v > retrieving revision 1.15 > diff -u -p -r1.15 parser-defs.h > --- parser-defs.h 19 Nov 2002 03:15:01 -0000 1.15 > +++ parser-defs.h 3 Jan 2003 03:06:25 -0000 > @@ -223,4 +223,9 @@ struct op_print > > extern void parser_fprintf (FILE *, const char *, ...) ATTR_FORMAT (printf, 2 ,3); > > +/* for parsing Objective C */ > +extern void start_msglist (void); > +extern void add_msglist (struct stoken *str, int addcolon); > +extern int end_msglist (void); > + > #endif /* PARSER_DEFS_H */ > Index: utils.c > =================================================================== > RCS file: /cvs/src/src/gdb/utils.c,v > retrieving revision 1.88 > diff -u -p -r1.88 utils.c > --- utils.c 2 Jan 2003 14:27:27 -0000 1.88 > +++ utils.c 3 Jan 2003 03:06:35 -0000 > @@ -46,6 +46,7 @@ > #include "charset.h" > #include "annotate.h" > #include "filenames.h" > +#include "objc-lang.h" > > #include "inferior.h" /* for signed_pointer_to_address */ > > @@ -2310,9 +2311,8 @@ fprintf_symbol_filtered (struct ui_file > demangled = cplus_demangle (name, arg_mode | DMGL_JAVA); > break; > case language_objc: > - /* Commented out until ObjC handling is enabled. */ > - /*demangled = objc_demangle (name);*/ > - /*break;*/ > + demangled = objc_demangle (name); > + break; > default: > demangled = NULL; > break;