On Mar 5, 2014, at 11:19 , Argyrios Kyrtzidis <[email protected]> wrote:

> 
> On Mar 5, 2014, at 9:29 AM, Jordan Rose <[email protected]> wrote:
> 
>> 
>> 
>> On Mar 4, 2014, at 22:47 , Argyrios Kyrtzidis <[email protected]> wrote:
>> 
>>> -  if (!T->isObjCIdType() && !T->isObjCQualifiedIdType()) {
>>> +  if (!T->isObjCIdType() && !T->isObjCQualifiedIdType() &&
>>> +      !T->isObjCClassType() && !T->isObjCQualifiedClassType() &&
>>> +      !T->isObjCSelType()) {
>> 
>> SEL isn't an ObjCObjectPointer. (It's an opaque pointer type, but not to an 
>> object.)
> 
> There’s a check and logic for T->isObjCSelType() earlier in the function so 
> I’m not sure if it’s dead code or not.

Yes, that's definitely dead. In fact, now I wonder if we're printing SEL 
correctly.

% echo 'SEL foo;' | clang -Xclang -ast-print -x objective-c -fsyntax-only -
typedef SEL *SEL;
typedef id id;
typedef Class *Class;
SEL foo;

Yes, looks like we're okay. Slightly funny-looking, but correct.
Jordan
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to