[cfe-commits] r101017 - /cfe/trunk/test/CodeGenObjC/blocks.m

Fariborz Jahanian fjahanian at apple.com
Mon Apr 12 09:44:02 PDT 2010


On Apr 12, 2010, at 9:28 AM, Chris Lattner wrote:

> On Apr 12, 2010, at 9:07 AM, Fariborz Jahanian wrote:
>> On Apr 11, 2010, at 10:43 PM, Chris Lattner wrote:
>>
>>> Author: lattner
>>> Date: Mon Apr 12 00:43:31 2010
>>> New Revision: 101017
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=101017&view=rev
>>> Log:
>>> fix an invalid use of super, you can't use super like this in a  
>>> block!
>>
>> This, IMO,  should be diagnosed as 'unimplemented' rather than an
>> outright error.
>> This is one place where 'super' requires an expression AST  and our
>> recent changes
>> disallow it.
>
> This isn't something we are capable of representing in the AST, and  
> I don't think we want users to be exposed to this.  Can you think of  
> a use case where it is useful?

A method which uses 'super' maybe rewritten to be passed down as a  
block to a certain library.
But really this is  not question of usefulness. These is no semantics  
reason why this should be disallowed for a block.
But since 'super' need be treated as an imported variable (just as  
self), for implementation, clang is not capable of
doing it any more. We just have to wait and see.

- Fariborz

>
>
> -Chris




More information about the cfe-commits mailing list