Binary operations on struct/class values in GDB Python

Doug Evans xdje42@gmail.com
Thu Nov 28 17:37:00 GMT 2013


On Wed, Nov 27, 2013 at 4:10 PM, Siva Chandra <sivachandra@google.com> wrote:
> Hi,
>
> Under the section "Python API => Values from Inferior" in the GDB
> manual, we have this:
>
> "Inferior values that are simple scalars can be used directly in
> Python expressions that are valid for the value's data type."
>
> Why are binary operations, which are syntactically correct in Python
> as well, restricted to only simple scalars (and pointers)? Couldn't
> the Python side call the overloaded operators for structs/classes if
> they exist?
>
> I am discounting the '[]' operator as that has a completely different
> meaning for gdb.Value objects.

As in most things here, we do things a bit at a time.
Just because something is "restricted" today doesn't necessarily mean
it will be restricted tomorrow.
It's often the case that no one has put in the time to champion the
feature and then implement it.

It's easy to do for scalars and pointers at least in part because the
mixing of the languages is relatively intuitive, it's a useful
feature, and it's easy to implement.



More information about the Gdb mailing list