This is the mail archive of the
mailing list for the GDB project.
Re: [RFA] Re: Python: add field access by name and standard python mapping methods to gdb.Type
- From: Doug Evans <dje at google dot com>
- To: Paul Koning <paulkoning at comcast dot net>
- Cc: Eli Zaretskii <eliz at gnu dot org>, tromey at redhat dot com, gdb-patches at sourceware dot org
- Date: Fri, 4 Nov 2011 10:41:57 -0700
- Subject: Re: [RFA] Re: Python: add field access by name and standard python mapping methods to gdb.Type
- References: <A3E6FC3B-1E11-4F34-817E-897C74B2A669@comcast.net> <firstname.lastname@example.org> <3A3AF5AE-70E8-43D0-B8CE-DCADFEEF879A@comcast.net> <CADPb22RTizsTBzTHQ6SZbsW_sv7FNCZD6EQeLacNWtAWNRcZWQ@mail.gmail.com> <F08522DE-7678-410E-92E5-2692482305AF@comcast.net> <CADPb22SrXdBoU5KRjDJ8aox=ne9pV9Sht1qemgkC_LaOLjK51w@mail.gmail.com> <560557F2-1B8B-4633-8CD6-E63705EEAF0E@comcast.net> <email@example.com> <A986D29F-2D94-4F36-9135-64C00C5F48A3@comcast.net> <firstname.lastname@example.org> <CA5083E5-DE1A-404F-B68C-76AB65F62E83@comcast.net>
On Tue, Oct 4, 2011 at 8:56 AM, Paul Koning <email@example.com> wrote:
> On Oct 4, 2011, at 11:41 AM, Eli Zaretskii wrote:
>>> From: Paul Koning <firstname.lastname@example.org>
>>> Date: Tue, 4 Oct 2011 11:29:58 -0400
>>> Cc: Doug Evans <email@example.com>, firstname.lastname@example.org
>>>> For future reference, there is a separate ChangeLog in doc. ?Entries for
>>>> documentation have to go there.
>>> I overlooked that file. ?Thanks for the reference. ?Should I move the entry there?
>> Yes, please.
>>>> Could you write a NEWS entry for this change?
>>> How about this?
>> Fine with me, thanks.
I know I looked at the patch and approved it myself, but having played
with it for awhile I'm having second thoughts.
And before a release goes out I'd like to get this resolved.
If you want I'll do the work, or at least help however I can.
One way to look at my reasoning is that a type "has a" field list but
it's not the case that a type "is a" field list.
And I'm uncomfortable with len(gdb.parse_and_eval("1").type) == 0.
IOW, len(gdb.Type of "int") is now 0. I think it should flag an exception.
OTOH, adding the new support to the result of gdb.Type.fields() is great.
Anyone object to me changing things and moving the new iterator
support to gdb.Type.fields()?
Or do people disagree with my reasoning?
I haven't looked into what's involved. At this point I just want to
get the user-visible semantics right.