This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: RFA: shrink main_type
- From: Ken Werner <ken at linux dot vnet dot ibm dot com>
- To: Tom Tromey <tromey at redhat dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Fri, 24 Sep 2010 18:27:00 +0200
- Subject: Re: RFA: shrink main_type
- References: <m37iafzdcp.fsf@fleche.redhat.com> <m3zln8rism.fsf@fleche.redhat.com> <201009151441.43723.ken@linux.vnet.ibm.com>
On Wednesday, September 15, 2010 2:41:43 pm Ken Werner wrote:
> On Tuesday, August 19, 2008 07:55:37 pm Tom Tromey wrote:
> > + /* Flags about this type. These fields appear at this location
> > + because they packs nicely here. See the TYPE_* macros for
> > + documentation about these fields. */
> > +
> > + unsigned int flag_unsigned : 1;
> > + unsigned int flag_nosign : 1;
> > + unsigned int flag_stub : 1;
> > + unsigned int flag_target_stub : 1;
> > + unsigned int flag_static : 1;
> > + unsigned int flag_prototyped : 1;
> > + unsigned int flag_incomplete : 1;
> > + unsigned int flag_varargs : 1;
> > + unsigned int flag_vector : 1;
> > + unsigned int flag_stub_supported : 1;
> > + unsigned int flag_nottext : 1;
> > + unsigned int flag_fixed_instance : 1;
>
> Hi Tom,
>
> This is quite an old change but while debugging gdb I noticed that vector
> types do have a strange bit set into their instance_flags and this seems to
> go back to this patch.
> The snippet above introduces the flag_nottext as a bitfield member of the
> type struct while gdbtypes.c:make_vector_type still sets that bit into the
> instance_flags.
>
> The nottext flag is set for the element types of vectors
> (gdbtypes.c:make_vector_type) and for the builtin_int8/builtin_int8 types.
> The flag is read from the c-valprint.c:c_textual_element_type function
> that determines whether arrays of chars should be printed as strings or
> not. So, I guess that prior to this patch char vectors were printed just
> like integer vectors - plain data. One approach to restore that
> functionality would be to move the nottext flag into to the instance_flags
> of the type. Attached is an untested patch of what I have in mind.
> Comments are welcome.
>
> This also renders my previous attempt to fix the printing of character
> vectors (http://sourceware.org/ml/gdb-patches/2010-06/msg00573.html)
> obsolete.
>
> Regards
> Ken Werner
Ping. : ) Since I screwed up the recipient list plus the fact that this was a
reply to a 2008 post it may be well hidden by the mail reader.
Are there any comments on that?
Thanks
Ken