On Thu, Sep 4, 2008 at 4:58 PM, Mike Stump <[EMAIL PROTECTED]> wrote:
> On Sep 4, 2008, at 12:14 PM, Eli Friedman wrote:
>>>
>>> + /// BlockVoidPointer - The assignment is between a closure pointer
>>> and
>>> + /// void*, we accept for now.
>>
>> I don't see any good reason to accept this; it'll just destroy the block
>> pointer.
>
> void * is the canonical opaque type, and block pointers can be pushed into
> and pulled out of a void * per the usual C rules.
Erm, nevermind about that one. Not sure what I was thinking.
>> The code as-is won't work correctly for cases like
>
>> "int a(int(^b)(void)){return b == (void*)0}".
>
> gcc does this:
[snip]
> clang should do something similar when done.
The issue is that clang currently gives an error on the given sample.
-Eli
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits