Re: Will therefore GDB utilize C++ or not?

Pedro Alves
2012-04-18T18:37:02Z

On 04/18/2012 07:12 PM, Stan Shebs wrote:

> On 4/18/12 7:21 AM, Pedro Alves wrote:
>> On 04/10/2012 12:23 AM, Stan Shebs wrote:
>>
>>> On 4/4/12 1:47 PM, Tom Tromey wrote:
>>>> I don't believe we should convert all of GDB to C++. In particular I
>>>> think gdbserver should remain as pure C, and likewise any code shared
>>>> between gdbserver and gdb should be kept as such.
>>> I don't know that it matters that much for GDBserver anymore. When giant C++ apps like Firefox are running on handheld devices, it's a little hard to see that a handful of C++ library functions and and EH data section in GDBserver are going to make it or break it on targets that people are developing for today.
>>
>> You're forgetting about all those uclibc (and musl's and other libc's of the world) targets
>> that most probably don't even have a display, and some which don't support C++, and that
>> still need to be debugged. A debugger agent is a system component that
>> should aim lower than a bloated browser. Again, even the Android NDK doesn't support
>> C++ exceptions properly (or maybe it does nowadays, but it didn't only a couple years ago),
>> one of the biggest justifications for a C++ move.
>>
>
> I've not forgotten them! :-) I just wonder what the size numbers are really like. We haven't really had to address GDBserver size before, not least because it wasn't getting much attention and people were OK with all kinds of functionality simply being left out.
>
> Paul Koning's bit about it being 300K is interesting, that's nearly an order of magnitude larger than I would have expected. But given the way our development timeframes operate, we might spend a lot of effort getting GDBserver down to 30K, only to find out it didn't really matter anymore because even GDB's smallest supported targets have 4G of RAM or more.
>
> Without a well-defined size target, and input from C++ mavens about minimum overheads, I don't think we can objectively say whether C++ is or is not acceptable for GDBserver.
>

There was also the "share code with the IPA" argument. I don't think making
the IPA a C++ library is a good idea.

--
Pedro Alves