On 28 Feb 2011, at 12:12, David Chisnall wrote:

> On 28 Feb 2011, at 11:22, Thomas Davie wrote:
> 
>> While this seems to work right, I'm getting a pretty odd behaviour with 
>> enumerateObjectsUsingBlock: producing an odd log.  Does anyone know what's 
>> up here?
>> 
>> ~/Documents/Test$ ./obj/Test
>> Calling [GSInlineArray -enumerateObjectsUsingBlock:] with incorrect 
>> signature.  Method has v24@0:8^{?=^vii^?}16, selector has v24@0:8@?16
> 
> This is caused by the fact that you've compiled -base with a compiler without 
> blocks support, but compiled your code with one that does support blocks.  
> 
> To hack around the lack of blocks support, GNUstep has some macros that lower 
> the blocks stuff to pure C, but this means that the method expects a pointer 
> to the blocks structure, while the caller is passing a pointer to a block.  
> You can safely ignore the warning, but if you have a compiler that supports 
> blocks then it's worth using this everywhere, or you will get some strange 
> behaviour if you subclass NSRegularExpression.
> 
> David

I just recompiled base to be sure – and now am sure that it's compiling with 
clang.  Do I need to do something extra to make sure -fblocks gets passed or is 
there an extra problem here?

The version of clang both are being compiled with is 2.9 (trunk 126641).

Tom Davie
_______________________________________________
Gnustep-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to