+ John

John, could you advice here ?

> On Oct 1, 2014, at 4:20 PM, Marshall Clow <[email protected]> wrote:
> 
> On Oct 1, 2014, at 3:36 PM, Marshall Clow <[email protected] 
> <mailto:[email protected]>> wrote:
>> 
>> Richard Smith pointed out that destroying a pointer to an objective-C class 
>> might require an ARC call, and so the compiler needs to see the type to 
>> figure out if it is_destructible.
>> 
>> Note that is_destructible<ObjCForwardClass**>::value is true, so it’s just 
>> pointers to objective-C objects, not pointers in general.
> 
> Richard also pointed me to: 
> http://clang.llvm.org/docs/AutomaticReferenceCounting.html#retainable-object-pointers
>  
> <http://clang.llvm.org/docs/AutomaticReferenceCounting.html#retainable-object-pointers>
> 
> So, while I agree with Argyrios that this changed the behavior of 
> is_trivially_destructible for forward-declared objective-C classes,
> I am now convinced that the old behavior was incorrect, and the new behavior 
> is “better”.
> 
> One could argue that a forward-declared objective-C class is not a complete 
> type, since the compiler doesn’t know how to destroy it, and if so, then 
> is_destructible is not required to give any answer at all ("T shall be a 
> complete type”).
> 
> — Marshall
> 
> 
> _______________________________________________
> cfe-commits mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to