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

Douglas Gregor dgregor at apple.com
Sun May 23 11:24:12 PDT 2010


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.

	- Doug



More information about the cfe-commits mailing list