[cfe-commits] r104422 - in /cfe/trunk/lib/CodeGen: CGExprAgg.cpp CGObjC.cpp CGObjCGNU.cpp CGObjCMac.cpp CGObjCRuntime.h CodeGenFunction.h

Fariborz Jahanian fjahanian at apple.com
Mon May 24 08:20:34 PDT 2010


On May 23, 2010, at 11:24 AM, Douglas Gregor wrote:

>
> On May 23, 2010, at 10:38 AM, Fariborz Jahanian wrote:
>
>>
>> On May 22, 2010, at 3:18 PM, John McCall wrote:
>>
>>> On May 22, 2010, at 9:13 AM, Fariborz Jahanian wrote:
>>>> Wouldn't removing call to EmitFinalDestCopy change things in this
>>>> patch? This routine deals with GC API, as well as copying result to
>>>> DestPtr.
>>>
>>> Ugh, you're right.  I believe I've restored the old behavior in a
>>> way that doesn't interfere with return-value behavior in C++.
>>>
>>> I have no idea how to reconcile the GC API with C++;  we'll have to
>>> talk about this.
>>
>> Thanks. This was  my main concern.  This particular API was not being
>> invoked for ObjC++ case, my concern was
>> changing behavior for ObjC.
>
>
> Perhaps we should use the GC API for a separate copy only when  
> dealing with POD types? Then we're only missing the GC calls for C++  
> types w/ interesting special member functions.

Yes, I agree. We can worry about interesting c++ objects later. BTW,  
this is current what clang (and gcc do).

- Fariborz

>
> 	- Doug




More information about the cfe-commits mailing list