This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Will therefore GDB utilize C++ or not?
- From: Tom Tromey <tromey at redhat dot com>
- To: <Paul_Koning at Dell dot com>
- Cc: <gdb at sourceware dot org>
- Date: Fri, 18 May 2012 14:06:48 -0600
- Subject: Re: Will therefore GDB utilize C++ or not?
- References: <20120330161403.GA17891@host2.jankratochvil.net> <87aa2rjkb8.fsf@fleche.redhat.com> <4F832D5B.9030308@redhat.com> <20120409190519.GA524@host2.jankratochvil.net> <4F833D29.4050102@redhat.com> <20120416065456.GA30097@host2.jankratochvil.net> <4F8ECB72.70708@redhat.com> <20120418151553.GA16768@host2.jankratochvil.net> <4F8EDD7B.2010602@redhat.com> <20120418155354.GA17912@host2.jankratochvil.net> <201204181748.q3IHm1cF002815@new.toad.com> <87pqb4q2on.fsf@fleche.redhat.com> <201204182309.q3IN9FcF019607@new.toad.com> <87k409gwv0.fsf@fleche.redhat.com> <35C0C41D-6D07-4612-B0C5-DB00CFD2F975@dell.com> <87zk95fg8c.fsf@fleche.redhat.com> <BEFE5F3C-2FD7-40E7-8530-172F0A1F6D8C@Dell.com>
>>>>> "Paul" == <Paul_Koning@Dell.com> writes:
Tom> We'd use RAII to ensure that refcounts were automatically managed
Tom> by the C++ compiler.
Paul> That would be nice if the Python ABI is compatible with this. It may
Paul> not be, or not always. For example, when some calls steal a reference
Paul> while others (most of them) don't, and some return a borrowed
Paul> reference while others return a new one, it isn't clear how a
Paul> mechanical scheme like RAII will give you a full answer.
I think you can write wrapper functions which abstract the details.
We'd want this anyway so we can turn Python exceptions into C++
exceptions.
boost::python basically does all this already, but I've been assuming
we'd roll our own.
Paul> Maybe if you use only the subset that does reference counting in
Paul> the one way you want it done? There would be some performance
Paul> impact but probably not much.
I think the wrappers would be pretty thin, and there'd be no runtime hit
to speak of.
Tom