This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] Type cleanups


> In order to fix gdb/277, I needed to move a lot of members of 'struct type'. 
> This patch flushes out all (that I could find) direct accesses of these
> members instead of through the proper macros.  It's possible that I missed
> some; if so, the next patch will cause whichever files I missed to stop
> compiling.  I'm pretty sure I got them all, though.  I also clean up the
> only remaining references to 'sizeof (struct type)': dstread.c had a clone
> of alloc_type, and hpread.c needed to call replace_type like the other
> readers.
> 
> This patch should have no effect.  On i386-linux, I get byte-for-byte
> identical GDB binaries (all 5591185 bytes of it, debugging information
> and all; no -g3 here).
> 
> OK to commit?

Did you check all the cross targets build per MAINTAINERS?  From memory 
sh-hms[bfd] and avr[need to look] don't build at present (well as of 
~2002-05-12-gmt).

If that has been checked, then yes ``obviously''.

Does this mean that ``struct type *'' is becoming opaque?  Looking at 
the next patch, no, sigh.

Andrew



> 2002-05-12  Daniel Jacobowitz  <drow@mvista.com>
> 
> 	* ax-gdb.c (gen_sign_extend, gen_fetch, gen_usual_unary)
> 	(gen_cast, gen_scale, gen_add, gen_sub, gen_binop, gen_deref)
> 	(gen_address_of, gen_struct_ref, gen_repeat): Use type
> 	access macros.
> 	* c-typeprint.c (cp_type_print_method_args): Likewise.
> 	(c_type_print_args): Likewise.
> 	* d10v-tdep.c (d10v_push_arguments): Likewise.
> 	(d10v_extract_return_value): Likewise.
> 	* expprint.c (print_subexp): Likewise.
> 	* gdbtypes.c (lookup_primitive_typename): Likewise.
> 	(lookup_template_type, add_mangled_type, print_arg_types): Likewise.
> 	* gdbtypes.h (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB)
> 	(TYPE_TARGET_STUB, TYPE_STATIC, TYPE_CONST, TYPE_VOLATILE)
> 	(TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_CODE_SPACE, TYPE_VARARGS)
> 	(TYPE_VECTOR): Likewise.
> 	* hpread.c (hpread_read_struct_type)
> 	(fix_static_member_physnames, fixup_class_method_type)
> 	(hpread_type_lookup): Likewise.
> 	* mdebugread.c (parse_symbol, parse_type): Likewise.
> 	* p-lang.c (is_pascal_string_type): Likewise.
> 	* valops.c (hand_function_call): Likewise.
> 	* x86-64-tdep.c (classify_argument): Likewise.
> 
> 	* hpread.c (hpread_read_function_type)
> 	(hpread_read_doc_function_type): Call replace_type.
> 	* dstread.c (create_new_type): Delete.
> 	(decode_dst_structure, process_dst_function): Call alloc_type.
> 	Use type access macros.





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]