This is the mail archive of the gdb-patches@sourceware.org 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]

[commit/Ada] Add handling of "ptype TYPE_NAME.FIELD0.[...].FIELDN" expressions


Hello,

The subject says it all. Before the patch, you could do:

   (gdb) ptype type_name

But if you wanted to get the type of one field inside that type,
you would hit a limitation:

   (gdb) ptype circle.pos
   Invalid attempt to select from type: "circle.pos".

The attached patch enhances the debugger to able to do the above.

2008-01-04  Joel Brobecker  <brobecker@adacore.com>

        * ada-exp.y (chop_separator): New function.
        (write_selectors): Rewrite to re-use chop_separator.
        (ada_nget_field_index, get_symbol_field_type): New functions.
        (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
        expressions.

As usual when I can, I wrote a testcase:

2008-01-04  Joel Brobecker  <brobecker@adacore.com>

        * gdb.ada/ptype_field/pck.ads, gdb.ada/ptype_field/pck.adb,
        gdb.ada/ptype_field/foo.adb: New files.
        * gdb.ada/ptype_field.exp: New testcase.

All tested on x86-linux. Note that I used the multi_line function
again! Very useful :)

Checked in.

-- 
Joel

Attachment: ptype.diff
Description: Text document

Attachment: ptype-tc.diff
Description: Text document


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