Re: [patch] Use the string returned by pretty printer for MI varobjs instead of "{...}"

xgsa
2012-05-17T19:07:14Z

> I has been quite a while, but I think I was primarily concerned that
> GDB would abuse value string on varobj
> to show what GDB thinks is the right rendering of data. E.g. while
> "[5]" as top-level value might be a reasonable
> rendition for an array with 5 children, it's not entirely clear why
> GDB's machine interface should take liberties
> at telling frontend how to render that. Neither "[", nor 5, nor "]" is
> integral part of data, and as soon as
> GDB outputs that, frontend has no way of knowing whether this is GDB
> trying to be helpful, or really interesting
> data that cannot be obtained in any other way.

I cannot figure out why the frontend need to know it? I think, it should
just output what GDB returns, cause GDB knows better how to visualize
the concrete data type due to pretty printers mechanism. Otherwise, the
frontend should have something similar to pretty printers that will
visualize different types in a comfortable way. In any case if the
implemented behavior is not desirable the string() method of pretty
printer could be left unimplemented (or return None). It will give the
behavior you described above, but could also be extended if necessary.

Thanks,
Anton