Re: Resend: [RFC] p-exp.y enhancements.

Pierre Muller
2002-05-16T09:44:00Z

As no strong objection was rasied against this
patch, I committed it today.

At 14:48 02/05/2002 , Pierre Muller a Ã©crit:
>(Second posting with the patch attached,
>this way you should have less problems to
>apply the patch).
>
>This patch has several benefits:
>
>1) it adds support for S[exp] if S is a pascal string.
>I must admit that this only works for Free Pascal Compiler
> for now, because GPC uses BITSTRING type
>for the array containg the chars which confuses GDB.
>I informed the GPC developper team, but their answer
>seems to be that they didn't really directly change any code
>regarding debug information output for pascal...
>
>2) it adds support for case insensitive searches of record
>(pascal struct) fields.
>
>3) It prepares to a more simple RFC
>about the enhancement to the completer for
>structure field that I sent some time ago. See
>http://sources.redhat.com/ml/gdb-patches/2002-04/msg00774.html
>
>The way current_type is treated in my patch is
>not completely correct, in the sense that
>current_type is often non NULL when it should be NULL
>(like for instance after an operator like '+' or '*',
>but this has no influence on its functionallity, so I did not
>add all the rules that would reset current_type
>(which would have made the patch much bigger).
>
>If I get no observations about this patch, I will commit it
>in the next days.
>
>
>2002-05-02 Pierre Muller <muller@ics.u-strasbg.fr>
>
> * p-exp.y (current_type): New static variable.
> Carries the type of the expression at the position that is parsed.
> (push_current_type, pop_current_type): Two new functions. Used
> to store/restore current_type in expression on specific tokens.
> (search_filed): New static variable. Set to one after parsing a point as
> at that point only a FIELDNAME token should be searched.
> (FIELDNAME): New token. After a point only a token belonging to
> current_type type definition is allowed.
> (all over token rules): reset and change current_type according
> to rules.
> (exp '[' rule): insert implicit array index field if exp is a pascal string type.
>
>
>
>Pierre Muller
>Institut Charles Sadron
>6,rue Boussingault
>F 67083 STRASBOURG CEDEX (France)
>mailto:muller@ics.u-strasbg.fr
>Phone : (33)-3-88-41-40-07 Fax : (33)-3-88-41-40-99